-
-
Save guidoschmidt/8cd94972a530daaf5292b36d4bf7678b to your computer and use it in GitHub Desktop.
Manage daily todo files on Emacs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(defun create-directory (directory) | |
"Creates the todo directory." | |
(if (file-exists-p directory) (message "Director exists") | |
(make-directory directory) | |
(message "Directory created") | |
)) | |
(defun create-todo-file (directory filename) | |
"Checks if the todo file exists if not creates it." | |
(create-directory directory) | |
(if (file-exists-p filename) (message "Todo exists for the day") | |
(write-region "" nil filename))) | |
(defun open-todo-file (directory) | |
"Opens a todo file for the current day." | |
(let ( | |
(filename | |
(concat directory "/" (format-time-string "%Y-%m-%d") ".org"))) | |
(create-todo-file directory filename) | |
(find-file filename))) | |
(defun open-todo-file-interactive () | |
"Creates a daily todo file. | |
Track what needs to be done for the day. | |
Plan your day better. | |
See what you have accomplished at the end of the day." | |
(interactive) | |
(open-todo-file "~/todo")) | |
(global-set-key (kbd "C-c C-t") 'open-todo-file-interactive) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment