From a0cd8e81bf3f3d5fb3e84360c02027041de615bb Mon Sep 17 00:00:00 2001 From: Thomas von Dein Date: Mon, 14 Sep 2026 20:49:31 +0200 Subject: [PATCH] upd to emacs 31 --- customize.el | 1 + init.el | 1 + lisp/init-ansiterm.el | 1 + lisp/init-audio.el | 1 + lisp/init-autoscratch.el | 1 + lisp/init-avy.el | 1 + lisp/init-c.el | 1 + lisp/init-cisco.el | 1 + lisp/init-completion.el | 1 + lisp/init-conf.el | 1 + lisp/init-config-general.el | 1 + lisp/init-csv.el | 1 + lisp/init-daemonde.el | 1 + lisp/init-dictcc.el | 1 + lisp/init-dired.el | 1 + lisp/init-display.el | 1 + lisp/init-dumpjump.el | 1 + lisp/init-ediff.el | 40 +----------------------------- lisp/init-editorconfig.el | 1 + lisp/init-elget.el | 1 + lisp/init-elisp.el | 1 + lisp/init-elvish.el | 1 + lisp/init-eshell.el | 1 + lisp/init-ewww.el | 1 + lisp/init-flymake.el | 1 + lisp/init-followcursor.el | 1 + lisp/init-functions.el | 1 + lisp/init-globalbindings.el | 1 + lisp/init-go.el | 1 + lisp/init-grep.el | 1 + lisp/init-help.el | 1 + lisp/init-hydra.el | 1 + lisp/init-ibuffer.el | 1 + lisp/init-imenu.el | 1 + lisp/init-indentation.el | 1 + lisp/init-info.el | 1 + lisp/init-kubernetes.el | 1 + lisp/init-lsp.el | 1 + lisp/init-lua.el | 1 + lisp/init-macros.el | 4 +++ lisp/init-magit.el | 1 + lisp/init-marginalia.el | 1 + lisp/init-markdown.el | 1 + lisp/init-matrix.el | 1 + lisp/init-mmm.el | 1 + lisp/init-modeline.el | 1 + lisp/init-narrow.el | 1 + lisp/init-novel.el | 1 + lisp/init-occur.el | 1 + lisp/init-org-present.el | 1 + lisp/init-org.el | 1 + lisp/init-orgagenda.el | 1 + lisp/init-orgalist.el | 1 + lisp/init-orgtable.el | 1 + lisp/init-outline.el | 1 + lisp/init-perl.el | 1 + lisp/init-pod.el | 1 + lisp/init-printing.el | 1 + lisp/init-projectile.el | 1 + lisp/init-python.el | 1 + lisp/init-recentfiles.el | 1 + lisp/init-rust.el | 1 + lisp/init-sgml.el | 1 + lisp/init-shellscript.el | 1 + lisp/init-smarter-than-emacs.el | 3 ++- lisp/init-smartparens.el | 1 + lisp/init-smerge.el | 44 +++++++++++++++++++++++++++++++++ lisp/init-suggest.el | 1 + lisp/init-system.el | 1 + lisp/init-tablist.el | 1 + lisp/init-test.el | 1 + lisp/init-textmanipulation.el | 1 + lisp/init-textscale.el | 1 + lisp/init-tramp.el | 1 + lisp/init-typst.el | 1 + lisp/init-ui.el | 1 + lisp/init-webmode.el | 1 + lisp/init-windowmgmt.el | 1 + lisp/init-workspaces.el | 1 + lisp/init-xmodmap.el | 1 + lisp/init-yaml.el | 1 + lisp/kubernetes.el | 1 + 82 files changed, 129 insertions(+), 40 deletions(-) create mode 100644 lisp/init-smerge.el diff --git a/customize.el b/customize.el index de8549e..8138ede 100644 --- a/customize.el +++ b/customize.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; If I ever use custom-group to customize a mode, then I create a ;; manual config section for it using the values, custom has added ;; here. So, in normal times this should be empty, but needs to exist. diff --git a/init.el b/init.el index 7cbd930..fd1dddf 100644 --- a/init.el +++ b/init.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; ** .emacs config version ;; My emacs config has a version (consisting of a timestamp with a diff --git a/lisp/init-ansiterm.el b/lisp/init-ansiterm.el index 4e665d1..90196c9 100644 --- a/lisp/init-ansiterm.el +++ b/lisp/init-ansiterm.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** ANSI-TERM (inferior shells/interpreters and REPLs) ;; I use ansi term for inferior shells only. diff --git a/lisp/init-audio.el b/lisp/init-audio.el index 15238c5..b1ba690 100644 --- a/lisp/init-audio.el +++ b/lisp/init-audio.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- (use-package emms :defer nil diff --git a/lisp/init-autoscratch.el b/lisp/init-autoscratch.el index e7ababb..0acf305 100644 --- a/lisp/init-autoscratch.el +++ b/lisp/init-autoscratch.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; ** More scratch space ;; *** Text scratch ;; Sometimes I need a text mode scratch buffer while scratch is diff --git a/lisp/init-avy.el b/lisp/init-avy.el index 79277cb..2e15b0f 100644 --- a/lisp/init-avy.el +++ b/lisp/init-avy.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; see https://karthinks.com/software/avy-can-do-anything/ (use-package avy diff --git a/lisp/init-c.el b/lisp/init-c.el index 9b9d452..fe6b761 100644 --- a/lisp/init-c.el +++ b/lisp/init-c.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** C ;; doesn't work in emacs 30 anymore diff --git a/lisp/init-cisco.el b/lisp/init-cisco.el index 8a276d4..bdfe8f0 100644 --- a/lisp/init-cisco.el +++ b/lisp/init-cisco.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** Cisco Mode ;; Written by myself many years ago, but I'm still using it daily to diff --git a/lisp/init-completion.el b/lisp/init-completion.el index ca89d61..80a8d0f 100644 --- a/lisp/init-completion.el +++ b/lisp/init-completion.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** IDO mode ;; There are other completion enhancement packages available like ivy diff --git a/lisp/init-conf.el b/lisp/init-conf.el index d89a893..3e614b0 100644 --- a/lisp/init-conf.el +++ b/lisp/init-conf.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** conf-mode ;; conf-mode annoyingly overwrites the global keybinding C-c C-c with diff --git a/lisp/init-config-general.el b/lisp/init-config-general.el index 10fbfad..b16043c 100644 --- a/lisp/init-config-general.el +++ b/lisp/init-config-general.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** Config::General mode ;; **** Config and doc ;; [[https://github.com/TLINDEN/config-general-mode][config-general-mode]] (also on Melpa). diff --git a/lisp/init-csv.el b/lisp/init-csv.el index a281429..77a9476 100644 --- a/lisp/init-csv.el +++ b/lisp/init-csv.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- (defun tvd/csv-mode-setup () (csv-align-mode t) (toggle-truncate-lines 1) diff --git a/lisp/init-daemonde.el b/lisp/init-daemonde.el index ccff1a5..af16fd7 100644 --- a/lisp/init-daemonde.el +++ b/lisp/init-daemonde.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; maintain daemon.de hugo website ;; (require 'subr-x) diff --git a/lisp/init-dictcc.el b/lisp/init-dictcc.el index 3c7dad2..b3371da 100644 --- a/lisp/init-dictcc.el +++ b/lisp/init-dictcc.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- (use-package dictcc :config (defalias 'dict 'dictcc)) diff --git a/lisp/init-dired.el b/lisp/init-dired.el index e2590e3..7298afc 100644 --- a/lisp/init-dired.el +++ b/lisp/init-dired.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** Dired ;; I use dired for two things: from inside magit as a convenient way diff --git a/lisp/init-display.el b/lisp/init-display.el index 71e601c..ae8da46 100644 --- a/lisp/init-display.el +++ b/lisp/init-display.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;;; Display settings ;; better visibility of cursor in console sessions diff --git a/lisp/init-dumpjump.el b/lisp/init-dumpjump.el index a61de85..db3afac 100644 --- a/lisp/init-dumpjump.el +++ b/lisp/init-dumpjump.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** Dumpjump ;; https://github.com/jacktasia/dumb-jump/raw/master/dumb-jump.el (use-package dumb-jump diff --git a/lisp/init-ediff.el b/lisp/init-ediff.el index 4577eb9..6b60bb6 100644 --- a/lisp/init-ediff.el +++ b/lisp/init-ediff.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** Ediff Config ;; Force ediff to use 1 frame (the current) and not open a new frame @@ -36,45 +37,6 @@ -;; *** Smerge Config - -;; smerge-mode is being issued during editing of conflicts from magit, -;; however, I hate its default prefix, but don't have any practical -;; prefixes left AND am using it far too rare to deserve its own -;; prefix. So just a hydra will do. - -(when (fboundp 'defhydra) - (defhydra hydra-smerge (:timeout 30.0 :exit nil) - " -^Smerge Mode^ -^^-------------------------------------------------------------- -_n_: next conflict _u_: keep upper _s_: swap -_p_: prev conflict _l_: keep lower _h_: highlight -_e_: Ediff _b_: keep base _r_: resolve -_q_: quit _RET_: keep hunk@point _R_: revert - -^^-------------------------------------------------------------- -Reach this hydra with -^^-------------------------------------------------------------- - -" - - ("n" smerge-next nil) - ("p" smerge-prev nil) - ("u" smerge-keep-upper nil) - ("l" smerge-keep-lower nil) - ("b" smerge-keep-base nil) - ("RET" smerge-keep-current nil) - ("h" smerge-refine nil) - ("s" smerge-swap nil) - ("r" smerge-resolve nil) - ("R" undo-tree-undo nil) - ("e" smerge-ediff nil :color blue) - ("q" nil nil :color blue)) - - (global-set-key (kbd "C-x m") 'hydra-smerge/body) - (defalias 'merge 'hydra-smerge/body)) - (provide 'init-ediff) ;;; init-ediff.el ends here diff --git a/lisp/init-editorconfig.el b/lisp/init-editorconfig.el index 49ea50f..2ad5860 100644 --- a/lisp/init-editorconfig.el +++ b/lisp/init-editorconfig.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** https://github.com/editorconfig/editorconfig-emacs#readme (use-package editorconfig diff --git a/lisp/init-elget.el b/lisp/init-elget.el index 1a95b6c..30dd5d7 100644 --- a/lisp/init-elget.el +++ b/lisp/init-elget.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;;; setup el-get for non-package modes ;; This MUST be the first init file to be loaded. diff --git a/lisp/init-elisp.el b/lisp/init-elisp.el index 7de097c..beadc02 100644 --- a/lisp/init-elisp.el +++ b/lisp/init-elisp.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** Emacs LISP interactive ;; General configuration for all things elisp. diff --git a/lisp/init-elvish.el b/lisp/init-elvish.el index ce7b79d..71b4fee 100644 --- a/lisp/init-elvish.el +++ b/lisp/init-elvish.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- (use-package elvish-mode :mode "\\.elv\\'" diff --git a/lisp/init-eshell.el b/lisp/init-eshell.el index 3b8c65c..e172b67 100644 --- a/lisp/init-eshell.el +++ b/lisp/init-eshell.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** eShell stuff, or if interactive stuff is needed, use ansi-term ;; I am a hardcore bash user, but from time to time eshell is good diff --git a/lisp/init-ewww.el b/lisp/init-ewww.el index b6305fa..851f77b 100644 --- a/lisp/init-ewww.el +++ b/lisp/init-ewww.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** EWW browser stuff ;; Emacs has a builtin browser, which is not too bad. diff --git a/lisp/init-flymake.el b/lisp/init-flymake.el index 63b9e19..447b9a3 100644 --- a/lisp/init-flymake.el +++ b/lisp/init-flymake.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; FIXME: how to force bash mode? (use-package flymake diff --git a/lisp/init-followcursor.el b/lisp/init-followcursor.el index ce2809b..979b273 100644 --- a/lisp/init-followcursor.el +++ b/lisp/init-followcursor.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** Followcursor Mode ;; [[https://github.com/TLINDEN/followcursor-mode][source on github]] diff --git a/lisp/init-functions.el b/lisp/init-functions.el index e5141df..a23014a 100644 --- a/lisp/init-functions.el +++ b/lisp/init-functions.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; * Productivity Functions ;; -------------------------------------------------------------------------------- ;; ** goto line with tmp line numbers diff --git a/lisp/init-globalbindings.el b/lisp/init-globalbindings.el index 5e7e359..380a650 100644 --- a/lisp/init-globalbindings.el +++ b/lisp/init-globalbindings.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;;; * Global Key Bindings ;; -------------------------------------------------------------------------------- ;; ** c-h != delete diff --git a/lisp/init-go.el b/lisp/init-go.el index 5d1272c..20b0f9d 100644 --- a/lisp/init-go.el +++ b/lisp/init-go.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** Go Lang (use-package go-mode diff --git a/lisp/init-grep.el b/lisp/init-grep.el index aa76c26..90b2589 100644 --- a/lisp/init-grep.el +++ b/lisp/init-grep.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; https://github.com/leoliu/ack-el (defun tvd-kill-ack() diff --git a/lisp/init-help.el b/lisp/init-help.el index a676a18..eda96cf 100644 --- a/lisp/init-help.el +++ b/lisp/init-help.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** Help Mode ;; I even customize help windows! ... at least a little :) diff --git a/lisp/init-hydra.el b/lisp/init-hydra.el index f93864f..a5002c7 100644 --- a/lisp/init-hydra.el +++ b/lisp/init-hydra.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; Used here and there below, loaded as early as possible (use-package hydra) diff --git a/lisp/init-ibuffer.el b/lisp/init-ibuffer.el index c88908f..5efb4dc 100644 --- a/lisp/init-ibuffer.el +++ b/lisp/init-ibuffer.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** iBuffer mode ;; iBuffer is a great interactive buffer management tool included with diff --git a/lisp/init-imenu.el b/lisp/init-imenu.el index a31e28d..7681260 100644 --- a/lisp/init-imenu.el +++ b/lisp/init-imenu.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;;; ** load imenu (require 'imenu) (define-key global-map [C-down-mouse-2] 'imenu) diff --git a/lisp/init-indentation.el b/lisp/init-indentation.el index 1a0c9ad..c193d89 100644 --- a/lisp/init-indentation.el +++ b/lisp/init-indentation.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** Highlighting Indentation ;; provides: highlight-indentation-mode and highlight-indentation-current-column-mode (use-package highlight-indentation diff --git a/lisp/init-info.el b/lisp/init-info.el index 7452d0e..90093ab 100644 --- a/lisp/init-info.el +++ b/lisp/init-info.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** INFO Mode (require 'info) diff --git a/lisp/init-kubernetes.el b/lisp/init-kubernetes.el index d68eef9..8f1fd11 100644 --- a/lisp/init-kubernetes.el +++ b/lisp/init-kubernetes.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- (defun tvd-kill-ro-buffer() (interactive) (when buffer-read-only diff --git a/lisp/init-lsp.el b/lisp/init-lsp.el index 0ffecd1..a7a5b6b 100644 --- a/lisp/init-lsp.el +++ b/lisp/init-lsp.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; LSP mode (use-package lsp-mode :config diff --git a/lisp/init-lua.el b/lisp/init-lua.el index 14a6dc0..f296b56 100644 --- a/lisp/init-lua.el +++ b/lisp/init-lua.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- (use-package lua-mode :mode "\\.lua\\'" diff --git a/lisp/init-macros.el b/lisp/init-macros.el index 2e63a5f..6e78971 100644 --- a/lisp/init-macros.el +++ b/lisp/init-macros.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** MACROs ;; help: [[https://www.emacswiki.org/emacs/KeyboardMacrosTricks][emacswiki macro tricks]]. @@ -138,6 +139,9 @@ last kbd-macro will be executed." (if (not (get-buffer "macros.el")) (find-file tvd-macro-file)) (with-current-buffer "macros.el" + (goto-char (point-min)) + (insert ";; -*- lexical-binding: nil; -*-") + (newline) (goto-char (point-max)) (newline) (insert ";;") diff --git a/lisp/init-magit.el b/lisp/init-magit.el index 9cad030..6066a98 100644 --- a/lisp/init-magit.el +++ b/lisp/init-magit.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** Magit (when (fboundp 'defhydra) diff --git a/lisp/init-marginalia.el b/lisp/init-marginalia.el index c2ea7f1..d039aaf 100644 --- a/lisp/init-marginalia.el +++ b/lisp/init-marginalia.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; Enable rich annotations using the Marginalia package (use-package marginalia ;; Either bind `marginalia-cycle' globally or only in the minibuffer diff --git a/lisp/init-markdown.el b/lisp/init-markdown.el index 75e4c70..eb0ee4a 100644 --- a/lisp/init-markdown.el +++ b/lisp/init-markdown.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** Markdown ;; I rarely use markdown, but sometimes I stumble upon such a file and diff --git a/lisp/init-matrix.el b/lisp/init-matrix.el index 586613b..a59f161 100644 --- a/lisp/init-matrix.el +++ b/lisp/init-matrix.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- (use-package ement :custom (ement-save-sessions t) diff --git a/lisp/init-mmm.el b/lisp/init-mmm.el index 85279f5..d10812b 100644 --- a/lisp/init-mmm.el +++ b/lisp/init-mmm.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** MMM Mode (use-package mmm-mode :config diff --git a/lisp/init-modeline.el b/lisp/init-modeline.el index 9febf17..e3656f3 100644 --- a/lisp/init-modeline.el +++ b/lisp/init-modeline.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; ** mode-line setup (must be the last mode) ;; I just append the current version of my emacs config and leave out diff --git a/lisp/init-narrow.el b/lisp/init-narrow.el index fb5616f..e9bef68 100644 --- a/lisp/init-narrow.el +++ b/lisp/init-narrow.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** narrowing (no mode but fits here) ;; I use narrowing quite frequently, so here are some enhancements. diff --git a/lisp/init-novel.el b/lisp/init-novel.el index 81b013c..0f78e31 100644 --- a/lisp/init-novel.el +++ b/lisp/init-novel.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** Novel Mode - Screen Reader ;; my own emacs screen reader, very handy to read docs on the road. diff --git a/lisp/init-occur.el b/lisp/init-occur.el index 103bcd1..23658e2 100644 --- a/lisp/init-occur.el +++ b/lisp/init-occur.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** Occur ;; https://oremacs.com/2015/01/26/occur-dwim/ ;; https://github.com/abo-abo/hydra/wiki/Emacs diff --git a/lisp/init-org-present.el b/lisp/init-org-present.el index 9a06909..0a68fdf 100644 --- a/lisp/init-org-present.el +++ b/lisp/init-org-present.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- (use-package org-present :config diff --git a/lisp/init-org.el b/lisp/init-org.el index f75a10a..89d2a6d 100644 --- a/lisp/init-org.el +++ b/lisp/init-org.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** org mode ;; I use org mode to take notes mostly at work. I also track projects diff --git a/lisp/init-orgagenda.el b/lisp/init-orgagenda.el index 53c41d2..8da7298 100644 --- a/lisp/init-orgagenda.el +++ b/lisp/init-orgagenda.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** org agenda mode ;; I use org mode for along time now, primarily at work, but did not diff --git a/lisp/init-orgalist.el b/lisp/init-orgalist.el index 2aba5f8..3891766 100644 --- a/lisp/init-orgalist.el +++ b/lisp/init-orgalist.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; https://elpa.gnu.org/packages/orgalist.html (use-package orgalist) diff --git a/lisp/init-orgtable.el b/lisp/init-orgtable.el index 72e9330..39c3406 100644 --- a/lisp/init-orgtable.el +++ b/lisp/init-orgtable.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** org table mode ;; I'm so used to lovely org mode tables, I need them everywhere! diff --git a/lisp/init-outline.el b/lisp/init-outline.el index a1d3611..5188190 100644 --- a/lisp/init-outline.el +++ b/lisp/init-outline.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** outline mode ;; I use the very same cycle style as in org mode: when on a heading, diff --git a/lisp/init-perl.el b/lisp/init-perl.el index c440855..025efb6 100644 --- a/lisp/init-perl.el +++ b/lisp/init-perl.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** cperl mode ;; I am a perl addict. I love it, therefore, emacs must be prepared diff --git a/lisp/init-pod.el b/lisp/init-pod.el index 23f7693..86c9b07 100644 --- a/lisp/init-pod.el +++ b/lisp/init-pod.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** POD mode ;; I LOVE POD! POD is the documentation format of perl and there's a diff --git a/lisp/init-printing.el b/lisp/init-printing.el index bb77657..5abe964 100644 --- a/lisp/init-printing.el +++ b/lisp/init-printing.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** Printing ;; overwrites printing default menu, access via menu File => Print ;; or: diff --git a/lisp/init-projectile.el b/lisp/init-projectile.el index 1c1494a..601f2ff 100644 --- a/lisp/init-projectile.el +++ b/lisp/init-projectile.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** Projectile (use-package projectile :defer nil diff --git a/lisp/init-python.el b/lisp/init-python.el index e3b256b..1257912 100644 --- a/lisp/init-python.el +++ b/lisp/init-python.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- (use-package python :mode ("\\.py\\'" . python-mode) :interpreter ("python" . python-mode) diff --git a/lisp/init-recentfiles.el b/lisp/init-recentfiles.el index bd24080..b190c0b 100644 --- a/lisp/init-recentfiles.el +++ b/lisp/init-recentfiles.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;;; *** Recent Files ;; You know the file you edited yesterday had "kri" in its name, but diff --git a/lisp/init-rust.el b/lisp/init-rust.el index 96a8349..c66b334 100644 --- a/lisp/init-rust.el +++ b/lisp/init-rust.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** rust mode (use-package rust-mode :config diff --git a/lisp/init-sgml.el b/lisp/init-sgml.el index 25108d9..75dc090 100644 --- a/lisp/init-sgml.el +++ b/lisp/init-sgml.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** sgml ;; Used for XML and the likes. diff --git a/lisp/init-shellscript.el b/lisp/init-shellscript.el index ac6df43..bfa1015 100644 --- a/lisp/init-shellscript.el +++ b/lisp/init-shellscript.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** Shell-Script Mode ;; C-c C-c [un-]comments everywhere, force in shell-script-mode as well diff --git a/lisp/init-smarter-than-emacs.el b/lisp/init-smarter-than-emacs.el index 0e3064f..086535b 100644 --- a/lisp/init-smarter-than-emacs.el +++ b/lisp/init-smarter-than-emacs.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;;; *** Smarter M-x Mode (smex) ;; This is really cool and I don't know how I could ever live without it. @@ -214,7 +215,7 @@ targets." :config (when (fboundp 'persp-new) - (consult-customize consult--source-buffer :hidden t :default nil) + (consult-customize consult-source-buffer :hidden t :default nil) (defvar consult--source-perspective (list :name "Perspective" diff --git a/lisp/init-smartparens.el b/lisp/init-smartparens.el index 6d9235d..2385462 100644 --- a/lisp/init-smartparens.el +++ b/lisp/init-smartparens.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; I'm trying to migrate to smart-parens, since it supports all of ;; paredit but can do more diff --git a/lisp/init-smerge.el b/lisp/init-smerge.el new file mode 100644 index 0000000..e458454 --- /dev/null +++ b/lisp/init-smerge.el @@ -0,0 +1,44 @@ +;; -*- lexical-binding: nil; -*- + +;; *** Smerge Config + +;; smerge-mode is being issued during editing of conflicts from magit, +;; however, I hate its default prefix, but don't have any practical +;; prefixes left AND am using it far too rare to deserve its own +;; prefix. So just a hydra will do. + +(when (fboundp 'defhydra) + (defhydra hydra-smerge (:exit nil) + " +^Smerge Mode^ +^^-------------------------------------------------------------- +_n_: next conflict _u_: keep upper _s_: swap +_p_: prev conflict _l_: keep lower _h_: highlight +_e_: Ediff _b_: keep base _r_: resolve +_q_: quit _RET_: keep hunk@point _R_: revert + +^^-------------------------------------------------------------- +Reach this hydra with +^^-------------------------------------------------------------- + +" + + ("n" smerge-next nil) + ("p" smerge-prev nil) + ("u" smerge-keep-upper nil) + ("l" smerge-keep-lower nil) + ("b" smerge-keep-base nil) + ("RET" smerge-keep-current nil) + ("h" smerge-refine nil) + ("s" smerge-swap nil) + ("r" smerge-resolve nil) + ("R" undo-tree-undo nil) + ("e" smerge-ediff nil :color blue) + ("q" nil nil :color blue)) + + (global-set-key (kbd "C-x m") 'hydra-smerge/body) + (defalias 'merge 'hydra-smerge/body)) + + +(provide 'init-smerge) +;;; init-smerge.el ends here diff --git a/lisp/init-suggest.el b/lisp/init-suggest.el index 4d53c45..7b307cb 100644 --- a/lisp/init-suggest.el +++ b/lisp/init-suggest.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** Suggest Mode ;; [[https://github.com/Wilfred/suggest.el][suggest mode]] is a great diff --git a/lisp/init-system.el b/lisp/init-system.el index e7d0bc9..3788792 100644 --- a/lisp/init-system.el +++ b/lisp/init-system.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;;; Backup Config ;; I save backup files in a central location below the init dir, that diff --git a/lisp/init-tablist.el b/lisp/init-tablist.el index 45d1ad5..e6ca83b 100644 --- a/lisp/init-tablist.el +++ b/lisp/init-tablist.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** Tabulated List Mode ;; built-in, used by many interactive major modes diff --git a/lisp/init-test.el b/lisp/init-test.el index 2b47509..d91f948 100644 --- a/lisp/init-test.el +++ b/lisp/init-test.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- (message (format "DEBUG: default-text-scale installed: %s" (package-installed-p 'default-text-scale))) (package-install 'default-text-scale) diff --git a/lisp/init-textmanipulation.el b/lisp/init-textmanipulation.el index 58302f4..6a99698 100644 --- a/lisp/init-textmanipulation.el +++ b/lisp/init-textmanipulation.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; ** Text Manupilation ;; *** expand-region diff --git a/lisp/init-textscale.el b/lisp/init-textscale.el index a111103..dd5d0ac 100644 --- a/lisp/init-textscale.el +++ b/lisp/init-textscale.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;;; ** increase fontsize with ctrl-+ and ctrl-- ;; I use those bindings everywhere (firefox, terminal, etc), and in diff --git a/lisp/init-tramp.el b/lisp/init-tramp.el index 47bcd74..4a65aca 100644 --- a/lisp/init-tramp.el +++ b/lisp/init-tramp.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** tramp mode ;; Edit remote files, one of the best things in emacs. I use it every day heavily. diff --git a/lisp/init-typst.el b/lisp/init-typst.el index 466a029..5fdfe3c 100644 --- a/lisp/init-typst.el +++ b/lisp/init-typst.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; https://codeberg.org/meow_king/typst-ts-mode diff --git a/lisp/init-ui.el b/lisp/init-ui.el index 8c48692..4d18659 100644 --- a/lisp/init-ui.el +++ b/lisp/init-ui.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;;; *** highlight todo keywords (such as FIXME) ;; Absolutely needed! diff --git a/lisp/init-webmode.el b/lisp/init-webmode.el index ad16f54..45b5bdd 100644 --- a/lisp/init-webmode.el +++ b/lisp/init-webmode.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** web-mode (JS, HTML, CSS combined) ;; Web development is shit. Tech involved is a mess, and in most cases diff --git a/lisp/init-windowmgmt.el b/lisp/init-windowmgmt.el index 42cb8d4..5c2c5d8 100644 --- a/lisp/init-windowmgmt.el +++ b/lisp/init-windowmgmt.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; NOTDONE ;;; ** WINDOW management stuff ;; *** resize windows by keyboard diff --git a/lisp/init-workspaces.el b/lisp/init-workspaces.el index 6d5f0c4..0e07139 100644 --- a/lisp/init-workspaces.el +++ b/lisp/init-workspaces.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** Eyebrowse Workspaces ;; workspace configuration, like desktops. Seems to be a good implementation, w/o save though diff --git a/lisp/init-xmodmap.el b/lisp/init-xmodmap.el index 8170d80..ec29811 100644 --- a/lisp/init-xmodmap.el +++ b/lisp/init-xmodmap.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** Xmodmap Mode ;; the shortest mode ever, [[https://www.emacswiki.org/emacs/XModMapMode][via emacswiki]]. diff --git a/lisp/init-yaml.el b/lisp/init-yaml.el index 2976303..e123366 100644 --- a/lisp/init-yaml.el +++ b/lisp/init-yaml.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- ;; *** Yaml Mode (use-package yaml-mode diff --git a/lisp/kubernetes.el b/lisp/kubernetes.el index 39e847f..5f6499c 100644 --- a/lisp/kubernetes.el +++ b/lisp/kubernetes.el @@ -1,3 +1,4 @@ +;; -*- lexical-binding: nil; -*- (defun tvd-kill-ro-buffer() (interactive) (when buffer-read-only