From e46801bb500e8437b0cb5558faa7d6c0ef9d8a80 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Sat, 4 Jan 2025 23:45:55 +0100 Subject: bash: Set LC_NUMERIC to nl_NL --- .bashrc | 1 + 1 file changed, 1 insertion(+) diff --git a/.bashrc b/.bashrc index c48258e..16250f0 100644 --- a/.bashrc +++ b/.bashrc @@ -36,6 +36,7 @@ export MANPAGER="nvimpager" export TERM="xterm-256color" export VISUAL="nvim" export MANSECT="3,2,1,8,5,7,4,6,3p,1p,0p" +export LC_NUMERIC="nl_NL.UTF-8" export XDG_CACHE_HOME="$HOME/.cache" export XDG_CONFIG_DIRS="/etc/xdg" -- cgit v1.2.3 From 4f73eef10f17d699dc6aa9c62f4102bede424de4 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Sat, 4 Jan 2025 23:46:18 +0100 Subject: aerc, isync, msmtp: Configure multiple euro-cash.eu accounts --- .config/aerc/accounts.conf | 13 ++++++++++++- .config/isync/mbsyncrc | 29 ++++++++++++++++++++++++----- .config/msmtp/config | 9 ++++++++- 3 files changed, 44 insertions(+), 7 deletions(-) diff --git a/.config/aerc/accounts.conf b/.config/aerc/accounts.conf index 2f6304b..9c7303b 100644 --- a/.config/aerc/accounts.conf +++ b/.config/aerc/accounts.conf @@ -9,7 +9,7 @@ outgoing = /usr/bin/msmtp outgoing‐cred‐cmd = vlt raw Email mail@thomasvoss.com signature-cmd = printf '— Thomas' -[EuroCash] +[EuroCash (Admin)] copy-to = Sent default = Inbox folders-sort = Inbox @@ -20,6 +20,17 @@ outgoing = /usr/bin/msmtp outgoing‐cred‐cmd = vlt raw Email mail@euro-cash.eu signature-cmd = printf '— Thomas' +[EuroCash (Bugs)] +copy-to = Sent +default = Inbox +folders-sort = Inbox +from = EuroCash Bugs +source = maildir://~/mail/bugs@euro-cash.eu +source‐cred‐cmd = vlt raw Email bugs@euro-cash.eu +outgoing = /usr/bin/msmtp +outgoing‐cred‐cmd = vlt raw Email bugs@euro-cash.eu +signature-cmd = printf '— Thomas' + [Legacy] copy-to = Sent default = Inbox diff --git a/.config/isync/mbsyncrc b/.config/isync/mbsyncrc index 4f123ed..4a0bc50 100644 --- a/.config/isync/mbsyncrc +++ b/.config/isync/mbsyncrc @@ -23,21 +23,40 @@ Patterns * # mail@euro-cash.eu -IMAPStore eurocash-remote +IMAPStore eurocash-admin-remote Host imap.migadu.com User mail@euro-cash.eu PassCmd "vlt raw Email mail@euro-cash.eu" TLSType IMAPS CertificateFile /etc/ssl/certs/ca-certificates.crt -MaildirStore eurocash-local +MaildirStore eurocash-admin-local Path ~/mail/mail@euro-cash.eu/ Inbox ~/mail/mail@euro-cash.eu/Inbox SubFolders Verbatim -Channel eurocash -Far :eurocash-remote: -Near :eurocash-local: +Channel eurocash-admin +Far :eurocash-admin-remote: +Near :eurocash-admin-local: +Patterns * + +# bugs@euro-cash.eu + +IMAPStore eurocash-bugs-remote +Host imap.migadu.com +User bugs@euro-cash.eu +PassCmd "vlt raw Email bugs@euro-cash.eu" +TLSType IMAPS +CertificateFile /etc/ssl/certs/ca-certificates.crt + +MaildirStore eurocash-bugs-local +Path ~/mail/bugs@euro-cash.eu/ +Inbox ~/mail/bugs@euro-cash.eu/Inbox +SubFolders Verbatim + +Channel eurocash-bugs +Far :eurocash-bugs-remote: +Near :eurocash-bugs-local: Patterns * # thomasvoss@live.com diff --git a/.config/msmtp/config b/.config/msmtp/config index 367898a..bfd8778 100644 --- a/.config/msmtp/config +++ b/.config/msmtp/config @@ -11,13 +11,20 @@ from mail@thomasvoss.com user mail@thomasvoss.com passwordeval vlt raw Email mail@thomasvoss.com -account eurocash +account eurocash-admin host smtp.migadu.com port 465 from mail@euro-cash.eu user mail@euro-cash.eu passwordeval vlt raw Email mail@euro-cash.eu +account eurocash-bugs +host smtp.migadu.com +port 465 +from bugs@euro-cash.eu +user bugs@euro-cash.eu +passwordeval vlt raw Email bugs@euro-cash.eu + account legacy host smtp.office365.com port 587 -- cgit v1.2.3 From 9cc8020ab02c50f383fdb53fe1915199546f2aba Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Sat, 4 Jan 2025 23:47:45 +0100 Subject: emacs: Configure csv-mode variables --- .config/emacs/modules/mm-editing.el | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.config/emacs/modules/mm-editing.el b/.config/emacs/modules/mm-editing.el index 42fdb21..2bc71e5 100644 --- a/.config/emacs/modules/mm-editing.el +++ b/.config/emacs/modules/mm-editing.el @@ -313,10 +313,15 @@ is as described by `emmet-expand-line'." ;;; Additional Major Modes (use-package awk-ts-mode :ensure t) -(use-package csv-mode :ensure t) (use-package git-modes :ensure t) (use-package sed-mode :ensure t) +(use-package csv-mode + :ensure t + :custom + (csv-align-style 'auto) + (csv-align-padding 2)) + ;;; Mode-Specific Configurations -- cgit v1.2.3 From f93579ccddf3f3f8a5a50280dd2722fee8f71f3d Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Sat, 4 Jan 2025 23:48:10 +0100 Subject: emacs: Introduce number-format-mode.el --- .config/emacs/modules/mm-editing.el | 8 ++ .config/emacs/site-lisp/number-format-mode.el | 129 ++++++++++++++++++++++++++ 2 files changed, 137 insertions(+) create mode 100644 .config/emacs/site-lisp/number-format-mode.el diff --git a/.config/emacs/modules/mm-editing.el b/.config/emacs/modules/mm-editing.el index 2bc71e5..c6c8532 100644 --- a/.config/emacs/modules/mm-editing.el +++ b/.config/emacs/modules/mm-editing.el @@ -309,6 +309,14 @@ is as described by `emmet-expand-line'." :custom (emmet-self-closing-tag-style "")) + +;;; Number Formatting + +(use-package number-format-mode + :commands ( number-format-buffer number-format-region + number-unformat-buffer number-unformat-region + number-format-mode)) + ;;; Additional Major Modes diff --git a/.config/emacs/site-lisp/number-format-mode.el b/.config/emacs/site-lisp/number-format-mode.el new file mode 100644 index 0000000..cbc5937 --- /dev/null +++ b/.config/emacs/site-lisp/number-format-mode.el @@ -0,0 +1,129 @@ +;;; number-format-mode.el --- Format numbers in the current buffer -*- lexical-binding: t; -*- + +(eval-when-compile + (require 'cl-macs) + (require 'seq)) + +(defgroup number-format nil + "Customization group for `number-format'." + :group 'convenience) ; TODO: Is this the right group? + +(defcustom number-format-separator "." + "Thousands separator to use in numeric literals." + :type 'string + :package-version '(number-format-mode . "1.0.0") + :group 'number-format) + +(defcustom number-format-predicate nil + "Function determining if a number should be formatted. +When formatting a number, this function is called with the START and END +range of the number in the buffer. If this function returns non-nil the +number is formatted. + +If this function is nil then all numbers are formatted." + :type 'function + :package-version '(number-format-mode . "1.0.0") + :group 'number-format) + +(defvar-local number-format--overlays (make-hash-table :test 'eq)) +(defconst number-format--regexp "\\b[0-9]\\{4,\\}\\b") + +(defun number-format--add-separators (s) + (while (string-match "\\(.*[0-9]\\)\\([0-9][0-9][0-9].*\\)" s) + (setq s (concat (match-string 1 s) + number-format-separator + (match-string 2 s)))) + s) + +(defun number-format--adjust-overlays (ov _1 beg end &optional _2) + (let* ((ov-beg (overlay-start ov)) + (ov-end (overlay-end ov)) + (overlays (overlays-in ov-beg ov-end))) + (mapcar #'delete-overlay (gethash ov number-format--overlays)) + (save-excursion + (goto-char ov-beg) + (if (looking-at number-format--regexp :inhibit-modify) + (puthash ov (number-format--at-range ov-beg ov-end) + number-format--overlays) + (delete-overlay ov) + (remhash ov number-format--overlays))))) + +(defun number-format--at-range (beg end) + (when (or (null number-format-predicate) + (funcall number-format-predicate beg end)) + (let* ((offsets [3 1 2]) + (len (- end beg)) + (off (aref offsets (mod len 3)))) + (goto-char (+ beg off))) + (let (overlays) + (while (< (point) end) + (let* ((group-end (+ (point) 3)) + (ov (make-overlay (point) group-end))) + (overlay-put ov 'before-string ".") + (overlay-put ov 'evaporate t) + (push ov overlays) + (goto-char group-end))) + overlays))) + +(defun number-format--jit-lock (beg end) + (let ((line-beg (save-excursion (goto-char beg) (line-beginning-position))) + (line-end (save-excursion (goto-char end) (line-end-position)))) + (number-unformat-region line-beg line-end) + (number-format-region line-beg line-end))) + +;;;###autoload +(defun number-format-region (beg end) + "Format numbers between BEG and END. +When called interactively, format numbers in the active region." + (interactive "r") + (save-excursion + (goto-char beg) + (save-restriction + (narrow-to-region beg end) + (number-unformat-region beg end) + (while (re-search-forward number-format--regexp nil :noerror) + (save-excursion + (cl-destructuring-bind (beg end) (match-data) + (let ((ov (make-overlay beg end nil nil :rear-advance))) + (overlay-put ov 'evaporate t) + (dolist (sym '(insert-behind-hooks + insert-in-front-hooks + modification-hooks)) + (overlay-put ov sym '(number-format--adjust-overlays))) + (puthash ov (number-format--at-range beg end) + number-format--overlays)))))))) + +;;;###autoload +(defun number-unformat-region (beg end) + "Unformat numbers between BEG and END. +When called interactively, unformat numbers in the active region." + (interactive "r") + (dolist (ov (overlays-in beg end)) + (when-let ((overlays (gethash ov number-format--overlays))) + (mapcar #'delete-overlay overlays) + (remhash ov number-format--overlays) + (delete-overlay ov)))) + +;;;###autoload +(defun number-format-buffer () + "Format numbers in the current buffer." + (interactive) + (number-format-region (point-min) (point-max))) + +;;;###autoload +(defun number-unformat-buffer () + "Unformat numbers in the current buffer." + (interactive) + (number-unformat-region (point-min) (point-max))) + +;;;###autoload +(define-minor-mode number-format-mode + "TODO" + :lighter " Number-Format" + :group 'number-format + (number-unformat-buffer) + (if number-format-mode + (jit-lock-register #'number-format--jit-lock) + (jit-lock-unregister #'number-format--jit-lock))) + +(provide 'number-format) \ No newline at end of file -- cgit v1.2.3 From 8561fa37f998dec3f8b1649b8d60de75aa6edd4d Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Sat, 4 Jan 2025 23:48:33 +0100 Subject: emacs: Configure wdired --- .config/emacs/modules/mm-modeline.el | 3 ++- .config/emacs/modules/mm-theme.el | 7 ++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/.config/emacs/modules/mm-modeline.el b/.config/emacs/modules/mm-modeline.el index 2981307..eae4dce 100644 --- a/.config/emacs/modules/mm-modeline.el +++ b/.config/emacs/modules/mm-modeline.el @@ -50,7 +50,8 @@ ("Gmake" . "GMake") ("Imake" . "IMake") ("Js" . "JavaScript") - ("Ts Mode" . "Tree-Sitter Mode")) + ("Ts Mode" . "Tree-Sitter Mode") + ("Wdired" . "WDired")) "Alist of substrings in major mode names that should be remapped. Some major modes have substrings that would be better displayed in another manner. For example expanding an abbreviation such as ‘Js’ to diff --git a/.config/emacs/modules/mm-theme.el b/.config/emacs/modules/mm-theme.el index f4b9c9a..adb0bf6 100644 --- a/.config/emacs/modules/mm-theme.el +++ b/.config/emacs/modules/mm-theme.el @@ -203,9 +203,14 @@ See also the `mm-theme-background-opacity' variable." ;;; More Intuiative UI for Certain Modes +(defun mm-disable-line-selection-mode () + (line-selection-mode -1)) + (use-package line-selection-mode :hook ((bookmark-bmenu-mode dired-mode ibuffer-mode magit-repolist-mode) - . line-selection-mode)) + . line-selection-mode) + :config + (add-hook wdired-mode-hook #'mm-disable-line-selection-mode)) ;;; Line Highlighting -- cgit v1.2.3 From 4605c73cd896c281ca8bc0df25b0d25f7a3ebd67 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Sat, 4 Jan 2025 23:53:28 +0100 Subject: emacs: Quote symbol --- .config/emacs/modules/mm-theme.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/emacs/modules/mm-theme.el b/.config/emacs/modules/mm-theme.el index adb0bf6..f2e9b04 100644 --- a/.config/emacs/modules/mm-theme.el +++ b/.config/emacs/modules/mm-theme.el @@ -210,7 +210,7 @@ See also the `mm-theme-background-opacity' variable." :hook ((bookmark-bmenu-mode dired-mode ibuffer-mode magit-repolist-mode) . line-selection-mode) :config - (add-hook wdired-mode-hook #'mm-disable-line-selection-mode)) + (add-hook 'wdired-mode-hook #'mm-disable-line-selection-mode)) ;;; Line Highlighting -- cgit v1.2.3 From 8ac99e4cba8013dbb655920bdea0fd826e015e1f Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Sat, 8 Mar 2025 13:44:56 +0100 Subject: eww: Don’t show the seconds MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .config/eww/scripts/datetime-listener | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.config/eww/scripts/datetime-listener b/.config/eww/scripts/datetime-listener index b10f4a5..1cd8e39 100755 --- a/.config/eww/scripts/datetime-listener +++ b/.config/eww/scripts/datetime-listener @@ -6,6 +6,7 @@ do # date +'%A, %-d of %B %Y — %T %Z' # TZ='Asia/Kolkata' date +'(%T %Z)' # } | paste -sd ' ' - date +'%A, %-d of %B %Y — %T %Z' - sleep "$(date +'%s.%N' | dc -e '? d 1 + 1 / r - p')" + date +'%A, %-d of %B %Y — %H:%M %Z' + sleep 10 + # sleep "$(date +'%s.%N' | dc -e '? d 1 + 1 / r - p')" done | ordinal -p1 -- cgit v1.2.3 From 6b37a483ba12d6008dd787d7f43ab1c25948a56a Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Sat, 8 Mar 2025 13:45:14 +0100 Subject: htop: Bump version --- .config/htop/htoprc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.config/htop/htoprc b/.config/htop/htoprc index c01fbc7..35f4039 100644 --- a/.config/htop/htoprc +++ b/.config/htop/htoprc @@ -1,6 +1,6 @@ # Beware! This file is rewritten by htop when settings are changed in the interface. # The parser is also very primitive, and not human-friendly. -htop_version=3.2.2 +htop_version=3.3.0 config_reader_min_version=3 fields=0 48 17 18 38 39 40 2 46 47 49 1 hide_kernel_threads=1 @@ -48,16 +48,16 @@ all_branches_collapsed=0 screen:Main=PID USER PRIORITY NICE M_VIRT M_RESIDENT M_SHARE STATE PERCENT_CPU PERCENT_MEM TIME Command .sort_key=PERCENT_CPU .tree_sort_key=PID -.tree_view=0 .tree_view_always_by_pid=0 +.tree_view=0 .sort_direction=-1 .tree_sort_direction=1 .all_branches_collapsed=0 screen:I/O=PID USER IO_PRIORITY IO_RATE IO_READ_RATE IO_WRITE_RATE PERCENT_SWAP_DELAY PERCENT_IO_DELAY Command .sort_key=IO_RATE .tree_sort_key=PID -.tree_view=0 .tree_view_always_by_pid=0 +.tree_view=0 .sort_direction=-1 .tree_sort_direction=1 .all_branches_collapsed=0 -- cgit v1.2.3 From 95af89b8ed2e39cc56f1fea6d6dcac0d46c04225 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Sat, 8 Mar 2025 13:45:22 +0100 Subject: emacs: Prefer OpenSans --- .config/emacs/modules/mm-theme.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/emacs/modules/mm-theme.el b/.config/emacs/modules/mm-theme.el index f2e9b04..d9b129c 100644 --- a/.config/emacs/modules/mm-theme.el +++ b/.config/emacs/modules/mm-theme.el @@ -16,7 +16,7 @@ "The default monospace font. This is a plist containing a font name, -weight, and -height.") -(defvar mm-theme-proportional-font '("SF Pro" :weight regular :height 162) +(defvar mm-theme-proportional-font '("OpenSans" :weight regular :height 162) "The default proportional font. This is a plist containing a font name, -weight, and -height.") -- cgit v1.2.3 From 2e6cc27fc771eb585a02ed66070cb584fcc9e045 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Sat, 8 Mar 2025 13:45:29 +0100 Subject: Hyprland: Enable ecosystem.no_update_news --- .config/hypr/hyprland.conf.in | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.config/hypr/hyprland.conf.in b/.config/hypr/hyprland.conf.in index 586ffd0..b5c08df 100644 --- a/.config/hypr/hyprland.conf.in +++ b/.config/hypr/hyprland.conf.in @@ -10,6 +10,10 @@ monitor = , highres, auto, 1 layerrule = noanim, overlay +ecosystem { + no_update_news = yes +} + # Remember to coppy settings to sddm.hyprland.conf input { accel_profile = "adaptive" -- cgit v1.2.3 From c926d3511ed741204777848509476f679afa2921 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Sat, 8 Mar 2025 13:45:50 +0100 Subject: isync: Remove newline --- .config/isync/mbsyncrc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/isync/mbsyncrc b/.config/isync/mbsyncrc index 4a0bc50..88ab0cb 100644 --- a/.config/isync/mbsyncrc +++ b/.config/isync/mbsyncrc @@ -115,4 +115,4 @@ SubFolders Verbatim Channel humanwave Far :humanwave-remote: Near :humanwave-local: -Patterns * +Patterns * \ No newline at end of file -- cgit v1.2.3 From d2f1c2eb1f7649148285e93782aa6a8ae1614626 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Sat, 8 Mar 2025 14:36:39 +0100 Subject: xcompose: Add examples --- .config/X11/xcompose | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/.config/X11/xcompose b/.config/X11/xcompose index 734b440..1cbc0e6 100644 --- a/.config/X11/xcompose +++ b/.config/X11/xcompose @@ -3,24 +3,24 @@ # ‘C X’ means ‘Compose + X’ # U+22C6 STAR OPERATOR (‘⋆’) represents an arbitrary key # -# C ⋆ ' A letter with an acute -# C ⋆ u A letter with a breve -# C ⋆ v A letter with a caron -# C ⋆ , A letter with a cedilla -# C ⋆ ^ A letter with a circumflex -# C ⋆ : A letter with a diaeresis -# C ⋆ . A letter with a dot -# C ⋆ " A letter with a double-acute -# C ⋆ ` A letter with a grave -# C ⋆ - A letter with a macron -# C ⋆ ; A letter with an ogonek -# C ⋆ o A letter with a ring -# C ⋆ / A letter with a slash or strikethrough -# C ⋆ ~ A letter with a tilde -# C ⋆ * The Greek letter ‘⋆’ -# C _ ⋆ Subscript ‘⋆’ -# C ^ ⋆ Superscript ‘⋆’ -# C l ⋆ Propositional logic operators +# C ⋆ ' A letter with an acute (á) +# C ⋆ u A letter with a breve (ă) +# C ⋆ v A letter with a caron (ǎ) +# C ⋆ , A letter with a cedilla (ç) +# C ⋆ ^ A letter with a circumflex (â) +# C ⋆ : A letter with a diaeresis (ä) +# C ⋆ . A letter with a dot (ġ) +# C ⋆ " A letter with a double-acute (ő) +# C ⋆ ` A letter with a grave (à) +# C ⋆ - A letter with a macron (ā) +# C ⋆ ; A letter with an ogonek (ą) +# C ⋆ o A letter with a ring (å) +# C ⋆ / A letter with a slash or strikethrough (ø) +# C ⋆ ~ A letter with a tilde (ã) +# C ⋆ * The Greek letter ‘⋆’ (α) +# C _ ⋆ Subscript ‘⋆’ (₁) +# C ^ ⋆ Superscript ‘⋆’ (¹) +# C l ⋆ Propositional logic operators (⇒) # # Ligatures or other glyphs that are compose of multiple characters are # straight forwards. For example ‘C I J’ produces ‘IJ’. -- cgit v1.2.3 From 6ee775e8608b9a8756cf4c4af0f2ac6fb29031d2 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Sat, 8 Mar 2025 14:36:54 +0100 Subject: xcompose: Add ‘C ⋆ .’ bindings MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .config/X11/xcompose | 40 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) diff --git a/.config/X11/xcompose b/.config/X11/xcompose index 1cbc0e6..1466dbd 100644 --- a/.config/X11/xcompose +++ b/.config/X11/xcompose @@ -202,7 +202,45 @@ : "ẑ" U1E91 # Latin Alphabet — Dot -# TODO + : "Ȧ" U0226 + : "ȧ" U0227 + : "ḃ" babovedot + : "Ḃ" Babovedot + : "ċ" cabovedot + : "Ċ" Cabovedot + : "ḋ" dabovedot + : "Ḋ" Dabovedot + : "ė" eabovedot + : "Ė" Eabovedot + : "ḟ" fabovedot + : "Ḟ" Fabovedot + : "ġ" gabovedot + : "Ġ" Gabovedot + : "ḣ" habovedot + : "Ḣ" Habovedot + : "İ" Iabovedot + : "ṁ" mabovedot + : "Ṁ" Mabovedot + : "Ṅ" U1E44 + : "ṅ" U1E45 + : "Ȯ" U022E + : "ȯ" U022F +

