From a05a473093fbfc0fa2029a89427ae6400d5cddcc Mon Sep 17 00:00:00 2001 From: Howard Abrams Date: Thu, 3 Mar 2022 15:08:09 -0800 Subject: [PATCH] Add more apps to my "a" key --- bootstrap.org | 18 +++---- ha-aux-apps.org | 6 ++- ha-config.org | 119 +++++++++++++++++++++++---------------------- ha-feed-reader.org | 22 ++++++++- 4 files changed, 93 insertions(+), 72 deletions(-) diff --git a/bootstrap.org b/bootstrap.org index 1bbb75f..6b10bc3 100644 --- a/bootstrap.org +++ b/bootstrap.org @@ -198,16 +198,16 @@ The following loads the rest of my org-mode literate files. I add them as they a "ha-remoting.org" "ha-programming.org" "ha-programming-python.org" - ,(unless (ha-emacs-for-work?) + ,(if (ha-emacs-for-work?) + '("ha-org-sprint.org" "ha-work.org") + ;; Personal Editor '("ha-org-journaling.org" - "ha-irc.org" - "ha-org-publishing.org" - "ha-email.org" - "ha-aux-apps.org" - "ha-feed-reader.org")) - ,(when (ha-emacs-for-work?) - '("ha-org-sprint.org" - "ha-work.org")))) + "ha-irc.org" + "ha-org-publishing.org" + "ha-email.org" + "ha-programming-scheme.org" + "ha-aux-apps.org" + "ha-feed-reader.org")))) "List of org files that complete the hamacs project.") #+END_SRC diff --git a/ha-aux-apps.org b/ha-aux-apps.org index 5274740..975ca87 100644 --- a/ha-aux-apps.org +++ b/ha-aux-apps.org @@ -26,13 +26,15 @@ A literate programming file for helper apps in Emacs. The following applications are not really needed. I alternate between trying to /stay in Emacs/ taking advantage of the consistent interface, and simply using a stand-alone app on my Workday computer. * Twitter The venerable [[https://github.com/hayamiz/twittering-mode/tree/master][twittering-mode]] allows me to follow all the twits. + #+BEGIN_SRC emacs-lisp (use-package twittering-mode :init (setq twittering-use-master-password t epa-pinentry-mode 'loopback) :config - (defalias 'epa--decode-coding-string 'decode-coding-string)) + (defalias 'epa--decode-coding-string 'decode-coding-string) + (ha-leader "a t" '("twitter" . twit))) #+END_SRC * Telega I'm thinking the [[https://zevlg.github.io/telega.el/][Telega package]] would be better than Bitlbee for Telegram communication. Seems to have a bug on the Melpa version, so I'm keeping this to the =HEAD=, but only if I've cloned it. @@ -45,7 +47,7 @@ I'm thinking the [[https://zevlg.github.io/telega.el/][Telega package]] would be :init (setq telega-use-images nil) :config - (ha-leader "a t" 'telega))) + (ha-leader "a T" 'telega))) #+END_SRC For some reason, you need [[https://github.com/Fanael/rainbow-identifiers][rainbow-identifiers]] to work, oh, I guess the docs state this. * RPG DM diff --git a/ha-config.org b/ha-config.org index d36c5bf..c79999e 100644 --- a/ha-config.org +++ b/ha-config.org @@ -617,72 +617,73 @@ The ~0~ key/window should be always associated with a project-specific tree wind Let's try this out with a Hydra since some commands (enlarge window), I want to repeatedly call. It also allows me to organize the helper text. #+BEGIN_SRC emacs-lisp -(use-package hydra - :config - (defhydra hydra-window-resize (:color blue :hint nil) " -_w_: select _n_: new _^_: taller (t) _z_: Swap _+_: text larger -_c_: cycle _d_: delete _V_: shorter (T) _u_: undo _-_: text smaller -_j_: go up _=_: balance _>_: wider _U_: undo+ _F_: font larger -_k_: down _m_: maximize _<_: narrower _r_: redo _f_: font smaller -_h_: left _s_: h-split _e_: balanced _R_: redo+ _0_: toggle neotree -_l_: right _v_: v-split _o_: choose by number (also 1-9) -" - ("w" ace-window) - ("c" other-window) - ("=" balance-windows) - ("m" delete-other-windows) - ("d" delete-window) - ("D" ace-delete-window) + (use-package hydra + :config + (defhydra hydra-window-resize (:color blue :hint nil) " + _w_: select _n_: new _^_: taller (t) _z_: Swap _+_: text larger + _c_: cycle _d_: delete _V_: shorter (T) _u_: undo _-_: text smaller + _j_: go up _=_: balance _>_: wider _U_: undo+ _F_: font larger + _k_: down _m_: maximize _<_: narrower _r_: redo _f_: font smaller + _h_: left _s_: h-split _e_: balanced _R_: redo+ _0_: toggle neotree + _l_: right _v_: v-split _o_: choose by number (also 1-9) + " + ("w" ace-window) + ("c" other-window) + ("=" balance-windows) + ("m" delete-other-windows) + ("d" delete-window) + ("D" ace-delete-window) - ("z" ace-window-swap) - ("u" winner-undo) - ("U" winner-undo :color pink) - ("C-r" winner-redo) - ("r" winner-redo) - ("R" winner-redo :color pink) + ("z" ace-window-swap) + ("u" winner-undo) + ("U" winner-undo :color pink) + ("C-r" winner-redo) + ("r" winner-redo) + ("R" winner-redo :color pink) - ("n" evil-window-new) - ("j" evil-window-up) - ("k" evil-window-down) - ("h" evil-window-left) - ("l" evil-window-right) + ("n" evil-window-new) + ("j" evil-window-up) + ("k" evil-window-down) + ("h" evil-window-left) + ("l" evil-window-right) + ("o" other-window) - ("s" evil-window-split) - ("v" evil-window-vsplit) + ("s" evil-window-split) + ("v" evil-window-vsplit) - ("F" font-size-increase :color pink) - ("f" font-size-decrease :color pink) - ("+" text-scale-increase :color pink) - ("=" text-scale-increase :color pink) - ("-" text-scale-decrease :color pink) - ("^" evil-window-increase-height :color pink) - ("V" evil-window-decrease-height :color pink) - ("t" evil-window-increase-height :color pink) - ("T" evil-window-decrease-height :color pink) - (">" evil-window-increase-width :color pink) - ("<" evil-window-decrease-width :color pink) - ("e" balance-windows) + ("F" font-size-increase :color pink) + ("f" font-size-decrease :color pink) + ("+" text-scale-increase :color pink) + ("=" text-scale-increase :color pink) + ("-" text-scale-decrease :color pink) + ("^" evil-window-increase-height :color pink) + ("V" evil-window-decrease-height :color pink) + ("t" evil-window-increase-height :color pink) + ("T" evil-window-decrease-height :color pink) + (">" evil-window-increase-width :color pink) + ("<" evil-window-decrease-width :color pink) + ("e" balance-windows) - ("o" winum-select-window-by-number) - ("1" winum-select-window-1) - ("2" winum-select-window-2) - ("3" winum-select-window-3) - ("4" winum-select-window-4) - ("5" winum-select-window-5) - ("6" winum-select-window-6) - ("7" winum-select-window-7) - ("8" winum-select-window-8) - ("9" winum-select-window-9) - ("0" neotree-toggle) + ("o" winum-select-window-by-number) + ("1" winum-select-window-1) + ("2" winum-select-window-2) + ("3" winum-select-window-3) + ("4" winum-select-window-4) + ("5" winum-select-window-5) + ("6" winum-select-window-6) + ("7" winum-select-window-7) + ("8" winum-select-window-8) + ("9" winum-select-window-9) + ("0" neotree-toggle) - ;; Extra bindings: - ("t" evil-window-increase-height :color pink) - ("T" evil-window-decrease-height :color pink) - ("." evil-window-increase-width :color pink) - ("," evil-window-decrease-width :color pink) - ("q" nil :color blue))) + ;; Extra bindings: + ("t" evil-window-increase-height :color pink) + ("T" evil-window-decrease-height :color pink) + ("." evil-window-increase-width :color pink) + ("," evil-window-decrease-width :color pink) + ("q" nil :color blue))) -(ha-leader "w" '("windows" . hydra-window-resize/body)) + (ha-leader "w" '("windows" . hydra-window-resize/body)) #+END_SRC *** Search Operations Ways to search for information goes under the ~s~ key. This primarily depends on the [[https://github.com/dajva/rg.el][rg]] package, which builds on the internal =grep= system, and creates a =*rg*= window with =compilation= mode, so ~C-j~ and ~C-k~ will move and show the results by loading those files. diff --git a/ha-feed-reader.org b/ha-feed-reader.org index d2b2b1e..b8fa2dd 100644 --- a/ha-feed-reader.org +++ b/ha-feed-reader.org @@ -71,9 +71,27 @@ According to Ben Maughan and [[http://pragmaticemacs.com/emacs/to-eww-or-not-to- (define-key elfeed-show-mode-map (kbd "B") 'elfeed-show-visit-gui) #+END_SRC -Finally, we can add it to the =apps= menu: + +Quick way to start and jump to my world of feeds. #+BEGIN_SRC emacs-lisp -(ha-leader "a f" 'elfeed) + (defun ha-elfeed-persp-start () + "Create an ELFEED workspace and start my ELFEED client." + (interactive) + (persp-switch "feeds") + (elfeed)) + + (defun ha-elfeed-persp-switch () + "Switch to the ELFEED workspace and load the next buffer." + (interactive) + (persp-switch "feeds")) +#+END_SRC + +And some global keys to display them in the =apps= menu: + +#+BEGIN_SRC emacs-lisp +(ha-leader + "a f" '("elfeed switch" . ha-elfeed-persp-switch) + "a F" '("elfeed start" . ha-elfeed-persp-start)) #+END_SRC * The Feeds :elfeed: ** Personal :personal: