Remove a few old WAIT packages that I haven't used in a while

This commit is contained in:
2025-02-15 21:55:35 +00:00
parent 69f6a7a0da
commit f755f2b39d

View File

@@ -125,26 +125,6 @@ this macro.
lambda."
`(function (lambda nil ,@BODY)))
#+end_src
** Automatically run a command on saving
Sometimes you want a command to run when a file is saved, a classic
example being compiling a project after saving. To run a command
after saving, one may write the command as an Emacs Lisp function and
add it to the ~after-save-hook~ which essentially subscribes that
function to the ~after-save~ event. We can encapsulate these steps
in one macro, which is defined here.
#+begin_src emacs-lisp
(use-package simple
:defer t
:config
(defmacro create-auto-save (CONDITIONS &rest TO-RUN)
"Create a hook for after-save, where on CONDITIONS being met
TO-RUN is evaluated."
`(add-hook 'after-save-hook
(proc
(interactive)
(when ,CONDITIONS ,@TO-RUN)))))
#+end_src
** Clean buffer list
Clean all buffers except for those in ~clean-buffers-keep~.
@@ -2016,21 +1996,6 @@ Evil org for some nice bindings.
:keymaps 'org-mode-map
"TAB" #'org-cycle))
#+end_src
** WAIT Org reveal
:PROPERTIES:
:header-args:emacs-lisp: :tangle no :results none
:END:
Org reveal allows one to export org files as HTML presentations via
reveal.js. Pretty nifty and it's easy to use.
#+begin_src emacs-lisp
(use-package ox-reveal
:straight t
:defer t
:init
(setq org-reveal-root "https://cdn.jsdelivr.net/npm/reveal.js"
org-reveal-theme "sky"))
#+end_src
** Org bookmark
I maintain a bookmarks file at =~/Text/bookmarks.org=. I would like
the ability to construct new bookmarks and open bookmarks. They may
@@ -2121,22 +2086,6 @@ there.
:init
(setq sql-display-sqli-buffer-function nil))
#+end_src
** WAIT Ada
:PROPERTIES:
:header-args:emacs-lisp: :tangle no :results none
:END:
Check out [[file:elisp/ada-mode.el][ada-mode]], my custom ~ada-mode~
that replaces the default one. This mode just colourises stuff, and
uses eglot and a language server to do the hard work.
#+begin_src emacs-lisp
(use-package ada-mode
:load-path "elisp/"
:defer t
:config
(with-eval-after-load "eglot"
(add-hook 'ada-mode-hook #'eglot)))
#+end_src
** NHexl
Hexl-mode is the inbuilt package within Emacs to edit hex and binary
format buffers. There are a few problems with hexl-mode though,
@@ -2329,24 +2278,6 @@ sometimes format their documentation as markdown, which
:defer t
:straight t)
#+end_src
** WAIT D
:PROPERTIES:
:header-args:emacs-lisp: :tangle no :results none
:END:
D is a systems level programming language with C-style syntax. I
think it has some interesting ideas such as a toggleable garbage
collector. Here I just install the D-mode package, enable ~org-babel~
execution of d-mode blocks and alias ~D-mode~ with ~d-mode~.
#+begin_src emacs-lisp
(use-package d-mode
:defer t
:straight t
:config
(fset 'D-mode 'd-mode)
(with-eval-after-load "org-mode"
(setf (alist-get 'd org-babel-load-languages) t)))
#+end_src
** WAIT Rust
:PROPERTIES:
:header-args:emacs-lisp: :tangle no :results none
@@ -2408,57 +2339,6 @@ book so it's useful to have some Emacs binds for it.
"sr" #'racket-send-region
"sd" #'racket-send-definition))
#+end_src
** WAIT CSharp
:PROPERTIES:
:header-args:emacs-lisp: :tangle no :results none
:END:
Haven't used C# in a while, but Emacs is alright for it with
omnisharp.
#+begin_src emacs-lisp
(use-package csharp-mode
:defer t)
#+end_src
** WAIT Java
:PROPERTIES:
:header-args:emacs-lisp: :tangle no :results none
:END:
I kinda dislike Java, but if necessary I will code in it. Just setup
a style and some pretty symbols. You can use LSP to get cooler
features to be fair.
#+begin_src emacs-lisp
(use-package ob-java
:defer t
:config
(with-eval-after-load "cc-mode"
(c-add-style
"java"
'((c-basic-offset . 4)
(c-comment-only-line-offset 0 . 0)
(c-offsets-alist
(inline-open . 0)
(topmost-intro-cont . +)
(statement-block-intro . +)
(knr-argdecl-intro . 5)
(substatement-open . 0)
(substatement-label . +)
(label . +)
(statement-case-open . +)
(statement-cont . +)
(arglist-intro . c-lineup-arglist-intro-after-paren)
(arglist-close . c-lineup-arglist)
(brace-list-intro first c-lineup-2nd-brace-entry-in-arglist c-lineup-class-decl-init-+ +)
(access-label . 0)
(inher-cont . c-lineup-java-inher)
(func-decl-cont . c-lineup-java-throws))))
(add-to-list 'c-default-style '(java-mode . "java")))
(with-eval-after-load "abbrev"
(define-abbrev-table 'java-mode-abbrev-table nil)
(add-hook 'java-mode-hook
(proc (setq-local local-abbrev-table java-mode-abbrev-table)))))
#+end_src
** WAIT Haskell
:PROPERTIES:
:header-args:emacs-lisp: :tangle no :results none
@@ -2882,19 +2762,6 @@ Here I just setup Sly to use ~sbcl~.
:keymaps 'sly-inspector-mode-map
"q" #'sly-inspector-quit))
#+end_src
*** WAIT Sly-ASDF
:PROPERTIES:
:header-args:emacs-lisp: :tangle no :results none
:END:
ASDF is the package declaration system that _most_ Common Lisp
programmers use. Here's a package which integrates some stuff into
SLY for ASDF.
#+begin_src emacs-lisp
(use-package sly-asdf
:straight t
:after sly)
#+end_src
*** Emacs lisp
Ligatures and bindings for (Emacs) Lisp. Pretty self declarative.
@@ -2935,48 +2802,6 @@ Ligatures and bindings for (Emacs) Lisp. Pretty self declarative.
"e" #'eval-last-sexp
"f" #'eval-defun))
#+end_src
*** WIP Hydra like Lispy
:PROPERTIES:
:header-args:emacs-lisp: :tangle no :results none
:END:
A [[*Hydra][Hydra]] which uses the ~Lispy~ package (by
abo-abo) to create a set of motions that allow movement around a lisp
file easily.
2024-04-18: Still working on this, quite rough around the edges.
#+begin_src emacs-lisp
(use-package lispy
:after (lisp-mode elisp-mode)
:hydra
(hydra-lispy
nil "Move around quickly in Lisp"
("h" #'lispy-left)
("j" ("t" #'lispy-teleport)
#'lispy-down)
("k" #'lispy-up)
("l" #'lispy-right)
("d" #'lispy-different)
("u" #'lispy-flow)
("o" #'lispy-oneline)
("m" #'lispy-multiline)
("N" #'lispy-narrow)
("W" #'lispy-widen)
("c" #'lispy-clone)
("fp" #'lispy-ace-paren)
("fs" #'lispy-ace-symbol :exit t)
("H" #'lispy-slurp)
("L" #'lispy-barf)
("M-h" #'lispy-move-left)
("M-j" #'lispy-move-down)
("M-k" #'lispy-move-up)
("M-l" #'lispy-move-right)
("C-g" nil))
:general
(nmmap
:keymaps '(emacs-lisp-mode-map lisp-mode-map)
"." #'hydra-lispy/body))
#+end_src
*** Lisp indent function
Add a new lisp indent function which indents newline lists more
appropriately.
@@ -3939,22 +3764,6 @@ info pages so I'd like nice navigation options.
(with-eval-after-load "evil"
(evil-set-initial-state 'Info-mode 'normal)))
#+end_src
** WAIT gif-screencast
:PROPERTIES:
:header-args:emacs-lisp: :tangle no :results none
:END:
Little application that uses =gifsicle= to make essentially videos of
Emacs. Useful for demonstrating features.
#+begin_src emacs-lisp
(use-package gif-screencast
:straight t
:general
(app-leader
"x" #'gif-screencast-start-or-stop)
:init
(setq gif-screencast-output-directory (expand-file-name "~/Media/emacs/")))
#+end_src
** Image-mode
Image mode, for viewing images. Supports tons of formats, easy to use
and integrates slickly into image-dired. Of course,
@@ -4107,31 +3916,6 @@ in an Emacs-only map.
(code-leader "d" #'gud-hydra/body
"D" #'gud-gdb))
#+end_src
** WAIT esup
:PROPERTIES:
:header-args:emacs-lisp: :tangle no :results none
:END:
I used to be able to just use
[[file:elisp/profiler-dotemacs.el][profile-dotemacs.el]], when my
Emacs config was smaller, but now it tells me very little information
about where my setup is inefficient due to the literate config. Just
found this ~esup~ thing and it works perfectly, exactly how I would
prefer getting this kind of information. It runs an external Emacs
instance and collects information from it, so it doesn't require
restarting Emacs to profile, and I can compile my configuration in my
current instance to test it immediately.
2023-10-16: Unless I'm doing some optimisations or tests, I don't
really need this in my config at all times. Enable when needed.
#+begin_src emacs-lisp
(use-package esup
:straight t
:defer t
:general
(leader
"qe" #'esup))
#+end_src
* Miscellaneous
** Evil additions
Additional packages that add the functionality of plugins in Vim I