emacs
Дивной красоты текстовый редактор и текстовый интерфейс много к чему. Ещё прекрасно учит смирению, так как освоить полностью невозможно :) Кое-какие мои заметки и найденные полезности.
- словари в emacs - dict и dictem
- темплейты и шаблоны
- elisp
- projectile
- поиск и замена в emacs
- установка пакетов в emacs
- дополнение и предложение в emacs
- шеллы в emacs
- git в emacs
- recutils
- gnus
- xml в emacs
- orgmode
- bookmarks
- emacs на телефоне
- темы емакса
- кнопочки емакса
- Разное про емакс из былых времен, в том числе, что было и поудаляла из конфига
- emacs modeline
- time tracking в емаксе
О прекрасности емакса
Пожалуй, справедливо сказано, что это в первую очередь не редактор (хотя редактор там тоже есть), это среда для жизни.
https://old.computerra.ru/features/206939/ - для сравнения идея. https://www.ianbicking.org/the-vs-emacs.html - про то, что реализация совершенно напрасно не учла опыт емакса.
Емакс весьма не идеален, зато существует. Действительно не (только) редактор. Потому что среда и инфраструктура для приложений, интерпретатор языка Emacs Lisp, конструктор текстового редактора. Малая часть программы реализована на языке С (отвечает за базовое взаимодействие с ОС, ввод-вывод, отрисовку окон), а весь основной функционал — на Emacs Lisp (elisp).
Базовый способ взаимодействовать с чем-то - редактирование текста. Работа с текстом как метафора много чего. Умеет работать с тем, что получается представить как текст, и кое с чем ещё. Включает в себя ряд приложений. Управляется командами и сочетаниями клавиш, менюшек не хватает, хотя и меню там переделываются вполне так на лету, при переключении из одного буфера в другой, а ещё уйма текстовых выбиралок, дополнялок и вообще.
приколочка
https://grundik.livejournal.com/379781.html - про команду M-x butterfly и комикс http://xkcd.com/378/.
С чего начинать, если вдруг захотелось освоить
- поставить сам emacs.
- просмотреть туториал по
C-h t
, - русскоязычным - поставить reverse-im.
- минимально освоить org-mode,
- завести literate конфиг, чтоб не потеряться в своём конфиге :).
- для цеттелькастена - поставить org-roam. :)
- Начать читать мануал, который по
C-h r
. И разговаривать о том, чего хочется, чтоб получить удобную свою среду. https://t.me/emacs_ru - прекрасное место для таких разговоров :)
И да, я в курсе, что это не исчерпывающее изложение, что надо сделать. Я подумаю, чем дополнять.
И возможно, https://github.com/redguardtoo/mastering-emacs-in-one-year-guide/blob/master/guide-en.org, но вот тут я не согласна с базовой там идеей, что свой конфиг - скорее не нужен, а надо брать какой-то достаточно массовый фреймворк, и радоваться, что за тебя решили все проблемы.
- https://habr.com/ru/post/105300/ - простенько про основы-основы орг-мода, ради которого можно браться.
- https://github.com/nobiot/Zero-to-Emacs-and-Org-roam - это для windows даже - с нуля до org-roam.
- https://github.com/dexager/zettelkasten-emacs - таки затея про стартовый конфиг, который даже literate, и который потом можно править по вкусу.
существуют, но не советую
emacs-starter-kit, prelude, doom, spacemacs, https://github.com/purcell/emacs.d (который советуют в mastering emacs)
Управление файлами
snapshot emacs
2021-07-27 20:42:12 +0300 - устала дожидаться, когда в дебиане обновят :)
- https://www.emacswiki.org/emacs/EmacsSnapshotAndDebian - инфа, где брать.
Учитывать, что при переходе на snapshot и обратно, надо выбирать нужный emacsclient.
sudo update-alternatives --config emacsclient
https://www.masteringemacs.org/article/whats-new-in-emacs-27-1
Полезные ссылки
В случайном порядке.
- https://www.gnu.org/software/emacs/manual/index.html - всякомануалы
Тг
- https://t.me/emacs_ru - "Общаемся на темы, посвященные замечательному редактору Emacs. Решаем проблемы, обмениваемся опытом и делимся новостями. Правила чата и примеры конфигов: https://github.com/EmacsRuPub/chat-rules"
- https://t.me/emacs_en
- https://t.me/emacs_posts - канал с постами из разных инет-источников.
Тексты и сайты
- https://habr.com/ru/hub/emacs/
- https://github.com/emacs-tw/awesome-emacs
- https://emacswiki.org
- https://ergoemacs.org
- https://github.com/alexott/emacs-configs
- http://pragmaticemacs.com/
- https://www.masteringemacs.org/
- https://www.masteringemacs.org/reading-guide - как советуют читать.
- https://wikemacs.org/wiki/Main_Page
- https://emacs.stackexchange.com/
- https://alexott.net/ru/emacs/
Конфиги
- https://framagit.org/steckerhalter/steckemacs.el
- https://protesilaos.com/dotemacs/
- https://github.com/dexager/zettelkasten-emacs
- https://emacsredux.com/tags/#crux (есть уйма мелких полезняшек), https://github.com/bbatsov/crux - они одной кучей. https://emacsredux.com/blog/2021/06/08/emacs-as-your-calendar/ - про календарь, кажется, в комментах есть полезное.
- https://gitlab.com/link0ff/emacs-init/ - не разбиралась особо. Но там, как минимум, своя keymap.
Ссылки и заметки про какие-то отдельные штуки
- https://github.com/bard/emacs-run-command - кажется, премилая штука для запуска всякого внешнего, по умолчанию в compilation-mode. (https://github.com/semenInRussia/emacs-run-command-recipes некоторый набор готовых рецептов для неё. Но кукбук оригинала мне пока интереснее). 2022-02-08
- Follow Mode make side-by-side windows behave like a tall virtual window
- http://pragmaticemacs.com/emacs/read-your-rss-feeds-in-emacs-with-elfeed/ - rss
run-with-idle-timer secs repeat function &rest args
Set up a timer which runs the next time Emacs is idle for secs seconds. The value of secs may be a number or a value of the type returned by current-idle-time. If repeat is nil, the timer runs just once, the first time Emacs remains idle for a long enough time. More often repeat is non-nil, which means to run the timer each time Emacs remains idle for secs seconds.
https://www.gnu.org/software/emacs/manual/html_node/elisp/Idle-Timers.html
- "C-x 8 C-m acute comb RET" - вставление всяких символов.
- https://www.manueluberti.eu//emacs/2020/11/14/extending-project/ - к project способ задать проект своими силами
- https://www.reddit.com/r/emacs/comments/l51ocx/what_is_the_most_useful_part_of_your_emacs_config/ - занятные мелочи
- https://github.com/arbox/org-sync - синхронизация с багтрекерами
- https://github.com/zachcurry/emacs-anywhere - редактировать какие попало текстовые поля в емаксе
- пипетка взять цвет пикселя. Grabc без граф интерфейса. Просто C-u M-! grabc RET (в смысле, запустить из емакса консольную команду) И оно сразу в буфер вставляется. grabc поставила. А вот переключать окна после запуска grabc не судьба вообще, жаль.
- https://ruzkuku.com/texts/lesser-known.html
- tab-bar-mode, похоже, почему-то не дружит с polymode. Получается застревание в каком-то из модов чанков, не обновляются клавиатурные привязки при выползании из чанка и всё такое. Досадно, так-то табы симпатичны.
- M-x proced - список процессов
- align-regexp - сурово-магическая штука для выравнивания всякого текста не только по краю.
- text-scale-increase и text-scale-decrease - менять размер текста.
- https://github.com/abo-abo/avy - прыгать по видимому
- https://github.com/dgutov/diff-hl подсветка разницы ревизий
- https://github.com/leoliu/easy-kill
- https://github.com/magnars/expand-region.el
- https://github.com/bbatsov/guru-mode - улучшать привычки :)
- Когда проблемы с вставлением символа - A standard hack here too is to use the literal character escape thing. Type C-q and then space. It’s a bit like using \ in a literal string in programming. quoted-insert is an interactive compiled Lisp function in ‘simple.el’.
It is bound to C-q. (quoted-insert ARG) Read next input character and insert it. This is useful for inserting control characters. With argument, insert ARG copies of the character. If the first character you type after this command is an octal digit, you should type a sequence of octal digits that specify a character code. Any nondigit terminates the sequence. If the terminator is a RET, it is discarded; any other terminator is used itself as input. The variable ‘read-quoted-char-radix’ specifies the radix for this feature; set it to 10 or 16 to use decimal or hex instead of octal.
- https://github.com/emacsfodder/move-text
- посмотреть потом - M-x command history
- https://emacsconf.org/2020/talks/
- http://ergoemacs.org/emacs/elisp_menu.html как добавить меню. (Искала я не это, но чоуж.)
- http://ergoemacs.org/
- https://www.emacswiki.org/emacs/CommonLisp, https://www.gnu.org/software/emacs/manual/html_mono/cl.html
- https://www.gnu.org/software/emacs/manual/html_mono/ses.html - таблички. В орг-моде в src-блоке, похоже, работать не хочет, но само по себе может быть интересно.
- вообще, есть идея о том, что емакс это такой себе UI тулкит типа GTK или Qt, в котором прhосто удобно создавать текстовые интерфейсы: https://ambrevar.xyz/emacs-everywhere/ (https://t.me/zettelmacs/217)
- https://www.emacswiki.org/emacs/TrampMode
- https://www.flycheck.org/ - syntax checking
- https://depp.brause.cc/nov.el/ - про nov.el - читалку epub для emacs
- https://github.com/novoid/Memacs - вспоминалка всего.
- jupiter и ein - времен, когда пыталась въехать в обработку данных.
- emacsql-sqlite - тож смутно помню, что зачем-то было, и что-то было ж хорошее о нём.
- esqlite - мод для скулайта. https://github.com/mhayashi1120/Emacs-esqlite
- ibuffer-sidebar - открытые файлы в сайдбаре
- literate-calc https://github.com/sulami/literate-calc-mode.el - Displays inline results for calculations, supports variables and updates as you type. Тормозил как не знаю что.
Для пишущих
- whitespace-mode - отображает скрытые символы, пробелы, табуляции.
- wc-mode - для отслеживания количества написанного. Ещё есть org-wc-display.
- draft-mode - запрещает вносить изменения в буфер, кроме дописывания в конец. Если надо работать с частью документа - нужно использовать narrow, чтоб буфер заканчивался где надо.
- https://www.emacswiki.org/emacs/TypographicalPunctuationMarks
- http://zahardzhan.github.io/2010/russian-typography-in-emacs.html
- write-or-die-mode https://www.emacswiki.org/emacs/WriteOrDieMode
- https://github.com/rnkn/binder - как сделать в емаксе подобие скривенера
- mpages - предназначено в первую очередь для ведущих утренние страницы. Открывает файл, именованный по дате, показывает потраченное время и количество слов. И весь этот день открывает один и тот же файл, и его каждый раз целиком видно. В отличие от кэпчуров всяких.
- flyspell - проверка орфографии в emacs