This should probably be replaced by using org-mode, etc., but I started working with it early on, and tweaked it extensively, and have a something like 5-6 years invested in using it. Yeah, as far as economics go -- that’s a sunk cost. so what! move on, if it’s a bad idea! that’s on the agenda....
All versions can now be found at https://github.com/MichaelPaulukonis/fisler-journal.el, referencing original author Ken Fisler, according to notes in the code, as found at
journal.el at EmacsWiki:Journal
I use the date-features or the original far less, and turned it into it’s own mode with some highlighting and keys. Uses allout-mode to a certain extent. But I don’t make much use of it, to be honest. Most tweaks are for starting new sections, simple TODO/DONE/CANCEL tags, saving journal-files into sub-directories, and doing searches for the TODO tags, and w/in journal dirs. I’ve kept coding in it as an exercise.
There’s a horrible internal typo where I consistently use “cancell”. ugh. My apologies to anyone who reads this...
I have finally released the code onto github (see above), and hope to clean it up a bit just for practice and housekeeping purposes.
Like... spelling and bad programing practices. Or some of that.
UPDATE 2013.05.22: I finally started using org-mode, and am rapidly becoming a convert.
Below is some raw-code.
simple. with hard-coded paths.
which is odd.
(global-set-key "\C-c\C-jw" 'org-journal-work)
(global-set-key "\C-c\C-jp" 'org-journal-personal)
(global-set-key "\C-c\C-jf" 'org-journal-freelance)
(defun org-journal-work ()
"Send work-based directory to org-journal for day-job journaling."
(org-journal "D:/home/Personal/org-journal-work/" "work"))
(defun org-journal-personal ()
"Send dropbox-based directory to org-journal for personal journaling."
(org-journal "D:/Dropbox/Emacs/org/org-journal-personal/" "personal"))
(defun org-journal-freelance ()
"Send dropbox-based directory to org-journal for freelance journaling."
(org-journal "D:/Dropbox/Emacs/org/org-journal-freelance/" "freelance"))
(defun org-journal (&optional root suffix)
"Open .org file named after today's date, format YYYY-MM-DD-Day.jnl,
in subdirectory named in variable root, set in ~/.emacs,
else as defined below.
(setq root (or root "D:/Dropbox/Emacs/org-journal/"))
(setq default-directory (year-month-dir root))
(setq todays-date (format-time-string "%Y-%m-%d-%a" nil))
(let ((sfx (if suffix (concat "." suffix) "")))
(setq filename (concat todays-date sfx ".org")))
"Open journal-org file: " default-directory filename nil filename)))
(find-file filename) ;; switch to buffer if exists, or open file
;; following lines based on http://metajack.im/2009/01/01/journaling-with-emacs-orgmode/
;; heading is not working correctly if it is the result of (today)
(let ((isearch-forward t) (heading (get-today)))
(unless (org-goto-local-search-headings heading nil t)
(insert "\n\n \n"))))
;; (backward-char 2)
;; (unless (= (current-column) 2)
;; (insert "\n\n "))
No comments yet.