: "ṗ" pabovedot +

: "Ṕ" U1E54

: "ṕ" U1E55 - : "Ŕ" U0154 +

: "Ṕ" U1E54 : "ŕ" U0155 - : "Ś" U015A + : "Ŕ" U0154 : "ś" U015B + : "Ś" U015A : "ú" uacute : "Ú" Uacute - : "Ẃ" U1E82 : "ẃ" U1E83 + : "Ẃ" U1E82 : "ý" yacute : "Ý" Yacute - : "Ź" U0179 : "ź" U017A + : "Ź" U0179 # Latin Alphabet — Breve : "ă" abreve : "Ă" Abreve - : "Ĕ" U0114 : "ĕ" U0115 + : "Ĕ" U0114 : "ğ" gbreve : "Ğ" Gbreve : "ĭ" ibreve : "Ĭ" Ibreve - : "Ŏ" U014E : "ŏ" U014F + : "Ŏ" U014E : "ŭ" ubreve : "Ŭ" Ubreve # Latin Alphabet — Caron - : "Ǎ" U01CD : "ǎ" U01CE + : "Ǎ" U01CD : "č" ccaron : "Č" Ccaron : "ď" dcaron @@ -125,13 +125,13 @@ : "Ě" Ecaron : "ǧ" gcaron : "Ǧ" Gcaron - : "Ȟ" U021E : "ȟ" U021F - : "Ǐ" U01CF + : "Ȟ" U021E : "ǐ" U01D0 + : "Ǐ" U01CF : "ǰ" U01F0 # NOTE: No uppercase in Unicode - : "Ǩ" U01E8 : "ǩ" U01E9 + : "Ǩ" U01E8 : "ľ" lcaron : "Ľ" Lcaron : "ň" ncaron @@ -144,66 +144,66 @@ : "Š" Scaron : "ť" tcaron : "Ť" Tcaron - : "Ǔ" U01D3 : "ǔ" U01D4 + : "Ǔ" U01D3 : "ž" zcaron : "Ž" Zcaron # Latin Alphabet — Cedilla : "ç" ccedilla : "Ç" ccedilla - : "Ḑ" U1E10 : "ḑ" U1E11 - : "Ȩ" U0228 + : "Ḑ" U1E10 : "ȩ" U0229 + : "Ȩ" U0228 : "ģ" U0121 : "Ģ" U0122 - : "Ḩ" U1E28 : "ḩ" U1E29 - : "Ķ" U0136 + : "Ḩ" U1E28 : "ķ" U0137 - : "Ļ" U012C + : "Ķ" U0136 : "ļ" U013C - : "Ņ" U0145 + : "Ļ" U012C : "ņ" U0146 - : "Ŗ" U0156 + : "Ņ" U0145 : "ŗ" U0157 - : "Ş" U015E + : "Ŗ" U0156 : "ş" U015F - : "Ţ" U0162 + : "Ş" U015E : "ţ" U0163 + : "Ţ" U0162 # Latin Alphabet - Circumflex : "â" acircumflex : "Â" Acircumflex - : "Ĉ" U0108 : "ĉ" U0109 + : "Ĉ" U0108 : "ê" ecircumflex : "Ê" Ecircumflex - : "Ĝ" U011C : "ĝ" U011D - : "Ĥ" U0124 + : "Ĝ" U011C : "ĥ" U0125 + : "Ĥ" U0124 : "î" icircumflex : "Î" Icircumflex - : "Ĵ" U0134 : "ĵ" U0135 + : "Ĵ" U0134 : "ô" ocircumflex : "Ô" Ocircumflex - : "Ŝ" U015C : "ŝ" U015D + : "Ŝ" U015C : "û" ucircumflex : "Û" Ucircumflex - : "Ŵ" U0174 : "ŵ" U0175 - : "Ŷ" U0176 + : "Ŵ" U0174 : "ŷ" U0177 - : "Ẑ" U1E90 + : "Ŷ" U0176 : "ẑ" U1E91 + : "Ẑ" U1E90 -# Latin Alphabet — Dot - : "Ȧ" U0226 +# Latin Alphabet — Dot : "ȧ" U0227 + : "Ȧ" U0226 : "ḃ" babovedot : "Ḃ" Babovedot : "ċ" cabovedot @@ -221,24 +221,24 @@ : "İ" Iabovedot : "ṁ" mabovedot : "Ṁ" Mabovedot - : "Ṅ" U1E44 : "ṅ" U1E45 - : "Ȯ" U022E + : "Ṅ" U1E44 : "ȯ" U022F + : "Ȯ" U022E

