Відповіді:
Нижче наведена відповідь застаріла: нещодавно оновлена відповідь - це ця .
Контекстні меню Nautilus використовувались за допомогою розширень Nautilus . Попереджуйте, що це посилання веде до архіву документа; Gnome devs вилучив цю документацію і більше не підтримує таке налаштування. Це все ще може працювати.
Ви також можете розмістити прості сценарії оболонки в каталозі ~/.local/share/nautilus/scripts
( ~/.gnome2/nautilus-scripts
у ранніх версіях), і вони з'являться у контекстному меню файлу в підменю Сценарії .
~/.local/share/nautilus/scripts
папку для розміщення своїх сценаріїв. коли ви клацніть правою кнопкою миші на файл або папку, а не порожнє місце.
На дату виходу Ubuntu 18.04 Nautilus-Actions був / більше недоступний. Схоже, це було замінено новою програмою під назвою Filemanager-Actions, яка інакше виглядає ідентично.
Щоб встановити цю програму, дивіться це рішення.
Ми можемо визначити наші власні пункти контекстного меню правою кнопкою миші за допомогою nautilus-дій .
Запустіть інструмент налаштування Nautilus-дій або з тире, або з терміналу з
nautilus-actions-config-tool
На вкладці " Дія" надайте вашій дії чутливу мітку, наприклад "Відкрити в термінаторі" і виберіть її для відображення у виділеному або контекстному меню.
Далі відкрийте вкладку Command , щоб ввести команди для запуску
Дайте повний шлях до ваших параметрів команд ( /usr/bin/command_to_run
) та програми.
Після виходу з системи та введення знову контекстне меню правою кнопкою миші відобразиться нижче:
nautilus-actions-config-tool
і додайте "Створити запуск" у контекстне меню Nautilus (без gnome-desktop-item-edit
)
Можна використовувати розширення python-nautilus як альтернативу nautilus-actions
.
Щоб встановити:
sudo apt-get install python-nautilus
Простий приклад:
import os
from gi.repository import Nautilus, GObject
class ColumnExtension(GObject.GObject, Nautilus.MenuProvider):
def __init__(self):
pass
def 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
папки, якщо їх там немає.
Якщо ви хочете в будь-який час вміти щось робити, робіть, як каже улідтко, і використовуйте ~/.gnome2/nautilus-scripts
.
Якщо ви хочете мати можливість налаштувати його, побачивши його, встановіть пакет nautilus-action, а потім перейдіть до системи-> Налаштування-> Конфігурація дій Nautilus.
29 листопада 2016 року епохи Ubuntu 14.04, 16.04 та 16.10 плюс більш ранні версії.
Дивіться інструкції Nautilus щодо створення власного скрипту тут ( Help Ubuntu - Nautilus Scripts How to ). В основному ви:
~/.local/share/nautilus/scripts/
chmod +x script_name
Є зразки скриптів, які розміщені в ( Help Ubuntu - Nautilus Sample Script ) для файлів електронної пошти, встановлення ISO-файлу, встановлення файлів лише для читання, редагування файлу з привілеями gedit ROOT, відкриття терміналу в поточному місці тощо.
Перегляньте сценарії та візьміть один як шаблон для шифрування файлів, завантаження у хмару, стискання до резервного копіювання або все, що вам потрібно зробити.
Найкраще рішення для розробників додатків - використовувати python-nautilus .
Створіть свій скрипт python ( наступні приклади та погана документація ) та скопіюйте його у правильну папку:
mkdir -p ~/.local/share/nautilus-python/extensions && cp script.py ~/.local/share/nautilus-python/extensions
Скажімо, ви хочете створити додаток, який користувач встановлює зі сценарієм або .deb
файлом, маючи на увазі, я поясню, чому я вважаю python-nautilus
, що це краще рішення порівняно з nautilus-діями та скриптами nautilus .
Це єдине рішення, що пропонує графічний інтерфейс, тому полегшує створення складного поведінки, наприклад, вирішуйте, які записи в меню відображатимуть, чи є тип mime типу вибраного файлу text/plain
.
Основна проблема цього рішення полягає в тому, що імпортувати записи на інший комп'ютер без Інструменту конфігурації та користувача, який імпортує його, непросто (якщо навіть можливо), скажімо, що це не було б можливо зробити із сценарієм.
Це більш пряме рішення, підберіть сценарій, помістіть його в папку і зробіть. Це безумовно дозволить встановити сценарій або .deb
файл для створення нового запису в контекстному меню. Які проблеми? З чого я починаю ...
Хороший додаток не використовує подібні ярлики, оскільки це руйнує досвід користувача.
Не так просто створити, як попередні рішення, але пропонує найкраще з обох світів. Сценарій та налаштування.
Це рішення дозволяє створити скрипт python, який отримує файли, вибрані в nautilus, і давайте вам вирішити, хочете ви показати запис чи ні, і що робити з цим записом. Це також дозволяє створювати підменю та / або класні речі.
Недолік - велика відсутність документації та розробників, які просто хочуть додати запис можуть втратити пару годин, щоб створити робочий прототип (У своєму дослідженні я знайшов рішення, засноване на C, що було набагато складніше, ніж це).
Я зазвичай використовую Visual Studio Code, тоді як у Windows він пропонує запис у контекстне меню Open with Visual Studio Code
, він не має тієї ж функціональності в Linux, з рішенням Python було б легко вирішити проблему. Я думаю, що додатки в Linux можуть отримати користь від інтеграції з наутилусом.
Сподіваюся, що це пояснення допомогло вам вирішити, що вибрати.