summaryrefslogtreecommitdiffhomepage
path: root/init.org
diff options
context:
space:
mode:
Diffstat (limited to 'init.org')
-rw-r--r--init.org274
1 files changed, 101 insertions, 173 deletions
diff --git a/init.org b/init.org
index 84d9126..ea8795d 100644
--- a/init.org
+++ b/init.org
@@ -659,10 +659,7 @@
(setq mode-line-position-column-format '(" %c")
mode-line-position-line-format '(" %l,%c"))
(setq mode-line-percent-position
- '(;; (circe-chat-target (:eval (format " [%d]"
- ;; (length (circe-channel-nicks)))))
- " %l"
- (:eval (format "/%d" (line-number-at-pos (point-max))))))
+ '(" %l" (:eval (format "/%d" (line-number-at-pos (point-max))))))
(line-number-mode -1)
(column-number-mode 1)
(jao-minibuffer-add-mode-line 90)
@@ -1609,8 +1606,7 @@
#+end_src
*** Web browsers
#+begin_src emacs-lisp
- ;; (jao-load-org "eww")
- (jao-load-org "w3m")
+ (jao-load-org "eww")
#+end_src
* Email
#+begin_src emacs-lisp
@@ -2687,83 +2683,36 @@
(jao-exec-in-vterm (format "ssh %s" h) (format "* %s *" h))))
#+end_src
* Chats
-*** rcirc
- #+begin_src emacs-lisp :load no
- (use-package rcirc
- :init
- (setq rcirc-server-alist `(("irc.libera.chat"
- :encryption tls
- :port 6697
- :channels ,jao-irc-channels))
- rcirc-default-user-full-name "http://jao.io/"
- rcirc-buffer-maximum-lines 1000
- rcirc-fill-column 82
- rcirc-fill-prefix " "
- rcirc-time-format "%H:%M "
- rcirc-kill-channel-buffers t
- rcirc-response-formats
- '(("PRIVMSG" . "(%N) %m")
- ("NOTICE" . "-%N- %m")
- ("ACTION" . "(... %N %m)")
- ("COMMAND" . "%m")
- ("ERROR" . "%fw!!! %m")
- (t . "%fp*** %fs%n %r %m"))
- rcirc-prompt ": "
- rcirc-nick-completion-format "%s, "
- rcirc-reconnect-delay 120
- rcirc-omit-responses
- '("JOIN" "PART" "QUIT" "NICK" "AWAY" "MODE" "KEEPALIVE"))
- :config
- (let ((fn (jao--get-user/password "libera"))
- (btl (jao--get-user/password "bitlbee")))
- (setq rcirc-authinfo
- `(("libera" nickserv ,(nth 0 fn) ,(nth 1 fn))
- ("localhost" bitlbee ,(nth 0 btl) ,(nth 1 btl)))))
- (jao-shorten-modes 'rcirc-mode)
-
- (define-minor-mode ncm-mode "" nil
- (:eval (format " [%S]"
- (length (rcirc-channel-nicks (rcirc-buffer-process)
- rcirc-target)))))
-
- (defun jao-rcirc-track ()
- (dolist (b rcirc-activity) (tracking-add-buffer b))
- (jao-minibuffer-refresh))
-
- (add-hook 'rcirc-update-activity-string-hook #'jao-rcirc-track)
- (add-hook 'rcirc-mode-hook #'ncm-mode)
- (add-hook 'rcirc-mode-hook #'rcirc-omit-mode)
-
- :diminish ((rcirc-omit-mode . "")))
- #+end_src
*** erc
***** Package
#+begin_src emacs-lisp
(use-package erc
:init
(setq erc-modules
- '(autojoin
- button
- dcc
- fill
- irccontrols
- match
- move-to-prompt
- netsplit
- networks
- noncommands
- notify
- pcomplete
- ring
- services
- stamp
- track
- truncate))
+ '(autojoin
+ button
+ dcc
+ fill
+ irccontrols
+ match
+ move-to-prompt
+ netsplit
+ networks
+ noncommands
+ notify
+ pcomplete
+ ring
+ services
+ stamp
+ track
+ truncate))
+
(setq erc-auto-query 'bury
erc-autojoin-channels-alist `(("libera.chat" ,@jao-irc-channels))
erc-away-nickname "jao"
erc-button-buttonize-nicks t
- erc-common-server-suffixes '(("freenode.net$" . "fn"))
+ erc-common-server-suffixes '(("freenode.net$" . "fn")
+ ("libera.chat$" . "lb"))
erc-current-nick-highlight-type 'nick-or-keyword
erc-email-userid (car jao-mails)
erc-fill-column 84
@@ -2813,95 +2762,87 @@
(require 'erc-services)
(add-to-list 'erc-nickserv-alist
- (cons 'libera (alist-get 'freenode erc-nickserv-alist)))
-
- ;; (let ((fn (nth 1 (jao--get-user/password "libera")))
- ;; (btl (nth 1 (jao--get-user/password "bitlbee"))))
- ;; (setq erc-nickserv-passwords
- ;; `((libera (("jao" . ,fn) ("jaowl" . ,fn)))
- ;; (BitlBee (("jao" . ,btl))))))
- )
-
- #+end_src
+ (cons 'libera (alist-get 'freenode erc-nickserv-alist))))
+ #+end_src
***** No angles
- #+begin_src emacs-lisp
- (defun jao-erc--no-angles (old-func &rest args)
- (let ((msg (apply old-func args)))
- (replace-regexp-in-string "^<\\([^>]+\\)>" "(\\1)" msg)))
-
- (with-eval-after-load "erc"
- (modify-syntax-entry ?\( "." erc-mode-syntax-table)
- (modify-syntax-entry ?\) "." erc-mode-syntax-table)
- (advice-add 'erc-format-privmessage :around #'jao-erc--no-angles)
- (advice-add 'erc-format-my-nick :around #'jao-erc--no-angles))
- #+end_src
+ #+begin_src emacs-lisp
+ (defun jao-erc--no-angles (old-func &rest args)
+ (let ((msg (apply old-func args)))
+ (replace-regexp-in-string "^<\\([^>]+\\)>" "(\\1)" msg)))
+
+ (with-eval-after-load "erc"
+ (modify-syntax-entry ?\( "." erc-mode-syntax-table)
+ (modify-syntax-entry ?\) "." erc-mode-syntax-table)
+ (advice-add 'erc-format-privmessage :around #'jao-erc--no-angles)
+ (advice-add 'erc-format-my-nick :around #'jao-erc--no-angles))
+ #+end_src
***** Tracking
- #+begin_src emacs-lisp
- (defun jao-erc-track-shorten (names)
- (let ((names (erc-track-shorten-names names)))
- (mapcar (lambda (n) (string-remove-prefix "#" n)) names)))
-
- (setq erc-track-exclude-server-buffer t
- erc-track-exclude-types '("NICK" "JOIN" "PART" "QUIT" "MODE" "KICK")
- erc-track-remove-disconnected-buffers t
- erc-track-shorten-aggressively t ;; 'max
- erc-track-shorten-function #'jao-erc-track-shorten
- erc-track-switch-direction 'importance
- erc-track-visibility nil ;; t all, nil only selected frame
- erc-track-position-in-mode-line nil
- erc-track-enable-keybindings nil ;; 'ask
- erc-track-faces-priority-list '(erc-error-face
- erc-current-nick-face
- erc-pal-face
- erc-direct-msg-face
- erc-nick-msg-face
- erc-default-face
- erc-action-face
- erc-notice-face))
- (defun jao-track-erc-buffers ()
- (dolist (e erc-modified-channels-alist)
- (tracking-add-buffer (car e) (list (cddr e)))))
-
- (with-eval-after-load "erc-track"
- (require 'tracking nil t)
- (add-hook 'exwm-workspace-switch-hook #'erc-modified-channels-update)
- (add-hook 'erc-track-list-changed-hook #'jao-track-erc-buffers))
-
- (jao-shorten-modes 'erc-mode)
- (jao-tracking-faces 'erc-error-face
- 'erc-pal-face
- 'erc-current-nick-face
- 'erc-direct-msg-face)
- #+end_src
+ #+begin_src emacs-lisp
+ (defun jao-erc-track-shorten (names)
+ (let ((names (erc-track-shorten-names names)))
+ (mapcar (lambda (n) (string-remove-prefix "#" n)) names)))
+
+ (setq erc-track-exclude-server-buffer t
+ erc-track-exclude-types '("NICK" "JOIN" "PART" "QUIT" "MODE" "KICK")
+ erc-track-remove-disconnected-buffers t
+ erc-track-shorten-aggressively t ;; 'max
+ erc-track-shorten-function #'jao-erc-track-shorten
+ erc-track-switch-direction 'importance
+ erc-track-visibility nil ;; t all, nil only selected frame
+ erc-track-position-in-mode-line nil
+ erc-track-enable-keybindings nil ;; 'ask
+ erc-track-faces-priority-list '(erc-error-face
+ erc-current-nick-face
+ erc-pal-face
+ erc-direct-msg-face
+ erc-nick-msg-face
+ erc-default-face
+ erc-action-face
+ erc-notice-face))
+ (defun jao-track-erc-buffers ()
+ (dolist (e erc-modified-channels-alist)
+ (tracking-add-buffer (car e) (list (cddr e)))))
+
+ (with-eval-after-load "erc-track"
+ (require 'tracking nil t)
+ (add-hook 'exwm-workspace-switch-hook #'erc-modified-channels-update)
+ (add-hook 'erc-track-list-changed-hook #'jao-track-erc-buffers))
+
+ (jao-shorten-modes 'erc-mode)
+ (jao-tracking-faces 'erc-error-face
+ 'erc-pal-face
+ 'erc-current-nick-face
+ 'erc-direct-msg-face)
+ #+end_src
***** Commands (/recover &co.)
- #+begin_src emacs-lisp
- (defun erc-cmd-RECOVER (&rest ignore)
- "Recover nick"
- (let ((fn (jao--get-user/password "freenode")))
- (erc-cmd-MSG (format "nickserv IDENTIFY %s %s" (car fn) (cadr fn)))
- (erc-cmd-MSG (format "nickserv GHOST %s" (car fn)))
- (erc-cmd-MSG (format "nickserv RELEASE %s" (car fn)))
- (erc-cmd-NICK (car fn))))
- #+end_src
+ #+begin_src emacs-lisp
+ (defun erc-cmd-RECOVER (&rest ignore)
+ "Recover nick"
+ (let ((fn (jao--get-user/password "freenode")))
+ (erc-cmd-MSG (format "nickserv IDENTIFY %s %s" (car fn) (cadr fn)))
+ (erc-cmd-MSG (format "nickserv GHOST %s" (car fn)))
+ (erc-cmd-MSG (format "nickserv RELEASE %s" (car fn)))
+ (erc-cmd-NICK (car fn))))
+ #+end_src
***** Images
- #+begin_src emacs-lisp :load no
- (use-package erc-image
- :ensure t
- :after erc
- :init (setq erc-image-inline-rescale 'window)
- :config
- (add-to-list 'erc-modules 'image)
- (erc-update-modules))
- #+end_src
+ #+begin_src emacs-lisp :load no
+ (use-package erc-image
+ :ensure t
+ :after erc
+ :init (setq erc-image-inline-rescale 'window)
+ :config
+ (add-to-list 'erc-modules 'image)
+ (erc-update-modules))
+ #+end_src
***** Startup
- #+begin_src emacs-lisp
- (defun jao-erc (&optional yes)
- (interactive "P")
- ;; (when (or yes (y-or-n-p "Connect to bitlbee using ERC? "))
- ;; (erc-select :server "localhost"))
- (when (or yes (y-or-n-p "Connect to libera using ERC? "))
- (erc-select :server "irc.libera.chat")))
- #+end_src
+ #+begin_src emacs-lisp
+ (defun jao-erc (&optional yes)
+ (interactive "P")
+ ;; (when (or yes (y-or-n-p "Connect to bitlbee using ERC? "))
+ ;; (erc-select :server "localhost"))
+ (when (or yes (y-or-n-p "Connect to libera using ERC? "))
+ (erc-select :server "irc.libera.chat")))
+ #+end_src
*** slack
[[https://github.com/jackellenberger/emojme#finding-a-slack-token][How to get a token]]: It's easyish! Open and sign into the slack
customization page, e.g. https://my.slack.com/customize, right
@@ -2914,7 +2855,6 @@
~slack-conversations-view~ by ~slack-conversations-history~
#+begin_src emacs-lisp
- (jao-load-path "emacs-slack")
(use-package slack
:commands (slack-start)
:init
@@ -2977,35 +2917,23 @@
#+end_src
*** startup
#+begin_src emacs-lisp
- (defun jao-circe (&optional p)
- (interactive "P")
- ;; (when (or p (y-or-n-p "Connect to bitlbee using circe? "))
- ;; (circe "Bitlbee"))
- (when (or p (y-or-n-p "Connect to freenode using circe? "))
- (circe "Freenode")))
-
(defun jao-chats (&optional p)
(interactive "P")
(when (or p (y-or-n-p "Connect to slack? "))
(slack-start))
(when (or p (y-or-n-p "Connect to telegram? "))
(telega))
- ;; (when (and (not (signel-signal-cli-process))
- ;; (or p (y-or-n-p "Start signel? ")))
- ;; (signel-start))
- ;; (jao-circe p)
- (rcirc))
+ (jao-erc p))
(pretty-hydra-define jao-hydra-chats (global-map "s-q" :color blue :quit-key "q")
("Connect"
(("A" (jao-chats t) "all chats -y")
("a" jao-chats "all chats")
("S" slack-start "slack")
- ;; ("C" (jao-circe t) "circe -y")
+ ("e" (jao-erc t) "erc -y")
("s-q" jao-hydra-chats/body nil))
"Go"
- (("c" (jao-buffer-same-mode 'circe-channel-mode) "circe buffer")
- ("i" (jao-buffer-same-mode 'rcirc) "rcirc buffer")
+ (("i" (jao-buffer-same-mode 'erc-mode) "irc")
("s" (jao-buffer-same-mode 'slack-message-buffer-mode) "slack buffer")
("t" (jao-buffer-same-mode 'telega-chat-mode) "telega buffer")
("T" telega "telega rooster"))))