org-mode
Прекрасное средство для работы с текстами и планами. Опять же, случайные бессистемные заметки о.
Вообще, подумала, что сложно рассказывать, что это такое.
- просто возможность удобно работать со структурированными файлами - древовидная структура, заголовки на любую, наверное, безумную глубину, сворачивание, разворачивание, ограничение области видимого.
- легкий язык разметки, где при этом основное есть.
- списки, в том числе чеклисты с возможностью ставить отметки выполнения и видеть, какая часть сделана
- "шкафчики" (drawers), возможность сворачивать некоторую область текста, не делая там ничего подзаголовком. Можно использовать самой, есть и те, которые делает сам орг-мод, чтоб хранить в тексте какую-то информацию.
- комментарии - в смысле, можно закомментировать какую-то часть файла, чтоб оно не экспортировалось, не применялось, но оставалось.
- блоки для разных целей - включать и выполнять код на разных языках, отображать стихи или цитаты, да мало ли.
- таблички с формулами. Вот многострочных и объединенных ячеек нет, это иногда жаль.
- ссылки, наружу вообще, на другие файлы, на другие разделы этого же файла.
- тудушки - с возможностью весьма хитрой настройки статусов, приоритетов, категорий. И сборка адженды, обзор тудушек многих файлов. Назначение расписаний, назначение дедлайнов…
- теги
- свойства
- учёт времени
- перекидывание фрагментов файлов между файлами не только путём копипаста руками
- формочки для инфы
- прикладывание файлов к текстам
- экспорт в разные форматы
- возможность работать с шифрованными файлами и разделами файлов - https://www.masteringemacs.org/article/keeping-secrets-in-emacs-gnupg-auth-sources
- дико удобная возможность работать с кусочками исходного кода, выполнять прямо с места, получать результат, собирать из кусочков файлы. Удобство literate programming, когда пишешь текст и код так, что в результате и читать реально удобно, и работает. Я уже убеждалась, что мне прям надо прям подробно писать себе самой даже по поводу очень простых штук, что это я делаю и зачем - потому что забывается всё. Так вот тут - удобно! - org-babel
- и уйма дополнений, которые пишут по разным случаям. Теоретически можно ж и самой что-то писать, это я пока не умею, но ничего невозможного.
Не уверена, что перечислила всё, что стоило упомянуть, но я хотя бы попыталась :) Полнее, наверное, - https://orgmode.org/features.html.
- https://orgmode.org/quickstart.html
- https://orgmode.org/guide/ - пишут, побольше инфы, чем в быстром старте, поменьше, чем в мануале. (Мануал - поистине чтение на многие годы, перечитывать и перечитывать :))
Странички про оргмодное
Про повторяющиеся даты (2023-10-05)
Для SCHEDULED событий можно ставить даты, которые будут переставляться в будущее после завершения событий.
Если хочется перенести на условное через 5 дней, то
- +5d - перенесет на 5 дней относительно той даты, на которую было намечено. Если условная я спохватилась отметить сделанное через недельку, то намеченная дата окажется вообще в прошлом.
- .+5d - перенесет на 5 дней относительно даты, когда я отметила. Хорошо работает с тем, что хочется делать с определенной периодичностью, но что не имеет внешних привязок. Условно, если я хочу мыть голову не реже, чем раз в пять дней, то неважно, что там было раньше. Я отметила сегодня, значит, следующий раз напомнить нужно через пять дней от сегодня, тчк.
- ++5d - перенесет на дату обязательно в будущем, но от ближайшего предыдущего по расписанию. Условно, если у меня намеченная дата в этом месяце - 5ое (и дальше предполагались бы 10, 15, 20…), и я спохватилась числа этак 12го отметить дело сделанным в этот раз, то следующее намеченное будет 15го, а не 17го, как было бы при
.+5d
, и не 10го, как было бы при+5d
.
inline-task (2021-12-02)
годится для ситуации, когда хочется в середину каких-нибудь заметок вкошачить тудушку, которую вообще не хочется делать заголовком.
(require 'org-inlinetask)
Потом оно по умолчанию по С-с С-x t.
Создаёт заголовок этак 15 уровня (настраиваемое число, смысл - так глубоко, что обычных заголовков такого уровня нет), в который можно вставить то самое todo со всей метаинфой. И заголовок того же уровня END после, чтоб идущее дальше не затрагивало.
Прикольно. Сейчас снова начала вести дневниковые заметки, там прекрасная уместная штука. :)
https://orgmode.org/worg/doc.html - выловлено тут.
Комментарии
2021-11-15
Org mode has a variety of ways to add comments.
- Line comments start with #.
- Inline comments wrap
@@comment:like so@@.
Причёмcomment:
в начале - необходимо. И они не многострочные, только до конца строки. - Block comments are wrapped with #+BEGIN_COMMENT and #+END_COMMENT.
- Section comments can be created by adding the COMMENT keyword to a heading
* COMMENT like so
.
Вот внутристрочные не замечала раньше. Это как раз из - https://orgmode.org/quickstart.html
org-capture
перестал одобрять file+datetree, хотя в доках ещё и не вычищены все следы. Надо заменять на file+olp+datetree. https://orgmode.org/org.html#Capture-templates Это про формочки для быстрых записей, содержимое которых уходит на заранее указанное место.
- https://github.com/alphapapa/org-protocol-capture-html - про то, чтоб собирать текст из браузера не тупо текстом, а с таблицами и ещё какой-то осмысленной разметкой.
- https://github.com/sprig/org-capture-extension - расширение для упрощения настройки в файрфоксе и гугл-хроме.
ютюб-видео с расшифровкой
https://sachachua.com/blog/2021/04/org-mode-insert-youtube-video-with-separate-captions/
А для возни с локальным - mpv.el.
Библиография
- https://blog.tecosaur.com/tmio/2021-07-31-citations.html - обещают в близком будущем.
- https://github.com/jkitchin/org-ref
- https://github.com/jkitchin/org-ref/blob/master/org-ref.org
Для работы с bibtex-ссылками
crypt
Зашифровать часть файла
- https://orgmode.org/worg/org-tutorials/encrypting-files.html
- https://orgmode.org/manual/Org-Crypt.html#Org-Crypt "Any text below a headline that has a ‘crypt’ tag is automatically encrypted when the file is saved. To use a different tag, customize the org-crypt-tag-matcher setting."
- https://www.masteringemacs.org/article/keeping-secrets-in-emacs-gnupg-auth-sources
ввод пароля к зашифрованному файлу в emacs
- Если epa-pinentry-mode поставить loopback, это позволяет вводить пароли через минибуфер, йееееее! 2020-07-10 20:57:24 +0300 (Раньше была формочка, только в консольном, и в которую удивительно сложно было попасть :))
auto-add-update-date-of-last-modification-of-heading-and-or-its-body-to
- https://emacs.stackexchange.com/questions/39348/org-auto-add-update-date-of-last-modification-of-heading-and-or-its-body-to - если хочется, чтоб в properties подзаголовка обновлялась дата изменения именно этого фрагмента.
Временами перестают срабатывать шаблончики вида <буква +Tab.
Вообще, это модуль Org-tempo. Про tempo, на котором он летает, е тут: темплейты и шаблоны
Вставляются ещё по C-c C-,
- там будет выбор буквы.
Custom-id
Через установку property Custom_ID
- C-c C-x p (org-set-property)
- Set a property. This prompts for a property name and a value. If necessary, the property drawer is created as well.
Потом ссылка выглядит как
#* Headline # :PROPERTIES: # :CUSTOM_ID: myID # :END: # #и в другом месте # #[[#custom_id-name]] #либо #<a href="my-file.html#myID">Headline</a>
Собстно, тока для красивых ссылок. Так просто id норм.
Не зашло
org-fc - spaced repetitions (интервальное повторение)
- «Flashcards/spaced repetition system for org-mode. It works with many files better than org-drill (and many files is what I have with org-roam)»
- https://github.com/rasendubi/dotfiles#org-fc-review-todos - применение для пересмотра тудушек из списка типа maybe
- https://github.com/l3kn/org-fc
- https://www.leonrische.me/fc/index.html - дока, по факту в digital-garden автора.
Было две попытки, пока не прижилось. 2022-07-23.
org-brain
Мне не зашло. По крайней мере, пока.
- https://github.com/Kungsgeten/org-brain - больше руководство
- https://kungsgeten.github.io/org-brain.html - больше о том, зачем
org-protocol - сгребать фрагменты из браузера
Одно время активно использовала, сейчас практически никогда.
- https://orgmode.org/manual/Protocols.html, особенно https://orgmode.org/manual/The-capture-protocol.html#The-capture-protocol
- И ещё инструкций - http://orgmode.org/worg/org-contrib/org-protocol.html
- Кажется, вариант, сгребающий с html-разметкой, но не разбиралась https://github.com/alphapapa/org-protocol-capture-html
- https://www.orgroam.com/manual.html#Org_002droam-Protocol - примерно то же, но про org-roam. И https://github.com/org-roam/org-roam/blob/master/org-roam-capture.el - там в комментариях кода про то, что там вообще возможно.
Cохраняю сразу в файл ссылку, тайтл страницы, текст страницы и дату добавления.
Это в настроечном файл должно быть сразу:
- (server-start) - чтобы можно было подключаться через emacsclient.
- (add-to-list 'load-path "~/path/to/org-protocol/") - но возможно, у вас об этом заботится менеджер пакетов.
- (require 'org-protocol) - возможно, это заменяется на настройку переменной org-modules.
Это в закладку. Да, джаваскрипт. Я их не люблю, но этот полезный.
javascript:location.href='org-protocol://capture://l/'\sout{encodeURIComponent(location.href)}'/'\sout{encodeURIComponent(document.title)}'/'+encodeURIComponent(window.getSelection())
l после "org-protocol://capture://"
- это буква используемого шаблона, может быть и другой. Шаблоны настраиваются через M-x customize-apropos<RET>org-capture-templates
. Шаблон l
у меня выглядит в итоге уже в конфиге так:
("l" "" entry (file+headline "~/Desktop/org/notes.org" "Captured links") "** \%:description
- Добавляется в файл notes.org, под заголовок * Captured Links
- :immediate-finish - чтоб не приходилось вручную подтверждать добавление, переключаясь в емакс. Если я что хочу подправить, я это в файле сделаю.
- :prepend - расположение "новые вверху".
<a href="org-protocol://capture://l/'+encodeURIComponent(location.href)+'/'+encodeURIComponent(document.title)+'/'+encodeURIComponent(window.getSelection())">Линк для настройки org-capture</a>
В смысле, тыркать и смотреть, проходит ли и чокак.
Повторяющееся событие - org-clone-subtree-with-time-shift
M-x org-clone-subtree-with-time-shift (or C-c C-x c if you can remember it).
You simply create one instance of your event without any repeater interval and invoke M-x org-clone-subtree-with-time-shift. Then, Org asks you how many copies it should create and an optional time-shift between those instances.
With our volleyball example, this would look like that:
- Volleyball training
Then invoke M-x org-clone-subtree-with-time-shift, ask for twenty copies (or how many weeks in advance you want to define trainings), and a time-shift of 1w.
Then you end up with following headings:
- Volleyball training
- Volleyball training
- Volleyball training
- Volleyball training
[…]
Now you have in total twenty-one instances of your volleyball training event. You are now free to delete single occurrences (canceled trainings), delete a series of trainings (school holidays with no hall), move single occurrences to different days (exceptions), and you are able to add notes to single trainings more easily.
I am using this method instead of sexp expressions for advanced recurrence definitions like «every second Tuesday of the month». I clone an event with a almost fitting period like +4w. Then I manually change the instances to fix them. I move to the months where +4w did not result in the second Tuesday and use Shift left and right to modify the time-stamp.
It is highly recommended to create a simple recurring todo scheduled after the last clone which reminds you of creating the clones for the next series of events. https://karl-voit.at/2017/01/15/org-clone-subtree-with-time-shift/
helm-org-rifle-*
"I prefer the body text being part of the search space. Currently, I usually use tags when normal search results return too many candidates to skim. In recent months, I learned to love helm-org-rifle-* for searching the current file or all of my agenda files." https://karl-voit.at/2020/06/14/Zettelkasten-concerns/
Ссылки
- https://orgmode.org/org.html - мануал на одной странице.
- https://orgmode.org/manual/index.html - оглавление многостраничного варианта
- https://orgmode.org/worg/dev/org-syntax.html
- https://www.emacswiki.org/emacs/OrgMode - оргмодная страничка на емаксвики
- https://karl-voit.at/2019/09/25/using-orgmode/
- https://karl-voit.at/2017/09/23/orgmode-as-markup-only/ - про оргмод как разметку.
- https://karl-voit.at/2020/01/20/start-using-orgmode/ - как начать (ну, по мне можно и ещё проще)
- https://karl-voit.at/2021/08/30/the-org-mode-way/ - правильное использование - а как понравится, так и правильно. Текст об этом. Ну, от авторитетного чела такое тож полезно :)
- ссылки про разное оргмодное