Как заставить Gedit запускать пользовательскую команду при сохранении файла определенного типа? - PullRequest
1 голос
/ 10 августа 2011

Например, для файлов с исходным кодом я хочу, чтобы gedit сохранил его при сохранении.

Часть "run lint" выполняется с помощью плагина External Tools. Теперь я могу запустить его автоматически каждый раз, когда сохраняю файл с исходным кодом?

Ответы [ 2 ]

3 голосов
/ 20 августа 2011

Вы можете сохранить ваш файл с помощью внешнего инструмента под управлением lint.Есть поле Сохранить со следующими параметрами: Ничего , Текущий документ и Все документы .Сохранение выполняется до запуска инструмента.

Вот снимок экрана:

External Tools Manager (gedit)

1 голос
/ 17 февраля 2014

Я играл с вариацией этого - я хочу, чтобы одно сочетание клавиш запускало инструмент, который приведёт в порядок Python, CSS или HTML, в зависимости от типа файла. Но если вы сопоставите ctrl s с внешним инструментом, который запускает lint, если тип файла совпадает, не делает, если нет, и сохраняет в конце, несмотря ни на что. Примерно так:

if [ $GEDIT_CURRENT_DOCUMENT_TYPE = "text/x-python" ]; then
    # Run lint
elif [ $GEDIT_CURRENT_DOCUMENT_TYPE = "text/html" ]; then  
    # Run tidy
elif [ $GEDIT_CURRENT_DOCUMENT_TYPE = "text/css" ]; then
    # run csstidy
else 
    cat -
    echo "Type is:" $GEDIT_CURRENT_DOCUMENT_TYPE > /dev/stderr
    echo "so I'm not doing a thing." > /dev/stderr
fi

NB. Если ваш внешний инструмент настроен на замену вашего документа при запуске, вы хотите добавить cat -, чтобы прочитать оригинал обратно в gedit, чтобы вы не просто забили его. Если все ваши выходы идут на панель Shell Output, вам это не понадобится.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...