aboutsummaryrefslogtreecommitdiffstats
path: root/emacs/.emacs.d/init/oni-shr-init.org
diff options
context:
space:
mode:
Diffstat (limited to 'emacs/.emacs.d/init/oni-shr-init.org')
-rw-r--r--emacs/.emacs.d/init/oni-shr-init.org28
1 files changed, 28 insertions, 0 deletions
diff --git a/emacs/.emacs.d/init/oni-shr-init.org b/emacs/.emacs.d/init/oni-shr-init.org
new file mode 100644
index 0000000..3aa8626
--- /dev/null
+++ b/emacs/.emacs.d/init/oni-shr-init.org
@@ -0,0 +1,28 @@
+#+TITLE: shr configuration
+
+#+BEGIN_SRC emacs-lisp
+ (require 'shr)
+#+END_SRC
+
+* Remove background colors
+
+ Define a procedure that removes the last argument it gets if there
+ are more than 3.
+
+ #+BEGIN_SRC emacs-lisp
+ (defun oni:shr-colorize-remove-last-arg (args)
+ "If ARGS has more than 3 items, remove the last one."
+ (if (> (length args) 3)
+ (butlast args)
+ args))
+ #+END_SRC
+
+ Add the function as a filter-args advice to
+ =shr-colorize-region=. The last (fourth) argument to that function
+ is the background color to use, it's optional, so removing it
+ effectively stops shr from adding background colors.
+
+ #+BEGIN_SRC emacs-lisp
+ (advice-add #'shr-colorize-region :filter-args
+ #'oni:shr-colorize-remove-last-arg)
+ #+END_SRC