: "ṗ" pabovedot

: "Ṗ" Pabovedot - : "Ṙ" U1E58 : "ṙ" U1E59 + : "Ṙ" U1E58 : "ṡ" sabovedot : "Ṡ" Sabovedot : "ṫ" tabovedot : "Ṫ" Tabovedot - : "Ẇ" U1E86 : "ẇ" U1E87 - : "Ẋ" U1E8A + : "Ẇ" U1E86 : "ẋ" U1E8B - : "Ẏ" U1E8E + : "Ẋ" U1E8A : "ẏ" U1E8F + : "Ẏ" U1E8E : "ż" zabovedot : "Ż" Zabovedot @@ -247,8 +247,8 @@ : "Ä" Adiaeresis : "ë" adiaeresis : "Ë" Ediaeresis - : "Ḧ" U1E26 : "ḧ" U1E27 + : "Ḧ" U1E26 : "ï" adiaeresis : "Ï" Idiaeresis : "ö" adiaeresis @@ -256,15 +256,15 @@ : "ẗ" U1E97 # NOTE: No uppercase in Unicode : "ü" adiaeresis : "Ü" Udiaeresis - : "Ẅ" U1E84 : "ẅ" U1E85 - : "Ẍ" U1E8C + : "Ẅ" U1E84 : "ẍ" U1E8D - : "Ÿ" U0178 + : "Ẍ" U1E8C : "ÿ" ydiaeresis + : "Ÿ" U0178 -# Latin Alphabet — Double-Acute +# Latin Alphabet — Double-Acute : "ő" odoubleacute : "Ő" Odoubleacute : "ű" udoubleacute @@ -276,7 +276,7 @@ # Latin Alphabet — Macron # TODO -# Latin Alphabet — Ogonek +# Latin Alphabet — Ogonek : "ą" aogonek : "Ą" Aogonek : "ę" eogonek @@ -288,15 +288,15 @@ : "ų" uogonek : "Ų" Uogonek -# Latin Alphabet — Ring +# Latin Alphabet — Ring : "å" aring : "Å" Aring - : "Ů" U016E : "ů" U016F + : "Ů" U016E : "ẘ" U1E98 # NOTE: No uppercase in Unicode : "ẙ" U1E99 # NOTE: No uppercase in Unicode -# Latin Alphabet — Slash & Strikethrough +# Latin Alphabet — Slash & Strikethrough # NOTE: Eth and D-Stroke conflict, but ð is more curvy than đ, so use # slash for the former and minus for the latter. : "đ" dstroke @@ -305,20 +305,20 @@ : "Ð" ETH : "ħ" U0126 : "Ħ" U0126 - : "Ł" U0141 : "ł" U0142 + : "Ł" U0141 : "ø" oslash : "Ø" Oslash # Latin Alphabet — Tilde # TODO -# Latin Alphabet — Ligatures & Multiglyphs +# Latin Alphabet — Ligatures & Multiglyphs : "æ" ae : "Æ" AE - : "DŽ" U01C4 - : "Dž" U01C5 : "dž" U01C6 + : "Dž" U01C5 + : "DŽ" U01C4 : "¡" exclamdown : "‽" U203D : "ff" UFB00 @@ -326,14 +326,14 @@ : "ffl" UFB04 : "fi" UFB01 : "fl" UFB02 - : "IJ" U0132 : "ij" U0133 - : "LJ" U01C7 - : "Lj" U01C8 + : "IJ" U0132 : "lj" U01C9 - : "NJ" U01CA - : "Nj" U01CB + : "Lj" U01C8 + : "LJ" U01C7 : "nj" U01CC + : "Nj" U01CB + : "NJ" U01CA : "№" numerosign : "œ" oe : "Œ" OE @@ -349,55 +349,55 @@ : "Þ" THORN # [T][H]ORN # Greek Alphabet - : "Α" U0391 : "α" U03B1 - : "Β" U0392 + : "Α" U0391 : "β" U03B2 - : "Δ" U0394 + : "Β" U0392 : "δ" U03B4 - : "Ε" U0395 + : "Δ" U0394 : "ε" U03B5 - : "Φ" U03A6 + : "Ε" U0395 : "φ" U03C6 - : "Γ" U0393 + : "Φ" U03A6 : "γ" U03B3 - : "Η" U0397 + : "Γ" U0393 : "η" U03B7 - : "Ι" U0399 + : "Η" U0397 : "ι" U03B9 - : "Θ" U0398 + : "Ι" U0399 : "θ" U03B8 - : "Κ" U039A + : "Θ" U0398 : "κ" U03BA - : "Λ" U039B + : "Κ" U039A : "λ" U03BB - : "Μ" U039C + : "Λ" U039B : "μ" U03BC - : "Ν" U039D + : "Μ" U039C : "ν" U03BD - : "Ο" U039F + : "Ν" U039D : "ο" U03BF -

: "Π" U03A0 + : "Ο" U039F

: "π" U03C0 - : "Χ" U03A7 +

