1332 (jdone-setup-key-binding) |
1332 (jdone-setup-key-binding) |
1333 (jdone-integrate-hook) |
1333 (jdone-integrate-hook) |
1334 ) |
1334 ) |
1335 |
1335 |
1336 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
1336 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
1337 (message "remember-mode") |
|
1338 |
|
1339 (when (>= emacs-major-version 23) |
|
1340 (require 'remember)) |
|
1341 |
|
1342 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
|
1343 (message "org-mode, GTD, PIM, organize, todo") |
1337 (message "org-mode, GTD, PIM, organize, todo") |
1344 |
1338 |
1345 (when (>= emacs-major-version 22) |
1339 (when (>= emacs-major-version 22) |
1346 (require 'org)) |
1340 (require 'org)) |
1347 |
1341 |
1348 ;; XXX org-todo-keywords '((sequence "TODO" "START" "|" "DONE")) for org-version 4.67c |
1342 ;; XXX org-todo-keywords '((sequence "TODO" "START" "|" "DONE")) for org-version 4.67c |
1349 ;; XXX (setq org-todo-keywords '("TODO" "START" "DONE")) for org-version 6.05b |
|
1350 (when (or (featurep 'org) (featurep 'org-install)) |
1343 (when (or (featurep 'org) (featurep 'org-install)) |
1351 (add-to-list 'auto-mode-alist '("\\.org$" . org-mode)) |
1344 (add-to-list 'auto-mode-alist '("\\.org$" . org-mode)) |
1352 (setq org-directory "~/devel/my-devel/gtd") |
1345 (setq org-directory "~/devel/my-devel/gtd") |
1353 (setq |
1346 (setq |
1354 org-default-notes-file nil |
|
1355 org-agenda-ndays 31 |
1347 org-agenda-ndays 31 |
1356 org-deadline-warning-days 7 |
1348 org-deadline-warning-days 7 |
1357 org-agenda-show-all-dates t |
1349 org-agenda-show-all-dates t |
1358 org-agenda-format-date "%Y-%m-%d, %A %e %B" |
1350 org-agenda-format-date "%Y-%m-%d, %A %e %B" |
1359 org-agenda-skip-deadline-if-done t |
1351 org-agenda-skip-deadline-if-done t |
1368 (setq my-org-agenda-note-file (concat org-directory "/NOTE.org")) |
1360 (setq my-org-agenda-note-file (concat org-directory "/NOTE.org")) |
1369 (setq my-org-agenda-learning-file (concat org-directory "/LEARNING.org")) |
1361 (setq my-org-agenda-learning-file (concat org-directory "/LEARNING.org")) |
1370 (setq org-agenda-files `(,my-org-agenda-todo-file ,my-org-agenda-note-file ,my-org-agenda-learning-file)) |
1362 (setq org-agenda-files `(,my-org-agenda-todo-file ,my-org-agenda-note-file ,my-org-agenda-learning-file)) |
1371 (define-key global-map "\C-va" 'org-agenda) |
1363 (define-key global-map "\C-va" 'org-agenda) |
1372 (define-key global-map "\C-ve" (lambda nil (interactive) (find-file my-org-agenda-note-file))) |
1364 (define-key global-map "\C-ve" (lambda nil (interactive) (find-file my-org-agenda-note-file))) |
|
1365 |
|
1366 (setq org-todo-keywords '("TODO" "DONE")) |
1373 |
1367 |
1374 ;; My tags for remember buffer. |
1368 ;; My tags for remember buffer. |
1375 (setq org-tag-alist |
1369 (setq org-tag-alist |
1376 '( |
1370 '( |
1377 ("ADMIN" . ?a) |
1371 ("ADMIN" . ?a) |
1389 )) |
1383 )) |
1390 ;; With this variable tags duplicated in *Org Tags* menu. I use |
1384 ;; With this variable tags duplicated in *Org Tags* menu. I use |
1391 ;; `org-tag-alist' instead until bug fixed. |
1385 ;; `org-tag-alist' instead until bug fixed. |
1392 (setq org-tag-persistent-alist nil) |
1386 (setq org-tag-persistent-alist nil) |
1393 |
1387 |
1394 (when (or (featurep 'remember) (fboundp 'remember)) |
1388 (cond |
|
1389 ((featurep 'org-capture) |
|
1390 (setq org-default-notes-file my-org-agenda-todo-file) |
|
1391 (setq org-capture-templates |
|
1392 '(("t" "Todo" entry (file my-org-agenda-todo-file) "* TODO %?\n SCHEDULED: %T"))) |
|
1393 (define-key global-map "\C-vr" |
|
1394 (lambda () (interactive) (org-capture nil "t"))) |
|
1395 ) |
|
1396 ((or (featurep 'remember) (fboundp 'remember)) |
1395 (setq remember-annotation-functions '(org-remember-annotation)) |
1397 (setq remember-annotation-functions '(org-remember-annotation)) |
1396 (setq remember-handler-functions '(org-remember-handler)) |
1398 (setq remember-handler-functions '(org-remember-handler)) |
1397 (add-hook 'remember-mode-hook 'org-remember-apply-template) |
1399 (add-hook 'remember-mode-hook 'org-remember-apply-template) |
1398 (define-key global-map "\C-vr" 'org-remember) |
1400 (define-key global-map "\C-vr" 'org-remember) |
1399 (setq org-remember-templates |
1401 (setq org-remember-templates |
1402 ("todo" ?t "* TODO %?" ,my-org-agenda-todo-file) |
1404 ("todo" ?t "* TODO %?" ,my-org-agenda-todo-file) |
1403 ;; ("note" ?n "* %?\n" ,my-org-agenda-note-file) |
1405 ;; ("note" ?n "* %?\n" ,my-org-agenda-note-file) |
1404 )) |
1406 )) |
1405 (setq org-remember-store-without-prompt t) |
1407 (setq org-remember-store-without-prompt t) |
1406 (org-remember-insinuate) |
1408 (org-remember-insinuate) |
1407 ) |
1409 )) |
1408 |
1410 |
1409 ;; (setq org-todo-keyword-faces |
1411 ) |
1410 ;; '(("TODO" . (:foreground "red" :weight bold)) |
1412 |
1411 ;; ("WAIT" . (:foreground "orange" :weight bold)) |
1413 |
1412 ;; ("DONE" . (:foreground "green" :weight bold))) ) |
1414 (defun my-org-archive-location (org-file) |
1413 ) |
1415 (concat (if (string-match "\\(.*\\)\\.org$" org-file) |
|
1416 (match-string 1 org-file) |
|
1417 org-file) |
|
1418 "_done.org")) |
|
1419 |
|
1420 (defun my-org-archive () |
|
1421 "Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'." |
|
1422 (interactive) |
|
1423 (let ( (org-archive (my-org-archive-location (buffer-file-name))) |
|
1424 (entry-re (concat "^\\* ")) |
|
1425 (entry-done-re (concat "^\\* *" (mapconcat 'regexp-quote org-done-keywords "\\|") " ")) |
|
1426 entry-beg entry-end ) |
|
1427 (save-excursion |
|
1428 (show-all) |
|
1429 (kill-new "") |
|
1430 (goto-char (point-min)) |
|
1431 (while (re-search-forward entry-done-re nil t) |
|
1432 (setq entry-beg (line-beginning-position)) |
|
1433 () |
|
1434 (if (re-search-forward entry-re nil t) |
|
1435 (beginning-of-line) |
|
1436 (goto-char (point-max))) |
|
1437 (setq entry-end (point)) |
|
1438 (let ( (last-command 'kill-region) ) |
|
1439 (kill-region entry-beg entry-end)) |
|
1440 ) |
|
1441 (find-file org-archive) |
|
1442 (goto-char (point-max)) |
|
1443 (insert ?\n) |
|
1444 (yank) |
|
1445 ))) |
1414 |
1446 |
1415 (setq org-agenda-include-diary t) |
1447 (setq org-agenda-include-diary t) |
1416 |
1448 |
1417 (defun my-org-kill-by-tag (tag) |
1449 (defun my-org-kill-by-tag (tag) |
1418 "Put all entries that matches TAG from current org-file to `kill-ring'." |
1450 "Put all entries that matches TAG from current org-file to `kill-ring'." |