Как открыть терминал в sublime text
Перейти к содержимому

Как открыть терминал в sublime text

  • автор:

How to Use Terminal in Sublime Text Editor ?

Well in Visual Studio Code we get a direct Option for opening Terminal, Unlike Sublime Text editor. Sublime is Simple and free to use, Light on memory, and can easily work with multiple projects. In this article, we will see how to use the terminal in a sublime text editor.

Stepwise implementation:

Step 1: Open Sublime Text,

Step 2: Open Command Palette using command Ctrl+shift+p

Type the below until the option appears and select it.

Note: You’ll need to install package control if you are using it for the first time.

Type ‘Terminus’ and select it. Wait for it to Complete installation and Restart sublime text.

Step 3: Now go to Preferences >Package Settings > Terminus > Command Palette

Now paste this code in the Default sublime Commands Section

Note: The above code is for Linux users for Windows users you have to enter “cmd.exe” in place of “bash”

Step 4: Now go to Preferences >Package Settings > Terminus > Key Bindings

Now paste this code in the Default sublime Keymap Section and save it:

Note: The above code is for Linux users for Windows users you have to enter “cmd.exe” in place of “bash”, also here we kept the shortcut key as “alt+1” you can use your own key.

Step 5: So whenever you want to use terminal press alt+1 and to close terminal type exit in the terminal and hit enter.

Консоль Sublime Text 3

Подскажите, пожалуйста, как настроить консоль в sublimetext3, чтобы не открывать стандартную консоль (cmd) в Windows?

Denis's user avatar

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

Протестировано на

  • Windows 32-bit 10.0.14393, ,
  • Sublime Text Build 3126.

Вообще в Sublime Text по моему вероятностному суждению примерно треть плагинов совсем не работают после установки. Но расписанные в обзоре лично у меня функционируют, что доказывается скринкастами.

По причине того, что использую Windows, не рассмотрены такие решения, как Tint и fish-shell. Если не упомянул что-то ещё, можете добавить.

Терминология

В данном обзоре встроенная консоль Windows называется «консолью» или «внешней консолью» в зависимости от контекста. Согласно автору программы ConEmu называть её cmd.exe не совсем корректно:

В Windows есть встроенный терминал (или “консольное окно”) которое часто ошибочно называют “cmd.exe”. Нажмите Win+R и запустите, например, “powershell.exe”. Среди запущенных процессов не будет “cmd.exe”. В разных версиях Windows консольное окно создают разные процессы, в актуальных – это “conhost.exe”.

0. Не работающее решение

1. SublimePTY

1. Для запуска отдельных команд

Для Sublime Text пишут плагины, облегчающие запуск только отдельных команд только для определённых инструментов программирования. Например, команды Git проще запускать с помощью плагинов Git, SideBar Git и Easygit (Не загружайте Easygit через Package Control, он не будет работать! Установите плагин вручную по ссылке). Так как в вопросе указана метка Node.js , приведу в пример плагин npm .

1. npm

Плагин, благодаря которому можно запускать многие команды npm — пакетного менеджера Node.js.

1. Демонстрация

2. Недостатки

    . Не запускается ряд команд.

2. Эмуляция терминала прямо в Sublime Text

Общая оценка

Все решения хорошие, пользуюсь ими, но полностью внешние терминалы они не заменяют.

1. Glue

1. Оценка

2. Демонстрация

3. Установка и настройка

Скачиваем плагин через Package Control →

  • В открытом файле проекта Ctrl+Shift+P → Glue — Launch .
  • Или же кликаете правой кнопкой мыши по папке в сайдбаре, в выпадающем меню выбираете Open Glue Terminal .

Откроется quick panel, куда следует вводить команды:

Glue Quick Panel

Появится файл terminal.glue . Без него никак, если мешает, можете добавить расширение glue в .gitignore , .hgignore или другой файл, который используется для игнорирования директорий/файлов в Вашей системе контроля версий.

