diff options
Diffstat (limited to 'config.el')
| -rw-r--r-- | config.el | 68 |
1 files changed, 65 insertions, 3 deletions
@@ -91,6 +91,13 @@ (add-to-list 'flycheck-checkers 'htmlhint) +(flycheck-add-next-checker + 'javascript-eslint + 'javascript-oxlint) +(flycheck-add-next-checker + 'html-tidy + 'htmlhint) + (setq flycheck-check-syntax-automatically '(save mode-enabled))) @@ -159,7 +166,9 @@ :config (setq jabber-account-list - '(("roughlynamed@yax.im"))) + '( + ;; ("roughlynamed@yax.im") + ("wildebeest@yax.im"))) (jabber-modeline-mode 1) @@ -175,13 +184,37 @@ :desc "New chat" "n" #'jabber-chat-with :desc "Set status" "s" #'jabber-send-presence) +(defun emms--wait-for-mpd-update (callback) + "Poll MPD status until updating_db clears, then call CALLBACK." + (emms-player-mpd-get-status + callback + (lambda (callback info) + (if (assoc "updating_db" info) + (run-with-timer 0.5 nil #'emms--wait-for-mpd-update callback) + (funcall callback))))) + +(defun emms-full-resync () + "Update MPD's db, then pull it into EMMS's cache, then rebuild the browser." + (interactive) + (message "emms: starting mpd db update...") + (emms-player-mpd-update-all) + (emms--wait-for-mpd-update + (lambda () + (emms-cache-set-from-mpd-all) + (dolist (buf (buffer-list)) + (with-current-buffer buf + (when (derived-mode-p 'emms-browser-mode) + (revert-buffer)))) + (emms-browser) + (message "emms: resync done")))) + (use-package! emms - :commands (emms emms-browser) + :commands (emms emms-browser emms-player-mpd-update-all emms-cache-set-from-mpd-all) :init (map! :leader (:prefix ("e" . "emms") - :desc "Browser" "b" #'emms-browser + :desc "Browser" "b" #'emms-full-resync :desc "Playlist" "m" #'emms-playlist-mode-go :desc "Play/pause" "SPC" #'emms-pause :desc "Next" "n" #'emms-next @@ -406,6 +439,8 @@ org-html-postamble nil)) (setq shr-max-image-size '(800 . 600)) (setq shr-image-animate t) +(add-hook 'eww-after-render-hook #'eww-readable) + (with-eval-after-load 'eww (define-key eww-mode-map (kbd "=") #'text-scale-increase) (define-key eww-mode-map (kbd "-") #'text-scale-decrease) @@ -459,6 +494,33 @@ org-html-postamble nil)) :prefix "o" :desc "Open Eat" "e" #'eat-other-window) ; dont steal the current window +(use-package! nov + :mode ("\\.epub\\'" . nov-mode) + :config + (setq nov-text-width 80 + nov-variable-pitch t) + (add-hook 'nov-mode-hook + (lambda () + (face-remap-add-relative 'variable-pitch + :family "Georgia" :height 1.3))) ; different font for reading + (add-hook 'nov-mode-hook #'writeroom-mode) ; center text & stuff + +(map! :map nov-mode-map + :n "i" #'nov-scroll-up ; scroll roughly a page up + :n "e" #'nov-scroll-down ; scroll roughly a page down + :n "]" #'nov-next-document + :n "[" #'nov-previous-document + :n "t" #'nov-goto-toc)) + +(with-eval-after-load 'tramp + (add-to-list 'tramp-methods + '("doas" + (tramp-login-program "doas") + (tramp-login-args (("-u" "%u") ("-s"))) + (tramp-remote-shell "/bin/sh") + (tramp-remote-shell-args ("-c")) + (tramp-connection-timeout 10)))) + (remove-hook 'doom-first-input-hook #'evil-snipe-mode) (use-package lispyville |
