summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--attic/misc.org148
-rw-r--r--init.org148
3 files changed, 149 insertions, 148 deletions
diff --git a/.gitignore b/.gitignore
index b30c1d4..2599c81 100644
--- a/.gitignore
+++ b/.gitignore
@@ -19,3 +19,4 @@
/org.el
/lib/net/signel.el
/lib/net/signel.shell
+/w3m.el
diff --git a/attic/misc.org b/attic/misc.org
index 2daefcd..af1da50 100644
--- a/attic/misc.org
+++ b/attic/misc.org
@@ -580,3 +580,151 @@
("i" jao-ednc-invoke-last-action "invoke last action")
("n" jao-ednc-pop "show all")))
#+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))
+
+ (setq erc-auto-query 'bury
+ erc-autojoin-channels-alist `(("libera.chat" ,@jao-libera-channels))
+ erc-away-nickname "jao"
+ erc-button-buttonize-nicks t
+ erc-common-server-suffixes '(("libera.chat$" . "lb"))
+ erc-current-nick-highlight-type 'nick-or-keyword
+ erc-email-userid (car jao-mails)
+ erc-fill-column 84
+ erc-fill-prefix " "
+ erc-format-nick-function 'erc-format-@nick
+ erc-header-line-face-method t
+ erc-header-line-format nil ;; "%l %o"
+ erc-header-line-uses-tabbar-p nil
+ erc-hide-list '("JOIN" "PART" "QUIT")
+ erc-hide-timestamps nil
+ erc-input-line-position -1
+ erc-insert-timestamp-function 'erc-insert-timestamp-right
+ erc-join-buffer 'bury
+ erc-kill-buffer-on-part t
+ erc-kill-queries-on-quit t
+ erc-log-channels-directory nil
+ erc-mode-line-away-status-format "(a)"
+ erc-mode-line-format "%t"
+ erc-nick "jao"
+ erc-notice-highlight-type 'all
+ erc-notice-prefix "- "
+ erc-notify-signoff-hook 'erc-notify-signoff
+ erc-notify-signon-hook 'erc-notify-signon
+ erc-pcomplete-nick-postfix ","
+ erc-rename-buffers t
+ erc-server-send-ping-timeout 60
+ erc-prompt ":"
+ erc-prompt-for-nickserv-password nil
+ erc-use-auth-source-for-nickserv-password t
+ erc-prompt-for-password nil
+ erc-public-away-p t
+ erc-server "irc.libera.chat"
+ erc-server-coding-system '(utf-8 . undecided)
+ erc-server-reconnect-attempts 10
+ erc-server-reconnect-timeout 10
+ erc-timestamp-format "%H:%M"
+ erc-timestamp-only-if-changed-flag t
+ erc-timestamp-right-column 84
+ erc-user-full-name "https://jao.io"
+ erc-user-mode "+i"
+ erc-whowas-on-nosuchnick t)
+
+ :config
+
+ (define-minor-mode ncm-erc-mode "" nil
+ (:eval (format " [%s]" (hash-table-count erc-channel-users))))
+
+ (add-hook 'erc-mode-hook (lambda () (ncm-erc-mode 1)))
+ (add-hook 'erc-mode-hook (lambda () (auto-fill-mode -1))))
+ #+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
+*** 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
+*** 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
+*** 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
diff --git a/init.org b/init.org
index d398b92..b41f170 100644
--- a/init.org
+++ b/init.org
@@ -2560,154 +2560,6 @@
(jao-exec-in-term (format "ssh %s" h) (format "* ssh %s *" h))))
#+end_src
* Chats
-*** 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))
-
- (setq erc-auto-query 'bury
- erc-autojoin-channels-alist `(("libera.chat" ,@jao-libera-channels))
- erc-away-nickname "jao"
- erc-button-buttonize-nicks t
- erc-common-server-suffixes '(("libera.chat$" . "lb"))
- erc-current-nick-highlight-type 'nick-or-keyword
- erc-email-userid (car jao-mails)
- erc-fill-column 84
- erc-fill-prefix " "
- erc-format-nick-function 'erc-format-@nick
- erc-header-line-face-method t
- erc-header-line-format nil ;; "%l %o"
- erc-header-line-uses-tabbar-p nil
- erc-hide-list '("JOIN" "PART" "QUIT")
- erc-hide-timestamps nil
- erc-input-line-position -1
- erc-insert-timestamp-function 'erc-insert-timestamp-right
- erc-join-buffer 'bury
- erc-kill-buffer-on-part t
- erc-kill-queries-on-quit t
- erc-log-channels-directory nil
- erc-mode-line-away-status-format "(a)"
- erc-mode-line-format "%t"
- erc-nick "jao"
- erc-notice-highlight-type 'all
- erc-notice-prefix "- "
- erc-notify-signoff-hook 'erc-notify-signoff
- erc-notify-signon-hook 'erc-notify-signon
- erc-pcomplete-nick-postfix ","
- erc-rename-buffers t
- erc-server-send-ping-timeout 60
- erc-prompt ":"
- erc-prompt-for-nickserv-password nil
- erc-use-auth-source-for-nickserv-password t
- erc-prompt-for-password nil
- erc-public-away-p t
- erc-server "irc.libera.chat"
- erc-server-coding-system '(utf-8 . undecided)
- erc-server-reconnect-attempts 10
- erc-server-reconnect-timeout 10
- erc-timestamp-format "%H:%M"
- erc-timestamp-only-if-changed-flag t
- erc-timestamp-right-column 84
- erc-user-full-name "https://jao.io"
- erc-user-mode "+i"
- erc-whowas-on-nosuchnick t)
-
- :config
-
- (define-minor-mode ncm-erc-mode "" nil
- (:eval (format " [%s]" (hash-table-count erc-channel-users))))
-
- (add-hook 'erc-mode-hook (lambda () (ncm-erc-mode 1)))
- (add-hook 'erc-mode-hook (lambda () (auto-fill-mode -1))))
- #+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
-***** 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
-***** 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
-***** 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
*** circe
#+begin_src emacs-lisp
(defvar jao-libera-channels '())