From 577b1b270af0119a1e9290b34bb9be227fb4b994 Mon Sep 17 00:00:00 2001 From: Armaan Bhojwani Date: Mon, 29 Mar 2021 14:05:27 -0400 Subject: [PATCH] Add some Prot EWW enhancements --- config.org | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/config.org b/config.org index 2b117b6..93ef8e5 100644 --- a/config.org +++ b/config.org @@ -462,6 +462,44 @@ Set EWW as default browser except for videos. ("." . eww-browse-url) ))) #+end_src +** EWW +Some EWW enhancements. +*** Give buffer a useful name +#+begin_src emacs-lisp + ;; From https://protesilaos.com/dotemacs/ + (defun prot-eww--rename-buffer () + "Rename EWW buffer using page title or URL. + To be used by `eww-after-render-hook'." + (let ((name (if (eq "" (plist-get eww-data :title)) + (plist-get eww-data :url) + (plist-get eww-data :title)))) + (rename-buffer (format "*%s # eww*" name) t))) + + (add-hook 'eww-after-render-hook #'prot-eww--rename-buffer) +#+end_src +*** Better entrypoint +#+begin_src emacs-lisp + ;; From https://protesilaos.com/dotemacs/ + (defun prot-eww-browse-dwim (url &optional arg) + "Visit a URL, maybe from `eww-prompt-history', with completion. + + With optional prefix ARG (\\[universal-argument]) open URL in a + new eww buffer. + + If URL does not look like a valid link, run a web query using + `eww-search-prefix'. + + When called from an eww buffer, provide the current link as + initial input." + (interactive + (list + (completing-read "Query:" eww-prompt-history + nil nil (plist-get eww-data :url) 'eww-prompt-history) + current-prefix-arg)) + (eww url (if arg 4 nil))) + + (global-set-key (kbd "C-c w") 'prot-eww-browse-dwim) +#+end_src ** Emacs Anywhere Use Emacs globally. Use the Emacs daemon and bind a key in your wm to "emacsclient --eval "(emacs-everywhere)". -- 2.39.2