3

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

3 ответа3

4

На самом деле это довольно легко сделать, используя пользовательскую команду в комплекте.

Вот как сделать простую команду:

  • Откройте редактор пакетов и найдите пакет, к которому вы хотите добавить.
  • Создайте "Новая команда" с помощью кнопки в левом нижнем углу редактора. Назовите его соответствующим образом и установите его source.c .
  • Установите раскрывающийся список действий "Эквивалент ключа" и установите сочетание клавиш Cmd + S
  • Измените выпадающий список "Сохранить" на "Текущий файл".
  • Введите вашу команду и соответственно установите выпадающий список для ввода и вывода. Вход будет передан в STDIN, если я правильно помню.
  • Перезагрузите связки TextMate.

Вот и все. Теперь у вас должна быть команда, которая сохраняет файл и запускает команду.

Вы, вероятно, можете что-то сделать с командами TextMate, используя макрос аналогичным образом.

1

Насколько я знаю, нет способа сделать это, как вы описали, для всех ситуаций сохранения (т. Е. С помощью Command-S, выбора File-> Save и т.д.).

Возможно, вы сможете создать пользовательский элемент пакета, который сохранит документ и выполнит ваш скрипт, и назначит ему Command-S, чтобы он запускался при использовании этого сочетания клавиш.

0

Вы можете вызвать команду после сохранения через семантический класс callback.document.did-save . Это работает на TextMate2+

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .