Fresh добавляет в терминал Linux простой в использовании и мощный текстовый редактор

Если вы достаточно долго работаете в терминале, в конечном итоге вы столкнетесь с ограничениями традиционных текстовых редакторов. nano кажется надежным, но ограниченным, а Vi и vim — мощными, но требующими длительного обучения. Со временем я начал мечтать о терминальном редакторе, который бы работал больше как современные редакторы, но при этом полностью оставался внутри терминала. Именно это сделало Fresh интересным для меня.

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

Основные особенности Fresh

Давайте посмотрим на конкретные особенности, которые делают текстовый редактор Fresh таким полезным инструментом для Linux.

  • Fresh использует традиционный подход к редактированию, позволяя пользователям сразу приступать к работе без изучения режимов или специального синтаксиса команд. Например, вы можете выделить текст и использовать Ctrl + C для копирования, а Ctrl + V для вставки в другое место.
  • Он включает в себя интегрированную панель терминала, позволяющую как редактировать, так и выполнять команды в одном интерфейсе.
  • Редактор поддерживает прямое взаимодействие с указателем, позволяя точно размещать курсор, выделять текст и плавно прокручивать с помощью мыши.
  • Он включает в себя навигатор по каталогам (проводник файлов), который позволяет пользователям находить, открывать и управлять файлами, не возвращаясь в оболочку.
  • Fresh поддерживает гибкие макеты с разделенными видами, элементами управления ориентацией панелей, переносом строк, номерами строк и темами для персонализированных рабочих процессов.
  • Редактор может отображать содержимое markdown в строке, что делает его подходящим для написания и проверки документации.
  • Он использует внутреннюю модель обработки текста, разработанную для эффективного редактирования очень больших файлов без загрузки всего файла в память за один раз.
  • Редактор предоставляет расширенные возможности редактирования, такие как глубокая история отмены и повтора действий, редактирование с помощью нескольких курсоров, выделение по столбцам, интеллектуальное отступление, переключение комментариев и интеграция с системным буфером обмена.
  • Fresh обеспечивает точную навигацию с помощью таких функций, как переход к строке, сопоставление скобок, перемещение по словам, история позиций, закладки и переход непосредственно к ошибкам, сообщенным языковым сервером.
  • Поиск и замена являются мощными и отзывчивыми, поддерживая инкрементный поиск, регулярные выражения, операции в пределах выделения и быстрый поиск по всему проекту.
  • Клавиатурные макросы позволяют записывать и воспроизводить повторяющиеся действия редактирования, повышая производительность при выполнении повторяющихся задач.
  • Fresh интегрирует функции git, такие как отображение статуса репозитория в навигации по файлам и предоставление визуального просмотрщика журнала Git для просмотра истории.
  • Редактор можно расширить с помощью TypeScript через систему плагинов в песочнице, что позволяет настраивать его, сохраняя при этом изолированность расширений от основного редактора.

Установка и начало работы

Fresh еще не доступен в официальных репозиториях большинства дистрибутивов Linux, но он предоставляет быстрый и надежный скрипт установки, который автоматически определяет вашу систему и выбирает лучший метод. Это дает вам стабильную настройку с последними функциями прямо от разработчика.

Чтобы установить Fresh с помощью рекомендуемого быстрого метода, выполните эту команду:

curl https://raw.githubusercontent.com/sinelaw/fresh/refs/heads/master/scripts/install.sh | sh

Кроме того, если у вас установлен набор инструментов Rust, вы можете установить его через Cargo для доступа к самой последней версии:

cargo install fresh-editor

На системах на базе Arch для более быстрой установки рекомендуется использовать бинарный пакет из AUR:

yay -S fresh-editor-bin

Для получения более подробной информации об установке вы можете ознакомиться с руководством по установке на GitHub. Также доступны портативные варианты, такие как AppImage и Flatpak.

После установки в вашей системе с помощью любого предпочтительного метода вы можете запустить Fresh прямо из терминала, набрав:

fresh

Интерфейс мгновенно открывается в терминале с чистым, интуитивно понятным макетом. Кроме того, вы также можете запустить Fresh с конкретным файлом, выполнив следующее:

fresh filename.txt

В качестве альтернативы вы можете сначала открыть Fresh, а затем загрузить файлы с помощью меню «Файл» или встроенного файлового браузера. После открытия файла Fresh отображает его в интерфейсе с вкладками, так что вы можете работать с несколькими файлами одновременно.

Подсветка синтаксиса доступна для широкого спектра языков программирования и разметки. Во многих случаях Fresh автоматически определяет тип файла и применяет подсветку без каких-либо дополнительных настроек. При необходимости вы можете вручную включить или изменить режим синтаксиса в меню.

Fresh или другие терминальные редакторы

В течение долгого времени традиционные редакторы, такие как nano, Vi и Vim, были основными инструментами для многих пользователей Linux. Однако для новичков в Linux эти редакторы могут показаться неинтуитивными и сложными в освоении. Например, редактор nano делает акцент на простоте, но предлагает ограниченную функциональность и минимальную расширяемость. Есть еще Vim, который полагается на модальное редактирование и может быть очень эффективным для опытных пользователей, но сложным для новичков или случайных пользователей.

Fresh использует другой подход, полностью избегая модального редактирования и используя привычные действия редактирования, которые обычно встречаются в графических редакторах. Вместо запоминания режимов и последовательностей команд, вы можете взаимодействовать с текстом, используя стандартные горячие клавиши, меню и палитру команд. Это снижает сложность освоения и упрощает обнаружение функций без внешней документации.

Не поймите меня неправильно: если вы потратили десять лет на освоение Vim, то Fresh может не подойти вам. Vim остается непревзойденным в плане глубоко настраиваемых модальных рабочих процессов и экосистем плагинов. Fresh же фокусируется на предоставлении современного, готового к использованию опыта внутри терминала. Он заполняет пробел между легкими терминальными редакторами и полноценными графическими редакторами, не пытаясь полностью заменить ни те, ни другие.

Заключение

Fresh хорошо подходит для вас, если вы хотите современные удобства и функции редактора, такие как файловые проводники, разделенные виды и поддержка LSP, без перехода на графический редактор. Попробуйте Fresh. Загрузите его и используйте вместе с вашим текущим текстовым редактором; через некоторое время вы, возможно, перейдете на него. Однако Fresh — не единственный вариант; вы также можете попробовать другие Текстовые редакторы, совместимые с Linux.