mirror of
https://github.com/SqrtMinusOne/dotfiles.git
synced 2025-12-10 19:23:03 +03:00
feat(emacs): keycast-mode loading, avy-dired, IRC disconnect
This commit is contained in:
parent
e6ce327e69
commit
4d10d68737
2 changed files with 86 additions and 6 deletions
|
|
@ -824,8 +824,10 @@ then it takes a second \\[keyboard-quit] to abort the minibuffer."
|
|||
(setq-default olivetti-body-width 86))
|
||||
|
||||
(use-package keycast
|
||||
:straight t
|
||||
:config
|
||||
(define-minor-mode keycast-mode
|
||||
"Keycast mode"
|
||||
:global t
|
||||
(if keycast-mode
|
||||
(progn
|
||||
|
|
@ -991,6 +993,7 @@ influence of C1 on the result."
|
|||
(setq doom-modeline-persp-name nil)
|
||||
:config
|
||||
(setq doom-modeline-minor-modes nil)
|
||||
(setq doom-modeline-irc nil)
|
||||
(setq doom-modeline-buffer-state-icon nil)
|
||||
(doom-modeline-mode 1))
|
||||
|
||||
|
|
@ -3591,6 +3594,12 @@ Returns (<buffer> . <workspace-index>) or nil."
|
|||
:states '(normal emacs)
|
||||
")" 'dired-git-info-mode))
|
||||
|
||||
(use-package avy-dired
|
||||
:straight (:host github :repo "SqrtMinusOne/avy-dired")
|
||||
:after (dired)
|
||||
:init
|
||||
(my-leader-def "aa" #'avy-dired-goto-line))
|
||||
|
||||
(defun my/dired-open-this-subdir ()
|
||||
(interactive)
|
||||
(dired (dired-current-directory)))
|
||||
|
|
@ -4173,7 +4182,7 @@ Returns (<buffer> . <workspace-index>) or nil."
|
|||
"asT" #'lyrics-fetcher-show-lyrics-query)
|
||||
:config
|
||||
(setq lyrics-fetcher-genius-access-token
|
||||
(password-store-get "My_Online/APIs/genius.com"))
|
||||
(my/password-store-get "My_Online/APIs/genius.com"))
|
||||
(general-define-key
|
||||
:states '(emacs normal)
|
||||
:keymaps 'emms-browser-mode-map
|
||||
|
|
@ -4258,10 +4267,14 @@ Returns (<buffer> . <workspace-index>) or nil."
|
|||
(setq erc-log-channels-directory "~/.erc/logs")
|
||||
(setq erc-save-buffer-on-part t)
|
||||
(add-to-list 'erc-modules 'autojoin)
|
||||
(add-to-list 'erc-modules 'notifications)
|
||||
(add-to-list 'erc-modules 'log)
|
||||
(erc-update-modules)
|
||||
(setq erc-autojoin-channels-alist
|
||||
`((,(rx "libera.chat") "#systemcrafters")))
|
||||
`((,(rx "libera.chat")
|
||||
"#systemcrafters"
|
||||
"#emacs"
|
||||
"#guix")))
|
||||
(setq erc-kill-buffer-on-part t)
|
||||
(setq erc-track-shorten-start 8))
|
||||
|
||||
|
|
@ -4290,7 +4303,23 @@ Returns (<buffer> . <workspace-index>) or nil."
|
|||
(setq znc-servers
|
||||
`(("sqrtminusone.xyz" 6697 t
|
||||
((libera "sqrtminusone"
|
||||
,(password-store-get "Selfhosted/ZNC")))))))
|
||||
,(my/password-store-get "Selfhosted/ZNC")))))))
|
||||
|
||||
(defun my/erc-detach-all ()
|
||||
(interactive)
|
||||
(cl-loop for buf being the buffers
|
||||
if (eq (buffer-local-value 'major-mode buf) 'erc-mode)
|
||||
do (with-current-buffer buf
|
||||
(when (erc-server-process-alive)
|
||||
(let ((tgt (erc-default-target)))
|
||||
(erc-server-send (format "DETACH %s" tgt) nil tgt))))))
|
||||
|
||||
(use-package plz
|
||||
:straight (:host github :repo "alphapapa/plz.el")
|
||||
:defer t)
|
||||
|
||||
(use-package ement
|
||||
:straight (:host github :repo "alphapapa/ement.el"))
|
||||
|
||||
(use-package google-translate
|
||||
:straight t
|
||||
|
|
@ -4430,6 +4459,11 @@ Returns (<buffer> . <workspace-index>) or nil."
|
|||
:config
|
||||
(setq pass-show-keybindings nil))
|
||||
|
||||
(defun my/password-store-get (entry)
|
||||
(if-let ((res (password-store-get entry)))
|
||||
res
|
||||
(my/password-store-get entry)))
|
||||
|
||||
(use-package docker
|
||||
:straight t
|
||||
:commands (docker)
|
||||
|
|
|
|||
52
Emacs.org
52
Emacs.org
|
|
@ -1616,8 +1616,10 @@ Showing the last pressed key. Occasionally useful.
|
|||
|
||||
#+begin_src emacs-lisp
|
||||
(use-package keycast
|
||||
:straight t
|
||||
:config
|
||||
(define-minor-mode keycast-mode
|
||||
"Keycast mode"
|
||||
:global t
|
||||
(if keycast-mode
|
||||
(progn
|
||||
|
|
@ -1847,6 +1849,7 @@ References:
|
|||
(setq doom-modeline-persp-name nil)
|
||||
:config
|
||||
(setq doom-modeline-minor-modes nil)
|
||||
(setq doom-modeline-irc nil)
|
||||
(setq doom-modeline-buffer-state-icon nil)
|
||||
(doom-modeline-mode 1))
|
||||
#+end_src
|
||||
|
|
@ -5310,6 +5313,15 @@ Display git info, such as the last commit for file and stuff. It's pretty useful
|
|||
:states '(normal emacs)
|
||||
")" 'dired-git-info-mode))
|
||||
#+end_src
|
||||
|
||||
[[https://github.com/SqrtMinusOne/avy-dired][avy-dired]] is my experimentation with Avy & Dired. It's somewhat unstable.
|
||||
#+begin_src emacs-lisp
|
||||
(use-package avy-dired
|
||||
:straight (:host github :repo "SqrtMinusOne/avy-dired")
|
||||
:after (dired)
|
||||
:init
|
||||
(my-leader-def "aa" #'avy-dired-goto-line))
|
||||
#+end_src
|
||||
*** Subdirectories
|
||||
Subdirectories are one of the interesting features of Dired. It allows displaying multiple folders on the same window.
|
||||
|
||||
|
|
@ -6069,7 +6081,7 @@ My package for fetching EMMS lyrics and album covers.
|
|||
"asT" #'lyrics-fetcher-show-lyrics-query)
|
||||
:config
|
||||
(setq lyrics-fetcher-genius-access-token
|
||||
(password-store-get "My_Online/APIs/genius.com"))
|
||||
(my/password-store-get "My_Online/APIs/genius.com"))
|
||||
(general-define-key
|
||||
:states '(emacs normal)
|
||||
:keymaps 'emms-browser-mode-map
|
||||
|
|
@ -6247,10 +6259,14 @@ ERC is a built-it Emacs IRC client.
|
|||
(setq erc-log-channels-directory "~/.erc/logs")
|
||||
(setq erc-save-buffer-on-part t)
|
||||
(add-to-list 'erc-modules 'autojoin)
|
||||
(add-to-list 'erc-modules 'notifications)
|
||||
(add-to-list 'erc-modules 'log)
|
||||
(erc-update-modules)
|
||||
(setq erc-autojoin-channels-alist
|
||||
`((,(rx "libera.chat") "#systemcrafters")))
|
||||
`((,(rx "libera.chat")
|
||||
"#systemcrafters"
|
||||
"#emacs"
|
||||
"#guix")))
|
||||
(setq erc-kill-buffer-on-part t)
|
||||
(setq erc-track-shorten-start 8))
|
||||
#+end_src
|
||||
|
|
@ -6288,7 +6304,29 @@ ZNC support. Seems to provide a few nice features for ZNC.
|
|||
(setq znc-servers
|
||||
`(("sqrtminusone.xyz" 6697 t
|
||||
((libera "sqrtminusone"
|
||||
,(password-store-get "Selfhosted/ZNC")))))))
|
||||
,(my/password-store-get "Selfhosted/ZNC")))))))
|
||||
#+end_src
|
||||
|
||||
Send =/detach= to all servers. Kinda strange that there's no such function already
|
||||
#+begin_src emacs-lisp
|
||||
(defun my/erc-detach-all ()
|
||||
(interactive)
|
||||
(cl-loop for buf being the buffers
|
||||
if (eq (buffer-local-value 'major-mode buf) 'erc-mode)
|
||||
do (with-current-buffer buf
|
||||
(when (erc-server-process-alive)
|
||||
(let ((tgt (erc-default-target)))
|
||||
(erc-server-send (format "DETACH %s" tgt) nil tgt))))))
|
||||
|
||||
#+end_src
|
||||
*** ement.el
|
||||
#+begin_src emacs-lisp
|
||||
(use-package plz
|
||||
:straight (:host github :repo "alphapapa/plz.el")
|
||||
:defer t)
|
||||
|
||||
(use-package ement
|
||||
:straight (:host github :repo "alphapapa/ement.el"))
|
||||
#+end_src
|
||||
*** OFF (OFF) jabber
|
||||
#+begin_src emacs-lisp :tangle no
|
||||
|
|
@ -6476,6 +6514,14 @@ This package is pretty good to manage the password database. I use [[https://git
|
|||
:config
|
||||
(setq pass-show-keybindings nil))
|
||||
#+end_src
|
||||
|
||||
Also I use =password-store-get= in a few places in my config, and by default it returns =nil= if I make an error in the password, which is not too convinient. So:
|
||||
#+begin_src emacs-lisp
|
||||
(defun my/password-store-get (entry)
|
||||
(if-let ((res (password-store-get entry)))
|
||||
res
|
||||
(my/password-store-get entry)))
|
||||
#+end_src
|
||||
*** Docker
|
||||
A package to manage docker containers from Emacs.
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue