LINUX.ORG.RU

Сообщения The_gray_Cardinal

 

Что такое каналы в GIMP?

Что такое каналы в GIMP, может кто-нибудь дать понятное определение? Везде пишут так:

В GIMP каналы являются наименьшей единицей подразделения стопки слоёв, из которых создаётся изображение.

Что такое «наименьшая единица подразделения», что это за бред?

The_gray_Cardinal
()

Теоретический вопрос по синтаксису языков

Чем в языках программирования лексема отличается от идентификатора, в самом общем смысле?

1. Например, строковая или числовая константа — это лексема, но не идентификатор?

2. Имя функции или переменной — это и лексема, и идентификатор?

3. Таким образом, идентификатор, это лексема, которая является именем функции или переменной?

4. Что такое символ в LISP? Это идентификатор? Зачем тогда придумали ещё один термин?

The_gray_Cardinal
()

Ограниченность

Я не так давно здесь, и меня несколько удивляет ограниченность слишком многих комментаторов новостей. Я имею в виду вопли с соплями "фтопку", "ненужен", "закапывайте" и подобное, когда речь заходит о продуктах, которыми они не пользуются.

Примеры: xneur, mono, reactOS, mc, можно продолжать до бесконечности.

Вообще, заметил, что у очень многих людей есть черта: нежелание высовываться из своей яранги, где всё знакомо, и где человек чувствует себя немножко профессионалом. Всё, что находится за пределами этой яранги, предаётся анафеме либо просто признаётся несуществующим. Типа, если я и мой друг этим не пользуются, то этим не пользуется никто, кроме идиотов :))

Интересны психологические причины подобного самовыражения. Смахивает на какой-то подростковый нигилизм, когда отрицание всего является способом доказательства собственной состоятельности, в которой в глубине души есть очень большие сомнения (т.е. попросту комплексы) :))

Интересно, почему на этом ресурсе подобное является практически нормой?

P.S. Я не тролль, я только учусь ;)

The_gray_Cardinal
()

Коммерческий Linux, принципы

Есть компания Red Hat, которая предлагает Red Hat Enterprise Linux. Не до конца понял основной принцип этого бизнеса: что же именно в результате продаётся? Здесь был.

1. Red Hat Enterprise Linux — это продукт с открытым кодом?

2. Что из себя представляет «регистрация» системы? Есть ли защита от «размножения» системы, её «несанкционированной» установки на несколько серверов?

3. Что такое «доступ к Red Hat Network для одной зарегистрированной системы»? Что такое вообще Red Hat Network?

The_gray_Cardinal
()

Игрушка на Python, прошу попробовать, кому не лень

Настольная карточная игра (скрипт на Python), скриншот и ссылка на закачку здесь (700 Кб):

http://forum.script-coding.info/viewtopic.php?id=2665

Требует Qt не ниже 4.4.0.

Если будут замечания по коду, буду благодарен. Да и вообще, любые замечания.

The_gray_Cardinal
()

Выполнить команду и оставить окно на экране

Можно ли запустить gnome-terminal с выполнением указанной команды, чтобы его окно осталось на экране? Например, следующая команда (ls -l), похоже, выполняется, но окно gnome-terminal сразу же захлопывается:

gnome-terminal -x ls -l

Если это нельзя зделать именно в gnome-terminal, можно ли сделать ещё как-то, аналогично (чтобы на экране осталось окно с выводом)?

P.S. Например, в винде это делается без проблем (cmd /k dir /B).

P.P.S. Нужно для программного запуска из python-скрипта.

The_gray_Cardinal
()

Настройка хоткеев в Gnome

Запускаю compizconfig-settings-manager (CompizConfig 0.7.4), в разделе "Commands"-"Commands" добавляю команду #0:

python ~/Job/QuickStarter.py

Затем в разделе "Commands"-"Key bindings" добавляю команду #0:

<Shift><Control>asciitilde

Не работает (просто не реагирует). Команда верна, опечаток нет (из терминала работает). Что не так делаю?

The_gray_Cardinal
()

Какие существуют инкарнации BASIC под Linux?

С налёту могу сам назвать:

1. OOo Basic как язык макросов в OOo.

2. VB.NET под Mono.

Пожалуйста, дополните список. Конечно, интересуют живые проекты, а не мертвецы. Особенно интересны скриптовые варианты, если такие есть (аналоги виндового VBScript).

