]> git.earman.xyz Git - emacsinit.git/commitdiff
Change meta for region handling, other UI changes
authorrearman <rearman@r717.net>
Fri, 19 Sep 2025 13:15:43 +0000 (09:15 -0400)
committerrearman <rearman@r717.net>
Fri, 19 Sep 2025 13:15:43 +0000 (09:15 -0400)
Disable delete-selection-mode, set up some point/mark swapping when
not in transient-mark-mode.  Also set up binding for delete-pair, and
disable delay for the same.

Re-disable next-line-add-newlines, reset fill-column to default 70,
and let emacs choose the cursor-in-non-selected-windows.

init.el
re/re-bindings.el
re/re-editing-defuns.el

diff --git a/init.el b/init.el
index 85b6c62158dcfe4de89cf66eb9fe11653035ab38..bd4e7f8e7a842b61721f7d6290bb6555c6cddd87 100644 (file)
--- a/init.el
+++ b/init.el
 (add-hook 'c-mode-hook (lambda () (require 're-c-style)))
 
 (setq-default indicate-empty-lines t
-             next-line-add-newlines t
-             fill-column 80
-             cursor-in-non-selected-windows 'hollow
              mouse-prefer-closest-glyph t)
 
 (blink-cursor-mode -1)
 (column-number-mode t)
 (size-indication-mode t)
 
-(setq delete-by-moving-to-trash t)
+(setq delete-by-moving-to-trash t
+      delete-pair-blink-delay 0
+      delete-active-region nil)
 
 ;; Buffer dealiƋ
-(delete-selection-mode t)
+;; (delete-selection-mode t)
 (global-acme-mouse-mode t)
 
 (setq disabled-command-function nil
index 940f79dfbc618849a2930a3816b5f9077e9a75aa..a11c6e9610db77e07ddc1e8b95e42b82bdc19b43 100644 (file)
@@ -16,6 +16,7 @@
 (keymap-global-set "C-u" (lambda () (interactive) (kill-line 0))) ; kill-line backwards
 (keymap-global-set "C-S-U" #'universal-argument) ; C-u used above
 (keymap-set key-translation-map "C-h" "<DEL>") ; Rather F1 for help, also C-S-H works
+(keymap-global-set "C-S-d" #'delete-pair)
 (keymap-global-set "C-o" #'re/open-line-below)
 (keymap-global-set "M-o" #'re/open-line-above)
 (keymap-global-set "M-j" (lambda () (interactive) (join-line 0))) ; join-line other way
@@ -26,6 +27,9 @@
 (keymap-global-set "<remap> <downcase-word>" #'downcase-dwim) ; M-l
 (keymap-global-set "<remap> <upcase-word>" #'upcase-dwim) ; M-u
 (keymap-global-set "<remap> <keyboard-quit>" #'re/keyboard-quit) ; C-g works better
+(keymap-global-set "C-'" #'re/push-mark-no-activate)
+(keymap-global-set "M-'" #'re/jump-to-mark)
+(keymap-global-set "<remap> <exchange-point-and-mark>" #'re/exchange-point-and-mark-maybe-activate)
 
 ;; WayfindiƋ
 (keymap-global-set "<home>" #'beginning-of-buffer)
index 1aa35574cfa154273a02360ab9bcddecfb98b917..f8b68d74f6f81628dbf2bab8a8970ef6578da10d 100644 (file)
@@ -160,6 +160,14 @@ Taken from https://www.masteringemacs.org/article/fixing-mark-commands-transient
   (interactive)
   (set-mark-command 1))
 
+(defun re/exchange-point-and-mark-maybe-activate ()
+  "Call `exchange-point-and-mark' but don't activate the region.
+Stolen from https://www.masteringemacs.org/article/fixing-mark-commands-transient-mark-mode"
+  (interactive)
+  (if (use-region-p)
+      (exchange-point-and-mark)
+    (exchange-point-and-mark t)))
+
 (defun re/keyboard-quit ()
   "Smarter version of `keyboard-quit'.
 Close the minibuffer if not focused when hit.