Compare commits

...

2 Commits

2 changed files with 50 additions and 13 deletions

View File

@ -3,6 +3,7 @@
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; open org agenda in top side window
; BUGGED AND UNUSED, agenda does NOT work properly in side windows
(defun kmn/org-agenda-on-top ()
(defvar parameters
'(window-parameters . ((no-other-window . t)
@ -20,7 +21,7 @@
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; open dired with default directory in left side window
(defun kmn/dired-default-directory-on-left ()
(defun kmn/dired-directory-on-left (&optional dir_path)
(defvar parameters
'(window-parameters . ((no-other-window . t)
(no-delete-other-windows . t))))
@ -30,7 +31,7 @@
"Display `default-directory' in side window on left, hiding details."
(interactive)
(let ((buffer (dired-noselect default-directory)))
(let ((buffer (dired-noselect (or dir_path (setq dir_path default-directory)))))
(with-current-buffer buffer (dired-hide-details-mode t))
(display-buffer-in-side-window
buffer `((side . left) (slot . -1)
@ -40,6 +41,16 @@
)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; show scratch buffer
(defun kmn/show-buffer-scratch ()
(interactive)
; start with scratch buffer active
(switch-to-buffer (get-buffer "*scratch*"))
; default scratch buffer has 2 comments @ top of file, jump past them
(with-no-warnings (goto-line 3))
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; quick reference notes as a pop up window
(defun kmn/popwin-quick-ref ()
@ -80,8 +91,15 @@ position between last non-whitespace and `end-of-line'."
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; function to kill all non special, non active buffers
(defun kmn/kill-other-buffers ()
"Kill all buffers but the current one. Don't mess with special buffers."
"Kill all buffers but the current one. Don't mess with special buffers. Kill dired buffers"
(interactive)
; dired buffer cleanup
(mapc
(lambda (buffer)
(when (eq 'dired-mode (buffer-local-value 'major-mode buffer))
(kill-buffer buffer)))
(buffer-list))
; non special buffer cleanup
(dolist (buffer (buffer-list))
(unless (or (eql buffer (current-buffer)) (not (buffer-file-name buffer)))
(kill-buffer buffer))))

View File

@ -25,10 +25,13 @@
; org-mode workspace
(defun kmn/workspace-org ()
(interactive)
; front load org-agenda so it doesnt reshuffle the frame layout on us
(org-agenda nil "r")
; start with fresh frame
(delete-other-windows)
(kmn/kill-other-buffers)
; front load org-agenda so it doesnt reshuffle the frame layout on us
(org-agenda nil "r")
(split-window-below)
(next-multiframe-window)
; show kmn's slipbox
(find-file "~/org/orgzly/_slipbox.org")
; split window for additional file to show
@ -36,21 +39,37 @@
(next-multiframe-window)
; show kmn health notes/data tracker
(find-file "~/org/health/health_mike.org")
; put agenda in top side window (works around org-mode limitations
(kmn/org-agenda-on-top)
; switch to top of agenda window so most useful window is focused
(next-multiframe-window)
(goto-char 0)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; empty code workspace
(defun kmn/workspace-code-empty ()
(defun kmn/workspace-code-empty (&optional dir_path)
(interactive)
(delete-other-windows)
; start with scratch buffer active
(switch-to-buffer (get-buffer "*scratch*"))
; default scratch buffer has 2 comments @ top of file, jump past them
(with-no-warnings (goto-line 3))
(kmn/kill-other-buffers)
(kmn/show-buffer-scratch)
; show dired at `~` in left side window
(kmn/dired-default-directory-on-left)
(kmn/dired-directory-on-left dir_path)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; emacs config development
(defun kmn/workspace-code-emacs-config()
(interactive)
(kmn/workspace-code-empty "~/.emacs.d.profiles")
(find-file "~/.emacs.d.profiles/org/init.el")
(find-file "~/.emacs.d.profiles/code/init.el")
(find-file "~/.emacs.d.profiles/common/_global.el")
(find-file "~/.emacs.d.profiles/common/generic_functions.el")
(find-file "~/.emacs.d.profiles/common/workspaces.el")
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; hugo development
(defun kmn/workspace-code-generic()
(interactive)
(kmn/workspace-code-empty "~/src")
)