From fa0b9c87eb9599ad83729e34c989919a70748472 Mon Sep 17 00:00:00 2001 From: Tom Willemse Date: Fri, 18 Dec 2015 00:13:16 +0100 Subject: Move some commands to editing library --- emacs/.emacs.d/site-lisp/oni-editing.el | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'emacs/.emacs.d/site-lisp') diff --git a/emacs/.emacs.d/site-lisp/oni-editing.el b/emacs/.emacs.d/site-lisp/oni-editing.el index 315750d..8e19562 100644 --- a/emacs/.emacs.d/site-lisp/oni-editing.el +++ b/emacs/.emacs.d/site-lisp/oni-editing.el @@ -24,6 +24,15 @@ ;;; Code: +;;;###autoload +(defun oni:move-beginning-of-dwim () + "Move to beginning of line either after indentation or before." + (interactive) + (let ((start (point))) + (back-to-indentation) + (if (= start (point)) + (move-beginning-of-line 1)))) + (defun oni:change-number-at-point (change-func) "Use CHANGE-FUNC to change the number at `point'." (let ((num (number-to-string (funcall change-func (number-at-point)))) @@ -51,6 +60,25 @@ (interactive "p") (oni:change-prev-case num 'down)) +;;;###autoload +(defun oni:move-end-of-dwim () + "Move to end of line, either before any comments or after." + (interactive) + (let ((start (point)) + (eolpos (line-end-position))) + (beginning-of-line) + (if (and comment-start + (not (looking-at (regexp-quote comment-start))) + (comment-search-forward eolpos t)) + (progn + (search-backward-regexp (concat "[^ \t" comment-start "]")) + (forward-char) + + (when (or (bolp) + (= start (point))) + (end-of-line))) + (end-of-line)))) + ;;;###autoload (defun oni:increase-number-at-point () "Take the number at `point' and replace it with it increased by 1." -- cgit v1.2.3-54-g00ecf