Compare commits

..

10 Commits

Author SHA1 Message Date
735ef5225f Add global key for align-regexp 2026-03-12 13:09:47 +00:00
bd69a49bb5 Add ASN.1 config 2026-03-12 13:09:37 +00:00
111f9b710d Add Vala config 2026-03-12 13:09:25 +00:00
686d6c94b6 Add OCaml config 2026-03-12 13:08:52 +00:00
33b44f11a0 Remove LSP stuff for Rust 2026-03-12 13:08:30 +00:00
314dd4aad6 Add multiple-cursors config 2026-03-12 13:08:07 +00:00
Camden Dixie O'Brien
e154958555 Add Maxima config 2026-03-12 13:03:59 +00:00
Camden Dixie O'Brien
761d721b01 Remove Python LSP mode config 2026-03-12 13:03:38 +00:00
Camden Dixie O'Brien
aa38142263 Add fasm-mode config 2026-03-12 13:03:37 +00:00
Camden Dixie O'Brien
bb56509a21 Add fasm-mode submodule 2026-03-12 13:03:03 +00:00
3 changed files with 86 additions and 13 deletions

3
.gitmodules vendored Normal file
View File

@@ -0,0 +1,3 @@
[submodule "fasm-mode"]
path = fasm-mode
url = https://github.com/GabrielFrigo4/fasm-mode

View File

@@ -399,6 +399,18 @@
(setq org-adapt-indentation t) (setq org-adapt-indentation t)
#+end_src #+end_src
* Multiple Cursors
I have been converted by Tsoding.
#+begin_src emacs-lisp
(use-package multiple-cursors
:config
(global-set-key (kbd "C-S-c C-S-c") 'mc/edit-lines)
(global-set-key (kbd "C->") 'mc/mark-next-like-this)
(global-set-key (kbd "C-<") 'mc/mark-previous-like-this)
(global-set-key (kbd "C-c C-<") 'mc/mark-all-like-this))
#+end_src
* Language Integrations * Language Integrations
** Generic ** Generic
Generally, 8-character-wide tabs are not my thing. Generally, 8-character-wide tabs are not my thing.
@@ -541,12 +553,6 @@
(use-package rust-mode) (use-package rust-mode)
#+end_src #+end_src
Then =rust-analyzer= via LSP does the rest :)
#+begin_src emacs-lisp
(add-hook 'rust-mode-hook #'lsp-deferred)
#+end_src
** Lisps ** Lisps
*** Common Lisp *** Common Lisp
Use SLIME and Quicklisp for Common Lisp (SBCL). Use SLIME and Quicklisp for Common Lisp (SBCL).
@@ -791,13 +797,6 @@
(use-package crontab-mode) (use-package crontab-mode)
#+end_src #+end_src
** Python
Going to use LSP for Python:
#+begin_src emacs-lisp
(add-hook 'python-mode-hook #'lsp-deferred)
#+end_src
** Ada ** Ada
*** Old ada-mode *** Old ada-mode
Unfortunately, the =ada-mode= on ELPA is hot garbage. It requires Unfortunately, the =ada-mode= on ELPA is hot garbage. It requires
@@ -1054,6 +1053,50 @@
(use-package forth-mode) (use-package forth-mode)
#+end_src #+end_src
** Fasm
The =fasm-mode= package wasn't on MELPA or ELPA, so I've instead
added it as a submodule of this repo. We therefore need to add it
to the load path:
#+begin_src emacs-lisp
(let* ((home (getenv "HOME"))
(path (concat home "/.emacs.d/fasm-mode")))
(add-to-list 'load-path path))
(autoload 'fasm-mode "fasm-mode")
#+end_src
And then use it for =.asm= files:
#+begin_src emacs-lisp
(add-to-list 'auto-mode-alist '("\\.asm\\'" . fasm-mode))
#+end_src
** OCaml
For some reason the OCaml support package is called =tuareg=??
#+begin_src emacs-lisp
(use-package tuareg)
#+end_src
OCaml also has its own build system, Dune. There's also a mode for
Dune's files:
#+begin_src emacs-lisp
(use-package dune)
#+end_src
** Vala
=vala-mode= provides everything I need:
#+begin_src emacs-lisp
(use-package vala-mode)
#+end_src
** ASN.1
#+begin_src emacs-lisp
(use-package asn1-mode)
#+end_src
* Tool Integrations * Tool Integrations
** Git ** Git
=magit= is truly a wonderful creation! Add keybinding for =magit= is truly a wonderful creation! Add keybinding for
@@ -1380,6 +1423,23 @@
I think that's all I need for now! I think that's all I need for now!
** Maxima
Maxima is an absolutely amazing tool for mathematical symbolic
processing. And to make matters better, it's lispy. It's giving
old school expert system but make it actually astonishingly useful
type shit.
The =maxima= package provides good Emacs integration, with syntax
highlighting for the DSL and a nice inferior process mode for the
interpreter. Files for the DSL conventionally have the ".mac"
extension, so want to open those files in =maxima-mode=.
#+begin_src emacs-lisp
(use-package maxima
:mode ("\\.mac\\'" . maxima-mode)
:interpreter ("maxima" . maxima-mode))
#+end_src
* Backup and Autosave * Backup and Autosave
** Keep $PWD Tidy ** Keep $PWD Tidy
Emacs' default behaviour of dumping temporary files in the current Emacs' default behaviour of dumping temporary files in the current
@@ -1444,6 +1504,15 @@
#+end_src #+end_src
* Misc * Misc
** Global key for [[help:align-regexp][align-regexp]]
I didn't know it was a thing but now that I do, I need a
keybinding. Hopefully it doesn't conflict with too many things
haha.
#+begin_src emacs-lisp
(global-set-key (kbd "C-c a") 'align-regexp)
#+end_src
** God mode ** God mode
God mode essentially makes Emacs a bit more VI-like by introducing God mode essentially makes Emacs a bit more VI-like by introducing
a mode where modifier keys are implicitly held down, thereby a mode where modifier keys are implicitly held down, thereby

1
fasm-mode Submodule

Submodule fasm-mode added at d6578064bc