Я хочу добавить опцию в контекстное меню finder, которое вызывает hg add %1
, при этом% 1 является полным путем для выбранного файла в finder.
Конечно, есть более полезные случаи, о которых я могу думать, чтобы добавить в контекстное меню.
Есть ли простой способ сделать то, что не связано с установкой какого-либо стороннего программного обеспечения или кодирования на скомпилированном языке и построением бинарных плагинов?
Как создание script с помощью редактора script и удаление его в /Library/Contextual Menu Items/
?
Добавление контекстного меню Finder script в MacOS
Ответ 1
Да, я знаю, что это стороннее программное обеспечение, но ради более полного обзора - http://www.abracode.com/free/cmworkshop/on_my_command.html. Другим инструментом, облегчающим вашу запись script, является http://wafflesoftware.net/thisservice/ добавление элементов в сервисное меню.
Ответ 2
Шаги изменились для Snow Leopard/10.6 +, так как @khachik правильный ответ. Чтобы убедиться в этом, выполните следующие действия:
- Открыть Automator
- Создайте новый
Service
- Установите верхние два раскрывающихся списка сверху, чтобы "Сервис получил выбранный
files or folders
вFinder.app
" - Задайте ввод ввода
as arguments
- Напишите script (см. ниже).
- Сохранить и выбрать имя службы
Ваше окно Automator должно выглядеть так: :
Теперь вы можете выбрать несколько файлов в Finder, а затем выполнить свою службу в подменю "Службы".
Для вашего script, я думаю, вы хотите следующее. Это изменяется в каждый каталог аргументов, а затем добавляет его. Я использую цикл for, потому что Finder позволяет вам выбирать несколько файлов в разных папках (которые могут быть в разных хранилищах).
for f in "[email protected]"
do
cd $(dirname $f); hg add $f
done
Если вы предположили, что все они находятся в одном репозитории, вы можете сделать это:
cd $(dirname $1); hg add [email protected]
Ответ 3
Откройте Automator, создайте собственный рабочий процесс. Из Library
выберите Utilites
, затем перетащите Run shell script
в рабочий процесс. Установите Pass input
в As arguments
. Напишите в script: hg add $1
. Затем File menu->Save as a Plugin
укажите имя, выберите plugin for Finder
, Save
. Щелкните правой кнопкой мыши файл, выберите More->Autamator-><PLUGIN_NAME>
.