: "Π" U03A0 : "χ" U03C7 - : "Ρ" U03A1 + : "Χ" U03A7 : "ρ" U03C1 - : "Σ" U03A3 + : "Ρ" U03A1 + : "ς" U03C2 # NOTE: Special case for final sigma : "σ" U03C3 - : "Τ" U03A4 + : "Σ" U03A3 : "τ" U03C4 - : "Υ" U03A5 + : "Τ" U03A4 : "υ" U03C5 - : "Ω" U03A9 + : "Υ" U03A5 : "ω" U03C9 - : "Ξ" U039E + : "Ω" U03A9 : "ξ" U03BE - : "Ψ" U03A8 + : "Ξ" U039E : "ψ" U03C8 - : "Ζ" U0396 + : "Ψ" U03A8 : "ζ" U03B6 - : "ς" U03C2 # NOTE: Special case for final sigma + : "Ζ" U0396 # Superscript <0> : "⁰" U2070 @@ -448,4 +448,4 @@ : "ₜ" U209C : "ᵤ" U1D64 : "ᵥ" U1D65 - : "ₓ" U2093 + : "ₓ" U2093 \ No newline at end of file -- cgit v1.2.3 From e507b2146b5f864c402cfda721e153bcb5f3b84a Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Sat, 8 Mar 2025 20:30:38 +0100 Subject: xcompose: Add grave-, macron-, and tilde-bindings --- .config/X11/xcompose | 55 ++++++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 49 insertions(+), 6 deletions(-) diff --git a/.config/X11/xcompose b/.config/X11/xcompose index 17620e0..b66603c 100644 --- a/.config/X11/xcompose +++ b/.config/X11/xcompose @@ -270,11 +270,39 @@ : "ű" udoubleacute : "Ű" Udoubleacute -# Latin Alphabet — Grave -# TODO +# Latin Alphabet — Grave + : "à" agrave + : "À" Agrave + : "è" egrave + : "È" Egrave + : "ì" igrave + : "Ì" Igrave + : "ǹ" U01F9 + : "Ǹ" U01F8 + : "ò" ograve + : "Ò" Ograve + : "ù" ugrave + : "Ù" Ugrave + : "ẁ" wgrave + : "Ẁ" Wgrave + : "ỳ" ygrave + : "Ỳ" Ygrave -# Latin Alphabet — Macron -# TODO +# Latin Alphabet — Macron + : "ā" amacron + : "Ā" Amacron + : "ē" emacron + : "Ē" Emacron + : "ḡ" U1E21 + : "Ḡ" U1E20 + : "ī" imacron + : "Ī" Imacron + : "ō" omacron + : "Ō" Omacron + : "ū" umacron + : "Ū" Umacron + : "ȳ" U0233 + : "Ȳ" U0232 # Latin Alphabet — Ogonek : "ą" aogonek @@ -310,8 +338,23 @@ : "ø" oslash : "Ø" Oslash -# Latin Alphabet — Tilde -# TODO +# Latin Alphabet — Tilde + : "ã" atilde + : "Ã" Atilde + : "ẽ" etilde + : "Ẽ" Etilde + : "ĩ" itilde + : "Ĩ" Itilde + : "ñ" ntilde + : "Ñ" Ntilde + : "õ" otilde + : "Õ" Otilde + : "ũ" utilde + : "Ũ" Utilde + : "ṽ" U1E7D + : "Ṽ" U1E7C + : "ỹ" ytilde + : "Ỹ" Ytilde # Latin Alphabet — Ligatures & Multiglyphs : "æ" ae -- cgit v1.2.3 From f0c07760608258f8de50762bb33d05ef4f268989 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Sat, 8 Mar 2025 20:31:11 +0100 Subject: emacs: Use ‘with-eval-after-load’ MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .config/emacs/modules/mm-editing.el | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.config/emacs/modules/mm-editing.el b/.config/emacs/modules/mm-editing.el index c6c8532..dda5352 100644 --- a/.config/emacs/modules/mm-editing.el +++ b/.config/emacs/modules/mm-editing.el @@ -222,8 +222,8 @@ and *Messages* buffer. This forces that to not happen." helpful-symbol helpful-variable)) (add-to-list 'mc/cmds-to-run-once command)))) - :config - (keymap-unset mc/keymap "" :remove)) + (with-eval-after-load 'multiple-cursors-core + (keymap-unset mc/keymap "" :remove))) ;;; Increment Numbers -- cgit v1.2.3 From 6fb858a311a8ac8e5735b82d9056662c2db934b7 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Sat, 8 Mar 2025 20:32:45 +0100 Subject: xcompose: Fix typo --- .config/X11/xcompose | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.config/X11/xcompose b/.config/X11/xcompose index b66603c..139fb06 100644 --- a/.config/X11/xcompose +++ b/.config/X11/xcompose @@ -22,8 +22,8 @@ # C ^ ⋆ Superscript ‘⋆’ (¹) # C l ⋆ Propositional logic operators (⇒) # -# Ligatures or other glyphs that are compose of multiple characters are -# straight forwards. For example ‘C I J’ produces ‘IJ’. +# Ligatures or other glyphs that are composed of multiple characters +# are straight forwards. For example ‘C I J’ produces ‘IJ’. # # Math symbols typically use programming counterparts if they exist, # for example ‘C ! =’ produces ‘≠’. Other symbols that look similar to -- cgit v1.2.3 From 8ad72488e4911659faed0cc91df717523f6b9699 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Sat, 8 Mar 2025 20:33:06 +0100 Subject: vault: Hmm… MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .local/share/vault/vault.sec | Bin 12772 -> 12810 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/.local/share/vault/vault.sec b/.local/share/vault/vault.sec index e9f4b2f..d23cf22 100644 Binary files a/.local/share/vault/vault.sec and b/.local/share/vault/vault.sec differ -- cgit v1.2.3 From c281f4c03702ce918e8d4eb143e303b00159aaf7 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Sun, 9 Mar 2025 12:20:53 +0100 Subject: xcompose: Remove codepoints --- .config/X11/xcompose | 826 +++++++++++++++++++++++++-------------------------- 1 file changed, 413 insertions(+), 413 deletions(-) diff --git a/.config/X11/xcompose b/.config/X11/xcompose index 139fb06..4346e5a 100644 --- a/.config/X11/xcompose +++ b/.config/X11/xcompose @@ -34,461 +34,461 @@ # # Propositional Logic - : "∧" U2227 # [L]ogical [A]nd - : "⇔" U21D4 # [L]ogical [E]quivalence - : "⇒" U21D2 # [L]ogical [I]mplication - : "¬" U00AC # [L]ogical [N]ot - : "∨" U2228 # [L]ogical [O]r - : "⊕" U2295 # [L]ogical [X]or + : "∧" # [L]ogical [A]nd + : "⇔" # [L]ogical [E]quivalence + : "⇒" # [L]ogical [I]mplication + : "¬" # [L]ogical [N]ot + : "∨" # [L]ogical [O]r + : "⊕" # [L]ogical [X]or # Math - : "⋆" U22C6 - : "≠" U2260 - : "≥" U2265 - : "≤" U2264 - : "÷" division - : "⟮" U27EE - : "⟯" U27EF - : "⋅" U22C5 - : "±" plusminus - : "×" multiply + : "⋆" + : "≠" + : "≥" + : "≤" + : "÷" + : "⟮" + : "⟯" + : "⋅" + : "±" + : "×" # Typographical Symbols - : "»" U00BB - : "«" U00AB - : "←" U2190 - : "→" U2192 - : "—" U2014 - : "–" U2013 - : "℃" U2103 - : "℉" U2109 - : "°" U00B0 + : "»" + : "«" + : "←" + : "→" + : "—" + : "–" + : "℃" + : "℉" + : "°" # Latin Alphabet — Acute - : "á" aacute - : "Á" Aacute - : "ć" U0107 - : "Ć" U0106 - : "é" eacute - : "É" Eacute - : "ǵ" U01F5 - : "Ǵ" U01F4 - : "í" iacute - : "Í" Iacute - : "ḱ" U1E31 - : "Ḱ" U1E30 - : "ĺ" U013A - : "Ĺ" U0139 - : "ḿ" U1E3F - : "Ḿ" U1E3E - : "ń" U0144 - : "Ń" U0143 - : "ó" oacute - : "Ó" Oacute -

: "ṕ" U1E55 -

: "Ṕ" U1E54 - : "ŕ" U0155 - : "Ŕ" U0154 - : "ś" U015B - : "Ś" U015A - : "ú" uacute - : "Ú" Uacute - : "ẃ" U1E83 - : "Ẃ" U1E82 - : "ý" yacute - : "Ý" Yacute - : "ź" U017A - : "Ź" U0179 + : "á" + : "Á" + : "ć" + : "Ć" + : "é" + : "É" + : "ǵ" + : "Ǵ" + : "í" + : "Í" + : "ḱ" + : "Ḱ" + : "ĺ" + : "Ĺ" + : "ḿ" + : "Ḿ" + : "ń" + : "Ń" + : "ó" + : "Ó" +

: "ṕ" +

