Вопрос или проблема
Большинство редакторов, которые я использую (kate, gedit, vi и т. д.), были написаны в 20-м веке, когда файлы обычно хранились локально, и все приложения использовали блокирующие операции с файловой системой, что означает, что пользовательский интерфейс зависает до завершения чтения или записи. Но мы живем в связном веке, и большинство моих файлов находится на нескольких удаленных файловых системах (NFS или SMB) – на нескольких моих ПК, ПК моих коллег, серверах, PIs, Jetsons и т. д. И они часто выходят из сети. Когда какая-либо из удаленных файловых систем становится недоступной, мой kate или gedit зависает с dreaded сообщением «Не отвечает». А потом мне приходится выяснять, какая файловая система зависла, и размонтировать ее, чтобы восстановить работу редактора, а затем смонтировать, когда она снова станет доступна.
Я страдал от этого на протяжении десятилетий, пока несколько лет назад не нашел настоящий редактор 21-го века: vscode – он никогда не зависает! Если временно недоступный файл уже открыт, он позволяет продолжать с ним работу локально, в противном случае показывает пустой экран, пока файл снова не станет доступен. Это прекрасно, именно так должны быть написаны все современные редакторы (и другие приложения) – никогда не зависать! Но, думаю, никто не собирается переписывать динозавров, таких как kate, gedit и vi, современными способами. И vscode – это IDE, а не замена редактору общего назначения.
Итак, мой вопрос: знаете ли вы какой-нибудь достойный, современный текстовый редактор общего назначения, который не зависает?
Вы знакомы с приложением Text Editor (gnome-text-editor), которое является стандартным текстовым редактором в Ubuntu 24.04 и более поздних версиях? Я ни разу не видел, чтобы он зависал в моем Ubuntu 24.04.
Ответ или решение
Современные текстовые редакторы для Linux, не блокирующие интерфейс при отключении удаленных файловых систем, становятся всё более актуальными в свете изменений в способах работы с файлами и подключения к ресурсам. В отличие от традиционных редакторов, таких как Kate, Gedit или Vi, разработанных в эпоху, когда файлы в основном находились на локальных системах и использовали блокирующие операции файловой системы, новые редакторы применяют асинхронные подходы к работе с файлами.
A. Поиск идеального редактора: вызовы и решения
На фоне того, что современные разработчики все чаще сталкиваются с необходимостью работы с удалёнными файловыми системами, важно найти текстовый редактор, который не будет зависать, когда доступ к файлам временно теряется. Как показывают отзывы пользователей, многие традиционные редакторы не способны справляться с данной задачей эффективно.
B. Современные решения
Среди наиболее значимых кандидатов можно выделить следующие текстовые редакторы:
-
Visual Studio Code (VSCode)
Хотя вы уже упомянули VSCode как редактор, это самодостаточная IDE, однако многие пользователи используют её для редактирования текстовых файлов благодаря их углубленной функциональности. Отличительной чертой является то, что VSCode позволяет продолжать работу с локальными копиями файлов, пока доступ к удалённым ресурсам временно недоступен. -
Text Editor (gnome-text-editor)
Новый текстовый редактор, который был представлен в Ubuntu 24.04 и является стандартным редактором для работы с текстом в этом дистрибутиве. Он спроектирован с учетом современных требований и не демонстрирует зависаний при отключении сети. Пользователи отмечают его стабильность и простоту. -
Atom
Этот редактор, созданный компанией GitHub, также предлагает поддержку множества плагинов и не зависает при временной недоступности удалённых файлов. Atom ориентирован на разработчиков и пользователей, работающих с локальными и удалёнными проектами. -
Sublime Text
Контрольно и асинхронно обрабатывающий файлы, Sublime Text является быстрым и мощным редактором, который также может справляться с ситуациями, когда доступ к удалённым ресурсам теряется. Он поддерживает множество функций редактирования и настройки, что делает его подходящим выбором для многопользовательской среды. -
Neovim
Этот редактор является современным ответвлением от VIM и предлагает возможности для нерестрационного редактирования. С нужными плагинами, такими как NERDTree или FZF, Neovim может работать эффективно с удалёнными системами, не зависая.
C. Заключение
Подводя итог, можно сказать, что на сегодняшний день существует множество современных текстовых редакторов для Linux, которые не блокируют интерфейс даже при временной недоступности удалённых файловых систем. Среди них стоит выделить Text Editor (gnome-text-editor), Visual Studio Code, Atom, Sublime Text и Neovim. Каждый из них обладает своими уникальными особенностями, поэтому выбор зависит от индивидуальных предпочтений и требований пользователя. Не стоит забывать, что при выборе редактора важно обращать внимание на его поддержку сообществом и возможность расширения функционала с помощью плагинов.