Наши партнеры








Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

Приемы работы в Ubuntu.
Глава 2: Рабочий стол Linux

Оригинал: "Ubuntu Hacks / The Linux Desktop"
Авторы: Кайл Ранкин, Джонатан Оксер, Билл Чайлдерс (Kyle Rankin, Jonathan Oxer, Bill Childers)
Дата публикации: June 2006
Перевод: Н.Ромоданов
Дата перевода: август 2010 г.

Совет # 24: Настраиваем контекстное меню, вызываемое правой кнопкой мыши

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

Если щелкнуть правой кнопкой мыши по объектам, расположенным на рабочем столе или в файловом браузере Nautilus, то появится контекстное меню, которое позволит вам выполнять операции непосредственно с этими объектами. Но вы не ограничены только возможностями, определенными по умолчанию, вы можете добавить в меню шаблоны документов и скрипты, к которым можно получить доступ за один щелчок мыши.

Шаблоны быстрого доступа

Если щелкнуть правой кнопкой мыши по рабочему столу или по полю фона в окне Nautilus, то появится пункт меню Create Document (Создать документ), в котором обычно есть только элемент "Empty File" ("Пустой файл"). Если вы выберите "Empty File", то будет создан новый файл с именем new file, который можно переименовать так, как вам нравится. Но новый файл будет просто абсолютно пустым. Создание документа осуществляется, в сущности, точно также:

$ touch "new file"

Впрочем, в меню легко добавить свои собственные шаблоны. Создайте в вашем домашнем директории каталог с названием Templates (Шаблоны):

$ mkdir ~/Templates

Теперь любой документ, который вы поместите в этот директорий, будет доступен в контекстном меню Create Document (Создать документ). Если меню становится большим, вы можете сгруппировать элементы в подменю, помещая их в поддиректории внутри директория Templates (Шаблоны).

Разработчики HTML могут поместить в этот директорий HTML файл с именем file.html — он будет отображаться в меню Create Document (Создать документ) как "HTML File" — и сделать его шаблоном HTML страницы. Если вы создаете много корпоративных документов с использованием шаблонов OpenOffice.org, скопируйте шаблоны в этот директорий и вы сможете создать новый документ в любом месте системы, щелкнув для этого правой кнопкой мыши и выбрав шаблон.

Если вы обнаружили, что новые шаблоны сразу не отображаются в меню, просто выйдите из GNOME и войти в него снова.

Пользовательские скрипты

Вы также можете выполнить пользовательские скрипты прямо из контекстного меню, разместив ваши скрипты в специальном директории, расположенном внутри вашей домашней директории: .gnome2/nautilus-scripts/. К любому скрипту, который вы разместите в этом месте, можно получить доступ, щелкнув правой кнопкой мыши по файлу или окну и выбрав его из подменю Scripts (Скрипты). Меню Scripts (Скрипты) недоступно, если у вас нет установленных скриптов.

Когда скрипт выполняется из контекстного меню, ему передается ряд переменных среды окружения и, как правило, ряд аргументов, поэтому с его помощью можно, при желании, обрабатывать выбранный файл. Если запустить скрипт из контекста локального директория на вашем компьютере, то в качестве аргументов ему будут переданы имена всех выбранных файлов. Если запустить скрипт из контекста директория, находящегося на удаленном компьютере [Совет # 20], например, когда в окне Nautilus показывается веб или FTP контент, то аргументы не будут передаваться в скрипт.

Также будут установлены четыре переменные окружения, к которым из скрипта можно получить доступ:

NAUTILUS_SCRIPT_SELECTED_FILE_PATHS - Пути к выбранным файлам, разделенные символом новой строки, если файлы находятся в локальном директории.

NAUTILUS_SCRIPT_SELECTED_URIS - Адреса URI для выбранных файлов, разделенные символом новой строки.

NAUTILUS_SCRIPT_CURRENT_URI - Адрес URI текущей позиции

NAUTILUS_SCRIPT_WINDOW_GEOMETRY - Положение и размер текущего окна.

Есть даже пакеты с различными предварительно написанными коллекциями скриптов, такие как пакет Nautilus Subversion Management Scripts и пакет Nautilus Audio Convert, которые, соответственно, позволяют выполнять действия с пакетом Subversion и конвертировать аудио форматы, щелкнув по файлу правой кнопкой мыши:

$ sudo apt-get install nautilus-script-collection-svn \\
                 nautilus-script-audio-convert

Подсказка

Не видите меню Scripts (Скрипты), когда вы щелкаете правой кнопкой мыши? Это возможно из-за того, что Nautilus считает, что у вас нет скриптов. Для того, чтобы сообщить ему о скриптах, выберите Go→Location, в адресной строке наберите ~/.gnome2/nautilus-scripts и нажмите Enter. Следующий раз, когда вы щелкните правой кнопкой мыши по файлу или директорию, вы должны увидеть меню Scripts (Скрипты).

В качестве простого примера, вы можете поместить в директорий ~/.gnome2/nautilus-scripts/Terminal следующий скрипт, который облегчит вам доступ к терминалу из контекстного меню:

#!/bin/sh
gnome-terminal

Этот скрипт позволяет всякий раз, когда вы щелкните правой кнопкой мыши, открывать терминал в директории следующего вверх уровня. Поэтому если вы щелкните правой кнопкой мыши по иконке ~/foo, вы откроете термина, текущим директорием которого будет ~. Но, предположим, вы щелкнули правой кнопкой по некоторому директорию. Скрипт Terminal, приведенный ниже, проверит каждый элемент в переменной NAUTILUS_SCRIPT_SELECTED_FILE_PATHS, и, если он посчитает, что это директорий, он выполнит для него команду cd и откроет там терминальное окно. В противном случае, он просто откроет терминал в директории, в котором содержится элемент, по которому щелкнули мышкой:

#!/bin/sh
for d in $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS; do
 if [ -d $d ]; then
    cd $d
    gnome-terminal
    exit
  fi
done
gnome-terminal

Более сложным примером использования может быть шифрование выбранного файла с помощью GPG, назначение выбранного изображения в качестве фонового для рабочего стола, или отсылки выбранного файла в качестве приложения к электронному письму. Коллекцию разнообразных скриптов, специально предназначенных для использования в контекстном меню, смотрите по ссылке http://g-scripts.sourceforge.net.


Назад Оглавление Вперед