3

У меня есть постоянная проблема с Emacs, что он не может обрабатывать распечатки с длинными строками в режиме RELP или shell. Процесс Emacs запускается на полной загрузке ЦП и практически полностью не отвечает (время от времени он начинает обрабатывать пользовательские команды, но затем снова останавливается). Это означает, что я должен убить процесс и перезапустить Emacs. Очевидно, что это серьезная проблема стабильности и удобства использования, и с ней легко справится обычный терминал.

Я не использую каких-либо эзотерических расширений переноса toggle-truncate-lines , включены только переключаемые по умолчанию строки переключения (перенос строк необходим в оболочке или REPL). Версия Emacs - 24.3.1 (x86_64-pc-linux-gnu, GTK+ Version 3.4.2) .

Поиск Google по этому вопросу не возвращает ничего полезного или похожего. Никто больше не сталкивался с этими проблемами? Любое решение или обходной путь будет принята с благодарностью.

2 ответа2

1

Различные части Emacs работают "по очереди", предполагая, что строки не слишком длинные. Столь длинные строки, как те, что вы описываете, стремятся поставить Emacs на колени.

Часто есть способы уменьшить боль, но все зависит от специфики вашего случая, поэтому без более подробной информации о том, какой основной режим вы используете (например), наиболее очевидное первое, что нужно сделать, это отключить font-lock-mode так как он перестраивает текст построчно (поэтому после добавления, скажем, 4 КБ вывода в конец строки, он обрабатывает всю строку, чтобы выделить ее, что, в свою очередь, означает, что код повторного воспроизведения должен затем обработайте всю строку, чтобы увидеть, какая часть выделения могла измениться).

0

попробуйте режим Visual Line или устаревший режим Long Lines в старой версии, это должно значительно снизить нагрузку на процессор.

https://www.emacswiki.org/emacs/VisualLineMode

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .