- Приемы работы в Ubuntu. Глава 2: Рабочий стол Linux
- Совет # 24: Настраиваем контекстное меню, вызываемое правой кнопкой мыши
- Шаблоны быстрого доступа
- Пользовательские скрипты
- Подсказка
- Контекстное меню в линукс
- Добавление новых пунктов в контекстное меню Nautilus
- Добавляем новое действие для Nautilus
- Настройка действия: вкладка Action
- Настройка действия: вкладка Command
- Настройка действия: вкладка Folders
- Настройка действия: вкладка Conditions
- Настройка действия: вкладка Advanced Conditions
- Сохраняем действие
- Проверяем
Приемы работы в Ubuntu.
Глава 2: Рабочий стол Linux
Совет # 24: Настраиваем контекстное меню, вызываемое правой кнопкой мыши
Напишите свои собственные скрипты, которые будут выполнять необходимые вам действия, когда вы щелкните правой кнопкой мыши по файлу, директорию или рабочему столу, а также добавьте шаблоны для быстрого и беспроблемного создания документов.
Если щелкнуть правой кнопкой мыши по объектам, расположенным на рабочем столе или в файловом браузере Nautilus, то появится контекстное меню, которое позволит вам выполнять операции непосредственно с этими объектами. Но вы не ограничены только возможностями, определенными по умолчанию, вы можете добавить в меню шаблоны документов и скрипты, к которым можно получить доступ за один щелчок мыши.
Шаблоны быстрого доступа
Если щелкнуть правой кнопкой мыши по рабочему столу или по полю фона в окне Nautilus, то появится пункт меню Create Document (Создать документ), в котором обычно есть только элемент «Empty File» («Пустой файл»). Если вы выберите «Empty File», то будет создан новый файл с именем new file, который можно переименовать так, как вам нравится. Но новый файл будет просто абсолютно пустым. Создание документа осуществляется, в сущности, точно также:
Впрочем, в меню легко добавить свои собственные шаблоны. Создайте в вашем домашнем директории каталог с названием 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 и конвертировать аудио форматы, щелкнув по файлу правой кнопкой мыши:
Подсказка
Не видите меню Scripts (Скрипты), когда вы щелкаете правой кнопкой мыши? Это возможно из-за того, что Nautilus считает, что у вас нет скриптов. Для того, чтобы сообщить ему о скриптах, выберите Go→Location, в адресной строке наберите
/.gnome2/nautilus-scripts и нажмите Enter. Следующий раз, когда вы щелкните правой кнопкой мыши по файлу или директорию, вы должны увидеть меню Scripts (Скрипты).
В качестве простого примера, вы можете поместить в директорий
/.gnome2/nautilus-scripts/Terminal следующий скрипт, который облегчит вам доступ к терминалу из контекстного меню:
Этот скрипт позволяет всякий раз, когда вы щелкните правой кнопкой мыши, открывать терминал в директории следующего вверх уровня. Поэтому если вы щелкните правой кнопкой мыши по иконке
/foo, вы откроете термина, текущим директорием которого будет
. Но, предположим, вы щелкнули правой кнопкой по некоторому директорию. Скрипт Terminal, приведенный ниже, проверит каждый элемент в переменной NAUTILUS_SCRIPT_SELECTED_FILE_PATHS , и, если он посчитает, что это директорий, он выполнит для него команду cd и откроет там терминальное окно. В противном случае, он просто откроет терминал в директории, в котором содержится элемент, по которому щелкнули мышкой:
Источник
Контекстное меню в линукс
В линуксе есть контекстное меню (меню вызываемое правой клавишей мыши), пожалуйста подскажите мне как узнать какое приложение запускается или какая команда когда я выбираю один из пунктов этого меню ?
В Linux нет «общей» реализации этого механизма. Когда ты нажимаешь ПКМ, за отображение этого меню отвечает та программа, в области экрана которой ты это делаешь.
за отображение этого меню отвечает та программа, в области экрана которой
Если только речь не идёт про рамку окна. Тогда меню показывает оконный менеджер.
Это зависит от окружения. Например, во Fluxbox это можно сделать через fluxbox-remote RootMenu.
Хорошо, задам вопрос иначе — чем можно редактировать контекстное меню, вызываемое ПКМ в линукс?
Зависит от того, какой программе принадлежит это меню.
Нет его. Или я чего-то не знаю?
В общей формулировке вопрос ответа не имеет.
Вангую, что контекстное меню ты вызываешь из какого-нибудь файлового менеджера и хочешь разобраться с файловыми ассоциациями. Но гадать можно бесконечно.
Определись, что всё же за программа, из которой меню вызывается, ну заодно DE/WM и дистрибутив. А линукс — это ядро, у решений на его основе в некоторых случаях может не то, что меню не быть, а и вообще вывода на экран.
Определись, что всё же за программа, из которой меню вызывается, ну заодно DE/WM и дистрибутив.
Подскажи, как это сделать меню и в Африке меню. Есть ли универсальный способ сделать это из командной строки?
Как это нет, если при щелчке на подключенной флешке появляется меню где предлагается безопасное извлечение устройства?
Вот и возникает проблема как из командной строки узнать какой оконный менеджер используется?
Это что за бред? Какой флешке?
Как я по флешке буду щелкать правой клавишей мыши?
А если ты про монтирование, то «иконки» только у вендовозов есть, если что. Монтирование производится командами mount/umount, если что.
Это не бред в-первых, во вторых прислать скриншот? В той линукс, что я пользуюсь монтирование идет средствами меню — кс для этого можно использовать, можно не использовать по желанию. Я не виноват, что у тебя в линуксе такого нет.
Это — не линукс явно, а бубунта какая-нибудь. В линуксе монтирование руками делается. А если и автоматом, то размонтировать ты все равно будешь командой umount.
Ты определенно с неправильного дистрибутива начал. Поставь себе генту по хэндбуку с i3wm или другим минималистичным WM. DE не нужны.
Ты не прав, это debian based дистрибутив (основан только на дебиан никаких ubuntu, mint там и в помине не было)
Если только речь не идёт про рамку окна. Тогда меню показывает оконный менеджер.
Не всегда. Есть ещё CSD (client side decorations), например в GNOME 3+.
Это значит, что там вместо системы инициализации systemd, т.е. это — не линукс, а мастдайка самая обычная!
пожалуйста подскажите мне как узнать какое приложение запускается или какая команда когда я выбираю один из пунктов этого меню ?
Смотреть исходники программы, где показывается это контекстное меню. В общем случае для пунктов контекстного меню никаких команд и запуска программ нет, только обработка события программой в зависимости от GUI тулкита.
Это предложение перерыть все исходники того линукса где вызывается контекстное меню?
По поводу systemd не уверен, есть ли она там, дистрибутив 2015 года.
В какой программе надо изменить контекстное меню?
Вот это я и сам спрашивал неколькими постами выше. Пока ответа не получил.
Это вас спрашивали. Вы кликаете ПКМ и у вас открывается контекстное меню, которое надо изменить, верно? Куда (по какому окну) вы кликнули?
debian based дистрибутив (основан только на дебиан никаких ubuntu, mint там и в помине не было)
Ну вот теперь кидаем монетку: Kali или AstraLinux…
Kali, только сильно пинать не надо типа того, чем тебе такой-то дистрибутив не угодил. Ибо это совсем будет не конструктивный диалог.
Ставьте убунту, пока вы с дюжиной багов сюда не пришли.
при щелчке на подключенной флешке появляется меню где предлагается безопасное извлечение устройства
Моё подозрение, что речь про файловый менеджер, усилилось…
Пробовал минт кривоват
- при долгой работе отваливается wifi
- Виснет на ровном месте и причем намертво
Источник
Добавление новых пунктов в контекстное меню Nautilus
В стандартном файловый менеджере Nautilus среды Gnome можно добавлять свои пункты в контекстное меню, которое отображается при клике правой кнопкой мыши по файлам. Таким образом, мы можем создать различные действия над различными типами файлов и выполнять их прямо из контекстного меню Nautilus, не запуская (не открывая) дополнительных программ.
Нам понадобится программа Nautilus Actions (Настройка действий в Nautilus), с помощью которой можно создавать дополнительные действия для файлового менеджера. Установите программу Nautilus Actions, выполнив в командной строке:
Запустите программу из меню «Система->Параметры->Настройка действий в Nautilus».
Добавляем новое действие для Nautilus
Теперь добавим новое действие (пункт контекстного меню для Nautilus). В программе выберите пункт меню «File->New action». В списке действий появится новое действие «New Nautilus action». Нажмите на него. Справа располагаются настройки для данного действия. Для примера создадим действие, по которому мы сможем открывать графические файлы в редакторе GIMP (а не в стандартной программе просмотра изображений, как это установлено по умолчанию). Можно, конечно, воспользоваться пунктом Открыть в программе, но нас сейчас интересует не это, а то как создать свой пункт меню.
Настройка действия: вкладка Action
У нас открыта вкладка Action. В поле Context label введите название пункта меню, который будет добавлен в контекстное меню Nautilus. Также можно заполнить поле Tooltip — всплывающая подсказка, которая появляется при наведении курсора мыши на пункт меню. Поле Icon позволяет задать пиктограмму (иконку) для пункта меню.
Две галочки «Display item in selection context menu» и «Display item in location context menu» означают, соответственно, показывать пункт меню для выбранных фалов и показывать пункт меню если файлы не выбраны (действие будет применяться к текущей директории).
Настройка действия: вкладка Command
Далее перейдите на вкладку Command. Здесь и задается в поле Path полный путь до команды, которая должна быть выполнена при клике на пункт меню. Нас интересует команда gimp. Файл запуска для Gimp размещается у меня в директории /usr/bin, поэтому в поле Path пишем: /usr/bin/gimp. Если вы хотите вызвать какую-нибудь другую утилиту (программу), то определить ее полный путь можно, выполнив команду whereis название_программы. В поле параметры мы задаем аргументы, которые будут переданы нашей программе. Полный список аргументов можно вывести, нажав кнопку Legend. Укажите в поле Parameters: %M. Это значит, что программе Gimp будет передан список выбранных файлов, разделенных запятыми. В итоге получаем следующее:
Отдельно стоит сказать про поле Profile (профиль). Для каждого действия (пункта меню) можно создать несколько профилей, которые будут отличаться своими настройками, а выбор нужного профиля будет зависеть от тех настроек, которые вы укажите.
Настройка действия: вкладка Folders
Здесь задаются директории, в которых наш пункт меню должен показываться. То есть если нам, например, нужно показывать пункт меню только в директории /home/pingvinus/photos, тогда мы должны добавить ее в список (кнопкой Плюсик), а остальные удалить. По умолчанию установлено «/», то есть вся файловая система.
Настройка действия: вкладка Conditions
В этой вкладке задаются типы файлов, для которых должен отображаться наш пункт меню. Для примера укажем в поле Filenames, что нас интересуют только файлы с расширениями jpg и png.
Также установим галочку напротив пункта «Appears if selection has multiple files or folders», то есть показывать пункт меню, если выбрано несколько файлов или папок.
Настройка действия: вкладка Advanced Conditions
Здесь мы можем указать дополнительные условия, при которых пункт меню должен отображаться. Например, только для локальных файлов (file — Local files) или удаленных файлов (FTP, SSH и др.).
Сохраняем действие
Теперь сохраните все проделанные изменения выбрав пункт меню «File->Save» или нажав клавиши Ctrl+S.
Проверяем
Осталось проверить работоспособность нашего пункта меню. Откройте любую директорию, содержащую графические файлы (в частности в формате jpg и png), выберите их и нажмите правую кнопку мыши. В контекстном меню должен появиться пункт «Открыть в GIMP». При клике на него, запустится графический редактор GIMP и автоматически откроются, выбранные вами графические файлы.
Источник