summaryrefslogtreecommitdiff
path: root/guides/emacs
diff options
context:
space:
mode:
authorKévin Le Gouguec <kevin.legouguec@gmail.com>2025-01-14 22:25:05 +0100
committerKévin Le Gouguec <kevin.legouguec@gmail.com>2025-01-14 22:25:05 +0100
commitfaf50994d58d2651a2ab1bb1ed94dce1feb246bd (patch)
tree82a5d7ae92c9826c5fd0a8da92877c1786a1f9c1 /guides/emacs
parent80248375a2810ca5023750fc75a5c4ed70b3d8c3 (diff)
downloadmemory-leaks-faf50994d58d2651a2ab1bb1ed94dce1feb246bd.tar.xz
Contain the Emacs invasion
Tuck everything under guides/emacs.
Diffstat (limited to 'guides/emacs')
-rw-r--r--guides/emacs/AUCTeX.org24
-rw-r--r--guides/emacs/windows.org25
2 files changed, 49 insertions, 0 deletions
diff --git a/guides/emacs/AUCTeX.org b/guides/emacs/AUCTeX.org
new file mode 100644
index 0000000..0082759
--- /dev/null
+++ b/guides/emacs/AUCTeX.org
@@ -0,0 +1,24 @@
+* Completion for cross-references
+To integrate AUCTeX with reftex and get completion for ~\cite~
+(bibliography) and ~\ref~ (intra-document labels):
+#+begin_src elisp
+;; In init file:
+(put 'TeX-auto-save 'safe-local-variable 'booleanp)
+(put 'TeX-parse-self 'safe-local-variable 'booleanp)
+(add-hook 'LaTeX-mode-hook 'turn-on-reftex)
+(setq reftex-plug-into-AUCTeX t)
+(setq reftex-label-illegal-re "[^-a-zA-Z0-9_+=:;,./]") ; Allow slashes.
+(setq TeX-auto-local ".auctex")
+
+;; Top-level .dir-locals.el:
+((latex-mode
+ . ((TeX-auto-save . t)
+ (TeX-parse-self . t)))
+ (bibtex-mode
+ . ((TeX-auto-save . t)
+ (TeX-parse-self . t))))
+
+;; .dir-locals.el files in subfolders:
+((latex-mode
+ . ((TeX-master . "../path/to/main.tex"))))
+#+end_src
diff --git a/guides/emacs/windows.org b/guides/emacs/windows.org
new file mode 100644
index 0000000..06cad7e
--- /dev/null
+++ b/guides/emacs/windows.org
@@ -0,0 +1,25 @@
+=nt/INSTALL.w64= provides detailed instructions for compiling Emacs on
+recent Windows versions. Here are some additional steps I had to
+figure out on my own:
+* Mingw-w64
+- Set =$HOME= to =%HOMEPATH%= by changing =db_home= to =windows= in
+ =c:/msys64/etc/fstab=.
+- In addition to =c:\msys64\mingw64\bin=, adding =c:\msys64\usr\bin=
+ to the system =PATH= allows Emacs to access applications installed
+ with =pacman=.
+ - It's not obvious whether the Mingw-w64 =PATH= entries should go
+ last (in which case Emacs will pick the wrong ~find~ command) or
+ first (in which case… /everything else/ will pick the wrong ~find~
+ command?). At least Emacs has a variable to configure
+ (~find-program~).
+* Compiling
+Make sure to specify ~-c core.autocrlf=false~ *when cloning* the Emacs
+repository; ~autogen.sh~ gets confused otherwise.
+* Configuring
+AFAICT one must set the variable ~shell-file-name~ explicitly to
+=c:/msys64/usr/bin/bash.exe=, otherwise Emacs's Windows-specific
+initialization logic uses a built-in shell ersatz (=nt/cmdproxy.c=).
+** TODO =HOME=
+Went with the instructions from [[info:emacs#MS-Windows Registry]]; could
+maybe use [[info:emacs#Windows HOME]] by setting =HOME= to =%HOMEPATH%=,
+to avoid having to spell out my username?