The_gray_Cardinal
()

[python] Emacs и python-mode

Вот такой пример:
============================================
#!/usr/bin/python
# -*- coding: utf-8 -*-
from Tkinter import *
root = Tk()
Button(root, text = u'Завершение работы', command = root.quit).pack()
root.protocol('WM_DELETE_WINDOW', lambda: 0) # перехват закрытия окна
root.mainloop()
============================================
При запуске скрипта из консоли - всё, как задумано:
закрыть окно можно только по кнопке, по крестику нельзя.
При запуске С-с С-с из-под Emacs (22.2.1) закрыть окно нельзя никак: кнопочка не работает.
В буфере *Python* - пусто, никаких ошибок.

Почему так?

 

The_gray_Cardinal
()

Как привыкнуть к чёртову Emacs'у?

Выскажусь в этом раделе, т.к. emacs - средство разработки.

Что бесит:

1. Ctrl+Shift+клавиши управления курсором не работают для выделения. Хотя это - стандарт, и работает вообще везде. Например, при наборе текста этого поста в Firefox. ЗАЧЕМ в emacs это упразднили? Это ведь жутко неудобно - запустив emacs, выворачивать мозг, чтобы перестроиться, это же просто садизм.

2. Alt+Space, а затем клавиши управления курсором для выделения - суперская идея. Но. Если текст выделен таким способом, нажатие Delete работает не так, как ожидается. При этом, если текст выделен щелчком правой (обозначая конец выделения), нажатие Delete уже работает по-обычному. При этом визуально выделение обоими способами выглядит совершенно одинаково. По-момему, это издевательство.

3. Я конечно понимаю, что Ctrl+w и Alt+w - это круто, но вырезанный и скопированный таким образом текст не попадает в буфер обмена для использования в других приложениях. Однако при этом вставка Ctrl+y хавает текст из буфера обмена (из других приложений). Женская логика? Это же бред какой-то, просто крыша съезжает.

Вопрос: что я понимаю неправильно? ;)

>>>

The_gray_Cardinal
()

Запуск shell-скриптов из-под emacs

GNU Emacs 22.2.1 (i586-suse-linux-gnu, GTK+ Version 2.12.9), всё "из коробки", под себя никак не настроенное.

Как удобно и быстро запустить открытый в emacs shell-скрипт так, чтобы увидеть его вывод? Основной режим - "Shell-script". Что-то гугл и хелпы не помогают, не смог найти...

>>>

The_gray_Cardinal
()

Установка openSUSE 11 [статья]

http://www.script-coding.info/openSUSE.html

Статья будет полезна для пользователей Windows, которые хотят попробовать Linux, но сомневаются. Описывается установка openSUSE 11 по шагам, со скриншотами.

>>>

The_gray_Cardinal
()

Открыть/закрыть лоток CD-ROM скриптом

Есть ли консольная программа для этих целей?

У меня корпус устроен так, что если лоток CD-ROM открыт, кнопка под лотком недоступна (её загораживает дурацкая "шторка"). Толкать лоток не люблю, т.к. рано или поздно я так его сломаю :)) Под Windows я привык открывать/закрывать лоток специальными скриптами, теперь хочу сделать это под Linux (openSUSE 11, Gnome).

>>>

The_gray_Cardinal
()

Аналог сравнения каталогов в Total Commander

Существует ли сабж?

В Total Commander (это файловый менеджер под Windows) есть замечательная команда "Синхронизировать каталоги...", постоянно ей пользуюсь. Идея проста: есть два компьютера, на каждом из которых я почти ежедневно работаю, но они никак не связаны по сети. Таскаю несколько каталогов на флешке, и синхронизирую их в начале и в конце работы на каждом компьютере. Как правильно разрулить эту проблему в Linux, под Gnome?

Нагуглил только какие-то монструозные системы управления версиями и подобное. Не хочется ставить софт, от которого мне нужно 0,01% его функционала. Может, я чего не увидел в Nautilus или ещё где-то, среди программ, которые есть в Gnome по умолчанию?

Нужна программка с GUI, позволяющая немного управлять синхронизацией каталогов: чтобы рекурсивно показала отличающиеся файлы (можно просто по времени их изменения) и позволила бы их закатать поверх в нужную сторону, или отказаться от этого, для каждого файла отдельно.

>>>

The_gray_Cardinal
()

