Время от времени у меня появляются идеи действий, которые я хотел бы иметь в контекстном меню Nautilus. Как мне их туда добавить? Есть ли что-то вроде плагина Thunar UCA для Nautilus?
для «Создать новый документ» при щелчке правой кнопкой мыши, перейдите по
ссылке
Ответы:
25
Ниже ответ устарел: недавно обновленный ответ этот один .
Контекстные меню Nautilus раньше настраивались расширениями Nautilus . Имейте в виду, что эта ссылка ведет к архивному документу; Разработчики Gnome удалили эту документацию и больше не поддерживают такую настройку. Это все еще может работать, хотя.
Вы также можете поместить простые сценарии оболочки в каталог ~/.local/share/nautilus/scripts( ~/.gnome2/nautilus-scriptsв более ранних выпусках), и они появятся в контекстном меню файла в подменю « Сценарии» .
Обратите внимание, что, как сказано в askubuntu.com/questions/281062/… если вы используете Ubuntu 13.04, которая использует более новую версию Nautilus, вы должны использовать ~/.local/share/nautilus/scriptsпапку для вставки ваших скриптов. И даже тогда она будет отображать только скрипты когда вы нажимаете правой кнопкой мыши на файл или папку, а не на пустое место.
Логан
2
разве это не устарело?
@ Cipricus это так. Ответил на 2011 год, а это 6 лет назад . 12 релизов Ubuntu ранее.
ulidtko
вопрос не помечен как специфический для издания, и есть очень недавние ответы
@dessert - я не вижу смысла адаптировать вопрос к устаревшему ответу только потому, что этот ответ был помечен как окончательный в прошлом. Это может привести к тому, что обновленный (и получивший наибольшее количество голосов) ответ будет выглядеть здесь неуместно, тогда как можно было бы просто отметить последний ответ как окончательный. - Другим способом было бы добавить короткое редактирование к окончательному, теперь устаревшему ответу, со ссылкой на обновленный: что я только что сделал.
30
Обновление для Ubuntu 18.04
На момент выпуска Ubuntu 18.04 Nautilus-Actions был / больше не доступен. Похоже, что она также была заменена новой программой Filemanager-Actions, которая в остальном выглядит идентично.
Чтобы установить эту программу, посмотрите это решение.
Действия наутилуса
Мы можем определить наши собственные пункты контекстного меню, вызываемые правой кнопкой мыши, с помощью nautilus-actions .
Запустите инструмент настройки Nautilus-Actions либо из Dash, либо из терминала с
nautilus-actions-config-tool
На вкладке « Действие » присвойте своему действию метку, например «Открыть в Терминаторе», и выберите ее для отображения в выделенном или контекстном меню.
Затем откройте вкладку « Команда », чтобы ввести команды для запуска
Укажите полный путь к вашей команде ( /usr/bin/command_to_run) и опциям программы.
После выхода и повторного входа появится контекстное меню правой кнопкой мыши ниже:
Можно использовать расширение Python-Nautilus в качестве альтернативы nautilus-actions.
Установить:
sudo apt-get install python-nautilus
Простой пример:
import os
from gi.repository importNautilus,GObjectclassColumnExtension(GObject.GObject,Nautilus.MenuProvider):def __init__(self):passdef menu_activate_cb(self, menu, file):
os.system("write here your simple bash command & pid=$!")def get_background_items(self, window, file):
item =Nautilus.MenuItem(name='ExampleMenuProvider::Foo2',
label='Name of your item',
tip='',
icon='')
item.connect('activate', self.menu_activate_cb, file)return item,
Скопируйте этот скрипт на Python ~/.local/share/nautilus-python/extensionsи перезапустите nautilus. Когда вы щелкнете правой кнопкой мыши на рабочем столе и выберете свой элемент, ваша простая команда bash будет выполнена :)
Вам может понадобиться создать nautilus-pythonи extensionsпапки, если их там нет.
souravc
Я попробовал большинство решений в этой теме и обнаружил, что решение Python является лучшим. Хотя он и не идеален, главным образом из-за отсутствия документации, он допускает более гибкий сценарий и переносимость.
Рикардо Родригес
3
Если вы хотите быть в состоянии что-то сделать в любое время, делайте, как говорит ulidtko, и используйте ~/.gnome2/nautilus-scripts.
Если вы хотите иметь возможность настроить, когда вы его видите, установите пакет nautilus-actions, затем перейдите в System-> Preferences-> Nautilus Actions Configuration.
Перейдите в каталог ~/.local/share/nautilus/scripts/
Поместите туда свой скрипт (написанный на Bash, Perl или Python).
Пометьте скрипт как исполняемый с помощью Nautilus или из терминала с chmod +x script_name
Наутилус делает переменные среды доступными для вашего скрипта: NAUTILUS_SCRIPT_SELECTED_FILE_PATHS, NAUTILUS_SCRIPT_SELECTED_URIS, NAUTILUS_SCRIPT_CURRENT_URI и NAUTILUS_SCRIPT_WINDOW_GEOMETRY
В ( Справка Ubuntu - Образцы сценариев Nautilus ) находятся примеры сценариев для отправки файлов электронной почты, монтирования файла ISO, настройки файлов только для чтения, редактирования файла с привилегиями GEDIT ROOT, открытия терминала в текущем месте и т. Д.
Просмотрите сценарии и возьмите один в качестве шаблона для шифрования файлов, загрузки в облако, сжатия в резервное копирование или всего, что вам нужно сделать.
Допустим, вы хотите создать приложение , которое пользователь устанавливает с помощью сценария или .debфайла, с этим в виду , я буду объяснять , почему я думаю , что python-nautilusэто лучшее решение по сравнению с Nautilus-действий и наутилусов сценариев .
Это единственное решение, которое предлагает графический интерфейс и, следовательно, облегчает создание сложного поведения, например, решает, какие пункты меню показывать, если выбран mime-тип выбранного файла text/plain.
Основная проблема этого решения заключается в том, что нелегко (если вообще возможно) импортировать записи на другой компьютер без инструмента конфигурирования и пользователя, импортирующего его, скажем просто, что это невозможно сделать со сценарием.
Это более прямолинейное решение, подобрать сценарий, поместить его в папку и все готово. Это определенно позволит установочному сценарию или .debфайлу создать новую запись в контекстном меню. Какие проблемы? С чего начать ...
Он всегда отображается в подменю «Сценарии».
Это не показывает, если у вас ничего не выбрано.
Это не позволяет вам решить, следует ли показывать запись или нет.
Не позволяет всплывающие подсказки или другие названия. (может быть, я привередлива)
Хорошее приложение не использует подобные ярлыки, потому что оно портит пользовательский опыт.
Не так легко создать, как предыдущие решения, но предлагает лучшее из обоих миров. Сценарии и настройка.
Это решение позволяет вам создать скрипт Python, который получает файлы, выбранные в nautilus, и позволяет вам решить, хотите ли вы показать запись или нет, и что делать с этой записью. Это также позволяет вам создавать подменю и / или классные вещи.
Недостатком является большая нехватка документации, и разработчики, которые просто хотят добавить запись, могут потерять пару часов на создание рабочего прототипа (в моем исследовании я нашел решение на основе C, которое было намного сложнее, чем это).
Обычно я использую код Visual Studio, в то время как в Windows он предлагает пункт контекстного меню Open with Visual Studio Code, ему не хватает той же функциональности в Linux, а с помощью решения Python было бы легко решить эту проблему. Я думаю, что приложения в Linux могли бы выиграть от интеграции наутилуса.
Надеюсь, что это объяснение помогло вам решить, что выбрать.
Ответы:
Ниже ответ устарел: недавно обновленный ответ этот один .
Контекстные меню Nautilus раньше настраивались расширениями Nautilus . Имейте в виду, что эта ссылка ведет к архивному документу; Разработчики Gnome удалили эту документацию и больше не поддерживают такую настройку. Это все еще может работать, хотя.
Вы также можете поместить простые сценарии оболочки в каталог
~/.local/share/nautilus/scripts
(~/.gnome2/nautilus-scripts
в более ранних выпусках), и они появятся в контекстном меню файла в подменю « Сценарии» .источник
~/.local/share/nautilus/scripts
папку для вставки ваших скриптов. И даже тогда она будет отображать только скрипты когда вы нажимаете правой кнопкой мыши на файл или папку, а не на пустое место.Обновление для Ubuntu 18.04
На момент выпуска Ubuntu 18.04 Nautilus-Actions был / больше не доступен. Похоже, что она также была заменена новой программой Filemanager-Actions, которая в остальном выглядит идентично.
Чтобы установить эту программу, посмотрите это решение.
Действия наутилуса
Мы можем определить наши собственные пункты контекстного меню, вызываемые правой кнопкой мыши, с помощью nautilus-actions .
Запустите инструмент настройки Nautilus-Actions либо из Dash, либо из терминала с
На вкладке « Действие » присвойте своему действию метку, например «Открыть в Терминаторе», и выберите ее для отображения в выделенном или контекстном меню.
Затем откройте вкладку « Команда », чтобы ввести команды для запуска
Укажите полный путь к вашей команде (
/usr/bin/command_to_run
) и опциям программы.После выхода и повторного входа появится контекстное меню правой кнопкой мыши ниже:
источник
nautilus-actions-config-tool
и добавьте 'Create launcher' в контекстное меню Nautilus (безgnome-desktop-item-edit
)Можно использовать расширение Python-Nautilus в качестве альтернативы
nautilus-actions
.Установить:
Простой пример:
Скопируйте этот скрипт на Python
~/.local/share/nautilus-python/extensions
и перезапустите nautilus. Когда вы щелкнете правой кнопкой мыши на рабочем столе и выберете свой элемент, ваша простая команда bash будет выполнена :)источник
nautilus-python
иextensions
папки, если их там нет.Если вы хотите быть в состоянии что-то сделать в любое время, делайте, как говорит ulidtko, и используйте
~/.gnome2/nautilus-scripts
.Если вы хотите иметь возможность настроить, когда вы его видите, установите пакет nautilus-actions, затем перейдите в System-> Preferences-> Nautilus Actions Configuration.
источник
29 ноября 2016 года эпохи Ubuntu 14.04, 16.04 и 16.10 плюс более ранние версии.
Смотрите инструкции Nautilus для создания своего собственного скрипта здесь ( Help Ubuntu - Сценарии Nautilus Как ). В основном вы:
~/.local/share/nautilus/scripts/
chmod +x script_name
В ( Справка Ubuntu - Образцы сценариев Nautilus ) находятся примеры сценариев для отправки файлов электронной почты, монтирования файла ISO, настройки файлов только для чтения, редактирования файла с привилегиями GEDIT ROOT, открытия терминала в текущем месте и т. Д.
Просмотрите сценарии и возьмите один в качестве шаблона для шифрования файлов, загрузки в облако, сжатия в резервное копирование или всего, что вам нужно сделать.
источник
TL; DR
Лучшее решение для разработчиков приложений - использовать python-nautilus .
Создайте свой скрипт на Python ( следующие примеры и плохую документацию ) и скопируйте его в нужную папку:
Детальное объяснение
Допустим, вы хотите создать приложение , которое пользователь устанавливает с помощью сценария или
.deb
файла, с этим в виду , я буду объяснять , почему я думаю , чтоpython-nautilus
это лучшее решение по сравнению с Nautilus-действий и наутилусов сценариев .Действия наутилуса
Это единственное решение, которое предлагает графический интерфейс и, следовательно, облегчает создание сложного поведения, например, решает, какие пункты меню показывать, если выбран mime-тип выбранного файла
text/plain
.Основная проблема этого решения заключается в том, что нелегко (если вообще возможно) импортировать записи на другой компьютер без инструмента конфигурирования и пользователя, импортирующего его, скажем просто, что это невозможно сделать со сценарием.
Сценарии Наутилуса
Это более прямолинейное решение, подобрать сценарий, поместить его в папку и все готово. Это определенно позволит установочному сценарию или
.deb
файлу создать новую запись в контекстном меню. Какие проблемы? С чего начать ...Хорошее приложение не использует подобные ярлыки, потому что оно портит пользовательский опыт.
питон-наутилус
Не так легко создать, как предыдущие решения, но предлагает лучшее из обоих миров. Сценарии и настройка.
Это решение позволяет вам создать скрипт Python, который получает файлы, выбранные в nautilus, и позволяет вам решить, хотите ли вы показать запись или нет, и что делать с этой записью. Это также позволяет вам создавать подменю и / или классные вещи.
Недостатком является большая нехватка документации, и разработчики, которые просто хотят добавить запись, могут потерять пару часов на создание рабочего прототипа (в моем исследовании я нашел решение на основе C, которое было намного сложнее, чем это).
Обычно я использую код Visual Studio, в то время как в Windows он предлагает пункт контекстного меню
Open with Visual Studio Code
, ему не хватает той же функциональности в Linux, а с помощью решения Python было бы легко решить эту проблему. Я думаю, что приложения в Linux могли бы выиграть от интеграции наутилуса.Надеюсь, что это объяснение помогло вам решить, что выбрать.
источник