diff options
author | Thomas Voss <thomas.voss@humanwave.nl> | 2025-06-11 14:59:58 +0200 |
---|---|---|
committer | Thomas Voss <thomas.voss@humanwave.nl> | 2025-06-11 14:59:58 +0200 |
commit | 03f5bb39561fad4d7745ff796b91f73933d99259 (patch) | |
tree | c02bf7e1b0657c555412c895f4efebdad777dde2 | |
parent | fad74e4384176f8cf98c86cfbf5c0468c0f49dce (diff) | |
parent | eb28738864a4b3dfe4443e897ccdea21c0765dc0 (diff) |
Merge branch 'master' of github.com:Mango0x45/dotfiles
-rw-r--r-- | .bashrc | 7 | ||||
-rw-r--r-- | .config/X11/xcompose | 803 | ||||
-rw-r--r-- | .config/aerc/accounts.conf | 13 | ||||
-rw-r--r-- | .config/emacs/init.el | 1 | ||||
-rw-r--r-- | .config/emacs/modules/mm-buffer-menu.el | 15 | ||||
-rw-r--r-- | .config/emacs/modules/mm-editing.el | 39 | ||||
-rw-r--r-- | .config/emacs/modules/mm-modeline.el | 7 | ||||
-rw-r--r-- | .config/emacs/modules/mm-projects.el | 27 | ||||
-rw-r--r-- | .config/emacs/modules/mm-theme.el | 9 | ||||
-rw-r--r-- | .config/emacs/site-lisp/number-format-mode.el | 129 | ||||
-rwxr-xr-x | .config/eww/scripts/datetime-listener | 5 | ||||
-rw-r--r-- | .config/foot/foot.ini | 26 | ||||
-rw-r--r-- | .config/htop/htoprc | 6 | ||||
-rw-r--r-- | .config/hypr/hyprland.conf.in | 22 | ||||
-rw-r--r-- | .config/isync/mbsyncrc | 31 | ||||
-rw-r--r-- | .config/msmtp/config | 9 | ||||
-rw-r--r-- | .local/share/vault/vault.sec | bin | 12772 -> 12914 bytes | |||
-rw-r--r-- | .xkb/symbols/mango | 13 |
18 files changed, 741 insertions, 421 deletions
@@ -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" @@ -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" @@ -67,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" @@ -98,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 diff --git a/.config/X11/xcompose b/.config/X11/xcompose index 734b440..4346e5a 100644 --- a/.config/X11/xcompose +++ b/.config/X11/xcompose @@ -3,27 +3,27 @@ # ‘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’. +# 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 @@ -34,380 +34,461 @@ # # Propositional Logic -<Multi_key> <l> <a> : "∧" U2227 # [L]ogical [A]nd -<Multi_key> <l> <e> : "⇔" U21D4 # [L]ogical [E]quivalence -<Multi_key> <l> <i> : "⇒" U21D2 # [L]ogical [I]mplication -<Multi_key> <l> <n> : "¬" U00AC # [L]ogical [N]ot -<Multi_key> <l> <o> : "∨" U2228 # [L]ogical [O]r -<Multi_key> <l> <x> : "⊕" U2295 # [L]ogical [X]or +<Multi_key> <l> <a> : "∧" # [L]ogical [A]nd +<Multi_key> <l> <e> : "⇔" # [L]ogical [E]quivalence +<Multi_key> <l> <i> : "⇒" # [L]ogical [I]mplication +<Multi_key> <l> <n> : "¬" # [L]ogical [N]ot +<Multi_key> <l> <o> : "∨" # [L]ogical [O]r +<Multi_key> <l> <x> : "⊕" # [L]ogical [X]or # Math -<Multi_key> <asterisk> <asterisk> : "⋆" U22C6 -<Multi_key> <exclam> <equal> : "≠" U2260 -<Multi_key> <greater> <equal> : "≥" U2265 -<Multi_key> <less> <equal> : "≤" U2264 -<Multi_key> <minus> <colon> : "÷" division -<Multi_key> <parenleft> <parenleft> : "⟮" U27EE -<Multi_key> <parenright> <parenright> : "⟯" U27EF -<Multi_key> <period> <period> : "⋅" U22C5 -<Multi_key> <plus> <minus> : "±" plusminus -<Multi_key> <x> <x> : "×" multiply +<Multi_key> <asterisk> <asterisk> : "⋆" +<Multi_key> <exclam> <equal> : "≠" +<Multi_key> <greater> <equal> : "≥" +<Multi_key> <less> <equal> : "≤" +<Multi_key> <minus> <colon> : "÷" +<Multi_key> <parenleft> <parenleft> : "⟮" +<Multi_key> <parenright> <parenright> : "⟯" +<Multi_key> <period> <period> : "⋅" +<Multi_key> <plus> <minus> : "±" +<Multi_key> <x> <x> : "×" # Typographical Symbols -<Multi_key> <greater> <greater> : "»" U00BB -<Multi_key> <less> <less> : "«" U00AB -<Multi_key> <less> <minus> : "←" U2190 -<Multi_key> <minus> <greater> : "→" U2192 -<Multi_key> <minus> <m> : "—" U2014 -<Multi_key> <minus> <n> : "–" U2013 -<Multi_key> <o> <c> : "℃" U2103 -<Multi_key> <o> <f> : "℉" U2109 -<Multi_key> <o> <o> : "°" U00B0 +<Multi_key> <greater> <greater> : "»" +<Multi_key> <less> <less> : "«" +<Multi_key> <less> <minus> : "←" +<Multi_key> <minus> <greater> : "→" +<Multi_key> <minus> <m> : "—" +<Multi_key> <minus> <n> : "–" +<Multi_key> <o> <c> : "℃" +<Multi_key> <o> <f> : "℉" +<Multi_key> <o> <o> : "°" # Latin Alphabet — Acute -<Multi_key> <a> <apostrophe> : "á" aacute -<Multi_key> <A> <apostrophe> : "Á" Aacute -<Multi_key> <C> <apostrophe> : "Ć" U0106 -<Multi_key> <c> <apostrophe> : "ć" U0107 -<Multi_key> <e> <apostrophe> : "é" eacute -<Multi_key> <E> <apostrophe> : "É" Eacute -<Multi_key> <G> <apostrophe> : "Ǵ" U01F4 -<Multi_key> <g> <apostrophe> : "ǵ" U01F5 -<Multi_key> <i> <apostrophe> : "í" iacute -<Multi_key> <I> <apostrophe> : "Í" Iacute -<Multi_key> <K> <apostrophe> : "Ḱ" U1E30 -<Multi_key> <k> <apostrophe> : "ḱ" U1E31 -<Multi_key> <L> <apostrophe> : "Ĺ" U0139 -<Multi_key> <l> <apostrophe> : "ĺ" U013A -<Multi_key> <M> <apostrophe> : "Ḿ" U1E3E -<Multi_key> <m> <apostrophe> : "ḿ" U1E3F -<Multi_key> <N> <apostrophe> : "Ń" U0143 -<Multi_key> <n> <apostrophe> : "ń" U0144 -<Multi_key> <o> <apostrophe> : "ó" oacute -<Multi_key> <O> <apostrophe> : "Ó" Oacute -<Multi_key> <P> <apostrophe> : "Ṕ" U1E54 -<Multi_key> <p> <apostrophe> : "ṕ" U1E55 -<Multi_key> <R> <apostrophe> : "Ŕ" U0154 -<Multi_key> <r> <apostrophe> : "ŕ" U0155 -<Multi_key> <S> <apostrophe> : "Ś" U015A -<Multi_key> <s> <apostrophe> : "ś" U015B -<Multi_key> <u> <apostrophe> : "ú" uacute -<Multi_key> <U> <apostrophe> : "Ú" Uacute -<Multi_key> <W> <apostrophe> : "Ẃ" U1E82 -<Multi_key> <w> <apostrophe> : "ẃ" U1E83 -<Multi_key> <y> <apostrophe> : "ý" yacute -<Multi_key> <Y> <apostrophe> : "Ý" Yacute -<Multi_key> <Z> <apostrophe> : "Ź" U0179 -<Multi_key> <z> <apostrophe> : "ź" U017A +<Multi_key> <a> <apostrophe> : "á" +<Multi_key> <A> <apostrophe> : "Á" +<Multi_key> <c> <apostrophe> : "ć" +<Multi_key> <C> <apostrophe> : "Ć" +<Multi_key> <e> <apostrophe> : "é" +<Multi_key> <E> <apostrophe> : "É" +<Multi_key> <g> <apostrophe> : "ǵ" +<Multi_key> <G> <apostrophe> : "Ǵ" +<Multi_key> <i> <apostrophe> : "í" +<Multi_key> <I> <apostrophe> : "Í" +<Multi_key> <k> <apostrophe> : "ḱ" +<Multi_key> <K> <apostrophe> : "Ḱ" +<Multi_key> <l> <apostrophe> : "ĺ" +<Multi_key> <L> <apostrophe> : "Ĺ" +<Multi_key> <m> <apostrophe> : "ḿ" +<Multi_key> <M> <apostrophe> : "Ḿ" +<Multi_key> <n> <apostrophe> : "ń" +<Multi_key> <N> <apostrophe> : "Ń" +<Multi_key> <o> <apostrophe> : "ó" +<Multi_key> <O> <apostrophe> : "Ó" +<Multi_key> <p> <apostrophe> : "ṕ" +<Multi_key> <P> <apostrophe> : "Ṕ" +<Multi_key> <r> <apostrophe> : "ŕ" +<Multi_key> <R> <apostrophe> : "Ŕ" +<Multi_key> <s> <apostrophe> : "ś" +<Multi_key> <S> <apostrophe> : "Ś" +<Multi_key> <u> <apostrophe> : "ú" +<Multi_key> <U> <apostrophe> : "Ú" +<Multi_key> <w> <apostrophe> : "ẃ" +<Multi_key> <W> <apostrophe> : "Ẃ" +<Multi_key> <y> <apostrophe> : "ý" +<Multi_key> <Y> <apostrophe> : "Ý" +<Multi_key> <z> <apostrophe> : "ź" +<Multi_key> <Z> <apostrophe> : "Ź" # Latin Alphabet — Breve -<Multi_key> <a> <u> : "ă" abreve -<Multi_key> <A> <u> : "Ă" Abreve -<Multi_key> <E> <u> : "Ĕ" U0114 -<Multi_key> <e> <u> : "ĕ" U0115 -<Multi_key> <g> <u> : "ğ" gbreve -<Multi_key> <G> <u> : "Ğ" Gbreve -<Multi_key> <i> <u> : "ĭ" ibreve -<Multi_key> <I> <u> : "Ĭ" Ibreve -<Multi_key> <O> <u> : "Ŏ" U014E -<Multi_key> <o> <u> : "ŏ" U014F -<Multi_key> <u> <u> : "ŭ" ubreve -<Multi_key> <U> <u> : "Ŭ" Ubreve +<Multi_key> <a> <u> : "ă" +<Multi_key> <A> <u> : "Ă" +<Multi_key> <e> <u> : "ĕ" +<Multi_key> <E> <u> : "Ĕ" +<Multi_key> <g> <u> : "ğ" +<Multi_key> <G> <u> : "Ğ" +<Multi_key> <i> <u> : "ĭ" +<Multi_key> <I> <u> : "Ĭ" +<Multi_key> <o> <u> : "ŏ" +<Multi_key> <O> <u> : "Ŏ" +<Multi_key> <u> <u> : "ŭ" +<Multi_key> <U> <u> : "Ŭ" # Latin Alphabet — Caron -<Multi_key> <A> <v> : "Ǎ" U01CD -<Multi_key> <a> <v> : "ǎ" U01CE -<Multi_key> <c> <v> : "č" ccaron -<Multi_key> <C> <v> : "Č" Ccaron -<Multi_key> <d> <v> : "ď" dcaron -<Multi_key> <D> <v> : "Ď" Dcaron -<Multi_key> <e> <v> : "ě" ecaron -<Multi_key> <E> <v> : "Ě" Ecaron -<Multi_key> <g> <v> : "ǧ" gcaron -<Multi_key> <G> <v> : "Ǧ" Gcaron -<Multi_key> <H> <v> : "Ȟ" U021E -<Multi_key> <h> <v> : "ȟ" U021F -<Multi_key> <I> <v> : "Ǐ" U01CF -<Multi_key> <i> <v> : "ǐ" U01D0 -<Multi_key> <j> <v> : "ǰ" U01F0 # NOTE: No uppercase in Unicode -<Multi_key> <K> <v> : "Ǩ" U01E8 -<Multi_key> <k> <v> : "ǩ" U01E9 -<Multi_key> <l> <v> : "ľ" lcaron -<Multi_key> <L> <v> : "Ľ" Lcaron -<Multi_key> <n> <v> : "ň" ncaron -<Multi_key> <N> <v> : "Ň" Ncaron -<Multi_key> <o> <v> : "ǒ" ocaron -<Multi_key> <O> <v> : "Ǒ" Ocaron -<Multi_key> <r> <v> : "ř" rcaron -<Multi_key> <R> <v> : "Ř" Rcaron -<Multi_key> <s> <v> : "š" scaron -<Multi_key> <S> <v> : "Š" Scaron -<Multi_key> <t> <v> : "ť" tcaron -<Multi_key> <T> <v> : "Ť" Tcaron -<Multi_key> <U> <v> : "Ǔ" U01D3 -<Multi_key> <u> <v> : "ǔ" U01D4 -<Multi_key> <z> <v> : "ž" zcaron -<Multi_key> <Z> <v> : "Ž" Zcaron +<Multi_key> <a> <v> : "ǎ" +<Multi_key> <A> <v> : "Ǎ" +<Multi_key> <c> <v> : "č" +<Multi_key> <C> <v> : "Č" +<Multi_key> <d> <v> : "ď" +<Multi_key> <D> <v> : "Ď" +<Multi_key> <e> <v> : "ě" +<Multi_key> <E> <v> : "Ě" +<Multi_key> <g> <v> : "ǧ" +<Multi_key> <G> <v> : "Ǧ" +<Multi_key> <h> <v> : "ȟ" +<Multi_key> <H> <v> : "Ȟ" +<Multi_key> <i> <v> : "ǐ" +<Multi_key> <I> <v> : "Ǐ" +<Multi_key> <j> <v> : "ǰ" # NOTE: No uppercase in Unicode +<Multi_key> <k> <v> : "ǩ" +<Multi_key> <K> <v> : "Ǩ" +<Multi_key> <l> <v> : "ľ" +<Multi_key> <L> <v> : "Ľ" +<Multi_key> <n> <v> : "ň" +<Multi_key> <N> <v> : "Ň" +<Multi_key> <o> <v> : "ǒ" +<Multi_key> <O> <v> : "Ǒ" +<Multi_key> <r> <v> : "ř" +<Multi_key> <R> <v> : "Ř" +<Multi_key> <s> <v> : "š" +<Multi_key> <S> <v> : "Š" +<Multi_key> <t> <v> : "ť" +<Multi_key> <T> <v> : "Ť" +<Multi_key> <u> <v> : "ǔ" +<Multi_key> <U> <v> : "Ǔ" +<Multi_key> <z> <v> : "ž" +<Multi_key> <Z> <v> : "Ž" # Latin Alphabet — Cedilla -<Multi_key> <c> <comma> : "ç" ccedilla -<Multi_key> <C> <comma> : "Ç" ccedilla -<Multi_key> <D> <comma> : "Ḑ" U1E10 -<Multi_key> <d> <comma> : "ḑ" U1E11 -<Multi_key> <E> <comma> : "Ȩ" U0228 -<Multi_key> <e> <comma> : "ȩ" U0229 -<Multi_key> <g> <comma> : "ģ" U0121 -<Multi_key> <G> <comma> : "Ģ" U0122 -<Multi_key> <H> <comma> : "Ḩ" U1E28 -<Multi_key> <h> <comma> : "ḩ" U1E29 -<Multi_key> <K> <comma> : "Ķ" U0136 -<Multi_key> <k> <comma> : "ķ" U0137 -<Multi_key> <L> <comma> : "Ļ" U012C -<Multi_key> <l> <comma> : "ļ" U013C -<Multi_key> <N> <comma> : "Ņ" U0145 -<Multi_key> <n> <comma> : "ņ" U0146 -<Multi_key> <R> <comma> : "Ŗ" U0156 -<Multi_key> <r> <comma> : "ŗ" U0157 -<Multi_key> <S> <comma> : "Ş" U015E -<Multi_key> <s> <comma> : "ş" U015F -<Multi_key> <T> <comma> : "Ţ" U0162 -<Multi_key> <t> <comma> : "ţ" U0163 +<Multi_key> <c> <comma> : "ç" +<Multi_key> <C> <comma> : "Ç" +<Multi_key> <d> <comma> : "ḑ" +<Multi_key> <D> <comma> : "Ḑ" +<Multi_key> <e> <comma> : "ȩ" +<Multi_key> <E> <comma> : "Ȩ" +<Multi_key> <g> <comma> : "ģ" +<Multi_key> <G> <comma> : "Ģ" +<Multi_key> <h> <comma> : "ḩ" +<Multi_key> <H> <comma> : "Ḩ" +<Multi_key> <k> <comma> : "ķ" +<Multi_key> <K> <comma> : "Ķ" +<Multi_key> <l> <comma> : "ļ" +<Multi_key> <L> <comma> : "Ļ" +<Multi_key> <n> <comma> : "ņ" +<Multi_key> <N> <comma> : "Ņ" +<Multi_key> <r> <comma> : "ŗ" +<Multi_key> <R> <comma> : "Ŗ" +<Multi_key> <s> <comma> : "ş" +<Multi_key> <S> <comma> : "Ş" +<Multi_key> <t> <comma> : "ţ" +<Multi_key> <T> <comma> : "Ţ" # Latin Alphabet - Circumflex -<Multi_key> <a> <asciicircum> : "â" acircumflex -<Multi_key> <A> <asciicircum> : "Â" Acircumflex -<Multi_key> <C> <asciicircum> : "Ĉ" U0108 -<Multi_key> <c> <asciicircum> : "ĉ" U0109 -<Multi_key> <e> <asciicircum> : "ê" ecircumflex -<Multi_key> <E> <asciicircum> : "Ê" Ecircumflex -<Multi_key> <g> <asciicircum> : "Ĝ" U011C -<Multi_key> <g> <asciicircum> : "ĝ" U011D -<Multi_key> <H> <asciicircum> : "Ĥ" U0124 -<Multi_key> <h> <asciicircum> : "ĥ" U0125 -<Multi_key> <i> <asciicircum> : "î" icircumflex -<Multi_key> <I> <asciicircum> : "Î" Icircumflex -<Multi_key> <J> <asciicircum> : "Ĵ" U0134 -<Multi_key> <j> <asciicircum> : "ĵ" U0135 -<Multi_key> <o> <asciicircum> : "ô" ocircumflex -<Multi_key> <O> <asciicircum> : "Ô" Ocircumflex -<Multi_key> <S> <asciicircum> : "Ŝ" U015C -<Multi_key> <s> <asciicircum> : "ŝ" U015D -<Multi_key> <u> <asciicircum> : "û" ucircumflex -<Multi_key> <U> <asciicircum> : "Û" Ucircumflex -<Multi_key> <W> <asciicircum> : "Ŵ" U0174 -<Multi_key> <w> <asciicircum> : "ŵ" U0175 -<Multi_key> <Y> <asciicircum> : "Ŷ" U0176 -<Multi_key> <y> <asciicircum> : "ŷ" U0177 -<Multi_key> <Z> <asciicircum> : "Ẑ" U1E90 -<Multi_key> <z> <asciicircum> : "ẑ" U1E91 +<Multi_key> <a> <asciicircum> : "â" +<Multi_key> <A> <asciicircum> : "Â" +<Multi_key> <c> <asciicircum> : "ĉ" +<Multi_key> <C> <asciicircum> : "Ĉ" +<Multi_key> <e> <asciicircum> : "ê" +<Multi_key> <E> <asciicircum> : "Ê" +<Multi_key> <g> <asciicircum> : "ĝ" +<Multi_key> <g> <asciicircum> : "Ĝ" +<Multi_key> <h> <asciicircum> : "ĥ" +<Multi_key> <H> <asciicircum> : "Ĥ" +<Multi_key> <i> <asciicircum> : "î" +<Multi_key> <I> <asciicircum> : "Î" +<Multi_key> <j> <asciicircum> : "ĵ" +<Multi_key> <J> <asciicircum> : "Ĵ" +<Multi_key> <o> <asciicircum> : "ô" +<Multi_key> <O> <asciicircum> : "Ô" +<Multi_key> <s> <asciicircum> : "ŝ" +<Multi_key> <S> <asciicircum> : "Ŝ" +<Multi_key> <u> <asciicircum> : "û" +<Multi_key> <U> <asciicircum> : "Û" +<Multi_key> <w> <asciicircum> : "ŵ" +<Multi_key> <W> <asciicircum> : "Ŵ" +<Multi_key> <y> <asciicircum> : "ŷ" +<Multi_key> <Y> <asciicircum> : "Ŷ" +<Multi_key> <z> <asciicircum> : "ẑ" +<Multi_key> <Z> <asciicircum> : "Ẑ" -# Latin Alphabet — Dot -# TODO +# Latin Alphabet — Dot +<Multi_key> <a> <period> : "ȧ" +<Multi_key> <A> <period> : "Ȧ" +<Multi_key> <b> <period> : "ḃ" +<Multi_key> <B> <period> : "Ḃ" +<Multi_key> <c> <period> : "ċ" +<Multi_key> <C> <period> : "Ċ" +<Multi_key> <d> <period> : "ḋ" +<Multi_key> <D> <period> : "Ḋ" +<Multi_key> <e> <period> : "ė" +<Multi_key> <E> <period> : "Ė" +<Multi_key> <f> <period> : "ḟ" +<Multi_key> <F> <period> : "Ḟ" +<Multi_key> <g> <period> : "ġ" +<Multi_key> <G> <period> : "Ġ" +<Multi_key> <h> <period> : "ḣ" +<Multi_key> <H> <period> : "Ḣ" +<Multi_key> <I> <period> : "İ" +<Multi_key> <m> <period> : "ṁ" +<Multi_key> <M> <period> : "Ṁ" +<Multi_key> <n> <period> : "ṅ" +<Multi_key> <N> <period> : "Ṅ" +<Multi_key> <o> <period> : "ȯ" +<Multi_key> <O> <period> : "Ȯ" +<Multi_key> <p> <period> : "ṗ" +<Multi_key> <P> <period> : "Ṗ" +<Multi_key> <r> <period> : "ṙ" +<Multi_key> <R> <period> : "Ṙ" +<Multi_key> <s> <period> : "ṡ" +<Multi_key> <S> <period> : "Ṡ" +<Multi_key> <t> <period> : "ṫ" +<Multi_key> <T> <period> : "Ṫ" +<Multi_key> <w> <period> : "ẇ" +<Multi_key> <W> <period> : "Ẇ" +<Multi_key> <x> <period> : "ẋ" +<Multi_key> <X> <period> : "Ẋ" +<Multi_key> <y> <period> : "ẏ" +<Multi_key> <Y> <period> : "Ẏ" +<Multi_key> <z> <period> : "ż" +<Multi_key> <Z> <period> : "Ż" # Latin Alphabet — Diaeresis -<Multi_key> <a> <colon> : "ä" adiaeresis -<Multi_key> <A> <colon> : "Ä" Adiaeresis -<Multi_key> <e> <colon> : "ë" adiaeresis -<Multi_key> <E> <colon> : "Ë" Ediaeresis -<Multi_key> <H> <colon> : "Ḧ" U1E26 -<Multi_key> <h> <colon> : "ḧ" U1E27 -<Multi_key> <i> <colon> : "ï" adiaeresis -<Multi_key> <I> <colon> : "Ï" Idiaeresis -<Multi_key> <o> <colon> : "ö" adiaeresis -<Multi_key> <O> <colon> : "Ö" Odiaeresis -<Multi_key> <t> <colon> : "ẗ" U1E97 # NOTE: No uppercase in Unicode -<Multi_key> <u> <colon> : "ü" adiaeresis -<Multi_key> <U> <colon> : "Ü" Udiaeresis -<Multi_key> <W> <colon> : "Ẅ" U1E84 -<Multi_key> <w> <colon> : "ẅ" U1E85 -<Multi_key> <X> <colon> : "Ẍ" U1E8C -<Multi_key> <x> <colon> : "ẍ" U1E8D -<Multi_key> <Y> <colon> : "Ÿ" U0178 -<Multi_key> <y> <colon> : "ÿ" ydiaeresis +<Multi_key> <a> <colon> : "ä" +<Multi_key> <A> <colon> : "Ä" +<Multi_key> <e> <colon> : "ë" +<Multi_key> <E> <colon> : "Ë" +<Multi_key> <h> <colon> : "ḧ" +<Multi_key> <H> <colon> : "Ḧ" +<Multi_key> <i> <colon> : "ï" +<Multi_key> <I> <colon> : "Ï" +<Multi_key> <o> <colon> : "ö" +<Multi_key> <O> <colon> : "Ö" +<Multi_key> <t> <colon> : "ẗ" # NOTE: No uppercase in Unicode +<Multi_key> <u> <colon> : "ü" +<Multi_key> <U> <colon> : "Ü" +<Multi_key> <w> <colon> : "ẅ" +<Multi_key> <W> <colon> : "Ẅ" +<Multi_key> <x> <colon> : "ẍ" +<Multi_key> <X> <colon> : "Ẍ" +<Multi_key> <y> <colon> : "ÿ" +<Multi_key> <Y> <colon> : "Ÿ" -# Latin Alphabet — Double-Acute -<Multi_key> <o> <quotedbl> : "ő" odoubleacute -<Multi_key> <O> <quotedbl> : "Ő" Odoubleacute -<Multi_key> <u> <quotedbl> : "ű" udoubleacute -<Multi_key> <U> <quotedbl> : "Ű" Udoubleacute +# Latin Alphabet — Double-Acute +<Multi_key> <o> <quotedbl> : "ő" +<Multi_key> <O> <quotedbl> : "Ő" +<Multi_key> <u> <quotedbl> : "ű" +<Multi_key> <U> <quotedbl> : "Ű" -# Latin Alphabet — Grave -# TODO +# Latin Alphabet — Grave +<Multi_key> <a> <grave> : "à" +<Multi_key> <A> <grave> : "À" +<Multi_key> <e> <grave> : "è" +<Multi_key> <E> <grave> : "È" +<Multi_key> <i> <grave> : "ì" +<Multi_key> <I> <grave> : "Ì" +<Multi_key> <n> <grave> : "ǹ" +<Multi_key> <N> <grave> : "Ǹ" +<Multi_key> <o> <grave> : "ò" +<Multi_key> <O> <grave> : "Ò" +<Multi_key> <u> <grave> : "ù" +<Multi_key> <U> <grave> : "Ù" +<Multi_key> <w> <grave> : "ẁ" +<Multi_key> <W> <grave> : "Ẁ" +<Multi_key> <y> <grave> : "ỳ" +<Multi_key> <Y> <grave> : "Ỳ" -# Latin Alphabet — Macron -# TODO +# Latin Alphabet — Macron +<Multi_key> <a> <minus> : "ā" +<Multi_key> <A> <minus> : "Ā" +<Multi_key> <e> <minus> : "ē" +<Multi_key> <E> <minus> : "Ē" +<Multi_key> <g> <minus> : "ḡ" +<Multi_key> <G> <minus> : "Ḡ" +<Multi_key> <i> <minus> : "ī" +<Multi_key> <I> <minus> : "Ī" +<Multi_key> <o> <minus> : "ō" +<Multi_key> <O> <minus> : "Ō" +<Multi_key> <u> <minus> : "ū" +<Multi_key> <U> <minus> : "Ū" +<Multi_key> <y> <minus> : "ȳ" +<Multi_key> <Y> <minus> : "Ȳ" -# Latin Alphabet — Ogonek -<Multi_key> <a> <semicolon> : "ą" aogonek -<Multi_key> <A> <semicolon> : "Ą" Aogonek -<Multi_key> <e> <semicolon> : "ę" eogonek -<Multi_key> <E> <semicolon> : "Ę" Eogonek -<Multi_key> <i> <semicolon> : "į" iogonek -<Multi_key> <I> <semicolon> : "Į" Iogonek -<Multi_key> <o> <semicolon> : "ǫ" U01EB -<Multi_key> <O> <semicolon> : "Ǫ" U01EA -<Multi_key> <u> <semicolon> : "ų" uogonek -<Multi_key> <U> <semicolon> : "Ų" Uogonek +# Latin Alphabet — Ogonek +<Multi_key> <a> <semicolon> : "ą" +<Multi_key> <A> <semicolon> : "Ą" +<Multi_key> <e> <semicolon> : "ę" +<Multi_key> <E> <semicolon> : "Ę" +<Multi_key> <i> <semicolon> : "į" +<Multi_key> <I> <semicolon> : "Į" +<Multi_key> <o> <semicolon> : "ǫ" +<Multi_key> <O> <semicolon> : "Ǫ" +<Multi_key> <u> <semicolon> : "ų" +<Multi_key> <U> <semicolon> : "Ų" -# Latin Alphabet — Ring -<Multi_key> <a> <o> : "å" aring -<Multi_key> <A> <o> : "Å" Aring -<Multi_key> <U> <o> : "Ů" U016E -<Multi_key> <u> <o> : "ů" U016F -<Multi_key> <w> <o> : "ẘ" U1E98 # NOTE: No uppercase in Unicode -<Multi_key> <y> <o> : "ẙ" U1E99 # NOTE: No uppercase in Unicode +# Latin Alphabet — Ring +<Multi_key> <a> <o> : "å" +<Multi_key> <A> <o> : "Å" +<Multi_key> <u> <o> : "ů" +<Multi_key> <U> <o> : "Ů" +<Multi_key> <w> <o> : "ẘ" # NOTE: No uppercase in Unicode +<Multi_key> <y> <o> : "ẙ" # 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. -<Multi_key> <d> <minus> : "đ" dstroke -<Multi_key> <D> <minus> : "Đ" Dstroke -<Multi_key> <d> <slash> : "ð" eth -<Multi_key> <D> <slash> : "Ð" ETH -<Multi_key> <h> <slash> : "ħ" U0126 -<Multi_key> <H> <slash> : "Ħ" U0126 -<Multi_key> <L> <slash> : "Ł" U0141 -<Multi_key> <l> <slash> : "ł" U0142 -<Multi_key> <o> <slash> : "ø" oslash -<Multi_key> <O> <slash> : "Ø" Oslash +<Multi_key> <d> <minus> : "đ" +<Multi_key> <D> <minus> : "Đ" +<Multi_key> <d> <slash> : "ð" +<Multi_key> <D> <slash> : "Ð" +<Multi_key> <h> <slash> : "ħ" +<Multi_key> <H> <slash> : "Ħ" +<Multi_key> <l> <slash> : "ł" +<Multi_key> <L> <slash> : "Ł" +<Multi_key> <o> <slash> : "ø" +<Multi_key> <O> <slash> : "Ø" -# Latin Alphabet — Tilde -# TODO +# Latin Alphabet — Tilde +<Multi_key> <a> <asciitilde> : "ã" +<Multi_key> <A> <asciitilde> : "Ã" +<Multi_key> <e> <asciitilde> : "ẽ" +<Multi_key> <E> <asciitilde> : "Ẽ" +<Multi_key> <i> <asciitilde> : "ĩ" +<Multi_key> <I> <asciitilde> : "Ĩ" +<Multi_key> <n> <asciitilde> : "ñ" +<Multi_key> <N> <asciitilde> : "Ñ" +<Multi_key> <o> <asciitilde> : "õ" +<Multi_key> <O> <asciitilde> : "Õ" +<Multi_key> <u> <asciitilde> : "ũ" +<Multi_key> <U> <asciitilde> : "Ũ" +<Multi_key> <v> <asciitilde> : "ṽ" +<Multi_key> <V> <asciitilde> : "Ṽ" +<Multi_key> <y> <asciitilde> : "ỹ" +<Multi_key> <Y> <asciitilde> : "Ỹ" -# Latin Alphabet — Ligatures & Multiglyphs -<Multi_key> <a> <e> : "æ" ae -<Multi_key> <A> <E> : "Æ" AE -<Multi_key> <D> <Z> : "DŽ" U01C4 -<Multi_key> <D> <z> : "Dž" U01C5 -<Multi_key> <d> <z> : "dž" U01C6 -<Multi_key> <exclam> <exclam> : "¡" exclamdown -<Multi_key> <exclam> <question> : "‽" U203D -<Multi_key> <f> <f> <f> : "ff" UFB00 -<Multi_key> <f> <f> <i> : "ffi" UFB03 -<Multi_key> <f> <f> <l> : "ffl" UFB04 -<Multi_key> <f> <i> : "fi" UFB01 -<Multi_key> <f> <l> : "fl" UFB02 -<Multi_key> <I> <J> : "IJ" U0132 -<Multi_key> <i> <j> : "ij" U0133 -<Multi_key> <L> <J> : "LJ" U01C7 -<Multi_key> <L> <j> : "Lj" U01C8 -<Multi_key> <l> <j> : "lj" U01C9 -<Multi_key> <N> <J> : "NJ" U01CA -<Multi_key> <N> <j> : "Nj" U01CB -<Multi_key> <n> <j> : "nj" U01CC -<Multi_key> <N> <o> : "№" numerosign -<Multi_key> <o> <e> : "œ" oe -<Multi_key> <O> <E> : "Œ" OE -<Multi_key> <question> <exclam> : "⸘" U2E18 -<Multi_key> <question> <question> : "¿" questiondown -<Multi_key> <s> <l> : "ſ" U017F # [s]-[l]ong -<Multi_key> <s> <t> : "st" UFB06 +# Latin Alphabet — Ligatures & Multiglyphs +<Multi_key> <a> <e> : "æ" +<Multi_key> <A> <E> : "Æ" +<Multi_key> <d> <z> : "dž" +<Multi_key> <D> <z> : "Dž" +<Multi_key> <D> <Z> : "DŽ" +<Multi_key> <exclam> <exclam> : "¡" +<Multi_key> <exclam> <question> : "‽" +<Multi_key> <f> <f> <f> : "ff" +<Multi_key> <f> <f> <i> : "ffi" +<Multi_key> <f> <f> <l> : "ffl" +<Multi_key> <f> <i> : "fi" +<Multi_key> <f> <l> : "fl" +<Multi_key> <i> <j> : "ij" +<Multi_key> <I> <J> : "IJ" +<Multi_key> <l> <j> : "lj" +<Multi_key> <L> <j> : "Lj" +<Multi_key> <L> <J> : "LJ" +<Multi_key> <n> <j> : "nj" +<Multi_key> <N> <j> : "Nj" +<Multi_key> <N> <J> : "NJ" +<Multi_key> <N> <o> : "№" +<Multi_key> <o> <e> : "œ" +<Multi_key> <O> <E> : "Œ" +<Multi_key> <question> <exclam> : "⸘" +<Multi_key> <question> <question> : "¿" +<Multi_key> <s> <l> : "ſ" # [s]-[l]ong +<Multi_key> <s> <t> : "st" # Latin Alphabet — Extended -<Multi_key> <s> <s> : "ß" ssharp # [s]harp [s] -<Multi_key> <S> <S> : "ẞ" U1E9E # [S]HARP [S] -<Multi_key> <t> <h> : "þ" thorn # [t][h]orn -<Multi_key> <T> <H> : "Þ" THORN # [T][H]ORN +<Multi_key> <s> <s> : "ß" # [s]harp [s] +<Multi_key> <S> <S> : "ẞ" # [S]HARP [S] +<Multi_key> <t> <h> : "þ" # [t][h]orn +<Multi_key> <T> <H> : "Þ" # [T][H]ORN # Greek Alphabet -<Multi_key> <A> <asterisk> : "Α" U0391 -<Multi_key> <a> <asterisk> : "α" U03B1 -<Multi_key> <B> <asterisk> : "Β" U0392 -<Multi_key> <b> <asterisk> : "β" U03B2 -<Multi_key> <D> <asterisk> : "Δ" U0394 -<Multi_key> <d> <asterisk> : "δ" U03B4 -<Multi_key> <E> <asterisk> : "Ε" U0395 -<Multi_key> <e> <asterisk> : "ε" U03B5 -<Multi_key> <F> <asterisk> : "Φ" U03A6 -<Multi_key> <f> <asterisk> : "φ" U03C6 -<Multi_key> <G> <asterisk> : "Γ" U0393 -<Multi_key> <g> <asterisk> : "γ" U03B3 -<Multi_key> <H> <asterisk> : "Η" U0397 -<Multi_key> <h> <asterisk> : "η" U03B7 -<Multi_key> <I> <asterisk> : "Ι" U0399 -<Multi_key> <i> <asterisk> : "ι" U03B9 -<Multi_key> <J> <asterisk> : "Θ" U0398 -<Multi_key> <j> <asterisk> : "θ" U03B8 -<Multi_key> <K> <asterisk> : "Κ" U039A -<Multi_key> <k> <asterisk> : "κ" U03BA -<Multi_key> <L> <asterisk> : "Λ" U039B -<Multi_key> <l> <asterisk> : "λ" U03BB -<Multi_key> <M> <asterisk> : "Μ" U039C -<Multi_key> <m> <asterisk> : "μ" U03BC -<Multi_key> <N> <asterisk> : "Ν" U039D -<Multi_key> <n> <asterisk> : "ν" U03BD -<Multi_key> <O> <asterisk> : "Ο" U039F -<Multi_key> <o> <asterisk> : "ο" U03BF -<Multi_key> <P> <asterisk> : "Π" U03A0 -<Multi_key> <p> <asterisk> : "π" U03C0 -<Multi_key> <Q> <asterisk> : "Χ" U03A7 -<Multi_key> <q> <asterisk> : "χ" U03C7 -<Multi_key> <R> <asterisk> : "Ρ" U03A1 -<Multi_key> <r> <asterisk> : "ρ" U03C1 -<Multi_key> <S> <asterisk> : "Σ" U03A3 -<Multi_key> <s> <asterisk> : "σ" U03C3 -<Multi_key> <T> <asterisk> : "Τ" U03A4 -<Multi_key> <t> <asterisk> : "τ" U03C4 -<Multi_key> <U> <asterisk> : "Υ" U03A5 -<Multi_key> <u> <asterisk> : "υ" U03C5 -<Multi_key> <W> <asterisk> : "Ω" U03A9 -<Multi_key> <w> <asterisk> : "ω" U03C9 -<Multi_key> <X> <asterisk> : "Ξ" U039E -<Multi_key> <x> <asterisk> : "ξ" U03BE -<Multi_key> <Y> <asterisk> : "Ψ" U03A8 -<Multi_key> <y> <asterisk> : "ψ" U03C8 -<Multi_key> <Z> <asterisk> : "Ζ" U0396 -<Multi_key> <z> <asterisk> : "ζ" U03B6 -<Multi_key> <asterisk> <s> : "ς" U03C2 # NOTE: Special case for final sigma +<Multi_key> <a> <asterisk> : "α" +<Multi_key> <A> <asterisk> : "Α" +<Multi_key> <b> <asterisk> : "β" +<Multi_key> <B> <asterisk> : "Β" +<Multi_key> <d> <asterisk> : "δ" +<Multi_key> <D> <asterisk> : "Δ" +<Multi_key> <e> <asterisk> : "ε" +<Multi_key> <E> <asterisk> : "Ε" +<Multi_key> <f> <asterisk> : "φ" +<Multi_key> <F> <asterisk> : "Φ" +<Multi_key> <g> <asterisk> : "γ" +<Multi_key> <G> <asterisk> : "Γ" +<Multi_key> <h> <asterisk> : "η" +<Multi_key> <H> <asterisk> : "Η" +<Multi_key> <i> <asterisk> : "ι" +<Multi_key> <I> <asterisk> : "Ι" +<Multi_key> <j> <asterisk> : "θ" +<Multi_key> <J> <asterisk> : "Θ" +<Multi_key> <k> <asterisk> : "κ" +<Multi_key> <K> <asterisk> : "Κ" +<Multi_key> <l> <asterisk> : "λ" +<Multi_key> <L> <asterisk> : "Λ" +<Multi_key> <m> <asterisk> : "μ" +<Multi_key> <M> <asterisk> : "Μ" +<Multi_key> <n> <asterisk> : "ν" +<Multi_key> <N> <asterisk> : "Ν" +<Multi_key> <o> <asterisk> : "ο" +<Multi_key> <O> <asterisk> : "Ο" +<Multi_key> <p> <asterisk> : "π" +<Multi_key> <P> <asterisk> : "Π" +<Multi_key> <q> <asterisk> : "χ" +<Multi_key> <Q> <asterisk> : "Χ" +<Multi_key> <r> <asterisk> : "ρ" +<Multi_key> <R> <asterisk> : "Ρ" +<Multi_key> <asterisk> <s> : "ς" # NOTE: Special case for final sigma +<Multi_key> <s> <asterisk> : "σ" +<Multi_key> <S> <asterisk> : "Σ" +<Multi_key> <t> <asterisk> : "τ" +<Multi_key> <T> <asterisk> : "Τ" +<Multi_key> <u> <asterisk> : "υ" +<Multi_key> <U> <asterisk> : "Υ" +<Multi_key> <w> <asterisk> : "ω" +<Multi_key> <W> <asterisk> : "Ω" +<Multi_key> <x> <asterisk> : "ξ" +<Multi_key> <X> <asterisk> : "Ξ" +<Multi_key> <y> <asterisk> : "ψ" +<Multi_key> <Y> <asterisk> : "Ψ" +<Multi_key> <z> <asterisk> : "ζ" +<Multi_key> <Z> <asterisk> : "Ζ" # Superscript -<Multi_key> <asciicircum> <0> : "⁰" U2070 -<Multi_key> <asciicircum> <1> : "¹" U00B9 -<Multi_key> <asciicircum> <2> : "²" U00B2 -<Multi_key> <asciicircum> <3> : "³" U00B3 -<Multi_key> <asciicircum> <4> : "⁴" U2074 -<Multi_key> <asciicircum> <5> : "⁵" U2075 -<Multi_key> <asciicircum> <6> : "⁶" U2076 -<Multi_key> <asciicircum> <7> : "⁷" U2077 -<Multi_key> <asciicircum> <8> : "⁸" U2078 -<Multi_key> <asciicircum> <9> : "⁹" U2079 -<Multi_key> <asciicircum> <i> : "ⁱ" U2071 -<Multi_key> <asciicircum> <minus> : "⁻" U207B -<Multi_key> <asciicircum> <n> : "ⁿ" U207F -<Multi_key> <asciicircum> <parenleft> : "⁽" U207D -<Multi_key> <asciicircum> <parenright> : "⁾" U207E -<Multi_key> <asciicircum> <plus> : "⁺" U207A +<Multi_key> <asciicircum> <0> : "⁰" +<Multi_key> <asciicircum> <1> : "¹" +<Multi_key> <asciicircum> <2> : "²" +<Multi_key> <asciicircum> <3> : "³" +<Multi_key> <asciicircum> <4> : "⁴" +<Multi_key> <asciicircum> <5> : "⁵" +<Multi_key> <asciicircum> <6> : "⁶" +<Multi_key> <asciicircum> <7> : "⁷" +<Multi_key> <asciicircum> <8> : "⁸" +<Multi_key> <asciicircum> <9> : "⁹" +<Multi_key> <asciicircum> <i> : "ⁱ" +<Multi_key> <asciicircum> <minus> : "⁻" +<Multi_key> <asciicircum> <n> : "ⁿ" +<Multi_key> <asciicircum> <parenleft> : "⁽" +<Multi_key> <asciicircum> <parenright> : "⁾" +<Multi_key> <asciicircum> <plus> : "⁺" # Subscript -<Multi_key> <underscore> <0> : "₀" U2080 -<Multi_key> <underscore> <1> : "₁" U2081 -<Multi_key> <underscore> <2> : "₂" U2082 -<Multi_key> <underscore> <3> : "₃" U2083 -<Multi_key> <underscore> <4> : "₄" U2084 -<Multi_key> <underscore> <5> : "₅" U2085 -<Multi_key> <underscore> <6> : "₆" U2086 -<Multi_key> <underscore> <7> : "₇" U2087 -<Multi_key> <underscore> <8> : "₈" U2088 -<Multi_key> <underscore> <9> : "₉" U2089 -<Multi_key> <underscore> <a> : "ₐ" U2090 -<Multi_key> <underscore> <e> : "ₑ" U2090 -<Multi_key> <underscore> <h> : "ₕ" U2095 -<Multi_key> <underscore> <i> : "ᵢ" U1D62 -<Multi_key> <underscore> <j> : "ⱼ" U2C7C -<Multi_key> <underscore> <k> : "ₖ" U2089 -<Multi_key> <underscore> <l> : "ₗ" U2097 -<Multi_key> <underscore> <minus> : "₋" U2089 -<Multi_key> <underscore> <m> : "ₘ" U2098 -<Multi_key> <underscore> <n> : "ₙ" U2099 -<Multi_key> <underscore> <o> : "ₒ" U2092 -<Multi_key> <underscore> <parenleft> : "₍" U2089 -<Multi_key> <underscore> <parenright> : "₎" U2089 -<Multi_key> <underscore> <plus> : "₊" U2089 -<Multi_key> <underscore> <p> : "ₚ" U209A -<Multi_key> <underscore> <r> : "ᵣ" U1D63 -<Multi_key> <underscore> <s> : "ₛ" U209B -<Multi_key> <underscore> <t> : "ₜ" U209C -<Multi_key> <underscore> <u> : "ᵤ" U1D64 -<Multi_key> <underscore> <v> : "ᵥ" U1D65 -<Multi_key> <underscore> <x> : "ₓ" U2093 +<Multi_key> <underscore> <0> : "₀" +<Multi_key> <underscore> <1> : "₁" +<Multi_key> <underscore> <2> : "₂" +<Multi_key> <underscore> <3> : "₃" +<Multi_key> <underscore> <4> : "₄" +<Multi_key> <underscore> <5> : "₅" +<Multi_key> <underscore> <6> : "₆" +<Multi_key> <underscore> <7> : "₇" +<Multi_key> <underscore> <8> : "₈" +<Multi_key> <underscore> <9> : "₉" +<Multi_key> <underscore> <a> : "ₐ" +<Multi_key> <underscore> <e> : "ₑ" +<Multi_key> <underscore> <h> : "ₕ" +<Multi_key> <underscore> <i> : "ᵢ" +<Multi_key> <underscore> <j> : "ⱼ" +<Multi_key> <underscore> <k> : "ₖ" +<Multi_key> <underscore> <l> : "ₗ" +<Multi_key> <underscore> <minus> : "₋" +<Multi_key> <underscore> <m> : "ₘ" +<Multi_key> <underscore> <n> : "ₙ" +<Multi_key> <underscore> <o> : "ₒ" +<Multi_key> <underscore> <parenleft> : "₍" +<Multi_key> <underscore> <parenright> : "₎" +<Multi_key> <underscore> <plus> : "₊" +<Multi_key> <underscore> <p> : "ₚ" +<Multi_key> <underscore> <r> : "ᵣ" +<Multi_key> <underscore> <s> : "ₛ" +<Multi_key> <underscore> <t> : "ₜ" +<Multi_key> <underscore> <u> : "ᵤ" +<Multi_key> <underscore> <v> : "ᵥ" +<Multi_key> <underscore> <x> : "ₓ"
\ No newline at end of file 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 <bugs@euro-cash.eu> +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/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 diff --git a/.config/emacs/modules/mm-editing.el b/.config/emacs/modules/mm-editing.el index 42fdb21..50be4ee 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 @@ -222,8 +226,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 "<return>" :remove)) + (with-eval-after-load 'multiple-cursors-core + (keymap-unset mc/keymap "<return>" :remove))) ;;; Increment Numbers @@ -310,13 +314,33 @@ is as described by `emmet-expand-line'." (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 (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)) + +(use-package xcompose-mode + :vc ( :url "https://git.thomasvoss.com/xcompose-mode" + :branch "master" + :rev :newest + :vc-backend Git) + :ensure t) + ;;; Mode-Specific Configurations @@ -332,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 diff --git a/.config/emacs/modules/mm-modeline.el b/.config/emacs/modules/mm-modeline.el index 2981307..d1ec6f0 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 @@ -50,7 +51,9 @@ ("Gmake" . "GMake") ("Imake" . "IMake") ("Js" . "JavaScript") - ("Ts Mode" . "Tree-Sitter Mode")) + ("Ts Mode" . "Tree-Sitter Mode") + ("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 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.")))) diff --git a/.config/emacs/modules/mm-theme.el b/.config/emacs/modules/mm-theme.el index 53dc97b..95c96c9 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.") @@ -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 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 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 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 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 diff --git a/.config/hypr/hyprland.conf.in b/.config/hypr/hyprland.conf.in index 586ffd0..dd22153 100644 --- a/.config/hypr/hyprland.conf.in +++ b/.config/hypr/hyprland.conf.in @@ -10,12 +10,16 @@ monitor = , highres, auto, 1 layerrule = noanim, overlay -# Remember to coppy settings to sddm.hyprland.conf +ecosystem { + no_update_news = yes +} + +# Remember to copy settings to sddm.hyprland.conf 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 @@ -88,10 +92,11 @@ 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) +__bind(Z, woomer) __bind(return, foot) __bind(space, fuzzel -I --log-level=warning --show-actions) __bind( , print, scst) @@ -171,6 +176,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') @@ -187,3 +196,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)$ diff --git a/.config/isync/mbsyncrc b/.config/isync/mbsyncrc index 4f123ed..88ab0cb 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 @@ -96,4 +115,4 @@ SubFolders Verbatim Channel humanwave Far :humanwave-remote: Near :humanwave-local: -Patterns * +Patterns *
\ No newline at end of file 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 diff --git a/.local/share/vault/vault.sec b/.local/share/vault/vault.sec Binary files differindex e9f4b2f..5f1a25f 100644 --- a/.local/share/vault/vault.sec +++ b/.local/share/vault/vault.sec diff --git a/.xkb/symbols/mango b/.xkb/symbols/mango index 76928f3..f2ab38f 100644 --- a/.xkb/symbols/mango +++ b/.xkb/symbols/mango @@ -15,10 +15,11 @@ xkb_symbols "basic" { key <AE07> { [ ampersand, 7, logicaland, 7 ] }; key <AE08> { [ asterisk, 8, U22C5, 8 ] }; // ⋅ key <AE09> { [ parenleft, 9, parenleft, 9 ] }; - key <AE10> { [ parenright, 0, parenright, 0 ] }; + key <AE10> { [ parenright, 0, U00B0, 0 ] }; // ° key <AE11> { [ minus, underscore, endash, emdash ] }; key <AD03> { [ e, E, eacute, Eacute ] }; + key <AD05> { [ t, T, thorn, THORN ] }; key <AD07> { [ u, U, udiaeresis, Udiaeresis ] }; // key <AD08> { [ i, I, U0133, U0132 ] }; // ij and IJ key <AD08> { [ i, I, idiaeresis, Idiaeresis ] }; @@ -49,3 +50,13 @@ xkb_symbols "german" { key <AC10> { [ NoSymbol, NoSymbol, singlelowquotemark, doublelowquotemark ] }; key <AC11> { [ NoSymbol, NoSymbol, leftsinglequotemark, leftdoublequotemark ] }; }; + +partial +xkb_symbols "swedish" { + include "mango(basic)" + name[Group1] = "Mango (Swedish)"; + + key <AD11> { [ aring, Aring, bracketleft, braceleft ] }; + key <AC10> { [ odiaeresis, Odiaeresis, semicolon, colon ] }; + key <AC11> { [ adiaeresis, Adiaeresis, apostrophe, quotedbl ] }; +}; |