YaST, можно ли скопировать только что установленное?

Можно ли как-то скопировать пакеты, которые только что были установлены с помощью YaST (openSUSE 11)? Идея заключается в том, чтобы не скачивать что-то из Интернета дважды. Например, на одном компьютере скачал-установил что-то, забрал эти пакеты на флешку. На другом компьютере установил их же, уже с флешки. Речь не идёт об автоматизации этого процесса, поднятии собственных репозитариев и т.д., т.к. компьютеров всего два, а пользователь вообще один.

Прошу не пинать, если вопрос слишком прост или не совсем верно поставлен - я Linux'ом занимаюсь совсем недавно.

>>>

The_gray_Cardinal
()

[bash] Замена переводов строк «unix2dos»

Есть вот такой рецепт, который можно найти в Интернете:

cat "$filePath" | sed -e 's/$/\r/'

Однако, в этом случае sed, помимо прочего, заменяет буквальные
вхождения строки "\n" на возврат каретки.
Мне же нужна замена только реальных символов LF.
Подскажите выход, пожалуйста.

>>>

 

The_gray_Cardinal
()

Нужно сравнить Gimp и Photoshop, подскажите статью

Не подскажете ли ссылку на статью со сравнительным анализом возможностей Gimp и Photoshop? Поиском что-то нахожу только очень старые статьи, а хотелось бы по версии Gimp 2.4.х. Может, плохо ищу, прошу помощи.

P.S. Очень прошу не устраивать холивар, топик поднят не для этого.

>>>

The_gray_Cardinal
()

[bash] Присвоение результатов команды переменной

Теоретический вопрос. Пример скрипта:

var=".."
var=$(echo -e "$var" | sed -e 's/\./\\\./g') # замена "." на "\."
var=`echo -e "$var" | sed -e 's/\./\\\./g'` # замена "." на "\."
echo $var

Чем отличается присвоение в обратных кавычках
от присвоения с помощью синтаксиса вида $(команда)?
В книгах, которые я видел, об этом сказано вскользь и непонятно
(хотя, может, я просто проглядел).
Можете словесно объяснить?

>>>

 

The_gray_Cardinal
()

[bash] Разбор строк в цикле

Можно ли в цикле правильно разобрать строку,
содержащую двойные кавычки как ограничители элементов? Например:

strVar="\"раз два\" \"три\""
for item in $strVar; do
    echo $item
done

Этот цикл даёт не тот результат, который хотелось бы:
получается три итерации, а не две, т.к.
for разбирает строку по пробелам, а на кавычки ему наплевать.

>>>

 

The_gray_Cardinal
()

[bash] Отображение информации о том, какой процесс занял файл

Написал скрипт под Nautilus, вроде работает (GNU bash 3.2.39(1)).
Поскольку скриптописатель я пока неумелый,
выкладываю здесь для ваших замечаний.
================================================================
#!/bin/sh
# ~/.gnome2/nautilus-scripts/get info/who has opened the file
# Отображение информации о том, какой процесс занял файл.

# получаем пути файлов, разделённые символами "|"
filePaths=`echo -e "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS" | \
awk 'BEGIN { FS = "\n" } {if ($1 != "") { printf "|%s", $1 }}' | \
sed -e 's/^|//'` # убрать лидирующий символ "|"

filePaths=$(echo "$filePaths" | sed -e 's/\x2F/\\\x2F/g') # замена "/" на "\/"
filePaths=$(echo "$filePaths" | sed -e 's/\./\\\./g') # замена "." на "\."

strRes=`lsof | awk "/$filePaths/"`
if [ ${#strRes} -eq 0 ] ; then
    zenity --info --text="Файлы свободны."
else
    zenity --info --text="$strRes"
fi
================================================================
Порядок работы скрипта.

Используем команду lsof для получения информации о том,
какие процессы заняли нужные нам файлы.
Вывод команды lsof скармливаем awk,
а шаблоном для поиска в этом выводе являются пути
нужных нам файлов в виде регулярного выражения:
пути, разделённые "|", чтобы поиск строк шёл по принципу "или".

Перед этим получаем список путей, разделённых "|":
1. С помощью awk разбираем $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS,
которая содержит список путей, разделённых переводами строк.
2. Экранируем прямые слеши и точки.

Жду ваших замечаний.

>>>

 

The_gray_Cardinal
()

RSS подписка на новые темы