From e2680b51cf66bdff546d73cf76a103dcc2aa13c4 Mon Sep 17 00:00:00 2001 From: Tom Willemse Date: Fri, 18 Dec 2015 01:47:38 +0100 Subject: Move some commands to editing library --- emacs/.emacs.d/site-lisp/oni-editing.el | 46 +++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) (limited to 'emacs/.emacs.d/site-lisp/oni-editing.el') diff --git a/emacs/.emacs.d/site-lisp/oni-editing.el b/emacs/.emacs.d/site-lisp/oni-editing.el index 908b5e3..0383cef 100644 --- a/emacs/.emacs.d/site-lisp/oni-editing.el +++ b/emacs/.emacs.d/site-lisp/oni-editing.el @@ -104,6 +104,52 @@ (interactive) (revert-buffer nil t nil)) +;;;###autoload +(defun oni:scroll-down-or-prev-page (arg) + "Either scroll down or go to the previous page. + +Depending on the value of `buffer-narrowed-p'." + (interactive "^P") + (if (buffer-narrowed-p) + (let ((scroll-error-top-bottom nil)) + (condition-case nil + (scroll-down-command arg) + (beginning-of-buffer + (narrow-to-page -1) + (goto-char (point-min))))) + (scroll-down-command arg))) + +;;;###autoload +(defun oni:scroll-up-or-next-page (arg) + "Either scroll up or go to the next page. + +Depending on the value of `buffer-narrowed-p'." + (interactive "^P") + (if (buffer-narrowed-p) + (let ((scroll-error-top-bottom nil)) + (condition-case nil + (scroll-up-command arg) + (end-of-buffer + (narrow-to-page 1) + (goto-char (point-min))))) + (scroll-up-command arg))) + +;;;###autoload +(defun oni:self-insert-dwim () + "Execute self insert, but when the region is active call self +insert at the end of the region and at the beginning." + (interactive) + (if (region-active-p) + (let ((electric-pair-mode nil) + (beginning (region-beginning)) + (end (region-end))) + (goto-char end) + (self-insert-command 1) + (save-excursion + (goto-char beginning) + (self-insert-command 1))) + (self-insert-command 1))) + ;;;###autoload (defun oni:upcase-prev (num) (interactive "p") -- cgit v1.2.3-54-g00ecf