Есть ли способ всегда запускать один и тот же файл в TextMate при работе над проектом Python? Я всегда нажимаю ⌘+R при редактировании случайного файла, забывая вернуться к вкладке, содержащей основную часть этого проекта. Должен быть способ сделать это; клики по вкладкам в этом сценарии действительно являются ударом скорости.

1 ответ1

2

Да, это возможно, и для этого есть несколько возможностей. Легким решением было бы написать команду, которая вызывает Python для основного файла, т.е.

python /path/to/project/main.py

как команда, связанная с Command + R. Лучшие команды будут

python $TM_DIRECTORY/main.py

или же

python $TM_PROJECT_DIRECTORY/main.py

Однако вы потеряете красивый вывод, который предоставляет команда по умолчанию. Поэтому у вас есть другая опция: установите переменную экземпляра $ TM_PROJECT_MASTER, чтобы она указывала на ваш основной файл. Вы можете установить эту переменную как абсолютную или относительную к $ TM_PROJECT_PATH. Относительный путь может быть целесообразным, конечно. Для этого вы можете установить $ TM_PROJECT_MASTER в качестве статической переменной среды, что можно сделать следующим образом

  1. Перейдите в "Настройки"> "Дополнительно"> "Переменные оболочки"
  2. Добавьте переменную «$ TM_PROJECT_MASTER» и введите «main.py» или любой другой файл, подходящий для ваших проектов.

Если местоположение вашего основного файла меняется от проекта к проекту, этот параметр не поможет. Тем не менее, вы можете установить зависимые от проекта переменные оболочки, которые будут решением в таких случаях:

  1. отмените выбор файлов alls в ящике вашего проекта
  2. нажмите маленькую кнопку информации - появится окно с зависимыми от проекта переменными оболочки
  3. снова добавьте переменную «$ TM_PROJECT_MASTER» и заполните относительную позицию вашего основного файла

Это должно помочь. Повеселись!

PS: См. Https://github.com/textmate/python.tmbundle/commit/c3e38e318c5e80b8fdd78730d65f1a7dee5aa911, если вы ищете объяснение, почему настройка $ TM_PROJECT_MASTER помогает.

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