: "Ṕ" + : "ŕ" + : "Ŕ" + : "ś" + : "Ś" + : "ú" + : "Ú" + : "ẃ" + : "Ẃ" + : "ý" + : "Ý" + : "ź" + : "Ź" # Latin Alphabet — Breve - : "ă" abreve - : "Ă" Abreve - : "ĕ" U0115 - : "Ĕ" U0114 - : "ğ" gbreve - : "Ğ" Gbreve - : "ĭ" ibreve - : "Ĭ" Ibreve - : "ŏ" U014F - : "Ŏ" U014E - : "ŭ" ubreve - : "Ŭ" Ubreve + : "ă" + : "Ă" + : "ĕ" + : "Ĕ" + : "ğ" + : "Ğ" + : "ĭ" + : "Ĭ" + : "ŏ" + : "Ŏ" + : "ŭ" + : "Ŭ" # Latin Alphabet — Caron - : "ǎ" U01CE - : "Ǎ" U01CD - : "č" ccaron - : "Č" Ccaron - : "ď" dcaron - : "Ď" Dcaron - : "ě" ecaron - : "Ě" Ecaron - : "ǧ" gcaron - : "Ǧ" Gcaron - : "ȟ" U021F - : "Ȟ" U021E - : "ǐ" U01D0 - : "Ǐ" U01CF - : "ǰ" U01F0 # NOTE: No uppercase in Unicode - : "ǩ" U01E9 - : "Ǩ" U01E8 - : "ľ" lcaron - : "Ľ" Lcaron - : "ň" ncaron - : "Ň" Ncaron - : "ǒ" ocaron - : "Ǒ" Ocaron - : "ř" rcaron - : "Ř" Rcaron - : "š" scaron - : "Š" Scaron - : "ť" tcaron - : "Ť" Tcaron - : "ǔ" U01D4 - : "Ǔ" U01D3 - : "ž" zcaron - : "Ž" Zcaron + : "ǎ" + : "Ǎ" + : "č" + : "Č" + : "ď" + : "Ď" + : "ě" + : "Ě" + : "ǧ" + : "Ǧ" + : "ȟ" + : "Ȟ" + : "ǐ" + : "Ǐ" + : "ǰ" # NOTE: No uppercase in Unicode + : "ǩ" + : "Ǩ" + : "ľ" + : "Ľ" + : "ň" + : "Ň" + : "ǒ" + : "Ǒ" + : "ř" + : "Ř" + : "š" + : "Š" + : "ť" + : "Ť" + : "ǔ" + : "Ǔ" + : "ž" + : "Ž" # Latin Alphabet — Cedilla - : "ç" ccedilla - : "Ç" ccedilla - : "ḑ" U1E11 - : "Ḑ" U1E10 - : "ȩ" U0229 - : "Ȩ" U0228 - : "ģ" U0121 - : "Ģ" U0122 - : "ḩ" U1E29 - : "Ḩ" U1E28 - : "ķ" U0137 - : "Ķ" U0136 - : "ļ" U013C - : "Ļ" U012C - : "ņ" U0146 - : "Ņ" U0145 - : "ŗ" U0157 - : "Ŗ" U0156 - : "ş" U015F - : "Ş" U015E - : "ţ" U0163 - : "Ţ" U0162 + : "ç" + : "Ç" + : "ḑ" + : "Ḑ" + : "ȩ" + : "Ȩ" + : "ģ" + : "Ģ" + : "ḩ" + : "Ḩ" + : "ķ" + : "Ķ" + : "ļ" + : "Ļ" + : "ņ" + : "Ņ" + : "ŗ" + : "Ŗ" + : "ş" + : "Ş" + : "ţ" + : "Ţ" # Latin Alphabet - Circumflex - : "â" acircumflex - : "Â" Acircumflex - : "ĉ" U0109 - : "Ĉ" U0108 - : "ê" ecircumflex - : "Ê" Ecircumflex - : "ĝ" U011D - : "Ĝ" U011C - : "ĥ" U0125 - : "Ĥ" U0124 - : "î" icircumflex - : "Î" Icircumflex - : "ĵ" U0135 - : "Ĵ" U0134 - : "ô" ocircumflex - : "Ô" Ocircumflex - : "ŝ" U015D - : "Ŝ" U015C - : "û" ucircumflex - : "Û" Ucircumflex - : "ŵ" U0175 - : "Ŵ" U0174 - : "ŷ" U0177 - : "Ŷ" U0176 - : "ẑ" U1E91 - : "Ẑ" U1E90 + : "â" + : "Â" + : "ĉ" + : "Ĉ" + : "ê" + : "Ê" + : "ĝ" + : "Ĝ" + : "ĥ" + : "Ĥ" + : "î" + : "Î" + : "ĵ" + : "Ĵ" + : "ô" + : "Ô" + : "ŝ" + : "Ŝ" + : "û" + : "Û" + : "ŵ" + : "Ŵ" + : "ŷ" + : "Ŷ" + : "ẑ" + : "Ẑ" # Latin Alphabet — Dot - : "ȧ" U0227 - : "Ȧ" U0226 - : "ḃ" babovedot - : "Ḃ" Babovedot - : "ċ" cabovedot - : "Ċ" Cabovedot - : "ḋ" dabovedot - : "Ḋ" Dabovedot - : "ė" eabovedot - : "Ė" Eabovedot - : "ḟ" fabovedot - : "Ḟ" Fabovedot - : "ġ" gabovedot - : "Ġ" Gabovedot - : "ḣ" habovedot - : "Ḣ" Habovedot - : "İ" Iabovedot - : "ṁ" mabovedot - : "Ṁ" Mabovedot - : "ṅ" U1E45 - : "Ṅ" U1E44 - : "ȯ" U022F - : "Ȯ" U022E -

: "ṗ" pabovedot -

: "Ṗ" Pabovedot - : "ṙ" U1E59 - : "Ṙ" U1E58 - : "ṡ" sabovedot - : "Ṡ" Sabovedot - : "ṫ" tabovedot - : "Ṫ" Tabovedot - : "ẇ" U1E87 - : "Ẇ" U1E86 - : "ẋ" U1E8B - : "Ẋ" U1E8A - : "ẏ" U1E8F - : "Ẏ" U1E8E - : "ż" zabovedot - : "Ż" Zabovedot + : "ȧ" + : "Ȧ" + : "ḃ" + : "Ḃ" + : "ċ" + : "Ċ" + : "ḋ" + : "Ḋ" + : "ė" + : "Ė" + : "ḟ" + : "Ḟ" + : "ġ" + : "Ġ" + : "ḣ" + : "Ḣ" + : "İ" + : "ṁ" + : "Ṁ" + : "ṅ" + : "Ṅ" + : "ȯ" + : "Ȯ" +

: "ṗ" +

: "Ṗ" + : "ṙ" + : "Ṙ" + : "ṡ" + : "Ṡ" + : "ṫ" + : "Ṫ" + : "ẇ" + : "Ẇ" + : "ẋ" + : "Ẋ" + : "ẏ" + : "Ẏ" + : "ż" + : "Ż" # Latin Alphabet — Diaeresis - : "ä" adiaeresis - : "Ä" Adiaeresis - : "ë" adiaeresis - : "Ë" Ediaeresis - : "ḧ" U1E27 - : "Ḧ" U1E26 - : "ï" adiaeresis - : "Ï" Idiaeresis - : "ö" adiaeresis - : "Ö" Odiaeresis - : "ẗ" U1E97 # NOTE: No uppercase in Unicode - : "ü" adiaeresis - : "Ü" Udiaeresis - : "ẅ" U1E85 - : "Ẅ" U1E84 - : "ẍ" U1E8D - : "Ẍ" U1E8C - : "ÿ" ydiaeresis - : "Ÿ" U0178 + : "ä" + : "Ä" + : "ë" + : "Ë" + : "ḧ" + : "Ḧ" + : "ï" + : "Ï" + : "ö" + : "Ö" + : "ẗ" # NOTE: No uppercase in Unicode + : "ü" + : "Ü" + : "ẅ" + : "Ẅ" + : "ẍ" + : "Ẍ" + : "ÿ" + : "Ÿ" # Latin Alphabet — Double-Acute - : "ő" odoubleacute - : "Ő" Odoubleacute - : "ű" udoubleacute - : "Ű" Udoubleacute + : "ő" + : "Ő" + : "ű" + : "Ű" # Latin Alphabet — Grave - : "à" agrave - : "À" Agrave - : "è" egrave - : "È" Egrave - : "ì" igrave - : "Ì" Igrave - : "ǹ" U01F9 - : "Ǹ" U01F8 - : "ò" ograve - : "Ò" Ograve - : "ù" ugrave - : "Ù" Ugrave - : "ẁ" wgrave - : "Ẁ" Wgrave - : "ỳ" ygrave - : "Ỳ" Ygrave + : "à" + : "À" + : "è" + : "È" + : "ì" + : "Ì" + : "ǹ" + : "Ǹ" + : "ò" + : "Ò" + : "ù" + : "Ù" + : "ẁ" + : "Ẁ" + : "ỳ" + : "Ỳ" # Latin Alphabet — Macron - : "ā" amacron - : "Ā" Amacron - : "ē" emacron - : "Ē" Emacron - : "ḡ" U1E21 - : "Ḡ" U1E20 - : "ī" imacron - : "Ī" Imacron - : "ō" omacron - : "Ō" Omacron - : "ū" umacron - : "Ū" Umacron - : "ȳ" U0233 - : "Ȳ" U0232 + : "ā" + : "Ā" + : "ē" + : "Ē" + : "ḡ" + : "Ḡ" + : "ī" + : "Ī" + : "ō" + : "Ō" + : "ū" + : "Ū" + : "ȳ" + : "Ȳ" # Latin Alphabet — Ogonek - : "ą" aogonek - : "Ą" Aogonek - : "ę" eogonek - : "Ę" Eogonek - : "į" iogonek - : "Į" Iogonek - : "ǫ" U01EB - : "Ǫ" U01EA - : "ų" uogonek - : "Ų" Uogonek + : "ą" + : "Ą" + : "ę" + : "Ę" + : "į" + : "Į" + : "ǫ" + : "Ǫ" + : "ų" + : "Ų" # Latin Alphabet — Ring - : "å" aring - : "Å" Aring - : "ů" U016F - : "Ů" U016E - : "ẘ" U1E98 # NOTE: No uppercase in Unicode - : "ẙ" U1E99 # NOTE: No uppercase in Unicode + : "å" + : "Å" + : "ů" + : "Ů" + : "ẘ" # NOTE: No uppercase in Unicode + : "ẙ" # NOTE: No uppercase in Unicode # Latin Alphabet — Slash & Strikethrough # NOTE: Eth and D-Stroke conflict, but ð is more curvy than đ, so use # slash for the former and minus for the latter. - : "đ" dstroke - : "Đ" Dstroke - : "ð" eth - : "Ð" ETH - : "ħ" U0126 - : "Ħ" U0126 - : "ł" U0142 - : "Ł" U0141 - : "ø" oslash - : "Ø" Oslash + : "đ" + : "Đ" + : "ð" + : "Ð" + : "ħ" + : "Ħ" + : "ł" + : "Ł" + : "ø" + : "Ø" # Latin Alphabet — Tilde - : "ã" atilde - : "Ã" Atilde - : "ẽ" etilde - : "Ẽ" Etilde - : "ĩ" itilde - : "Ĩ" Itilde - : "ñ" ntilde - : "Ñ" Ntilde - : "õ" otilde - : "Õ" Otilde - : "ũ" utilde - : "Ũ" Utilde - : "ṽ" U1E7D - : "Ṽ" U1E7C - : "ỹ" ytilde - : "Ỹ" Ytilde + : "ã" + : "Ã" + : "ẽ" + : "Ẽ" + : "ĩ" + : "Ĩ" + : "ñ" + : "Ñ" + : "õ" + : "Õ" + : "ũ" + : "Ũ" + : "ṽ" + : "Ṽ" + : "ỹ" + : "Ỹ" # Latin Alphabet — Ligatures & Multiglyphs - : "æ" ae - : "Æ" AE - : "dž" U01C6 - : "Dž" U01C5 - : "DŽ" U01C4 - : "¡" exclamdown - : "‽" U203D - : "ff" UFB00 - : "ffi" UFB03 - : "ffl" UFB04 - : "fi" UFB01 - : "fl" UFB02 - : "ij" U0133 - : "IJ" U0132 - : "lj" U01C9 - : "Lj" U01C8 - : "LJ" U01C7 - : "nj" U01CC - : "Nj" U01CB - : "NJ" U01CA - : "№" numerosign - : "œ" oe - : "Œ" OE - : "⸘" U2E18 - : "¿" questiondown - : "ſ" U017F # [s]-[l]ong - : "st" UFB06 + : "æ" + : "Æ" + : "dž" + : "Dž" + : "DŽ" + : "¡" + : "‽" + : "ff" + : "ffi" + : "ffl" + : "fi" + : "fl" + : "ij" + : "IJ" + : "lj" + : "Lj" + : "LJ" + : "nj" + : "Nj" + : "NJ" + : "№" + : "œ" + : "Œ" + : "⸘" + : "¿" + : "ſ" # [s]-[l]ong + : "st" # Latin Alphabet — Extended - : "ß" ssharp # [s]harp [s] - : "ẞ" U1E9E # [S]HARP [S] - : "þ" thorn # [t][h]orn - : "Þ" THORN # [T][H]ORN + : "ß" # [s]harp [s] + : "ẞ" # [S]HARP [S] + : "þ" # [t][h]orn + : "Þ" # [T][H]ORN # Greek Alphabet - : "α" U03B1 - : "Α" U0391 - : "β" U03B2 - : "Β" U0392 - : "δ" U03B4 - : "Δ" U0394 - : "ε" U03B5 - : "Ε" U0395 - : "φ" U03C6 - : "Φ" U03A6 - : "γ" U03B3 - : "Γ" U0393 - : "η" U03B7 - : "Η" U0397 - : "ι" U03B9 - : "Ι" U0399 - : "θ" U03B8 - : "Θ" U0398 - : "κ" U03BA - : "Κ" U039A - : "λ" U03BB - : "Λ" U039B - : "μ" U03BC - : "Μ" U039C - : "ν" U03BD - : "Ν" U039D - : "ο" U03BF - : "Ο" U039F -

