LINUX.ORG.RU

асилить емакс?

 ,


4

2

Постепенно, использование нескольких редакторов под каждую задачу начинает тяготить, таки прихожу к тому что придётся асиливать емакс, т.к. там судя по всему всё необходимое мне есть. Но с чего начать и как это сделать? Стоковые настройки у него ещё кошмарней чем у старых блендеров, и таким образом совершенно неюзабельны. Например, я так и не смог найти как просто выделить участок текста. Но смущает прежде всего обилие неочевидных хоткеев, которые ещё и пересекаются с системными. Мне эти хоткеи неудобны и тяжелы для запоминания, гораздо более удобным оказывается управление с помощью команд с автодополнением, ala blenderовское [space]-меню. Но, насколько я понял, всё это настраиваемо, посему вопрос, есть ли в природе адекватные пресеты и мануалы как всё это запилить с нуля в более-менее юзабельное состояние?

★★★★★

Успехов в осиливании. Я с емаксом как-то так и не сдружился, тежеловат и сочетания у него трудноваты местами, можно пальцы переломать. Может тебе сгодится это https://pastebin.com/WAMrdNCN

kvpfs ()

Например, я так и не смог найти как просто выделить участок текста.

C+space и двигаешь курсор, выбирая что выделить.

Norgat ★★★★★ ()

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

Если я правильно тебя понял, то тебе нужен ivy или helm.

Vovka-Korovka ★★★★★ ()

doom-emacs и хорошее впечатление оставит, и сразу из коробки отличный конфиг даст. Раньше был ещё spacemacs, но я сменил его на doom т.к. spacemacs стал слишком навороченным и притормаживал. Ещё используй билд emacs с поддержкой –with-native-compilation (у арча, например, в репах есть такой пакет, и про это есть в доке doom).

Джедаи сидят каждый со своим отличным конфигом, но я за всё время так и не превратил помойку в конфигах во что-то действительно удобное, поэтому в какой-то момент появился spacemacs и я пересел на него. А потом doom. Там из коробки evil-mode (без него только пальцы ломать).

vyazovoi ★★★ ()

Проблема Emacs не в хоткеях. Это вообще мелочи. Дефолтные настройки - тоже мелочи, это все настраивается, расширяется, и т.д. и т.п. Реальных проблем 3:

  • Рендеринг собдержимого на CPU
  • Однопоточность. Это усливает проблему рендеринга и фоновой обработки (например, LSP).
  • Низкая производительность собственно Emacs Lisp.

По итогу, чтобы сделать из Emacs конфетку, нужно реализовывать собственный рендеринг (см. emacs-ng) + писать критичные по производительности расширения, скажем на Rust через FFI. Например, можно переписать LSP-клиент на Rust (насколько я понял для Neovim так сделали). Т.е. получается, что там работы чуть больше, чем на full-time.

define «более-менее юзабельное состояние». Что конкретно нужно?

P.S. Я сейчас смотрю в сторону написания плагинов для VSCode на ClojureScript. Получется вполне интерактивная разработка как в Emacs, при этом высокая производительность собственно JavaScript, многопоточность и рендеринг на GPU.

Kostafey ()
Ответ на: комментарий от Kostafey

После впиливания поддержки native compilation с производительностью стало намного лучше. Я даже вернулся обратно на Emacs (с Neovim).

Vovka-Korovka ★★★★★ ()
Ответ на: комментарий от BceM_IIpuBeT

Век жыви - век что-то новенькое в емаксе находи.

Nervous ★★★★★ ()

M-x и автодополнение - это полезно и удобно, не вижу смысла с этим бороться.

Действительно важные и частые вещи сначала делаешь автодополнением. Там по выполнении команды в минибуфере тебе напишут каким сочетанием клавиш это можно было сделать быстрее. С пятого раза вполне запоминается. Если не запомнилось - значит ненужно.

Я например до сих пор не силиваю выучить, как именно горячими клавишами делать M-x query-regex-replace, но не парюсь по этому поводу.

alpha ★★★★★ ()
Ответ на: комментарий от Kostafey

Рендеринг собдержимого на CPU

Что-то верится слабо. Во-первых, emacs будет рендерить картинку на gpu, если запустить его в консоли с гпу-могущем терминалом. Во-вторых - не верю что вот это прям узкое место, юзаю вим на ST (рендерит на ЦПУ), никаких тормозов никогда нет, всё летает.

kvpfs ()
Последнее исправление: kvpfs (всего исправлений: 1)

Осиливается также как и любой другой инструмент: находишь мануал или урок по базовому функционалу (редактирование файлов, перемещение по тексту). Пару часов и можно пользоваться. Пару дней и твои пальцы сами порхают над клавиатурой не задумываясь.
Идеи со всякими сборками в духе зверь-цд мне не особо нравятся. Я бы брал или ванильный Имакс или сборку которая не меняет дефолтные комбинации клавиш.

urxvt ★★★★★ ()

начни с evil-mode

anonymous ()
Ответ на: комментарий от alpha

Там по выполнении команды в минибуфере тебе напишут каким сочетанием клавиш это можно было сделать быстрее

По дефолту нету. Для этого нужны ivy и which-key.

BceM_IIpuBeT ★☆☆☆☆ ()
Ответ на: комментарий от fernandos

Эту фичу вроде еще не релизнули? Вообще, конкретно для меня как раз этот вопрос наименее важен, поэтому я и написал его последним.

И, да, я джва года 12 лет ждал, немного не дождался.

Kostafey ()

Постепенно, использование нескольких редакторов под каждую задачу начинает тяготить

Что за задачи такие? Почему под каждую задачу нужно использовать несколько редакторов?

fulmar_lor ()
Ответ на: комментарий от fulmar_lor