Чтобы в выводе была хоть какая-то подсветка, скачиваем плагин PowerShellнастраиваем для расширения glue синтаксис PowerShell.

4. Достоинства

  • Не нужно выходить из Sublime Text, чтобы запускать команды,
  • Достаточно многофункциональный плагин,
  • Удобнее осуществлять навигацию по output, если тот большой, во вкладке, нежели в консоли.

5. Недостатки

  • Разработка прекращена, шанс, что ответят на Ваш багрепорт, минимален,
  • А багов, которые не воспроизводятся в других терминалах, достаточно. Так, не рекомендовал бы пушить изменения Git через Glue. . Cash в Glue не запустишь.

6. Дополнительные ссылки

2. SublimeREPL

Позволяет запускать REPL консоль для многих языков программирования во вкладке Sublime Text. В примере этого ответа написано, как настроить SublimeREPL для PowerShell.

1. Оценка

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

2. Демонстрация

3. Установка и настройка

Помимо самого SublimeREPL устанавливаем также плагины Suricate и PowerShell для настройки команды SublimeREPL и подсветки синтаксиса соответственно. Инструкция по настройке команд в Suricate.

Ctrl+Shift+P → SublimeREPL: PowerShell → если у Вас русская версия операционной системы, может вылезти всплывающее окно с примерно следующей ошибкой:

SublimeREPL encoding error

В таком случае перейдите в файл Default.suricate-profile (как — см. инструкцию, всё, что в ней есть, я буду опускать в данном ответе) → и вставьте следующий json-массив. Не путайтесь в JSON-синтаксисе, следите за правильной расстановкой кавычек, скобок и запятых.