: "π" U03C0 -

: "Π" U03A0 - : "χ" U03C7 - : "Χ" U03A7 - : "ρ" U03C1 - : "Ρ" U03A1 - : "ς" U03C2 # NOTE: Special case for final sigma - : "σ" U03C3 - : "Σ" U03A3 - : "τ" U03C4 - : "Τ" U03A4 - : "υ" U03C5 - : "Υ" U03A5 - : "ω" U03C9 - : "Ω" U03A9 - : "ξ" U03BE - : "Ξ" U039E - : "ψ" U03C8 - : "Ψ" U03A8 - : "ζ" U03B6 - : "Ζ" U0396 + : "α" + : "Α" + : "β" + : "Β" + : "δ" + : "Δ" + : "ε" + : "Ε" + : "φ" + : "Φ" + : "γ" + : "Γ" + : "η" + : "Η" + : "ι" + : "Ι" + : "θ" + : "Θ" + : "κ" + : "Κ" + : "λ" + : "Λ" + : "μ" + : "Μ" + : "ν" + : "Ν" + : "ο" + : "Ο" +

: "π" +

: "Π" + : "χ" + : "Χ" + : "ρ" + : "Ρ" + : "ς" # NOTE: Special case for final sigma + : "σ" + : "Σ" + : "τ" + : "Τ" + : "υ" + : "Υ" + : "ω" + : "Ω" + : "ξ" + : "Ξ" + : "ψ" + : "Ψ" + : "ζ" + : "Ζ" # Superscript - <0> : "⁰" U2070 - <1> : "¹" U00B9 - <2> : "²" U00B2 - <3> : "³" U00B3 - <4> : "⁴" U2074 - <5> : "⁵" U2075 - <6> : "⁶" U2076 - <7> : "⁷" U2077 - <8> : "⁸" U2078 - <9> : "⁹" U2079 - : "ⁱ" U2071 - : "⁻" U207B - : "ⁿ" U207F - : "⁽" U207D - : "⁾" U207E - : "⁺" U207A + <0> : "⁰" + <1> : "¹" + <2> : "²" + <3> : "³" + <4> : "⁴" + <5> : "⁵" + <6> : "⁶" + <7> : "⁷" + <8> : "⁸" + <9> : "⁹" + : "ⁱ" + : "⁻" + : "ⁿ" + : "⁽" + : "⁾" + : "⁺" # Subscript - <0> : "₀" U2080 - <1> : "₁" U2081 - <2> : "₂" U2082 - <3> : "₃" U2083 - <4> : "₄" U2084 - <5> : "₅" U2085 - <6> : "₆" U2086 - <7> : "₇" U2087 - <8> : "₈" U2088 - <9> : "₉" U2089 - : "ₐ" U2090 - : "ₑ" U2090 - : "ₕ" U2095 - : "ᵢ" U1D62 - : "ⱼ" U2C7C - : "ₖ" U2089 - : "ₗ" U2097 - : "₋" U2089 - : "ₘ" U2098 - : "ₙ" U2099 - : "ₒ" U2092 - : "₍" U2089 - : "₎" U2089 - : "₊" U2089 -

: "ₚ" U209A - : "ᵣ" U1D63 - : "ₛ" U209B - : "ₜ" U209C - : "ᵤ" U1D64 - : "ᵥ" U1D65 - : "ₓ" U2093 \ No newline at end of file + <0> : "₀" + <1> : "₁" + <2> : "₂" + <3> : "₃" + <4> : "₄" + <5> : "₅" + <6> : "₆" + <7> : "₇" + <8> : "₈" + <9> : "₉" + : "ₐ" + : "ₑ" + : "ₕ" + : "ᵢ" + : "ⱼ" + : "ₖ" + : "ₗ" + : "₋" + : "ₘ" + : "ₙ" + : "ₒ" + : "₍" + : "₎" + : "₊" +

