Emacs, org-mode, мои настройки в .emacs

На хабре я упомянул, что у меня настроен органайзер на базе org-mode с оглавлением в специальном окне. Поступил запрос на опубликование моего .emacs. Попытаюсь выделить нужный кусок настроек.

Введение

Мой органайзер построен на основе двух вещей:

  • Org-mode - режим для ведения заметок.
  • Dedicated-mode - режим для прикрепления буфера к окну.

Идея

Начинал я вообще-то с GTD, была расписана процедура, что делать и в какой день. В конце-концов от GTD остался список дел.

С точки зрения польователя, мой органайзер устроен просто. Сейчас я буду описывать то, что изображено на Рис. 1:

  • Самое левое окно, вертикальное и узкое. В нем открывается файл organizer-links.org. В этом файле только заголовки и ссылки. Окно находится в dedicated mode. Поэтому, при переходе по ссылке, файл открывается не в этом окне, а в одном из тех, которые находятся в свободном режиме. Т.е. буфер файла organizer-links.org всегда на виду и в том же самом месте.
  • Верхний ряд, левое окно. В нем открывается файл organizer-daily.org. В этом файле список дел. Окно находится в dedicated mode. Т.е. как для предыдущего буфера, всегда доступен.
  • Два оставшихся окна. Буфера в свободном режиме. В них попадаем при переходе по ссылке.
Скриншот экрана emacs

Рис. 1 Экран Emacs в описываемом режиме.

Ведение списка дел

Список дел ведется в org-mode, файл: organizer-daily.org. Заголовки первого уровня - даты, второго уровня - дела. Начинается новый день, ставим новую дату. Выполненные дела перемещаем выше сегодняшней даты, не сделанные - ниже.

Таким образом текущая дата все время ползет вниз, сделанные дела остаются вверху. Скриншот - Рис. 2.

Emacs: org-mode: organizer-daily.org

Рис. 2. Ведение списка дел.

Код в .emacs

Примечания к коду:

  • Органайзер я запускаю командой emacs -f my-org.
  • Можно запускать органайзер и из emacs.
  • dedicated.el находится (для Ubuntu) в пакете emacs-goodies-el, или можно установаить отдельно, как у меня.

Код на elisp

(load "/home/evgeny/.emacs.d/site-lisp/dedicated/dedicated.el")

(defun my-org ()
  "Create org-mode windows open files"
  (interactive)
  (setq default-frame-alist
	`((width . ,140)
	  (height . ,45)
	  (top . ,5)
	  (left . ,5)
	  (user-position . t)
	  ))
  (delete-other-windows)
  (split-window-horizontally)
  (setq eik-links-win-w 60)
  (shrink-window-horizontally 32)
  (find-file "~/_wiki/org/organizer-links.org")
  (dedicated-mode)
  (other-window 1)
  (find-file "~/_wiki/org/organizer-daily.org")
  (split-window-vertically)
  (split-window-horizontally)
  (other-window 1)
  (find-file "~/")
  (other-window 1)
  (find-file "~/")
  (other-window 1)
  (other-window 1)
  (dedicated-mode)
  (end-of-buffer)                       ; Go to the end of buffer
  (outline-previous-visible-heading 1)  ; Find the last heading
  (org-cycle)                           ; Make subtree visible
  )

Опубликовано: October 9, 2010

Комментарии:


Имя: Андрей


Хотел на рисунки посмотреть, а их нет :-( тоже самое и на хабре. Тем не менее спасибо за статьи!



Комментировать:

Имя:

Комментарий: