From: Emanuel Berg <moasenwood@zoho.eu>
To: help-gnu-emacs@gnu.org
Cc: emacs-devel@gnu.org
Subject: todo-did.el complete rewrite
Date: Mon, 25 Mar 2019 06:12:22 +0100 [thread overview]
Message-ID: <865zs7bkqx.fsf@zoho.eu> (raw)
Emacs/shell (here, zsh) interface to a TODO
buffer. Very useful and fast. (`todo-show-file'
ought to be bound to a key, e.g. I have it
`C-j t'.)
In the shell it is just
$ todo sleep more, take less amphetamine
(Note the lack of apostrophes/quotes!) The next
time you do `C-j t' (or whatever you have it)
it'll be there - sorted, and saved.
Same if you do
M-x todo RET fix all the bugs in todo-did.el RET
Ain't it cool stuff? :) Please comment!
The last couple of days I have posted tons of
code (of various degrees of advancedness, this
is probably the most advanced) - the last
couple of days I have posted tons of code and
not received a single comment :(
Very disappointing is my honest sensation.
PS. Check the date if you use the URL!
Might get a cached version otherwise. DS.
Aaanyway...
;; This file: http://user.it.uu.se/~embe8573/emacs-init/todo-did.el
;;
;; Updated: 25-03-2019 05:53
;;
;; zsh companion:
;;
;; set the TODO_FILE env in: ~/.zshenv
;; 'todo' command:
;; ~/.zsh/todo
;; http://user.it.uu.se/~embe8573/conf/.zsh/todo
(defun todo-get-buffer ()
(let*((todo-env-var "TODO_FILE")
(todo-file (getenv todo-env-var)) )
(if todo-file
(or (get-file-buffer todo-file)
(find-file-noselect todo-file) )
(error "Set the env var %s first" todo-env-var) )))
(defun todo-sort-and-save ()
(sort-lines nil ; not REVERSE
(point-min) (point-max))
(save-buffer) )
(defun todo (what)
(interactive "sdo what: ")
(let ((todo-buffer (todo-get-buffer)))
(with-current-buffer todo-buffer
(goto-char (point-max))
(insert what)
(todo-sort-and-save)
)))
(defun todo-show-file ()
(interactive)
(let ((todo-buffer (todo-get-buffer)))
(set-buffer todo-buffer)
;; this if if the file doesn't exist
;; but the env is set correctly
(save-buffer)
;; this is if the file
;; has changed from the shell
(revert-buffer t t) ; IGNORE-AUTO NOCONFIRM
(todo-sort-and-save)
(switch-to-buffer todo-buffer)
))
--
underground experts united
http://user.it.uu.se/~embe8573
reply other threads:[~2019-03-25 5:12 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=865zs7bkqx.fsf@zoho.eu \
--to=moasenwood@zoho.eu \
--cc=emacs-devel@gnu.org \
--cc=help-gnu-emacs@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).