about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--TODO.org116
-rw-r--r--init.el89
-rw-r--r--lisp/acdw-org.el37
-rw-r--r--lisp/acdw.el6
4 files changed, 177 insertions, 71 deletions
diff --git a/TODO.org b/TODO.org index 081ba03..1759aca 100644 --- a/TODO.org +++ b/TODO.org
@@ -10,18 +10,18 @@
10- [X] and =▬▬▬▬▬▬▬▋ Ò╭╮Ó= 10- [X] and =▬▬▬▬▬▬▬▋ Ò╭╮Ó=
11- [X] Clean up code and package it properly 11- [X] Clean up code and package it properly
12 12
13*** TODO FIX the damn thing Ò╭╮Ó 13*** DONE FIX the damn thing Ò╭╮Ó
14 14
15I just have to make sure it's loading correctly in my own config… bleh 15I just have to make sure it's loading correctly in my own config… bleh
16 16
17- and add: 17- and add:
18 - [ ] =ヽ(°〇°)ノ= 18 - [X] =ヽ(°〇°)ノ=
19 - [ ] =୧((#Φ益Φ#))୨= 19 - [X] =୧((#Φ益Φ#))୨=
20 - [ ] =(╥﹏╥)= 20 - [X] =(╥﹏╥)=
21 - [ ] =Σ ◕ ◡ ◕= 21 - [X] =Σ ◕ ◡ ◕=
22 - [ ] =╭∩╮(︶_︶)╭∩╮= 22 - [X] =╭∩╮(︶_︶)╭∩╮=
23 - [ ] =(งツ)ว= 23 - [X] =(งツ)ว=
24 - [ ] =ʕ ᴖᴥᴖʔ= 24 - [X] =ʕ ᴖᴥᴖʔ=
25 25
26** TODO =append-scratch= mode or something 26** TODO =append-scratch= mode or something
27 27
@@ -54,7 +54,7 @@ allow more configuration of where the mouse goes:
54 54
55* Configuring 55* Configuring
56 56
57** TODO Install =el-patch=? 57** DONE Install =el-patch=?
58 58
59** DONE Look at [[https://gitlab.com/ideasman42/emacs-mode-line-idle][ideasman42 / emacs-mode-line-idle]] 59** DONE Look at [[https://gitlab.com/ideasman42/emacs-mode-line-idle][ideasman42 / emacs-mode-line-idle]]
60 60
@@ -66,11 +66,11 @@ from karthink (and prot)
66 66
67** TODO [[https://github.com/ahungry/md4rd][md4rd]] 67** TODO [[https://github.com/ahungry/md4rd][md4rd]]
68 68
69** TODO [[https://github.com/gRastello/ytel][ytel]] 69** DONE [[https://github.com/gRastello/ytel][ytel]]
70 70
71** TODO [[https://passionsplay.com/blog/create-minimal-emacs-environments-with-a-shell-script/][Create Minimal Emacs Environments with a Shell Script]] 71** TODO [[https://passionsplay.com/blog/create-minimal-emacs-environments-with-a-shell-script/][Create Minimal Emacs Environments with a Shell Script]]
72 72
73** TODO Twitch IRC 73** DONE Twitch IRC
74 74
75- [[https://gist.github.com/hunterbridges/ab095066d40f2e1a243e][How to connect to Twitch with an IRC client (As of Oct 2015) · GitHub]] 75- [[https://gist.github.com/hunterbridges/ab095066d40f2e1a243e][How to connect to Twitch with an IRC client (As of Oct 2015) · GitHub]]
76- irc.twitch.tv 76- irc.twitch.tv
@@ -99,25 +99,41 @@ e.g., “A gold watch” title-cases to “A gold Watch”
99*** Inspo: From wsinatra 99*** Inspo: From wsinatra
100 100
101#+begin_src emacs-lisp 101#+begin_src emacs-lisp
102 ;; Custom capture templates (setq org-capture-templates '(("t" "Todo" entry 102 ;; Custom capture templates
103 (file org-default-notes-file) "* TODO %?\n%u\n%a\n" :clock-in t :clock-resume 103 (setq org-capture-templates
104 t) ("e" "Event" entry (file org-default-notes-file) "* EVENT %? :EVENT:\n%t" 104 '(("t" "Todo" entry (file org-default-notes-file)
105 :clock-in t :clock-resume t) ("i" "Idea" entry (file org-default-notes-file) 105 "* TODO %?\n%u\n%a\n"
106 "* %? :IDEA: \n%t" :clock-in t :clock-resume t) ("p" "Project" entry (file 106 :clock-in t :clock-resume t)
107 org-default-notes-file) "* PROJ %?\n%u\n%a\n" :clock-in t :clock-resume t) 107 ("e" "Event" entry (file org-default-notes-file)
108 ("n" "Next Task" entry (file+headline org-default-notes-file "Tasks") "** 108 "* EVENT %? :EVENT:\n%t"
109 NEXT %? \nDEADLINE: %t"))) #+end_src 109 :clock-in t :clock-resume t)
110 ("i" "Idea" entry (file org-default-notes-file)
111 "* %? :IDEA: \n%t"
112 :clock-in t :clock-resume t)
113 ("p" "Project"
114 entry (file org-default-notes-file)
115 "* PROJ %?\n%u\n%a\n"
116 :clock-in t :clock-resume t)
117 ("n" "Next Task"
118 entry (file+headline org-default-notes-file "Tasks")
119 "** NEXT %? \nDEADLINE: %t")))
120 #+end_src
110 121
111*** Also cf. [[https://blog.jethro.dev/posts/org_mode_workflow_preview/][Org-mode Workflow: A Preview · Jethro Kuan]] 122*** Also cf. [[https://blog.jethro.dev/posts/org_mode_workflow_preview/][Org-mode Workflow: A Preview · Jethro Kuan]]
112 123
113* Buffer display stuff 124* Buffer display stuff
114 125
115#+begin_src emacs-lisp 126#+begin_src emacs-lisp
116 ;; from alphapapa (cl-defun ap/display-buffer-in-side-window (&optional 127 ;; from alphapapa
117 (buffer (current-buffer))) "Display BUFFER in dedicated side window." 128 (cl-defun ap/display-buffer-in-side-window (&optional (buffer (current-buffer)))
118 (interactive) (let ((display-buffer-mark-dedicated t)) 129 "Display BUFFER in dedicated side window."
119 (display-buffer-in-side-window buffer '((side . right) (window-parameters 130 (interactive)
120 (no-delete-other-windows . t)))))) #+end_src 131 (let ((display-buffer-mark-dedicated t))
132 (display-buffer-in-side-window buffer
133 '((side . right)
134 (window-parameters
135 (no-delete-other-windows . t))))))
136 #+end_src
121 137
122- [[https://old.reddit.com/r/emacs/comments/pka1sm/my_first_package_aside_for_easier_configuration/][My first package: Aside, for easier configuration and use of side windows : 138- [[https://old.reddit.com/r/emacs/comments/pka1sm/my_first_package_aside_for_easier_configuration/][My first package: Aside, for easier configuration and use of side windows :
123 emacs]] 139 emacs]]
@@ -137,30 +153,44 @@ e.g., “A gold watch” title-cases to “A gold Watch”
137** A way to map over buffers 153** A way to map over buffers
138 154
139#+begin_src emacs-lisp 155#+begin_src emacs-lisp
140 (dolist (buf (mapcan (lambda (buf) (with-current-buffer buf 156 (dolist (buf (mapcan
141 (circe-server-chat-buffers))) (circe-server-buffers))) 157 (lambda (buf)
142 (with-current-buffer buf ;; whatever u wanna do on 158 (with-current-buffer buf
143 each buffer goes here (lui-set-prompt (concat 159 (circe-server-chat-buffers)))
144 (propertize (acdw-irc/margin-format (buffer-name) "" 160 (circe-server-buffers)))
145 ">") 'face 'circe-prompt-face 'read-only t 'intangible 161 (with-current-buffer buf ;; whatever u wanna do on each buffer goes here
146 t 'cursor-intangible t) " ")) (setq-local 162 (lui-set-prompt (concat
147 fringes-outside-margins t right-margin-width 5 163 (propertize
148 scroll-margin 0 word-wrap t wrap-prefix (repeat-string 164 (acdw-irc/margin-format (buffer-name)
149 acdw-irc/left-margin " ") line-number-mode nil))) 165 ""
150 #+end_src 166 ">")
167 'face 'circe-prompt-face
168 'read-only t
169 'intangible t
170 'cursor-intangible t)
171 " "))
172 (setq-local fringes-outside-margins t
173 right-margin-width 5
174 scroll-margin 0
175 word-wrap t
176 wrap-prefix (repeat-string acdw-irc/left-margin " ")
177 line-number-mode nil)))
178#+end_src
151 179
152** ZNC Connecting (from #systemcrafters) 180** ZNC Connecting (from #systemcrafters)
153 181
154#+begin_quote 182#+begin_quote
155daviwil | minikN: I connect to the hostname/port of my ZNC server, but the 183daviwil | minikN: I connect to the hostname/port of my ZNC server, but the
156 trick is that the username is the nick you want to use on the 184 trick is that the username is the nick you want to use on the
157 server and the password is your znc username and password joined 185 server and the password is your znc username and password joined
158 with a colon, like daviwil:b4dp4ssw0rd minikN | so you don't 186 with a colon, like daviwil:b4dp4ssw0rd
159 specify the network in your password? like user/network:password? 187 minikN | so you don't specify the network in your password? like
160 benoitj | daviwil: nice password you have there daviwil | minikN: 188 user/network:password?
161 nope, I only have one network anyway 189benoitj | daviwil: nice password you have there
162- acdw > daviwil: I just see ******* 190daviwil | minikN: nope, I only have one network anyway
163 benoitj | I use two networks #+end_quote 191- acdw > daviwil: I just see *******
192benoitj | I use two networks
193#+end_quote
164 194
165** Teach =link-hint= about =lui-buttons= 195** Teach =link-hint= about =lui-buttons=
166 196
diff --git a/init.el b/init.el index efcf846..d3ad238 100644 --- a/init.el +++ b/init.el
@@ -87,7 +87,7 @@
87 (:also-load acdw-compat 87 (:also-load acdw-compat
88 acdw-lisp 88 acdw-lisp
89 acdw-reading) 89 acdw-reading)
90 (acdw/require-private) 90 (require 'acdw-private (acdw/sync-dir "private.el") :noerror)
91 91
92 (:option user-full-name "Case Duckworth" 92 (:option user-full-name "Case Duckworth"
93 user-mail-address (rot13-string "npqj@npqj.arg")) 93 user-mail-address (rot13-string "npqj@npqj.arg"))
@@ -579,13 +579,21 @@ specific to most general, they are these:
579- `flymake-inhibit-major-modes': a list of major-modes in which 579- `flymake-inhibit-major-modes': a list of major-modes in which
580 to inhibit `flymake-mode'. Really only useful if you want to 580 to inhibit `flymake-mode'. Really only useful if you want to
581 generally add `flymake-mode' to `prog-mode-hook'." 581 generally add `flymake-mode' to `prog-mode-hook'."
582 (unless (or (bound-and-true-p flymake-inhibit) ; file-local variable 582 ;; The name of this hook tells you pretty much everything you need to know
583 (list-string-match-p (buffer-name) 583 ;; for this little thing right here.
584 flymake-inhibit-buffer-name-regexps) 584 (add-hook 'hack-local-variables-hook
585 (list-string-match-p (buffer-file-name) 585 (defun flymake-unless@hack-local-variables ()
586 flymake-inhibit-file-name-regexps) 586 (unless (or (cdr (assoc 'flymake-inhibit
587 (apply #'derived-mode-p flymake-inhibit-major-modes)) 587 file-local-variables-alist))
588 (flymake-mode-on))) 588 (list-string-match-p
589 (buffer-name)
590 flymake-inhibit-buffer-name-regexps)
591 (list-string-match-p
592 (buffer-file-name)
593 flymake-inhibit-file-name-regexps)
594 (apply #'derived-mode-p
595 flymake-inhibit-major-modes))
596 (flymake-mode-on)))))
589 597
590 (add-hook 'prog-mode-hook #'flymake-unless) 598 (add-hook 'prog-mode-hook #'flymake-unless)
591 599
@@ -714,20 +722,57 @@ specific to most general, they are these:
714 722
715(setup mu4e 723(setup mu4e
716 (:load-from "/usr/share/emacs/site-lisp/mu4e") 724 (:load-from "/usr/share/emacs/site-lisp/mu4e")
717 (:option mu4e-change-filenames-when-moving t 725 (:autoload (mu4e :interactive t)
718 mu4e-update-interval (* 10 60) 726 make-mu4e-context)
727 (:option message-kill-buffer-on-exit t
728 message-send-mail-function #'smtpmail-send-it
729 mu4e-change-filenames-when-moving t
730 mu4e-contexts
731 (list
732 ;; Work
733 (make-mu4e-context
734 :name "Work"
735 :match-func (lambda (msg)
736 (when msg
737 (string-prefix-p
738 work-mail-dir
739 (mu4e-message-field msg :maildir))))
740 :vars `((user-mail-address . ,work-email)
741 (smtpmail-smtp-server . ,work-smtp-server)
742 (mu4e-compose-format-flowed . nil)
743 (mu4e-drafts-folder
744 . ,(concat work-mail-dir "/[Gmail]/Drafts"))
745 (mu4e-sent-folder
746 . ,(concat work-mail-dir "/[Gmail]/Sent Mail"))
747 (mu4e-refile-dir
748 . ,(concat work-mail-dir "/[Gmail]/All Mail"))
749 (mu4e-trash-folder
750 . ,(concat work-mail-dir "/[Gmail]/Trash"))))
751 ;; Home
752 (make-mu4e-context
753 :name "Home"
754 :match-func (lambda (msg)
755 (when msg
756 (string-prefix-p
757 home-mail-dir
758 (mu4e-message-field msg :maildir))))
759 :vars `((user-mail-address . ,home-email)
760 (smtpmail-smtp-server . ,home-smtp-server)
761 (mu4e-compose-format-flowed . nil)
762 (mu4e-drafts-folder
763 . ,(concat home-mail-dir "/Drafts"))
764 (mu4e-sent-folder
765 . ,(concat home-mail-dir "/Sent"))
766 (mu4e-refile-folder
767 . ,(concat home-mail-dir "/Archive"))
768 (mu4e-trash-folder
769 . ,(concat home-mail-dir "/Trash")))))
719 mu4e-get-mail-command "mbsync -a" 770 mu4e-get-mail-command "mbsync -a"
720 mu4e-maildir "~/mail/clickhere") 771 mu4e-maildir "~/mail"
721 (:option mu4e-drafts-folder "/[Gmail]/Drafts" 772 mu4e-update-interval (* 10 60)
722 mu4e-sent-folder "/[Gmail]/Sent Mail" 773 send-mail-function #'smtpmail-send-it
723 mu4e-refile-folder "/[Gmail]/All Mail" 774 smtpmail-smtp-service 465
724 mu4e-trash-folder "/[Gmail]/Trash" 775 smtpmail-stream-type 'ssl))
725 mu4e-maildir-shortcuts
726 `((:maildir "/Inbox" :key ?i)
727 (:maildir ,mu4e-drafts-folder :key ?d)
728 (:maildir ,mu4e-sent-folder :key ?s)
729 (:maildir ,mu4e-refile-folder :key ?a)
730 (:maildir ,mu4e-trash-folder :key ?t))))
731 776
732(setup page 777(setup page
733 (:option page-delimiter 778 (:option page-delimiter
@@ -2437,7 +2482,7 @@ the default is \"/\"."
2437 (list 2482 (list
2438 (propertize " " 2483 (propertize " "
2439 'display 2484 'display
2440 '((space 2485 `((space
2441 :align-to 2486 :align-to
2442 ,(unless 2487 ,(unless
2443 (bound-and-true-p visual-fill-column-mode) 2488 (bound-and-true-p visual-fill-column-mode)
diff --git a/lisp/acdw-org.el b/lisp/acdw-org.el index 05e6409..a1558a2 100644 --- a/lisp/acdw-org.el +++ b/lisp/acdw-org.el
@@ -471,6 +471,43 @@ probably abandon it at some point for a better solution (see:
471 (org-narrow-to-subtree)))) 471 (org-narrow-to-subtree))))
472 472
473 473
474;;; Hide everything but the current headline
475;; https://stackoverflow.com/questions/25161792/
476
477(defun acdw-org/show-next-heading-tidily ()
478 "Show next entry, keeping other entries closed."
479 (interactive)
480 (if (save-excursion (end-of-line) (outline-invisible-p))
481 (progn (org-show-entry) (outline-show-children))
482 (outline-next-heading)
483 (unless (and (bolp) (org-at-heading-p))
484 (org-up-heading-safe)
485 (outline-hide-subtree)
486 (error "Boundary reached"))
487 (org-overview)
488 (org-reveal t)
489 (org-show-entry)
490 (recenter-top-bottom)
491 (outline-show-children)
492 (recenter-top-bottom)))
493
494(defun acdw-org/show-previous-heading-tidily ()
495 "Show previous entry, keeping other entries closed."
496 (interactive)
497 (let ((pos (point)))
498 (outline-previous-heading)
499 (unless (and (< (point) pos) (bolp) (org-at-heading-p))
500 (goto-char pos)
501 (outline-hide-subtree)
502 (error "Boundary reached"))
503 (org-overview)
504 (org-reveal t)
505 (org-show-entry)
506 (recenter-top-bottom)
507 (outline-show-children)
508 (recenter-top-bottom)))
509
510
474(provide 'acdw-org) 511(provide 'acdw-org)
475;;; acdw-org.el ends here 512;;; acdw-org.el ends here
476 513
diff --git a/lisp/acdw.el b/lisp/acdw.el index 489b808..df2962a 100644 --- a/lisp/acdw.el +++ b/lisp/acdw.el
@@ -665,12 +665,6 @@ ARGS."
665 (custom-set-faces '(fringe 665 (custom-set-faces '(fringe
666 ((t (:foreground "dim gray")))))) 666 ((t (:foreground "dim gray"))))))
667 667
668(defun acdw/require-private ()
669 "Load \"~/.emacs.d/private.el\".
670It's called 'require-private' for historical reasons."
671 (load (expand-file-name "private.el" user-emacs-directory)
672 :noerror :nomessage))
673
674 668
675;;; Recentf renaming with dired 669;;; Recentf renaming with dired
676;; from ... somewhere. 'rjs', apparently? 670;; from ... somewhere. 'rjs', apparently?