emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/objed dcea2bc 124/166: Add window resize commands


From: Clemens Radermacher
Subject: [elpa] externals/objed dcea2bc 124/166: Add window resize commands
Date: Sun, 29 Dec 2019 08:21:13 -0500 (EST)

branch: externals/objed
commit dcea2bc248fa7768e6c2e73a74b1a6d0f290e50e
Author: Clemens Radermacher <address@hidden>
Commit: Clemens Radermacher <address@hidden>

    Add window resize commands
---
 objed.el | 55 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 54 insertions(+), 1 deletion(-)

diff --git a/objed.el b/objed.el
index 60dd81a..3d4f00b 100644
--- a/objed.el
+++ b/objed.el
@@ -832,7 +832,13 @@ BEFORE and AFTER are forms to execute before/after calling 
the command."
       'objed-insert-new-object)
 
     (define-key map "^" 'objed-raise)
-    ;; move things
+    ;; move windows
+    (define-key map (kbd "<left>") 'objed-move-window-line-left)
+    (define-key map (kbd "<right>") 'objed-move-window-line-right)
+    (define-key map (kbd "<up>") 'objed-move-window-line-up)
+    (define-key map (kbd "<down>") 'objed-move-window-line-down)
+
+    ;; move text
     (define-key map (kbd "<C-left>") 'objed-indent-left)
     (define-key map (kbd "<C-right>") 'objed-indent-right)
     (define-key map (kbd "<M-right>") 'objed-indent-to-right-tab-stop)
@@ -2861,6 +2867,53 @@ Moves point over any whitespace afterwards."
       (newline)
       (indent-according-to-mode)))
   (objed--reset))
+
+(defun objed-move-window-line-up ()
+  "Move window line up."
+  (interactive)
+  (cond ((and (window-in-direction 'above)
+              (window-in-direction 'below))
+         (shrink-window 1))
+        ((window-in-direction 'above)
+         (enlarge-window 1))
+        ((window-in-direction 'below)
+         (shrink-window 1))))
+
+(defun objed-move-window-line-down ()
+  "Move window line down."
+  (interactive)
+  (cond ((and (window-in-direction 'above)
+              (window-in-direction 'below))
+         (enlarge-window 1))
+        ((window-in-direction 'above)
+         (shrink-window 1))
+        ((window-in-direction 'below)
+         (enlarge-window 1))))
+
+
+(defun objed-move-window-line-left ()
+  "Move window line to the left."
+  (interactive)
+  (cond ((and (window-in-direction 'left)
+              (window-in-direction 'right))
+         (shrink-window-horizontally 1))
+        ((window-in-direction 'left)
+         (enlarge-window-horizontally 1))
+        ((window-in-direction 'right)
+         (shrink-window-horizontally 1))))
+
+(defun objed-move-window-line-right ()
+  "Move window line to the right."
+  (interactive)
+  (cond ((and (window-in-direction 'left)
+              (window-in-direction 'right))
+         (enlarge-window-horizontally 1))
+        ((window-in-direction 'left)
+         (shrink-window-horizontally 1))
+        ((window-in-direction 'right)
+         (enlarge-window-horizontally 1))))
+
+
 (defun objed-indent-left (arg)
   "Indent all lines in object leftward by ARG space."
   (interactive "p")



reply via email to

[Prev in Thread] Current Thread [Next in Thread]