: "ₚ" + : "ᵣ" + : "ₛ" + : "ₜ" + : "ᵤ" + : "ᵥ" + : "ₓ" \ No newline at end of file -- cgit v1.2.3 From 14801fd551ec5010998480f81eee6af3b64f7ca6 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Sun, 9 Mar 2025 12:21:03 +0100 Subject: xkb: Map ‘°’ under ‘0’ MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .xkb/symbols/mango | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.xkb/symbols/mango b/.xkb/symbols/mango index 76928f3..3fac7b2 100644 --- a/.xkb/symbols/mango +++ b/.xkb/symbols/mango @@ -15,7 +15,7 @@ xkb_symbols "basic" { key { [ ampersand, 7, logicaland, 7 ] }; key { [ asterisk, 8, U22C5, 8 ] }; // ⋅ key { [ parenleft, 9, parenleft, 9 ] }; - key { [ parenright, 0, parenright, 0 ] }; + key { [ parenright, 0, U00B0, 0 ] }; // ° key { [ minus, underscore, endash, emdash ] }; key { [ e, E, eacute, Eacute ] }; @@ -48,4 +48,4 @@ xkb_symbols "german" { key { [ NoSymbol, NoSymbol, singlelowquotemark, doublelowquotemark ] }; key { [ NoSymbol, NoSymbol, leftsinglequotemark, leftdoublequotemark ] }; -}; +}; \ No newline at end of file -- cgit v1.2.3 From b931361385c24dedc44a2e2e6597b250f6820e0b Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Wed, 14 May 2025 21:45:11 +0200 Subject: bash: List only directories --- .bashrc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.bashrc b/.bashrc index 16250f0..6d99bfb 100644 --- a/.bashrc +++ b/.bashrc @@ -8,7 +8,7 @@ function __dir_search { shift 2 local dir=$( - find "$base" "$@" -printf '%P\n' \ + find "$base" "$@" -type d -printf '%P\n' \ | sed 1i. \ | sort -r \ | fzf -q "$qry" -- cgit v1.2.3 From 49c88dc0dcb81898e609f4ec51388311cb2b8c71 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Wed, 14 May 2025 21:45:24 +0200 Subject: emacs: Add SQL as a modeline abbrev --- .config/emacs/modules/mm-modeline.el | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.config/emacs/modules/mm-modeline.el b/.config/emacs/modules/mm-modeline.el index eae4dce..dd42f6f 100644 --- a/.config/emacs/modules/mm-modeline.el +++ b/.config/emacs/modules/mm-modeline.el @@ -38,7 +38,8 @@ (propertize " (modified)" 'face 'mm-modeline-buffer-modified-face))) (defconst mm-modeline-mode-acronyms - '("css" "csv" "gsp" "html" "json" "mhtml" "rfc" "scss" "toml" "tsv" "url") + '("css" "csv" "gsp" "html" "json" "mhtml" "rfc" "scss" "sql" "toml" "tsv" + "url") "List of acronyms in major mode names that should be capitalized.") (defconst mm-modeline-remap-alist -- cgit v1.2.3 From 12033bafc808c061ddae44241698dbfb9c5b1f01 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Wed, 14 May 2025 21:45:39 +0200 Subject: Hyperland: Add the Mango (Swedish) layout --- .config/hypr/hyprland.conf.in | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.config/hypr/hyprland.conf.in b/.config/hypr/hyprland.conf.in index b5c08df..6d49e45 100644 --- a/.config/hypr/hyprland.conf.in +++ b/.config/hypr/hyprland.conf.in @@ -18,8 +18,8 @@ ecosystem { input { accel_profile = "adaptive" follow_mouse = 1 - kb_layout = mango, mango, us - kb_variant = basic, german, basic + kb_layout = mango, mango, mango, us + kb_variant = basic, swedish, german, basic kb_options = lv3:switch,compose:ralt repeat_delay = 360 # 180 repeat_rate = 35 -- cgit v1.2.3 From 6c0d3b1053827513222e8bb7d17d7f319c4ec478 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Wed, 14 May 2025 21:45:56 +0200 Subject: xkb: Create the Mango (Swedish) layout --- .xkb/symbols/mango | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/.xkb/symbols/mango b/.xkb/symbols/mango index 3fac7b2..642dc7e 100644 --- a/.xkb/symbols/mango +++ b/.xkb/symbols/mango @@ -48,4 +48,14 @@ xkb_symbols "german" { key { [ NoSymbol, NoSymbol, singlelowquotemark, doublelowquotemark ] }; key { [ NoSymbol, NoSymbol, leftsinglequotemark, leftdoublequotemark ] }; -}; \ No newline at end of file +}; + +partial +xkb_symbols "swedish" { + include "mango(basic)" + name[Group1] = "Mango (Swedish)"; + + key { [ aring, Aring, bracketleft, braceleft ] }; + key { [ odiaeresis, Odiaeresis, semicolon, colon ] }; + key { [ adiaeresis, Adiaeresis, apostrophe, quotedbl ] }; +}; -- cgit v1.2.3 From fc56a48d3e24d434d858035e800e87e495f98548 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Wed, 14 May 2025 21:46:13 +0200 Subject: vault: Hmm… MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .local/share/vault/vault.sec | Bin 12810 -> 12796 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/.local/share/vault/vault.sec b/.local/share/vault/vault.sec index d23cf22..9ce16ae 100644 Binary files a/.local/share/vault/vault.sec and b/.local/share/vault/vault.sec differ -- cgit v1.2.3 From df54f5514203308432335d07fd7ca338f5846f45 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Thu, 29 May 2025 23:37:33 +0200 Subject: bash: Clean up ~ a bit more --- .bashrc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.bashrc b/.bashrc index 6d99bfb..cfdc40b 100644 --- a/.bashrc +++ b/.bashrc @@ -68,9 +68,10 @@ export CARGO_HOME="$XDG_DATA_HOME/cargo" export GNUPGHOME="$XDG_DATA_HOME/gnupg" export GOPATH="$XDG_DATA_HOME/go" export GOROOT="/usr/lib/go" +export GRADLE_USER_HOME="$XDG_DATA_HOME/gradle" export HISTFILE="$XDG_STATE_HOME/bash/history" export INPUTRC="$XDG_CONFIG_HOME/readline/inputrc" -export _JAVA_OPTIONS="-Djava.util.prefs.userRoot=\"$XDG_CONFIG_HOME/java\"" +export _JAVA_OPTIONS="-Djava.util.prefs.userRoot=\"$XDG_CONFIG_HOME/java\" -Djavafx.cachedir=\"$XDG_CACHE_HOME/openjfx\"" export MAILDIR="$HOME/mail" export NODE_REPL_HISTORY="$XDG_DATA_HOME/node_repl_history" export NPM_CONFIG_USERCONFIG="$XDG_CONFIG_HOME/npm/npmrc" @@ -99,6 +100,7 @@ export PRINTER='HP_OfficeJet_8010' export QT_IM_MODULE=xim export VAULT_2FA='2 Factor Authentication' +alias irssi='irssi --config="$XDG_CONFIG_HOME/irssi/config" --home="$XDG_DATA_HOME/irssi"' alias ..='cd ..' alias d='git --git-dir="$REPODIR/Mango0x45/dotfiles.git" --work-tree="$HOME"' alias g=git -- cgit v1.2.3 From a83a65fe567d92911223ed6eb4ea6411573d9f32 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Thu, 29 May 2025 23:37:51 +0200 Subject: emacs: Add mm-buffer-menu.el --- .config/emacs/init.el | 1 + .config/emacs/modules/mm-buffer-menu.el | 15 +++++++++++++++ 2 files changed, 16 insertions(+) create mode 100644 .config/emacs/modules/mm-buffer-menu.el diff --git a/.config/emacs/init.el b/.config/emacs/init.el index 9bb921c..a8620d6 100644 --- a/.config/emacs/init.el +++ b/.config/emacs/init.el @@ -306,6 +306,7 @@ the buffer without saving it." ;;; Load Modules (require 'mm-abbrev) ; Text Expansion +(require 'mm-buffer-menu) ; Buffer Menu (require 'mm-calc) ; Emacs Calc (require 'mm-completion) ; Completions (require 'mm-dired) ; Dired diff --git a/.config/emacs/modules/mm-buffer-menu.el b/.config/emacs/modules/mm-buffer-menu.el new file mode 100644 index 0000000..7b725c6 --- /dev/null +++ b/.config/emacs/modules/mm-buffer-menu.el @@ -0,0 +1,15 @@ +;;; mm-buffer-menu.el --- Buffer Menu configuration -*- lexical-binding: t; -*- + +(defun mm-Buffer-menu-delete-all () + "Mark all buffers for deletion." + (interactive nil Buffer-menu-mode) + (save-excursion + (goto-char (point-min)) + (while (not (eobp)) + (Buffer-menu-delete)))) + +(use-package buff-menu + :bind ( :map Buffer-menu-mode-map + ("D" . mm-Buffer-menu-delete-all))) + +(provide 'mm-buffer-menu) \ No newline at end of file -- cgit v1.2.3 From 4fb5d4159586e84b8c062d1734d2041a8175b8b5 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Thu, 29 May 2025 23:38:12 +0200 Subject: emacs: Configure comments in mhtml mode --- .config/emacs/modules/mm-editing.el | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/.config/emacs/modules/mm-editing.el b/.config/emacs/modules/mm-editing.el index dda5352..0506b65 100644 --- a/.config/emacs/modules/mm-editing.el +++ b/.config/emacs/modules/mm-editing.el @@ -125,18 +125,22 @@ those should be listed in `mm-editing-indentation-settings'." ;;; Code Commenting -(defun mm-c-comment-no-leading-stars () +(defun mm-c-comment-no-continue () (setq-local comment-continue " ")) +(defun mm-mhtml-comment-no-continue () + (setq-local comment-continue " ")) + (use-package newcomment :custom (comment-style 'multi-line) :config (dolist (mode '(c-mode c++-mode)) - (add-hook (mm-mode-to-hook mode) #'mm-c-comment-no-leading-stars) + (add-hook (mm-mode-to-hook mode) #'mm-c-comment-no-continue) (when-let ((ts-mode (mm-mode-to-ts-mode mode)) ((fboundp ts-mode))) - (add-hook (mm-mode-to-hook ts-mode) #'mm-c-comment-no-leading-stars)))) + (add-hook (mm-mode-to-hook ts-mode) #'mm-c-comment-no-leading-stars))) + (add-hook 'mhtml-mode #'mm-mhtml-comment-no-continue)) ;;; Multiple Cursors -- cgit v1.2.3 From 5c48d11da28dbedcb0c72f44cb284037f24dcd4f Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Thu, 29 May 2025 23:38:34 +0200 Subject: Hyprland: Add configuration for Qalculate --- .config/hypr/hyprland.conf.in | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.config/hypr/hyprland.conf.in b/.config/hypr/hyprland.conf.in index 6d49e45..7c7ee7f 100644 --- a/.config/hypr/hyprland.conf.in +++ b/.config/hypr/hyprland.conf.in @@ -92,7 +92,7 @@ bind = $modkey, Q, killactive bind = $modkey SHIFT, F, togglefloating # Global programs -__bind(C, emacsclient -que '(popup-command-full-calc)') +__bind(C, qalculate-gtk) __bind(E, emacsclient -ca emacs) __bind(M, foot aerc) __bind(W, firefox) @@ -191,3 +191,8 @@ bindm = $modkey, mouse:273, resizewindow windowrulev2 = float, class:^(org\.pwmt\.zathura)$ windowrulev2 = size 50% 90%, class:^(org\.pwmt\.zathura)$ windowrulev2 = center, class:^(org\.pwmt\.zathura)$ + +# Open calculator in a floating window +windowrulev2 = float, class:^(qalculate-gtk)$ +windowrulev2 = size 50% 50%, class:^(qalculate-gtk)$ +windowrulev2 = center, class:^(qalculate-gtk)$ -- cgit v1.2.3 From b88deb83ff2f2da6d9d68f7e0e39ab25b087fd4d Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Thu, 29 May 2025 23:38:46 +0200 Subject: Hyprland: Configure media keys --- .config/hypr/hyprland.conf.in | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.config/hypr/hyprland.conf.in b/.config/hypr/hyprland.conf.in index 7c7ee7f..cfd3dc5 100644 --- a/.config/hypr/hyprland.conf.in +++ b/.config/hypr/hyprland.conf.in @@ -175,6 +175,10 @@ __bind(SHIFT, xf86monbrightnessup, lux -S 50) __binde(, xf86monbrightnessdown, lux -D 5) __bind(SHIFT, xf86monbrightnessdown, lux -s 0) +__binde(, xf86audioplay, playerctl play-pause) +__binde(, xf86audionext, playerctl next) +__binde(, xf86audioprev, playerctl previous) + # Settings key on Framework laptop __binde(, xf86audiomedia, foot sh -c 'cd ~/.config/hypr && nvim hyprland.conf.in') -- cgit v1.2.3 From 1fc2dc77f57670c1c786aaadc6a15c880aceb886 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Thu, 29 May 2025 23:39:03 +0200 Subject: foot: Comment out some bindings --- .config/foot/foot.ini | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/.config/foot/foot.ini b/.config/foot/foot.ini index a5db8b1..856afc9 100644 --- a/.config/foot/foot.ini +++ b/.config/foot/foot.ini @@ -12,21 +12,21 @@ foreground=C5C8C6 background=2B303B [key-bindings] -scrollback-up-line=Control+k -scrollback-down-line=Control+j -scrollback-up-half-page=Control+Shift+k -scrollback-down-half-page=Control+Shift+j -scrollback-end=Control+g +# scrollback-up-line=Control+k +# scrollback-down-line=Control+j +# scrollback-up-half-page=Control+Shift+k +# scrollback-down-half-page=Control+Shift+j +# scrollback-end=Control+g search-start=Control+slash -[search-bindings] -find-prev=Control+p -find-next=Control+n -cursor-left=Control+h -cursor-right=Control+l -cursor-left-word=Control+Shift+h -cursor-right-word=Control+Shift+l -delete-next-word=Control+Delete Control+Shift+Delete +# [search-bindings] +# find-prev=Control+p +# find-next=Control+n +# cursor-left=Control+h +# cursor-right=Control+l +# cursor-left-word=Control+Shift+h +# cursor-right-word=Control+Shift+l +# delete-next-word=Control+Delete Control+Shift+Delete [tweak] overflowing-glyphs=no -- cgit v1.2.3 From 03823f5b464b8c416e2cd625710f34e333daa682 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Wed, 4 Jun 2025 18:04:17 +0200 Subject: emacs: Add xcompose-mode --- .config/emacs/modules/mm-editing.el | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.config/emacs/modules/mm-editing.el b/.config/emacs/modules/mm-editing.el index 0506b65..d1cdcc0 100644 --- a/.config/emacs/modules/mm-editing.el +++ b/.config/emacs/modules/mm-editing.el @@ -334,6 +334,13 @@ is as described by `emmet-expand-line'." (csv-align-style 'auto) (csv-align-padding 2)) +(use-package xcompose-mode + :vc ( :url "https://git.thomasvoss.com/xcompose-mode" + :branch "master" + :rev :newest + :vc-backend Git) + :ensure t) + ;;; Mode-Specific Configurations -- cgit v1.2.3 From bf769d06a7affca59c519a8aaf0e88574132fb73 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Wed, 4 Jun 2025 18:04:28 +0200 Subject: Hyprland: Bind M-z to Woomer --- .config/hypr/hyprland.conf.in | 1 + 1 file changed, 1 insertion(+) diff --git a/.config/hypr/hyprland.conf.in b/.config/hypr/hyprland.conf.in index cfd3dc5..1b0c232 100644 --- a/.config/hypr/hyprland.conf.in +++ b/.config/hypr/hyprland.conf.in @@ -96,6 +96,7 @@ __bind(C, qalculate-gtk) __bind(E, emacsclient -ca emacs) __bind(M, foot aerc) __bind(W, firefox) +__bind(Z, woomer) __bind(return, foot) __bind(space, fuzzel -I --log-level=warning --show-actions) __bind( , print, scst) -- cgit v1.2.3 From 44f18857dd882852972ce7e0ca1cca1e26095778 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Wed, 4 Jun 2025 18:05:13 +0200 Subject: xkb: Map Compose-t/T to þ/Þ MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .xkb/symbols/mango | 1 + 1 file changed, 1 insertion(+) diff --git a/.xkb/symbols/mango b/.xkb/symbols/mango index 642dc7e..f2ab38f 100644 --- a/.xkb/symbols/mango +++ b/.xkb/symbols/mango @@ -19,6 +19,7 @@ xkb_symbols "basic" { key { [ minus, underscore, endash, emdash ] }; key { [ e, E, eacute, Eacute ] }; + key { [ t, T, thorn, THORN ] }; key { [ u, U, udiaeresis, Udiaeresis ] }; // key { [ i, I, U0133, U0132 ] }; // ij and IJ key { [ i, I, idiaeresis, Idiaeresis ] }; -- cgit v1.2.3 From 34efd3e81d22ff80938c7728969925225f7389d0 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Wed, 4 Jun 2025 18:05:43 +0200 Subject: vault: Hmm… MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .local/share/vault/vault.sec | Bin 12796 -> 12808 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/.local/share/vault/vault.sec b/.local/share/vault/vault.sec index 9ce16ae..b386ac5 100644 Binary files a/.local/share/vault/vault.sec and b/.local/share/vault/vault.sec differ -- cgit v1.2.3 From 401756f444a3becbcb88fe6f538ea62c79866b1d Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Wed, 4 Jun 2025 18:07:00 +0200 Subject: emacs: Add support for *.mom --- .config/emacs/modules/mm-editing.el | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.config/emacs/modules/mm-editing.el b/.config/emacs/modules/mm-editing.el index d1cdcc0..50be4ee 100644 --- a/.config/emacs/modules/mm-editing.el +++ b/.config/emacs/modules/mm-editing.el @@ -356,6 +356,7 @@ is as described by `emmet-expand-line'." ;;; Add Missing Extensions -(add-to-list 'auto-mode-alist '("\\.tmac\\'" . nroff-mode)) +(dolist (pattern '("\\.tmac\\'" "\\.mom\\'")) + (add-to-list 'auto-mode-alist (cons pattern 'nroff-mode))) (provide 'mm-editing) \ No newline at end of file -- cgit v1.2.3 From 838608bbd285d47a4c8ca8aaf5e2b3778fe70122 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Wed, 4 Jun 2025 18:10:56 +0200 Subject: emacs: Simplify things --- .config/emacs/modules/mm-projects.el | 27 +++++++++++---------------- 1 file changed, 11 insertions(+), 16 deletions(-) diff --git a/.config/emacs/modules/mm-projects.el b/.config/emacs/modules/mm-projects.el index be80789..00342f5 100644 --- a/.config/emacs/modules/mm-projects.el +++ b/.config/emacs/modules/mm-projects.el @@ -21,22 +21,17 @@ This is intended to be called interactively via :config (unless mm-darwin-p (if-let ((repo-directory (getenv "REPODIR"))) - (with-eval-after-load 'async - (async-start - (lambda () - (require 'project) - (let* ((list-dir - (lambda (path) - (directory-files path :full "\\`[^.]"))) - (directories - (cl-loop for author in (funcall list-dir (getenv "REPODIR")) - append (cl-loop for path in (funcall list-dir author) - collect (list (concat path "/")))))) - (with-temp-buffer - (prin1 directories (current-buffer)) - (write-file project-list-file)))) - (lambda (_proc) - (project--read-project-list)))) + (let* ((list-dir + (lambda (path) + (directory-files path :full "\\`[^.]"))) + (directories + (cl-loop for author in (funcall list-dir (getenv "REPODIR")) + append (cl-loop for path in (funcall list-dir author) + collect (list (concat path "/")))))) + (with-temp-buffer + (prin1 directories (current-buffer)) + (write-file project-list-file)) + (project--read-project-list)) (warn "The REPODIR environment variable is not set.")))) -- cgit v1.2.3 From 72a9b4f9ee903e61871040c60f0b35de20e6cf4a Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Thu, 5 Jun 2025 21:23:28 +0200 Subject: vault: Hmm… MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .local/share/vault/vault.sec | Bin 12808 -> 12914 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/.local/share/vault/vault.sec b/.local/share/vault/vault.sec index b386ac5..5f1a25f 100644 Binary files a/.local/share/vault/vault.sec and b/.local/share/vault/vault.sec differ -- cgit v1.2.3 From 2c0658ec8a69fc1466d2b94535590db1697a5423 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Thu, 5 Jun 2025 21:23:34 +0200 Subject: emacs: Add fix for xcompose-mode --- .config/emacs/modules/mm-modeline.el | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.config/emacs/modules/mm-modeline.el b/.config/emacs/modules/mm-modeline.el index dd42f6f..d1ec6f0 100644 --- a/.config/emacs/modules/mm-modeline.el +++ b/.config/emacs/modules/mm-modeline.el @@ -52,7 +52,8 @@ ("Imake" . "IMake") ("Js" . "JavaScript") ("Ts Mode" . "Tree-Sitter Mode") - ("Wdired" . "WDired")) + ("Wdired" . "WDired") + ("Xcompose" . "XCompose")) "Alist of substrings in major mode names that should be remapped. Some major modes have substrings that would be better displayed in another manner. For example expanding an abbreviation such as ‘Js’ to -- cgit v1.2.3 From eb28738864a4b3dfe4443e897ccdea21c0765dc0 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Thu, 5 Jun 2025 21:23:47 +0200 Subject: Hyprland: Fix typo --- .config/hypr/hyprland.conf.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/hypr/hyprland.conf.in b/.config/hypr/hyprland.conf.in index 1b0c232..dd22153 100644 --- a/.config/hypr/hyprland.conf.in +++ b/.config/hypr/hyprland.conf.in @@ -14,7 +14,7 @@ ecosystem { no_update_news = yes } -# Remember to coppy settings to sddm.hyprland.conf +# Remember to copy settings to sddm.hyprland.conf input { accel_profile = "adaptive" follow_mouse = 1 -- cgit v1.2.3

: "Ṗ" Pabovedot + : "Ṙ" U1E58 + : "ṙ" U1E59 + : "ṡ" sabovedot + : "Ṡ" Sabovedot + : "ṫ" tabovedot + : "Ṫ" Tabovedot + : "Ẇ" U1E86 + : "ẇ" U1E87 + : "Ẋ" U1E8A + : "ẋ" U1E8B + : "Ẏ" U1E8E + : "ẏ" U1E8F + : "ż" zabovedot + : "Ż" Zabovedot # Latin Alphabet — Diaeresis : "ä" adiaeresis -- cgit v1.2.3 From 4e55700c2d1a14ddfb6fa11f51ddc1a483e590d9 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Sat, 8 Mar 2025 20:29:26 +0100 Subject: xcompose: Formatting --- .config/X11/xcompose | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/.config/X11/xcompose b/.config/X11/xcompose index 1466dbd..6a330fe 100644 --- a/.config/X11/xcompose +++ b/.config/X11/xcompose @@ -3,24 +3,24 @@ # ‘C X’ means ‘Compose + X’ # U+22C6 STAR OPERATOR (‘⋆’) represents an arbitrary key # -# C ⋆ ' A letter with an acute (á) -# C ⋆ u A letter with a breve (ă) -# C ⋆ v A letter with a caron (ǎ) -# C ⋆ , A letter with a cedilla (ç) -# C ⋆ ^ A letter with a circumflex (â) -# C ⋆ : A letter with a diaeresis (ä) -# C ⋆ . A letter with a dot (ġ) -# C ⋆ " A letter with a double-acute (ő) -# C ⋆ ` A letter with a grave (à) -# C ⋆ - A letter with a macron (ā) -# C ⋆ ; A letter with an ogonek (ą) -# C ⋆ o A letter with a ring (å) +# C ⋆ ' A letter with an acute (á) +# C ⋆ u A letter with a breve (ă) +# C ⋆ v A letter with a caron (ǎ) +# C ⋆ , A letter with a cedilla (ç) +# C ⋆ ^ A letter with a circumflex (â) +# C ⋆ : A letter with a diaeresis (ä) +# C ⋆ . A letter with a dot (ġ) +# C ⋆ " A letter with a double-acute (ő) +# C ⋆ ` A letter with a grave (à) +# C ⋆ - A letter with a macron (ā) +# C ⋆ ; A letter with an ogonek (ą) +# C ⋆ o A letter with a ring (å) # C ⋆ / A letter with a slash or strikethrough (ø) -# C ⋆ ~ A letter with a tilde (ã) -# C ⋆ * The Greek letter ‘⋆’ (α) -# C _ ⋆ Subscript ‘⋆’ (₁) -# C ^ ⋆ Superscript ‘⋆’ (¹) -# C l ⋆ Propositional logic operators (⇒) +# C ⋆ ~ A letter with a tilde (ã) +# C ⋆ * The Greek letter ‘⋆’ (α) +# C _ ⋆ Subscript ‘⋆’ (₁) +# C ^ ⋆ Superscript ‘⋆’ (¹) +# C l ⋆ Propositional logic operators (⇒) # # Ligatures or other glyphs that are compose of multiple characters are # straight forwards. For example ‘C I J’ produces ‘IJ’. -- cgit v1.2.3 From 445f451f014b347982101cfd9a99b7840fcf7cbe Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Sat, 8 Mar 2025 20:30:28 +0100 Subject: xcompose: Properly sort entries --- .config/X11/xcompose | 174 +++++++++++++++++++++++++-------------------------- 1 file changed, 87 insertions(+), 87 deletions(-) diff --git a/.config/X11/xcompose b/.config/X11/xcompose index 6a330fe..17620e0 100644 --- a/.config/X11/xcompose +++ b/.config/X11/xcompose @@ -67,56 +67,56 @@ # Latin Alphabet — Acute : "á" aacute : "Á" Aacute - : "Ć" U0106 : "ć" U0107 + : "Ć" U0106 : "é" eacute : "É" Eacute - : "Ǵ" U01F4 : "ǵ" U01F5 + : "Ǵ" U01F4 : "í" iacute : "Í" Iacute - : "Ḱ" U1E30 : "ḱ" U1E31 - : "Ĺ" U0139 + : "Ḱ" U1E30 : "ĺ" U013A - : "Ḿ" U1E3E + : "Ĺ" U0139 : "ḿ" U1E3F - : "Ń" U0143 + : "Ḿ" U1E3E : "ń" U0144 + : "Ń" U0143 : "ó" oacute : "Ó" Oacute -