;;; app/twitter/config.el -*- lexical-binding: t; -*- (use-package! twittering-mode :commands twit :config (setq twittering-private-info-file (expand-file-name "twittering-mode.gpg" doom-etc-dir) twittering-use-master-password t twittering-request-confirmation-on-posting t ;; twittering-icon-mode t ;; twittering-use-icon-storage t ;; twittering-icon-storage-file (concat doom-cache-dir "twittering-mode-icons.gz") ;; twittering-convert-fix-size 12 twittering-timeline-header "" twittering-timeline-footer "" twittering-edit-skeleton 'inherit-any twittering-status-format "%FACE[font-lock-function-name-face]{ @%s} %FACE[italic]{%@} %FACE[error]{%FIELD-IF-NONZERO[❤ %d]{favorite_count}} %FACE[warning]{%FIELD-IF-NONZERO[↺ %d]{retweet_count}} %FOLD[ ]{%FILL{%t}%QT{ %FOLD[ ]{%FACE[font-lock-function-name-face]{@%s}\t%FACE[shadow]{%@} %FOLD[ ]{%FILL{%t}} }}} %FACE[twitter-divider]{ } " ;; twittering-timeline-spec-alias '() twittering-initial-timeline-spec-string '(":home" ":mentions" ":direct_messages")) (set-popup-rule! "^\\*twittering-edit" :size 15 :ttl nil :quit nil :select t) (defface twitter-divider '((((background dark)) (:underline (:color "#141519"))) (((background light)) (:underline (:color "#d3d3d3")))) "The vertical divider between tweets." :group 'twittering-mode) (add-hook 'doom-real-buffer-functions #'+twitter-buffer-p) (when (featurep! :ui popup) (setq twittering-pop-to-buffer-function #'+twitter-display-buffer-fn)) (after! solaire-mode (add-hook 'twittering-mode-hook #'solaire-mode)) ;; Custom header-line for twitter buffers (add-hook! 'twittering-mode-hook (defun +twitter-switch-mode-and-header-line-h () (setq header-line-format mode-line-format mode-line-format nil))) ;; `epa--decode-coding-string' isn't defined in later versions of Emacs 27 (unless (fboundp 'epa--decode-coding-string) (defalias 'epa--decode-coding-string #'decode-coding-string)) (define-key! twittering-mode-map "q" #'+twitter/quit "Q" #'+twitter/quit-all [remap twittering-kill-buffer] #'+twitter/quit [remap delete-window] #'+twitter/quit [remap +workspace/close-window-or-workspace] #'+twitter/quit) (when (featurep! :editor evil +everywhere) (define-key! twittering-mode-map [remap evil-window-delete] #'+twitter/quit "f" #'twittering-favorite "F" #'twittering-unfavorite "\C-f" #'twittering-follow "\C-F" #'twittering-unfollow "d" #'twittering-delete-status "r" #'twittering-retweet "R" #'twittering-toggle-or-retrieve-replied-statuses "o" #'twittering-update-status-interactive "O" #'+twitter/ace-link "/" #'twittering-search "J" #'twittering-goto-next-status "K" #'twittering-goto-previous-status "g" nil "gg" #'twittering-goto-first-status "G" #'twittering-goto-last-status "gj" #'twittering-goto-next-status-of-user "gk" #'twittering-goto-previous-status-of-user)))