Stop Emacs making sounds. I don’t think it ever made sounds before, but everyone is very insistent about the need to stop Emacs making sounds.
#+BEGIN_SRC emacs-lisp
(setq ring-bell-function 'ignore)
(setq visible-bell t)
#+END_SRC
Also suppress certain warnings that would otherwise come up all the time and contribute very little to the experience.
* Suppress certain warnings
#+BEGIN_SRC emacs-lisp
(setq ad-redefinition-action 'accept)
@ -57,7 +48,7 @@ I don’t want finding files to be case-sensitive, same as in =zsh=:
(setq read-buffer-completion-ignore-case t)
#+END_SRC
Make the +window+/frame/ look nice and clean. Scroll bars behave pointlessly on Windows anyway. Not hiding the menu bar because I’m not quite that leet yet. One day …
Remove certain graphical elements.
#+BEGIN_SRC emacs-lisp
(setq inhibit-startup-screen t)
@ -76,7 +67,7 @@ Make everything just a little tiny bit transparent unless I’m using the boring
@ -187,7 +178,7 @@ Android has enormous issues with keybindings, so requiring =yes-or-no-p= where p
* =use-package=
Set up package handling, including =use-package=. Some of the =org= tools I use are from Non-GNU ELPA, I think. Most of this is the standard =use-package= setup stuff.
Set up package handling, including =use-package= in the standard way.
#+BEGIN_SRC emacs-lisp
(unless (string-equal system-type "android")
@ -227,23 +218,6 @@ I use BibLaTeX for better compatibility with accented characters and generally b
(setq bibtex-dialect 'biblatex)))
#+END_SRC
** =calibredb=
This may work only on Linux (it uses SQL???), but my ebooks are only on Linux so that’s ok.
@ -259,7 +233,7 @@ This may work only on Linux (it uses SQL???), but my ebooks are only on Linux so
** =deft=
Let me search my journal files when I’m not at work, and reading notes otherwise. Set regexp search by default.
Lets me search my journal files when I’m not at work, and reading notes otherwise. Set regexp search by default.
#+BEGIN_SRC emacs-lisp
(unless (string-equal system-type "android")
@ -292,7 +266,7 @@ Dims inactive buffers. Adjustments for =modus-themes= as suggested.
** =doom-modeline=
Much nicer-looking modeline, and still my favourite over newer, trendier options. Last time I tried installing this from MELPA it made Emacs crash; I don’t know if this is fixed yet.
Much nicer-looking modeline.
#+BEGIN_SRC emacs-lisp
(unless (string-equal system-type "android")
@ -309,7 +283,7 @@ Much nicer-looking modeline, and still my favourite over newer, trendier options
** =git-gutter=
Shows, or at least purports to show,=git diff= in the left margin if the file is being tracked by =git=.
Shows =git diff= in the left margin if the file is being tracked by =git=.
#+BEGIN_SRC emacs-lisp
(unless (string-equal system-type "android")
@ -375,7 +349,7 @@ Lists minor modes in a menu.
** =mu4e=
I really only use this for DW posts, but I’m constantly surprised by how well it works. This package is the reason I can’t upgrade to =emacs28=, because it doesn’t currently seem to work; also, it uses =cl=, which is deprecated, hence suppressing warnings about it above.
Does this work in emacs28???
#+BEGIN_SRC emacs-lisp
(when (string-equal system-type "gnu/linux")
@ -419,52 +393,7 @@ Attempting to do TEI stuff at work but I can’t link directly to the =.rnc= fil
Show path of current element (from [[https://emacs.stackexchange.com/questions/28606/how-to-show-xpath-for-current-location-in-an-xml-hierarchy-in-the-modeline][here]]).
#+BEGIN_SRC emacs-lisp
(unless (string-equal system-type "android")
(defun nxml-where ()
"Display the hierarchy of XML elements the point is on as a path."
(interactive)
(let ((path nil))
(save-excursion
(save-restriction
(widen)
(while (and (< (point-min) (point)) ;; Doesn't error if point is at beginning of buffer