Несколько советов про Emacs и org-mode

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

Этим редактором я пользуюсь не так давно, чуть меньше года, до этого я работал в виме, до вима — в саблайме (с купленной личной лицензией!).

Советы про Emacs

Использовать mule

Emacs плохо дружит с другими раскладками: если включена системная русская раскладка, то не сработает M-f — до интерпретации дойдёт M-а (кириллическая „а”).

Это можно поправить хаками, но проще использовать встроенное в Emacs переключение раскладок — C-\ (toggle-input-method). «Обычная» русскоязычная раскладка называется russian-computer. В качестве бонуса — так можно использовать и многие другие раскладки, например, russian-typewriter, если хочется поэкспериментировать.

Выбрать другой метод ввода можно нажав C-x RET \ (select-input-method).

Сам я ещё не до конца перестроился и по-прежнему часто нажимаю [Caps Lock][/2016/capslock].

TODO Программистская раскладка

Если взглянуть на файлы, которые я редактирую, то в них гораздо чаще встречаются разные виды скобок и прочие восклицательные знаки, нежели цифры.

Было бы любопытно собрать «программистскую» раскладку для mule, но я ещё не копал в эту сторону. В такой раскладке символы .,\()[]{}$!*&^%= должны быть доступны в «первом уровне».

Использовать макросы

Макрос для повторения повторяющегося экономит довольно много времени, но требует думать на более высоком уровне.

Например, чтобы превратить набор строк в JSON с теми же ключами, нужно прыгать не по словам, а, хотя бы, в конец и начало строки.

Пробовать новые плагины время от времени

Если ставить уже готовые сборки навроде spacemacs, то порог вхождения для понимания будет ещё больше. Здесь работает та же логика, что и с убунтой: проще на «начальном» уровне, но -если-когда что-то идёт не так, то исправить гораздо сложнее. С другой стороны, не стоит и оставаться только в рамках дефолтной поставки: я не настраиваю vim, чтобы в любой момент мог использовать ванильный вариант на серверах, но Emacs стоит локально и если редактировать что-то на серверах, то это удобнее делать через TRAMP.

Советы про org-mode

Не закапываться в фичах

В орг-моде очень много фич: аутлайны, тудулисты, агенда, календари, поддержка грамотного программирования (которая заслуживает отдельного поста), генерирование HTML, LaTeX, и так далее. Если попытаться использовать и запомнить всё сразу, то выйдет не очень. Рецепт простой: начинать понемногу, есть слона по кусочкам.

Не заводить слишком много орг-файлов

Это личное, но я начал с того, что создал много орг-файлов. Мне казалось, что это повысит модульность (а это же всегда хорошо!..), мне будет легче концентрироваться и не отвлекаться на нерелевантные записи.

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

Сейчас у меня есть три файла: personal.org, projects.org и отдельный файл под [[http://epixx.ru/learn/js][курс по джаваскрипту]] (потому что не доходят руки объединить его с projects.org). В личный попадают тудушки, мысли, записи, касающиеся здоровья, напоминалки про дни рождений; всё околоайтишное живёт в projects.org.

Тим опубликовал