Для многих старомодных разработчиков терминал — это святое. Придется отнимать его у них из холодных мертвых рук.
Хотя большинство разработчиков предпочитают работать в интегрированной среде разработки (IDE), есть те, кто ценит эффективность, простоту и скорость работы прямо из окна терминала. В терминале доступны редакторы, такие как nano, vi и Emacs, а также стандартные инструменты разработчика, такие как Python, GCC, Make и другие.
Для многих старомодных разработчиков терминал — это всё. Их не так-то просто заставить отказаться от своих любимых инструментов.
Еще одна причина важности терминальных приложений заключается в том, что они позволяют удаленно подключаться к другим машинам и работать с ними, будто вы находитесь локально. С помощью SSH вы можете получить доступ ко всем командным строкам на удаленном компьютере.
Терминалы великолепны, но существует множество терминальных приложений. Какие из них лучше подходят для разработчиков? Давайте разберемся.
1. Warp
Начну с двух самых современных терминальных приложений, первым из которых является Warp. Я даже установил Warp как свое основное терминальное окно как на Linux, так и на macOS, потому что оно действительно впечатляет. Warp не только имеет все стандартные функции пользовательского интерфейса (например, вкладки, раздельные панели и поддержку большинства оболочек), но и предлагает современные функции, такие как встроенная ИИ (включая режим Agent, который позволяет вам вводить запросы на естественном языке, а Warp возвращает необходимую команду) и Warp Drive, где можно создавать коллекции сниппетов для повторного использования, а также добавлять рабочие процессы (шаблоны команд, которые можно сохранять и делиться ими). Для меня самым лучшим в Warp является встроенный ИИ. Если я не могу понять, как сделать что-то в Python, я использую ИИ Warp, чтобы найти решение.
Warp можно бесплатно установить и использовать на Linux, macOS и Windows. Также доступны три платные лицензии:
- Pro ($15/пользователь/месяц): до 1000 запросов ИИ в месяц, неограниченное количество принятых предложений Next Command, высокий лимит токенов и частная поддержка по электронной почте.
- Team ($22/пользователь/месяц): неограниченное количество запросов ИИ, максимальный лимит токенов, неограниченное количество общих блокнотов и рабочих процессов, а также возможность совместного реального времени.
- Enterprise (индивидуальная цена): использование собственной LLM, политика OpenAI по нулевому хранению данных, SAML-based SSO и выделенный менеджер аккаунта с поддержкой через Slack.
2. Windsurf
Я недавно рассказывал о Windsurf для The New Stack и нашел его удивительным инструментом. Главное преимущество этого терминала в том, что он позиционируется как первая «агентная IDE». Для достижения этой цели Windsurf использует инструмент автодополнения Codeium и предоставляет предложения кода и автодополнения для более чем 70 языков программирования. Особенно меня поразило, насколько хорошо Windsurf помогает писать скрипты на Python, и даже позволяет развивать их прямо в рамках AI-чата. Это впечатляет… очень впечатляет.
Windsurf также включает такие функции, как рабочие пространства, потоки, многофайловое редактирование, автоматическое рассуждение действий, интеграцию естественного языка и мощный контекстный движок. Windsurf даже включает действия «run» и «debug» для тестирования ваших приложений.
Windsurf можно бесплатно установить и использовать на Linux, macOS и Windows.
3. Terminator
Теперь переходим к более традиционным терминальным приложениям. Terminator — это очень популярный открытый терминал для Linux, основанный на GNOME Terminal. Что делает Terminator лучше других? Во-первых, он позволяет создавать многооконные панели, чтобы вы могли одновременно использовать несколько терминалов. Размер вашего экрана будет определять, сколько панелей вы сможете открыть одновременно. Например, вы можете иметь один терминал для написания и редактирования кода, другой для компиляции, третий для запуска скриптов и четвертый для удаленной работы. Возможности безграничны. Другие функции включают вкладки, настраиваемые макеты, расширенную историю команд, поддержку скриптов, эмуляцию других терминалов, улучшенную поддержку клавиатуры, интеграцию с системным трейем, темы, поддержку плагинов, поддержку различных типов файлов, подсветку синтаксиса, автодополнение команд, цветное форматирование вывода и кроссплатформенную совместимость. Еще одна классная функция — возможность группировать терминалы и вводить текст одновременно во всех них.
Terminator можно бесплатно установить и использовать на Linux, macOS и Windows.
4. Guake
Guake — это особый вид терминала, который остается скрытым, пока вы не вызовете его с помощью горячей клавиши. Когда вы вызываете этот терминал, он спускается сверху вашего экрана, чтобы вы могли использовать его по необходимости. Отправьте его обратно наверх и займитесь другой работой. Когда вам снова понадобится вернуться к коду, нажмите ту же комбинацию клавиш, и Guake снова появится. Я добавил Guake в этот список из-за его удобства и широких возможностей для настройки. Например, вы можете изменить тему, высоту, ширину, оболочку, настроить горячие клавиши, создать хуки и многое другое. Что касается встроенных функций программирования, их здесь нет, потому что это чисто терминальное приложение. Но благодаря удобству Guake, я решил включить его в список.
Guake можно бесплатно установить на большинстве дистрибутивов Linux.
5. Contour
Contour — это современная интерпретация стандартного терминального приложения, предназначенного для повседневного использования, но ориентированного в первую очередь на продвинутых пользователей. Contour имеет множество функций, таких как GPU-ускоренное рендеринг, поддержка лигатур шрифтов, поддержка Unicode-элементов, вкладки, жирные и курсивные шрифты, поддержка высокого DPI, вертикальные маркеры строк, режимы ввода, аналогичные vi, поддержка размытия фона для Windows 10 и KDE Plasma/GNOME, перезагрузка конфигурации во время выполнения, поддержка истинного цвета, настраиваемые привязки клавиш, подсветка синтаксиса, темизация и многое другое. С помощью Contour вы даже можете эмулировать другие терминалы, такие как GNOME Terminal и Xterm.
Почему такой простой терминал? Одна из причин — это то, как он обрабатывает эмуляцию терминалов. Если вам нужно протестировать приложение в разных типах терминалов, Contour делает это легко. А поскольку Contour может интегрироваться с другими приложениями (например, файловыми менеджерами и даже IDE), он становится жизнеспособным вариантом для программистов.
Contour можно бесплатно установить и использовать на Linux, macOS и Windows.
Заключение
Все эти терминальные приложения предлагают уникальные возможности для разработчиков. Независимо от того, предпочитаете ли вы современные функции, такие как встроенный ИИ, или классические инструменты, такие как Terminator и Guake, выбор зависит от ваших потребностей и стиля работы.