diff options
| -rw-r--r-- | init.org | 25 | 
1 files changed, 24 insertions, 1 deletions
| @@ -1174,20 +1174,43 @@        (define-key ctl-x-4-map (kbd "t") #'jao-transpose-windows)        (global-set-key (kbd "M-O") #'jao-transpose-windows)      #+end_src -*** First window +*** Window navigation      #+begin_src emacs-lisp        (defvar jao-first-window--from nil)        (defun jao-first-window () +        "Go to previous windows in frame, remembering where we were."          (interactive)          (let ((cb (current-buffer)))            (if (eq (get-buffer-window cb) (select-window (frame-first-window)))                (when jao-first-window--from (pop-to-buffer jao-first-window--from))              (setq jao-first-window--from cb)))) +      (defun jao-prev-window () +        "Go to previous window." +        (interactive) +        (other-window -1)) + +      (defun jao--nth-windower (n) +        (if (zerop n) #'jao-first-window +          `(lambda () +             (interactive) +             (jao-first-window) +             (dotimes (x ,n) (other-window 1))))) +        (global-set-key (kbd "s-a") #'jao-first-window)        (global-set-key (kbd "H-s-a") #'jao-first-window)        (global-set-key (kbd "M-o") #'other-window) +      (global-set-key (kbd "C-x p") 'jao-prev-window) + +      (global-set-key (kbd "C-c 0") #'jao-first-window) +      (dolist (n '(0 1 2 3 4 5 6 7 8)) +        (global-set-key (format "\C-c%s" (1+ n)) (jao--nth-windower n))) + +    #+end_src +*** nth window +    #+begin_src emacs-lisp +      #+end_src  *** winner mode      #+begin_src emacs-lisp | 