Обычно, такое происходит у фанатов жб, которы любят что-то, связанное с С.

fernandos ★★★ ()
Последнее исправление: fernandos (всего исправлений: 1)
Ответ на: комментарий от kvpfs

Во-первых, emacs будет рендерить картинку на gpu, если запустить его в консоли с гпу-могущем терминалом.

Не пробовал, использовал только GUI-версию.

Во-вторых - не верю что вот это прям узкое место

Попробуйте на Intel Core i3 открыть большой файл на с подсветкой синтаксиса и зажмите курсор вниз. Или LSP. Все будет видно.

Kostafey ()
Ответ на: комментарий от Kostafey

Emacs туговат, да, я об писал и сам, мне это тоже не нравилось, только дело тут не в рендеринге точно, да и размер файла не важен, рендерим ведь видимую часть лишь. Я сравниваю emacs c vim’ом - последний просто ракета, даже если терминал рендерит на ЦПУ. Я не нахваливаю Вим, лишь намекаю на другие причины. Хз, может он там на лиспе текст парсит.

kvpfs ()

Я хоть и пользуюсь Doom Emacs без Evil, но для баланса добавлю, что ещё существует https://github.com/bbatsov/prelude.

Для параллельного использования нескольких конфигов ещё есть https://github.com/plexus/chemacs.

commagray ★★★★★ ()
Последнее исправление: commagray (всего исправлений: 2)

ставь ванильный и проходи Emacs tutorial, дальше уже сам поймешь куда двигаться

anonymous ()
Ответ на: комментарий от Kostafey

Попробуйте на Intel Core i3 открыть большой файл на с подсветкой синтаксиса и зажмите курсор вниз. Или LSP. Все будет видно.

Это с включенным native compilation или без? Без так и было, с включенным уже можно жить.

Vovka-Korovka ★★★★★ ()
Ответ на: комментарий от fernandos

смерджили в главную ветку

В бубунте из коробки не включено, и в nightly build 29-й версии тоже. Только руками собирать.

no-such-file ★★★★★ ()
Последнее исправление: no-such-file (всего исправлений: 1)

Хотелось бы спросить - а нафига оно тебе, лично? Фетишь какой, или что? Есть же туева хуча более вменяемых и адекватных редакторов.

cadaber ★★ ()

не смог найти как просто выделить участок текста

Как и везде, Shift+стрелочки. Вырезать/вставить это уже другой вопрос.

мануалы как всё это запилить с нуля в более-менее юзабельное состояние

Официальные доки очень доходчивые, написаны вот прямо для чайников. По elisp книжка отдельная есть. По org-mode тоже.

no-such-file ★★★★★ ()
Ответ на: комментарий от BceM_IIpuBeT

Поделка для хипстерков.

Однако местами удобно, тот же PlatformIO, помню сколько его ковырялся с emacs, и как в «два клика» начал использовать в vsc.

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

ssh2 ★★★ ()
Последнее исправление: ssh2 (всего исправлений: 1)
Ответ на: комментарий от BceM_IIpuBeT

Это тоже для хипсторов.

Чёй-то? В сравнении с Arduino IDE или как там эта штука называется уже и забыл, PIO – внеземная технология имхо. :)

ssh2 ★★★ ()

Забейте вы уже на все это дерьмо. Только конченные дегенераты тут плюются при упоминании электрона. Дело в том, что и Vim, и Emacs работают по-сути также: у них все плагины на скриптовых языках (Vim Script и диалект LISP). И вот как раз скриптовые движки обоих вышеуказанных редакторов не вывозят, они хуже браузерного V8, именно поэтому Vim у меня подыхает, когда я пытаюсь открыть небольшой дамп в 1.4 гига

UPD: сам часто пользуюсь вимом, но полноценной IDE из него никогда не получится. Пользуюсь им часто на серверах, редактируя всякое говно по ssh

tz4678 ★★ ()
Последнее исправление: tz4678 (всего исправлений: 2)
Ответ на: комментарий от tz4678

именно поэтому Vim у меня подыхает, когда я пытаюсь открыть небольшой дамп в 1.4 гига

Он и должен подыхать на таких объемах. Это нормальное поведение для проги, которая почти не потребляет памяти и стартует мгновенно.

К слову, Саблайм с большими файлами справляется лучше VS Code. А есть еще специальные платные редакторы (под нормальные ОСи). И этим редакторам вообще безразлично, у тебя файл на гиг, на 10 или на терабайт.

anonymous ()
Ответ на: комментарий от anonymous

Это нормальное поведение для проги, которая почти не потребляет памяти и стартует мгновенно

спасибо поржал, те сколько там памяти выжирают разлисчные lsp чтобы vim мог тебе подсказки вывести уже не учитывается? …а жрут они много

tz4678 ★★ ()
Ответ на: комментарий от tz4678

При этом VS Code мне нравится. Но некоторые вещи в Emacs лучше. И LISHP, хоть и медленный, но круче и прикольней TypeScript. Например ты можешь модифицировать какую-нибудь из внутренних функций Емакса как бы вклинившись в нее, то есть без копипаста.

Еще несколько преимуществ Емакса: 1. очень сильное (и дружелюбное, без апломба) сообщество, 2. отличная документация (мануал + вики), 3. future proof.

anonymous ()
Ответ на: комментарий от anonymous

в яваскрипте через прототипы ты можешь объектам и доп. свойства навесить и все переопределить. за это его и ненавидят жабофанаты

tz4678 ★★ ()
Ответ на: комментарий от anonymous

в дефолтных состояниях vscode - это редактор сродни notepad++, а vim ничем не лучше nano. обвесами же они жрут гигами оперативу, тот же vscode гиг-два потребляет, но когда у меня оперативы 32 гига… как

tz4678 ★★ ()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.