Category “Emacs Lisp” — 14 articles

As you might have noticed, this little blog of mine is not compromising much and entirely maintained from Emacs. Until today, I had to resort to term to upload my publications, though, as I’ve been too lazy to hack up the tools integration for simply doing a single rsync command line. That was one time to many: (defvar dim:muse-rsync-options "-avz" "rsync options") (defvar dim:muse-rsync-source "~/dev/muse/out" "local path from where to rsync, with no ending /") (defvar dim:muse-rsync-target "[email protected]

First, here’s a way to insert at current position the last message printed into the minibuffer… well not exactly, in *Messages* buffer in fact. I was tired of doing it myself after invoking, e.g., M-x emacs-version. ;; print last message ;; current-message is already lost by the time this gets called (defun dim:previous-message (&optional nth) "get last line of *Message* buffer" (with-current-buffer (get-buffer "*Messages*") (save-excursion (goto-char (point-max)) (setq nth (if nth nth 1)) (while (> nth 0) (previous-line) (setq nth (- nth 1))) (buffer-substring (line-beginning-position) (line-end-position))))) (defun dim:insert-previous-message (&optional nth) "insert last message of *Message* to current position" (interactive "p") (insert (format "%s" (dim:previous-message nth)))) (global-set-key (kbd "C-c m") 'dim:insert-previous-message) Now I stumbled accross Planet Emacsen and saw this Emacs Utility Functions post, containing a version of duplicate-current-line that I didn’t like… here’s mine:

Dimitri Fontaine

PostgreSQL Major Contributor

Open Source Software Engineer