4. Параметры аргументов

  • type — тип. Означает, что во вкладке запустится консоль PowerShell, а не какая-либо другая вроде Python или Node.
  • encoding — кодировка.
  • cmd — запускаем PowerShell в консоли Windows.
  • cwd — указываем системную переменную. $file_path означает, что SublimeREPL PowerShell запустится в папке файла, находясь в котором мы запустили SublimeREPL PowerShell.
  • external_id —
    • Во-первых, данным параметром определяется, как будет называться вкладка с PowerShell. Если оставить параметру пустое значение, "external_id": "" , то во вкладке будет указан полный путь к файлу powershell.exe : Полный путь к powershell.exe
      Мы назвали вкладку powershell , но можно по-любому. Если подставите значение sashatriumph , ничего не должно поломаться: Именованный путь
    • Во-вторых, значение параметра external_id является именем файла, где хранится история команд, когда-либо вводимых Вами в SublimeREPL PowerShell. Файл c расширением .db располагается по пути Packages/User/.SublimeREPLHistory .

    5. Достоинства

    • Не нужно выходить из Sublime Text, чтобы запускать команды,
    • Удобнее осуществлять навигацию по output, если тот большой, во вкладке, нежели в консоли.
    • Особенно нравится, что запоминаются все команды, которые когда-либо вводили.

    6. Недостатки

      . Если приходится работать не только с английскими символами, ещё замучаетесь бороться с багами.
    • Разработка прекращена, шанс, что ответят на Ваш багрепорт, минимален,
    • Не всё, что работает в PowerShell, работает в SublimeREPL PowerShell. Например, Cash в Glue не запустишь. SublimeREPL PowerShell не получится заменить терминал полноценно.

    7. Дополнительная ссылка

    3. Terminality

    В примере показан вывод для Python, но можно использовать как консоль и для других языков программирования, включая отсутствующие по умолчанию в плагине.

    1. Оценка

    Использую для обучения Python и PHP.

    2. Демонстрация

    3. Установка и настройка

    Загружаем плагин через Package Control → открываем файл hangman.py , вывод из которого собираемся осуществить, → Ctrl+Shift+P → Terminality: Browse Commands. → Run hangman.py — <sub><sup>Run hangman.py as Python 2.7 document</sup></sub> → видим результат в новой вкладке, включая время, потраченное на компиляцию, в сантисекундах. Обратите внимание, что пунктом меню Run hangman.py as Python3 запускается команда python3 , при выборе Run hangman.py — команда python . Даже когда у Вас установлен Python 3, а не Python 2, если исполняемый файл Python называется python.exe , а не python3.exe , выбирайте Run hangman.py — <sub><sup>Run hangman.py as Python 2.7 document</sup></sub> .

    4. Достоинства

    • Не нужно выходить из Sublime Text, чтобы запускать команды,
    • Удобнее осуществлять навигацию по output, если тот большой, во вкладке, нежели в консоли.
    • Активно поддерживается разработчиками.

    5. Недостатки

    • Некоторые баги, которые не воспроизводятся во внешних терминалах. «Although Terminality can run many commands, it is not gurranteed that it can be used for all commands».

    6. Дополнительные ссылки

    3. Запуск из Sublime Text внешних терминалов

    Достоинства и недостатки относятся уже к вызываемым в Sublime Text терминалам, а не самому Sublime Text.

    1. Консоль/GNOME Terminal

    1. Установка и настройка

    Устанавливаем плагин Suricate. Ctrl+Shift+P → Suricate: Open Terminal Here. → откроется новое окно с консолью для Windows и GNOME Terminal для Linux соответственно в директории с тем файлом, который был у Вас открыт, когда запускали терминал.

    2. Параметры и их значения

    Как выглядит конфигурационный файл Suricate:

    (В оригинальном массиве также есть параметры/значения "group": "launch" , |IsFile , "context_menu": true , каковые я опустил в силу того, что считаю их излишними.)

    • flags — параметр, при помощи которого можно задать различные аргументы для операционных систем или систем управления версиями.
    • args.windows и args.linux — параметры запуска терминалов Windows и Linux.

    Дополнительная ссылка

    2. Запуск любого предпочтительного терминала

    Для примера возьмём, как запустить Git Bash из Sublime Text.

    1. Установка и настройка

    Устанавливаем плагин Suricate → в файл Default.suricate-profile добавляем следующий код:

    Ctrl+Shift+P → Suricate: Git Bash → должен открыться Git Bash в директории с тем файлом, который был у Вас открыт, когда запускали Git Bash из Sublime Text.

    2. Дополнительная ссылка

    3. Плагин Terminal

    1. Описание

    Кроссплатформенный плагин, позволяющий открывать из Sublime Text любой терминал, который лично Вы считаете наиболее предпочтительным. В Windows по умолчанию запускается PowerShell. После установки плагина доступны 3 варианта запуска:

    • Из command palette,
    • Из контекстного меню сайдбара,
    • Шорткатом. Многим пользователям не нравится, что задействуется сочетание, по умолчанию используемое для переоткрытия последней закрытой вкладки, можете перезаписать шорткат в файле пользовательского кеймапа.

    Вызываются две команды:

    • open_terminal — открывает терминал в папке, где лежит файл, вкладка с которым была открыта, когда запускали терминал.
    • open_terminal_project_folder — возможно, работает некорректно. Актуальное поведение:
      • Если Вы запустили команду, из файла, который находится в верхней папке Вашего сайдбара или её подпапках, терминал запустится в этой верхней папке. Например, мой сайдбар:
        Сайдбар
        Когда я запускаю open_terminal_project_folder , например, из файла E:\Киролайна\SashaFolder\SashaFile.txt , терминал откроется в E:\Киролайна .
      • Но когда Вы запускаете команду из файла, не имеющего отношения к верхней папке Вашего сайдбара — в моём случае E:\Киролайна , — поведение команды open_terminal_project_folder аналогично поведению open_terminal .

      2. Настройка

      Вы можете указывать параметры запуска Вашего терминала. Положим, хотите всегда запускать консольный эмулятор cmder только из директории E:\SashaSublime.

      Для упрощения работы с настройками Sublime Text скачиваем плагин Preferences Editor. Ctrl+Shift+P → Edit Preferences: Edit Settings. → Terminal → terminal → в открывшуюся quick panel вставляете путь к исполняемому файлу cmder.exe вместе с именем файла, например, E:\Chocolatey\tools\cmder\Cmder.exe → Enter . Далее Ctrl+Shift+P → Edit Preferences: Edit Settings. → Terminal → parameters → между квадратными скобками вставляем "/START", "E:\\SashaSublime" → Enter . Обратите внимание, что если значения заключены в [квадратные скобки], необходимо экранировать слэши: E:\Chocolatey\tools\cmder\Cmder.exe , но E:\\SashaSublime .

      Теперь после запуска любой из команд — open_terminal либо open_terminal_project_folder должен открыться Cmder.exe в папке E:\SashaSublime .

      Также предусмотрена возможность одним шорткатом запускать один терминал со своими параметрами, вторым хоткеем запускать другой терминал с другими параметрами и т. д. Читаем здесь.

      3. Дополнительные ссылки

      4. ConEmu

      1. Описание

      По умолчанию осуществляется запуск PowerShell в оболочке ConEmu. Как и в плагине Terminal, ConEmu можно запустить из command palette, контекстного меню сайдбара или шорткатом.

      • open_conemu_here — открывает ConEmu в папке, где лежит файл, вкладка с которым была открыта, когда запускали ConEmu.
      • open_conemu_project — возможно, работает некорректно. Всегда открывает ConEmu в верхней папке сайдбара, в моём случае (см. п. 3.3) это E:\Киролайна .

      2. Недостатки

      • Разработчик перешёл на MacOS, плагин больше не поддерживается.
      • Баги. я пофиксил, что нашёл, но далеко не факт, что их больше не осталось.

      3. Дополнительные ссылки

      4. Обратное решение — вывод во внешнюю консоль

      1. Console Exec

      1. Оценка

      Пользуюсь вместо дефолтных Build System.

      2. Описание

      Плагин выводит результаты Build System во внешнюю консоль, а не встроенную Sublime Text. Это может понадобиться по ряду причин.

      • Если после вывода требуется вводить что-то ещё в консоль , — дефолтным механизмом Build System без дополнительных надстроек не обойтись. Установив же Console Exec и добавив в файл Build System всего одну дополнительную строку, Вы можете и дальше вводить команды.
      • Если пользуетесь плагином Build Next, когда в выводе нет ошибок, встроенная панель Build System автоматически закрывается. Использование внешней панели средствами Console Exec избавляет от данной проблемы.
      • Встроенная панель не поддерживает некоторые средства программирования как Pyglet.
      • В панели Build System неудобна навигация. Увеличишь панель Build System — не будет видно содержимого вкладок, уменьшишь — вывода в панель.
      • Выводя результаты во внешнюю консоль, при закрытии Sublime Text внешняя консоль остаётся открытой — дополнительное удобство.

      3. Демонстрация

      4. Настройка

      После установки плагина достаточно добавить в файл Build System одну дополнительную строку:

      Пример для Python. Tools → Builds System → New Build System. → вставляем следующий код и сохраняем файл, например, под именем SashaPythonExec.sublime-build :

      Как создавать и настроить автоматический выбор Build System, подробно рассмотрено по дополнительным ссылкам.

      Во вкладке со скриптом на Python Ctrl+Shift+P → Build With: SashaPythonExec → смотрим результат.

      5. Дополнительные ссылки

      2. Send to Shell

      В Sublime Text существуют плагины, отправляющие во внешний терминал выделенный или скопированный текст, как SendText и SendREPL. Тот же принцип действия у плагина Send to Shell, отправляющего скопированный текст в IPython — интерактивную оболочку для Python, составляющую Jupyter.

      1. Демонстрация

      2. Установка

      Как настроить плагин для отправки скопированного текста на ConEmu в режиме PowerShell.

      • Скачиваем и устанавливаем последнюю версию Python, если Python ещё не установлен в системе.
      • Устанавливаем Jupyter, проще всего, запустив в терминале команду pip install jupyter .
      • Устанавливаем через Package Control PyWin32 — набор расширений Python для доступа ко многим функциям Windows API.
      • Устанавливаем через Package Control плагин Preferences Editor для упрощения работы с файлами настроек Sublime Text.
      • Устанавливаем через Package Control плагин Send to Shell.

      3. Настройка

      Задаём системную переменную PATH, указав в качестве значения путь к файлу ConEmu.exe , для меня это C:\Program Files\ConEmu .

      Запускаем ConEmu → Super+Alt+P → Startup → задаём параметру Specifed named task значение :

      Установка PowerShell в ConEmu

      В Sublime Text 3 Ctrl+Shift+P → Edit Preferences: Edit <kbd>Settings. → SendToShell → powershell_startup → в открывшееся поле вместо powershell вписываем conemu . Ctrl+Shift+P → Edit Preferences: Edit Settings. → SendToShell → window_title → в открывшееся поле вместо Windows PowerShell вписываем заголовок вкладки ConEmu: у меня это powershell (Admin) .

      Опционально предлагаю установить плагин CopyOnSelect, — пусть по первому времени он вызвать неудобства, — копирующий в буфер обмена выделенный текст. Задержка между выделением текста и его копированием в данном плагине составляет секунду, и автор не рекомендует её сильно уменьшать из-за возможных проблем с работой Clipboard-менеджеров.

      Настройка окончена. Выделяем кусок скрипта на Python для отправки в ConEmu → копируем его (а с плагином CopyOnSelect достаточно только выделить) → запускаем команду sendtoshell <"how": "paste_selection">, — по умолчанию сочетанием клавиш Ctrl+Shift+Enter , — в ConEmu пишем команду ipython , а затем %paste . Можно было, конечно, написать плагин так, чтобы пользователь совершал поменьше действий.

      4. Недостатки

      5. Дополнительные ссылки

      5. Поиск плагинов

      Если описанные в обзоре плагины не удовлетворяют Вашим задачам, помимо обычного поиска в Google порекомендовал бы осуществить поиск примерно по следующим ключевым словам и меткам на сайте Package Control:

      Terminal in Sublime Text 3 with keybinding

      The terminal is so useful when you use Python or Javascript ecc. Sublime text is my favourite text editor. Wouldn’t it be great if we could use the cmd from sublime text with the click of a button, having it opened on the directory of the file we’re working on sublime? It could make our daily life a loto easier. Even if I use Sublime Repl to run Python on Sublime (go check how here), there are a lot of occasions that you need to open the terminal and even if you can do it with a couple of clicks, it is so nice to do everything with one touch of the keybord. So, just install terminus plugin for Sublime text. If you want to follow every step of the process, watch the video below where I explain in a couple of minutes the entire process.

      How to keybind terminus with alt + 1

      Copy this into your

      C:\Users\giova\AppData\Roaming\Sublime Text 3\Packages\User\Default (Windows).sublime-keymap

      PS: your path could be different for this file, but you go there easily doing preferences/keybinding on the menu bar of sublime text

      Using terminal inside Sublime text

      Ashwin B

      People who use vscode has a option to open terminal inside it whereas in sublime text it’s not possible. In this article let's see how to get a terminal inside sublime text.

      Implementation:

      1. Open sublime text
      2. Use the key combination Ctrl+shift+p to open Command Palette and then type the below and select it.

      If you don’t have package control you need to install it-> refer this link

      3. Type the following word and select it. Wait for it to complete installation and restart sublime text.

      4. Now go to Preferences > Package Settings > Terminus > Command Palette

      and then paste the following in Default.sublime.commands and save it.

      Note: If you are a windows user replace “bash” with “cmd.exe”.

      5. Then go to Preferences >Package Settings > Terminus > Key Bindings

      Now paste the following in Default.sublime.keymap file.

      Note: If you are a windows user replace “bash” with “cmd.exe”.

      6. Tada !! Now you can open terminal inside your sublime pressing “alt+1”.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *