Есть ли какой-нибудь расширяемый редактор с vi-подобными режимами?

Ищу идеальный текстовый редактор :)

Список «обязательных»:

  • vim-подобное модальное редактирование, привязки клавиш похожи на vim
  • emacs вроде расширяемости - тот же «настоящий» язык для плагинов и самого редактора, так что расширение может влиять почти на все в редакторе и за его пределами ... скрипта vim недостаточно, плагина python тоже недостаточно
  • плагины не ограничены внешними процессами, могут изменять текст асинхронно и т. д.
  • поддерживает termcap / curses, так что он может запускать настоящий терминал внутри
  • использует реальный синтаксический анализ, так что плагины могут получать информацию о «типе» слова, не проходя путь «какой это цвет» (synIDattr (synID (line («.»), col («.»), 1), "имя") нет-нет)
  • возможно удаленное редактирование (но это, вероятно, уже гарантировано плагинами + точки расширения)

Я знаю о viper emacs, но не уверен, нравится ли мне эта идея ... Кто-нибудь знает о чем-то получше?

Разъяснения:

Я не программист на полную ставку. Я администратор / программист / опытный пользователь, который уже все время проводит в консоли на многих хостах одновременно, и 95% этого времени работает vim. Мне нравится vim, но я ищу vim-im;) Eclipse не подходит для меня, так как большую часть времени я редактирую config / dsls с моими собственными файлами синтаксиса.

Иногда мне действительно нужен плагин для рефакторинга вещей, которые я часто делаю. У меня есть доказательство того, что это можно сделать в vim, но это настоящая боль ... Например, вы не можете запросить «предыдущий токен в дереве синтаксического анализа». Лучшее, что вы можете сделать, это вернуться назад по символам и проверить, имеет ли слово тот же стиль окраски, что и переменная / функция / что-то еще (которое требует синтаксического анализа фрагмента файла при каждой проверке). Если я не могу расширить редактор простым языком сценариев, у меня это тоже не сработает.

Также мне часто нужен второй терминал, чтобы что-то запустить и скопировать вывод в vim. Я не могу запустить:! R ... потому что он зависает на каждой вкладке в vim, пока команда не будет завершена.

Ах - и только консоль linux + - мир windows меня не интересует :)

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
0
898
5
Перейти к ответу Данный вопрос помечен как решенный

Ответы 5

От одного vim'mer к другому - ваш поиск бесполезен, прервать, прервать и т. д.

Если вы разочарованы тем, какой редактор использует ваша IDE (сразу приходит в голову eclipse), то либо используйте vi в качестве внешнего редактора, либо привыкните к текстовому редактору, который использует IDE. Причина в том, что никто, помимо пользователей vi, считает vi естественным, и поэтому потребность в привязках клавиш vi в любом «современном» редакторе будет радикально отличаться.

Если вам действительно нравится vi, терминальный режим и все такое, используйте vi. Если вы хотите что-то более умное, используйте vim.

На самом деле я очень доволен vim, но хочу большего ... То есть - больше пользы от консоли vim / emacs :), а не причудливой IDE с принудительным использованием мыши: /

viraptor 09.01.2009 21:31

Кейт / Крайт в KDE4.2 бета теперь имеет vim-подобный режим,

Включены все функции [Esc] -> Command mode, функции друзей :помощь и с /.

Это не совсем полная реализация, но в ней есть некоторые основы.

Существует также Редактор Изис, который выглядит интересно, и я не могу дождаться, когда он станет достаточно стабильным для использования, что позволяет вам редактировать везде с помощью vim.

Я не могу дождаться, когда буду редактировать свои сообщения stackoverflow в редакторе подсветки синтаксиса с полнофункциональными инструментами : D

Есть плагин для Eclipse, который в основном меняет редактор для редактора vim.

Я полагаю, он говорит об эклиме: eclim.sourceforge.net. Я собираюсь когда-нибудь это проверить ...

Jonas 09.01.2009 19:36

SlickEdit: http://www.slickedit.com/content/view/73/60

Как уже упоминалось в разъяснении - меня окна не интересуют землей. Кроме того, «Создание пользовательских макросов с помощью полнофункционального языка макросов» вряд ли удовлетворяет «реальный язык для плагинов и самого редактора, так что расширение может влиять практически на все, что есть в редакторе и за его пределами»

viraptor 09.01.2009 21:29

SlickEdit - это не «страна Windows»; он также доступен в Unix и Linux. Кроме того, вы добавили некоторые из этих ограничений (linux + console) после того, как я изначально ответил. На мой взгляд, вы не найдете того, о чем просите, пока не напишите свой собственный редактор.

user22361 12.01.2009 21:18
Ответ принят как подходящий

Нашел все-таки :)

http://haskell.org/haskellwiki/Yi

Yi поддерживает как vim (с режимами и командами:), так и раскладку emacs. Он использует правильный инкрементный синтаксический анализатор и полностью расширяется с помощью haskell (он взаимодействует с ghc и компилирует ваш config / plugin + связывает себя с результатом). Поддерживаются вкладки, минибуферы и все остальное.

Пользуюсь им последние пару дней и очень им доволен.

Другие вопросы по теме