summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRaymaekers Luca <raymaekers.luca@gmail.com>2024-01-05 16:56:42 +0100
committerRaymaekers Luca <raymaekers.luca@gmail.com>2024-01-05 16:56:42 +0100
commite6e98313b9769b431d8a66c0aac2b82295d2bf1e (patch)
tree1cdbc2075815fa88a0b80818174542e00a41f855
parent541ab2e483efe77d08ae5d04119a834f24b6d150 (diff)
parent0d10205772b2745356969176de6f52510527e5a6 (diff)
Merge branch 'main' of db:dotfiles
-rw-r--r--.gitignore4
-rwxr-xr-xbin/common/targit5
-rwxr-xr-xbin/common/ytclipo21
-rwxr-xr-xbin/common/ytlink14
-rwxr-xr-xbin/extra/append2mpv30
-rwxr-xr-xbin/extra/mariadb-adduser25
-rwxr-xr-xbin/extra/oclipp2
-rwxr-xr-xbin/extra/sgimg6
-rwxr-xr-xbin/guiscripts/dmfm3
-rwxr-xr-xbin/guiscripts/getdisplays3
-rwxr-xr-xbin/guiscripts/linkhandler8
-rwxr-xr-xbin/guiscripts/startdwl5
-rwxr-xr-xbin/guiscripts/sturl6
-rwxr-xr-xbin/guiscripts/torque4
-rwxr-xr-xbin/menuscripts/mmpv8
-rwxr-xr-xbin/menuscripts/mpass-otp7
-rwxr-xr-xconfig/X/x11/xinitrc5
-rw-r--r--config/common/mpv/input.conf5
-rwxr-xr-xconfig/common/mpv/mpv.conf2
-rw-r--r--config/common/newsboat/config8
-rw-r--r--config/essentials/git/config7
-rw-r--r--config/essentials/nvim/after/plugin/telescope.lua13
-rw-r--r--config/essentials/nvim/lua/user/init.lua4
-rw-r--r--config/essentials/nvim/lua/user/packer.lua2
-rw-r--r--config/essentials/nvim/lua/user/treesitter.lua31
-rw-r--r--config/essentials/nvim/lua/user/zk.lua5
-rw-r--r--config/essentials/shell/aliases.sh (renamed from config/essentials/zsh/aliases.sh)75
-rw-r--r--config/essentials/shell/functions.sh (renamed from config/essentials/zsh/functions.zsh)72
-rw-r--r--config/essentials/zsh/.zshrc64
-rw-r--r--config/extra/emacs/config.org622
-rw-r--r--config/extra/emacs/early-init.el1
-rw-r--r--config/extra/emacs/init.el17
-rw-r--r--config/extra/emacs/themes/nord-theme.el727
-rw-r--r--config/extra/emacs/themes/tlast-theme.el306
-rw-r--r--config/extra/tridactyl/tridactylrc2
-rw-r--r--config/home/.bashrc7
-rw-r--r--config/home/.zshenv4
-rw-r--r--config/theme/fontconfig/fonts.conf3
-rwxr-xr-xconfig/wayland/dwl/startup.sh4
-rw-r--r--config/wayland/hypr/binds.conf4
-rw-r--r--config/wayland/hypr/hyprland.conf29
-rw-r--r--config/wayland/mako/config2
-rw-r--r--[l---------]config/wayland/waybar/config.jsonc17
-rw-r--r--config/wayland/waybar/configs/dwm.jsonc16
-rw-r--r--config/wayland/waybar/configs/hyprland.jsonc78
-rwxr-xr-xconfig/wayland/waybar/scripts/status.sh2
-rwxr-xr-xconfig/wayland/waybar/status.sh2
-rw-r--r--[l---------]config/wayland/waybar/style.css21
-rw-r--r--config/wayland/waybar/styles/base16.css181
-rw-r--r--config/wayland/waybar/styles/colors/colors-nord29
l---------config/wayland/waybar/styles/colors/colors.css1
-rw-r--r--config/wayland/waybar/styles/dwm.css20
-rw-r--r--config/wayland/waybar/styles/nord.css142
53 files changed, 375 insertions, 2306 deletions
diff --git a/.gitignore b/.gitignore
index 11392b4..596f575 100644
--- a/.gitignore
+++ b/.gitignore
@@ -5,11 +5,12 @@ config/common/mpd/pid
config/common/mpv/playfile.txt
config/common/mpv/watch_later/*
config/essentials/gnupg/*
+config/essentials/nvim/lazy-lock.json
config/essentials/nvim/lua/.luarc.json
config/essentials/nvim/plugin/
config/essentials/nvim/spell/
-config/essentials/zsh/.zcompdump
config/essentials/zsh/histfile
+config/essentials/zsh/zcompcache/
config/extra/jftui/settings
config/extra/jftui/watch_later/*
config/extra/mutt/muttrc
@@ -21,3 +22,4 @@ config/hyprland/waybar/colors.css
config/old/vim/plugged/
config/old/vim/viminfo*
config/theme/gtk-3.0/bookmarks
+/config/essentials/zsh/.zcompdump
diff --git a/bin/common/targit b/bin/common/targit
index ae046ac..ca560b3 100755
--- a/bin/common/targit
+++ b/bin/common/targit
@@ -1,6 +1,5 @@
#!/bin/sh
-pwd=$(pwd)
root="$(git rev-parse --show-toplevel)"
cd "$root" || exit 1
-file="$(basename "$root" | sed 's/^\.//').tar.gz"
-tar czf "$pwd/$file" $(git ls-files)
+file="${root##*/}".tar.gz
+tar czf "$file" $(git ls-files)
diff --git a/bin/common/ytclipo b/bin/common/ytclipo
index 5d86c3f..6416a15 100755
--- a/bin/common/ytclipo
+++ b/bin/common/ytclipo
@@ -1,21 +1,8 @@
#!/bin/sh
-# argument ($1) -> clipboard -> stdin
-if [ "$WAYLAND_DISPLAY" ]
-then paste() { wl-paste; }
-elif [ "$TERMUX_VERSION" ]
-then paste() { termux-clipboard-get; }
-else paste() { xclip -o -sel c; }
-fi
-
-inp="$1"
-[ "${inp:=$(paste)}" ] || inp="$(cat /dev/stdin)"
-
-# take last link from clipboard
-# works when link is from yt-local
-inp="https://youtu.be/$(echo "$inp" | sed 's/.*\(.\{11\}\)$/\1/')"
+inp="$(ytlink)"
>&2 printf "inp: %s\n" "$inp"
-notify-send "ytclipo" "downloading <i>$inp</i>" || :
+# notify-send "ytclipo" "downloading <i>$inp</i>" || :
yt-dlp "$inp" \
--restrict-filenames \
@@ -23,5 +10,5 @@ yt-dlp "$inp" \
-f "b" \
-S "res:1080" \
-P "$HOME/vids/youtube/" \
- -o "%(channel)s - %(title)s.%(ext)s"
-notify-send "ytclipo" "finished downloading." || :
+ -o "%(channel)s/%(title)s.%(ext)s"
+# notify-send "ytclipo" "finished downloading." || :
diff --git a/bin/common/ytlink b/bin/common/ytlink
new file mode 100755
index 0000000..a5e9bf0
--- /dev/null
+++ b/bin/common/ytlink
@@ -0,0 +1,14 @@
+#!/bin/sh
+
+# convert to youtube.com/path url
+# works for:
+# - 'youtu.be/watch?v=xxxxxx'
+# - 'https://piped.video/watch?v=xxxxx'
+
+inp="$1"
+[ "${inp:=$(clipo)}" ] || inp="$(cat /dev/stdin)"
+
+# remove util scheme
+inp="${inp#*//}"
+inp="https://youtube.com/${inp#*/}"
+printf "%s" "$inp"
diff --git a/bin/extra/append2mpv b/bin/extra/append2mpv
new file mode 100755
index 0000000..28c3916
--- /dev/null
+++ b/bin/extra/append2mpv
@@ -0,0 +1,30 @@
+#!/bin/sh
+IPC="/tmp/mpvsocket"
+
+die () { >&2 printf '%s\n' "$@"; exit 1; }
+append_to_mpv()
+{
+ file="$(readlink -f "$1")"
+ if [ ! -r "$file" ]
+ then
+ >&2 printf '%s\n' "'$file' not found"
+ return
+ fi
+
+ echo '{ "command": ["loadfile", "'"$file"'", "append"] }' |
+ socat - "$IPC"
+}
+
+[ -S "$IPC" ] || die "$IPC is not a socket or doesn't exist"
+which socat > /dev/null || exit 1
+
+
+if [ -t 0 ]
+then
+ append_to_mpv "$1"
+else
+ while read -r file
+ do
+ append_to_mpv "$file"
+ done
+fi
diff --git a/bin/extra/mariadb-adduser b/bin/extra/mariadb-adduser
new file mode 100755
index 0000000..d4e1b45
--- /dev/null
+++ b/bin/extra/mariadb-adduser
@@ -0,0 +1,25 @@
+#!/bin/sh
+if [ "$(id -u)" -ne 0 ]
+then
+ >&2 printf "Not root.\n"
+ exit 1
+fi
+
+printf 'name? '
+name="$(head -n 1)"
+printf 'password? '
+password="$(head -n 1)"
+printf 'database? '
+database="$(head -n 1)"
+
+(
+ cat <<EOF
+ CREATE USER '$name'@'%' IDENTIFIED BY '$password';
+EOF
+ [ "$database" ] && cat <<EOF
+ GRANT ALL PRIVILEGES ON `$database`.* TO '$name'@'%' WITH GRANT OPTION;
+ CREATE DATABASE `$database`;
+ FLUSH PRIVILEGES;
+EOF
+
+) | mariadb
diff --git a/bin/extra/oclipp b/bin/extra/oclipp
new file mode 100755
index 0000000..b711385
--- /dev/null
+++ b/bin/extra/oclipp
@@ -0,0 +1,2 @@
+#!/bin/sh
+printf "\033]52;c;%s\a" "$(cat | base64)"
diff --git a/bin/extra/sgimg b/bin/extra/sgimg
new file mode 100755
index 0000000..acb8126
--- /dev/null
+++ b/bin/extra/sgimg
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+imv "$(find ~/.local/share/gurk/ -type f \( -iname '*.png' -o -iname '*.jpg' \) -printf "%A@\t%p\n" |
+ sort -n |
+ tail -n 1 |
+ cut -f 2-)"
diff --git a/bin/guiscripts/dmfm b/bin/guiscripts/dmfm
index d1dd8b8..9485469 100755
--- a/bin/guiscripts/dmfm
+++ b/bin/guiscripts/dmfm
@@ -2,9 +2,10 @@
while true
do
+ dir="$(printf '%s' "$PWD" | sed "s#^$HOME#\~#;s#\([^/]\)[^/]*/#\1/#g")"
file=$(find . -maxdepth 1 -mindepth 1 -not -name '.*' -printf '%y\t%f\n' |
sort -k 1 -k 2 | cut -f 2- |
- commander -xcd -p "$PWD>")
+ commander -xc -p "$dir")
[ "$file" ] || break
[ ! -e "$file" ] && continue
diff --git a/bin/guiscripts/getdisplays b/bin/guiscripts/getdisplays
new file mode 100755
index 0000000..8712b30
--- /dev/null
+++ b/bin/guiscripts/getdisplays
@@ -0,0 +1,3 @@
+#!/bin/sh
+grep -l '^connected$' /sys/class/drm/*/status |
+ sed 's@^/sys/class/drm/[^-]*-\(.*\)/status$@\1@'
diff --git a/bin/guiscripts/linkhandler b/bin/guiscripts/linkhandler
index aeec202..329e267 100755
--- a/bin/guiscripts/linkhandler
+++ b/bin/guiscripts/linkhandler
@@ -11,6 +11,12 @@ test -z "${url:=$1}" &&
dunstify "linkhandler" "<b>handling</b> $url"
case "$url" in
+ file://*) file="${url##file:/}"
+ case "$(file -bi "$file" | cut -f1 -d'/')" in
+ audio|video) mpv "$file" ;;
+ image) imv "$file" ;;
+ *) xdg-open "$file" ;;
+ esac ;;
*mkv|*webm|*mp4|*youtube.com/watch*|*youtube.com/playlist*|*youtube.com/shorts*|*youtu.be*|*hooktube.com*|*bitchute.com*|*videos.lukesmith.xyz*|*odysee.com*)
setsid -f mpv --quiet --ytdl --ytdl-raw-options="format-sort=res:720" "$url" > /dev/null 2>&1 ;;
*png|*jpg|*jpe|*jpeg|*gif)
@@ -18,7 +24,7 @@ case "$url" in
*pdf|*cbz|*cbr)
curl -sL "$url" > "/tmp/$(echo "$url" | sed "s/.*\///;s/%20/ /g")" && $VIEWER "/tmp/$(echo "$url" | sed "s/.*\///;s/%20/ /g")" >/dev/null 2>&1 & ;;
*mp3|*flac|*opus|*mp3?source*)
- qndl "$url" 'curl -LO' >/dev/null 2>&1 ;;
+ mpv "$url" 'curl -LO' >/dev/null 2>&1 ;;
*)
if [ -f "$url" ]
then setsid -f "$TERMINAL" -e "$EDITOR" "$url" >/dev/null 2>&1
diff --git a/bin/guiscripts/startdwl b/bin/guiscripts/startdwl
index bb5fec0..039f506 100755
--- a/bin/guiscripts/startdwl
+++ b/bin/guiscripts/startdwl
@@ -39,6 +39,7 @@ export IMAGE="imv"
# env = __GLX_VENDOR_LIBRARY_NAME,nvidia
# env = WLR_NO_HARDWARE_CURSORS,1
-while true;
-do dwl -s "$HOME"/.config/dwl/startup.sh
+while true
+do
+ dwl -s "$HOME"/.config/dwl/startup.sh
done
diff --git a/bin/guiscripts/sturl b/bin/guiscripts/sturl
index c738c8e..5b8b1e7 100755
--- a/bin/guiscripts/sturl
+++ b/bin/guiscripts/sturl
@@ -1,11 +1,11 @@
#!/bin/sh
-regex='(((https?|gopher|gemini|ftps?|git)://|www\.)[a-zA-Z0-9.]*[:;a-zA-Z0-9./+@$&%?$\#=_~-]*)|(magnet:\?xt=urn:btih:[a-zA-Z0-9]*)'
-url="$(tr -d '\n' | grep -Eo "$regex" | dmenu -x -c -g 1 -l 10)"
+regex='(((file|https?|gopher|gemini|ftps?|git)://|www\.)[a-zA-Z0-9.]*[:;a-zA-Z0-9./+@$&%?$\#=_~-]*)|(magnet:\?xt=urn:btih:[a-zA-Z0-9]*)'
+url="$(tr -d '\n' | grep -Eo "$regex" | tac | commander -cl)"
[ -z "$url" ] && exit 1
case $1 in
- 'c') echo -n "$url" | xclip -sel c -r ;;
+ 'c') printf '%s' "$url" | xclip -sel c -r ;;
'o') linkhandler "$url" ;;
*) echo "no option" ;;
esac
diff --git a/bin/guiscripts/torque b/bin/guiscripts/torque
index 51e2806..8f939e1 100755
--- a/bin/guiscripts/torque
+++ b/bin/guiscripts/torque
@@ -47,8 +47,8 @@ prompt() {
r) read -rp "remove torrent: #"; send -t "$REPLY" -r; k=0 ;;
o) read -rp "load magnet: "; send -a "$REPLY"; k=0 ;;
m)
- read -rp "move torrent: " torrent
- read -rp "destination folder: "
+ read -rp "move torrent: #" torrent
+ read -rp "destination folder: /downloads/"
send -t "$torrent" --move "/downloads/$REPLY"
;;
j) ((j==${#t[@]}))||((k=k>=j?k:++k,j=j<${#t[@]}?++j:j)) ;;
diff --git a/bin/menuscripts/mmpv b/bin/menuscripts/mmpv
new file mode 100755
index 0000000..76c0d6a
--- /dev/null
+++ b/bin/menuscripts/mmpv
@@ -0,0 +1,8 @@
+#!/bin/sh
+# Have an mpv instance that works with a socket somewhat globally
+socket="/tmp/mpvsocket"
+# Start mpv in idle if socket is not getting listened to
+nc -zvU "$socket" || setsid mpv --input-ipc-server=/tmp/mpvsocket --idle &
+file="$(PLAYER='echo' mmedia video)"
+[ "$file" ] || exit 1
+echo '{ "command": ["loadfile", "'"$file"'", "append-play"] }' | nc -U /tmp/mpvsocket
diff --git a/bin/menuscripts/mpass-otp b/bin/menuscripts/mpass-otp
new file mode 100755
index 0000000..e771f9f
--- /dev/null
+++ b/bin/menuscripts/mpass-otp
@@ -0,0 +1,7 @@
+#!/bin/sh
+pass="$(find "$PASSWORD_STORE_DIR"/keys/otp -name "*.gpg" -printf '%f\n' |
+ sed 's/\.gpg$//' |
+ commander -c)"
+[ "$pass" ] || exit 1
+pass otp -c keys/otp/"$pass"
+notify-send -t 1000 "mpass" "copied <b>$pass</b>"
diff --git a/config/X/x11/xinitrc b/config/X/x11/xinitrc
index 4eb34ed..3924917 100755
--- a/config/X/x11/xinitrc
+++ b/config/X/x11/xinitrc
@@ -22,11 +22,12 @@ export MENUCMD="dmenu"
export IMAGE="feh"
xcompmgr &
feh --no-fehbg --bg-scale ~/pics/wallpaper
-setxkbmap -option ctrl:nocaps
+setxkbmap -option ctrl:swapcaps
xmodmap -e "keycode 135 = Super_L"
-xautolock -time 5 -locker slock &
+# xautolock -locker slock &
gammastep -m randr &
slstatus &
+emacs --daemon &
eval "$(keychain --dir "$XDG_CONFIG_HOME/keychain" --eval --quiet --agents gpg,ssh)"
unclutter --timeout 3 --jitter 50 -b
exec startdwm
diff --git a/config/common/mpv/input.conf b/config/common/mpv/input.conf
index 295dd4d..7e8c13c 100644
--- a/config/common/mpv/input.conf
+++ b/config/common/mpv/input.conf
@@ -204,3 +204,8 @@ Alt+c cycle sub-visibility # Toggle subtitles
v cycle audio # switch audio track
V cycle audio # switch audio track
ctrl+l cycle-values loop-file "inf" "no" # toggle infinite looping
+
+# Keep open after exit
+P cycle keep-open up
+
+K script-message osc-chapterlist \ No newline at end of file
diff --git a/config/common/mpv/mpv.conf b/config/common/mpv/mpv.conf
index 7d9d1fe..25f4cd2 100755
--- a/config/common/mpv/mpv.conf
+++ b/config/common/mpv/mpv.conf
@@ -24,6 +24,8 @@ demuxer-max-back-bytes=75000000
# Force stream to be seekable even if disabled.
force-seekable=yes
+stop-screensaver=yes
+
slang=eng, en, english
alang=jpn
diff --git a/config/common/newsboat/config b/config/common/newsboat/config
index 5f93d68..88ec7ad 100644
--- a/config/common/newsboat/config
+++ b/config/common/newsboat/config
@@ -18,15 +18,19 @@ highlight article "\\[[0-9]+\\]" color10 default bold
highlight article "\\[image\\ [0-9]+\\]" color10 default bold
highlight feedlist "^─.*$" color6 color0 bold
-bind-key j next all
-bind-key k prev all
+bind-key j next
+bind-key k prev
bind-key h quit
+bind-key h set-tag feedlist # return back to tags from 'selected tag' view
bind-key l open
bind-key g home
bind-key G end
bind-key U show-urls
bind-key a toggle-article-read
+# Set home to tags
+run-on-startup set-tag
+
show-keymap-hint no
swap-title-and-hints yes
diff --git a/config/essentials/git/config b/config/essentials/git/config
index 66ed53e..fcf80db 100644
--- a/config/essentials/git/config
+++ b/config/essentials/git/config
@@ -3,7 +3,10 @@
[user]
email = raymaekers.luca@gmail.com
name = Raymaekers Luca
+ signingkey = 3A626DD20A32EB2E5DD9CE71CFD9ABC97158CD5D
+[push]
+ autosetupremote = true
[pull]
rebase = false
-[merge]
- ff = false
+[commit]
+ gpgsign = true
diff --git a/config/essentials/nvim/after/plugin/telescope.lua b/config/essentials/nvim/after/plugin/telescope.lua
index 7a2ef34..32a7fbf 100644
--- a/config/essentials/nvim/after/plugin/telescope.lua
+++ b/config/essentials/nvim/after/plugin/telescope.lua
@@ -1,3 +1,4 @@
+-- require('telescope').load_extension('fzf')
require('telescope').load_extension('media_files')
require('telescope').setup({
@@ -11,12 +12,12 @@ require('telescope').setup({
dynamic_preview_title = true,
},
extensions = {
- fzf = {
- fuzzy = true,
- override_generic_sorter = true,
- override_file_sorter = true,
- case_mode = "smart_case",
- },
+ -- fzf = {
+ -- fuzzy = true,
+ -- override_generic_sorter = true,
+ -- override_file_sorter = true,
+ -- case_mode = "smart_case",
+ -- },
media_files = {
filetypes = {"png", "webp", "jpg", "jpeg"},
find_cmd = "rg"
diff --git a/config/essentials/nvim/lua/user/init.lua b/config/essentials/nvim/lua/user/init.lua
index f195e4f..de96b5c 100644
--- a/config/essentials/nvim/lua/user/init.lua
+++ b/config/essentials/nvim/lua/user/init.lua
@@ -1,8 +1,8 @@
-require("user.lazy")
+require("user.packer")
require("user.remap")
require("user.treesitter")
require("user.set")
-require("user.cmp")
+-- require("user.cmp")
require("user.zk")
require("user.live-server")
vim.cmd.source(vim.fn.stdpath("config") .. "/lua/user/aucommands.vim")
diff --git a/config/essentials/nvim/lua/user/packer.lua b/config/essentials/nvim/lua/user/packer.lua
index 8091d85..edb763d 100644
--- a/config/essentials/nvim/lua/user/packer.lua
+++ b/config/essentials/nvim/lua/user/packer.lua
@@ -42,7 +42,7 @@ return require('packer').startup(function(use)
use('ojroques/vim-oscyank', { branch = "main" })
use("potamides/pantran.nvim")
use('alx741/vinfo')
- use('sheerun/vim-polyglot')
+ -- use('sheerun/vim-polyglot') TODO: fix error conflicting with telekasten
-- use('github/copilot.vim')
--
use {
diff --git a/config/essentials/nvim/lua/user/treesitter.lua b/config/essentials/nvim/lua/user/treesitter.lua
index 5b1fc5e..2355215 100644
--- a/config/essentials/nvim/lua/user/treesitter.lua
+++ b/config/essentials/nvim/lua/user/treesitter.lua
@@ -9,36 +9,9 @@ require'nvim-treesitter.configs'.setup {
-- Recommendation: set to false if you don't have `tree-sitter` CLI installed locally
auto_install = true,
- -- List of parsers to ignore installing (or "all")
- ignore_install = { "javascript" },
+ indent = { enable = on },
- ---- If you need to change the installation directory of the parsers (see -> Advanced Setup)
- -- parser_install_dir = "/some/path/to/store/parsers", -- Remember to run vim.opt.runtimepath:append("/some/path/to/store/parsers")!
- indent = {
- enable = on
- },
+ highlight = { enable = true, },
- highlight = {
- enable = true,
-
- -- NOTE: these are the names of the parsers and not the filetype. (for example if you want to
- -- disable highlighting for the `tex` filetype, you need to include `latex` in this list as this is
- -- the name of the parser)
- -- list of language that will be disabled
- disable = { "c", "rust" },
- -- Or use a function for more flexibility, e.g. to disable slow treesitter highlight for large files
- disable = function(lang, buf)
- local max_filesize = 100 * 1024 -- 100 KB
- local ok, stats = pcall(vim.loop.fs_stat, vim.api.nvim_buf_get_name(buf))
- if ok and stats and stats.size > max_filesize then
- return true
- end
- end,
-
- -- Setting this to true will run `:h syntax` and tree-sitter at the same time.
- -- Set this to `true` if you depend on 'syntax' being enabled (like for indentation).
- -- Using this option may slow down your editor, and you may see some duplicate highlights.
- -- Instead of true it can also be a list of languages
additional_vim_regex_highlighting = false,
- },
}
diff --git a/config/essentials/nvim/lua/user/zk.lua b/config/essentials/nvim/lua/user/zk.lua
index 98476ca..3641025 100644
--- a/config/essentials/nvim/lua/user/zk.lua
+++ b/config/essentials/nvim/lua/user/zk.lua
@@ -41,6 +41,11 @@ require("telekasten").setup({
media_previewer = "telescope-media-files",
follow_url_fallback = nil,
vaults = {
+ Ideas = {
+ home = home .. "/" .. "Ideas",
+ template_new_note = home .. "/" .. "templates/new_note.md",
+ new_note_filename = "title",
+ },
Driving = {
home = home .. "/" .. "Driving",
template_new_note = home .. "/" .. "templates/new_note.md",
diff --git a/config/essentials/zsh/aliases.sh b/config/essentials/shell/aliases.sh
index 0da835a..99c49d8 100644
--- a/config/essentials/zsh/aliases.sh
+++ b/config/essentials/shell/aliases.sh
@@ -1,6 +1,9 @@
-#!/bin/zsh
+#!/bin/sh
# s/alias \([^-]\)/alias -g \1
+# The most important one
+alias vi='emacsclient -nw'
+
# Zsh specific aliases
if [ $SHELL = "/bin/zsh" ]
then
@@ -137,7 +140,7 @@ alias ss4='ss -tln4p'
alias mdb='mariadb -u admin -ppass admindb'
alias mdbw='mariadb -h 0.0.0.0 -u padmin -pbulbizarre padmindb'
alias mdbwa='mariadb -h 10.3.50.5 -u padmin -pbulbizarre padmindb'
-alias tmux='tmux a || tmux'
+alias tmux='pgrep tmux && tmux attach || tmux new-session'
# ssh
alias sha='ssh-add'
@@ -180,7 +183,7 @@ alias gdate='date +%y_%m_%d-%T'
alias tpid='tail -f /dev/null --pid'
alias pwdcp='pwd | clipp'
alias gw="grep -ri"
-alias srcsupd='echo ~/src/{installdrier,dotfiles,password-store} | supd'
+alias srcsupd='echo ~/src/{installdrier,dotfiles,password-store} ~/.config/emacs | supd'
# systemctl aliases
alias smc='systemctl'
@@ -191,15 +194,17 @@ alias smcr='systemctl restart'
alias smcrl='systemctl reload'
alias smcd='systemctl daemon-reload'
alias smce='systemctl edit'
+alias smcen='systemctl enable'
#user
alias smcu='systemctl --user'
-alias smcus='systemctl status --user'
-alias smcust='systemctl start --user'
-alias smcuS='systemctl stop --user'
-alias smcur='systemctl restart --user'
-alias smcurl='systemctl reload --user'
-alias smcud='systemctl daemon-reload --user'
-alias smcue='systemctl edit --user'
+alias smcus='systemctl --user status'
+alias smcust='systemctl --user start'
+alias smcuS='systemctl --user stop'
+alias smcur='systemctl --user restart'
+alias smcurl='systemctl --user reload'
+alias smcud='systemctl --user daemon-reload'
+alias smcue='systemctl --user edit'
+alias smcuen='systemctl --user enable'
#doas
alias dsmc='doas systemctl'
alias dsmcs='doas systemctl status'
@@ -209,6 +214,7 @@ alias dsmcr='doas systemctl restart'
alias dsmcrl='doas systemctl reload'
alias dsmcd='doas systemctl daemon-reload'
alias dsmce='doas systemctl edit'
+alias dsmcen='doas systemctl enable'
# virtualbox aliases
alias vbm='vboxmanage'
@@ -217,28 +223,29 @@ alias vblsr='vbm list runningvms'
alias vb='vbm startvm'
# quick config
-alias ez='$EDITOR ${ZDOTDIR:-~}/.zshrc'
-alias eza='$EDITOR ${ZDOTDIR}/aliases.sh'
-alias ezf='$EDITOR ${ZDOTDIR}/functions.zsh'
-alias eto='$EDITOR ~/sync/TODO'
-alias edw='$EDITOR ~/proj/suckless/dwm/config.def.h'
-alias edm='$EDITOR ~/proj/suckless/dmenu/config.def.h'
-alias ehst='$EDITOR $ZDOTDIR/histfile'
-alias ezh=' $EDITOR $HISTFILE'
-alias est='$EDITOR ~/proj/suckless/st/config.def.h'
-alias esl='$EDITOR ~/proj/suckless/slock/config.def.h'
-alias esls='$EDITOR ~/proj/suckless/slstatus/config.def.h'
-alias ehy='$EDITOR ~/.config/hypr/hyprland.conf'
-alias ehyb='$EDITOR ~/.config/hypr/binds.conf'
-alias ewbj='$EDITOR ~/.config/waybar/config.jsonc'
-alias ewbs='$EDITOR ~/.config/waybar/style.css'
-alias cfd='$EDITOR config.def.h'
+alias ez='vi ${ZDOTDIR:-~}/.zshrc'
+alias eza='vi $HOME/.config/shell/aliases.sh'
+alias ezf='vi $HOME/.config/shell/functions.sh'
+alias eto='vi ~/sync/TODO'
+alias edw='vi ~/proj/suckless/dwm/config.def.h'
+alias edm='vi ~/proj/suckless/dmenu/config.def.h'
+alias ehst='vi $ZDOTDIR/histfile'
+alias ezh=' vi $HISTFILE'
+alias est='vi ~/proj/suckless/st/config.def.h'
+alias esl='vi ~/proj/suckless/slock/config.def.h'
+alias esls='vi ~/proj/suckless/slstatus/config.def.h'
+alias ehy='vi ~/.config/hypr/hyprland.conf'
+alias ehyb='vi ~/.config/hypr/binds.conf'
+alias ewbj='vi ~/.config/waybar/config.jsonc'
+alias ewbs='vi ~/.config/waybar/style.css'
+alias cfd='vi config.def.h'
# /# quick cd jV}k:!sort -t "'" -k 2
alias cdl='cd ~/dl'
alias cdoc='cd ~/docs'
alias czk='cd ~/docs/zk'
alias cda='cd ~/docs/android/projects'
alias csv='cd ~/docs/school/Vakken'
+alias cdpj='cd ~/docs/school/Vakken/ITProj'
alias cdm='cd ~/music'
alias cdp='cd ~/pics'
alias cdpa='cd ~/pics/ai-outputs/'
@@ -265,21 +272,28 @@ alias czo='cd ~/zot/'
alias cdpw='cd ${PASSWORD_STORE_DIR:-~/.password-store}'
alias cdng='cd /etc/nginx'
alias cdrs='cd /srv/'
+alias cdv='cd ~/vids'
alias god='cd "$(find . -mindepth 1 -maxdepth 1 -type d | fzf)"'
+alias gov='go ~/vids d'
# fzf aliases
alias ppj='cd ~/proj/personal/"$(find ~/proj/personal -mindepth 1 -maxdepth 1 -type d -printf "%f\n" | fzf)"'
alias ppjs='cd ~/proj/personal/scripts/"$(find ~/proj/personal/scripts -mindepth 1 -maxdepth 1 -type d -printf "%f\n" | fzf)"'
alias scr='edit_in_dir ~/proj/personal/scripts/'
alias fil='edit_in_dir ~/docs/filios/'
-alias cfg='edit_in_dir ~/src/dotfiles'
alias fzps='ps aux | tail +2 | fzf | tee /dev/stderr | awk '\''{print $2}'\'' | clipp'
alias asf='alias | fzf'
-alias fzh="tac $HISTFILE | fzf | tee /dev/stderr | clipp"
+alias fzh="fzf --tac < $HISTFILE | tee /dev/stderr | clipp"
alias ffwin='hyprctl clients -j | jq '\''.[].pid'\'' | fzf --preview "hyprctl clients -j | jq '\''.[] | select(.pid == {}) | {class, title, workspace, xwayland}'\''"'
alias pff='find ${PASSWORD_STORE_DIR:=~/src/password-store/} -name "*.gpg" | sed -e "s@$PASSWORD_STORE_DIR/@@" -e '\''s/\.gpg$//'\'' | fzf | xargs pass show -c'
alias fzps='fzf --print0 | xargs -0I{}'
-alias ytdl='yt-dlp --restrict-filenames --embed-chapters -f "b" -S "res:1080" -P "$HOME/vids/youtube/" -o "%(channel)s - %(title)s.%(ext)s"'
+alias ytdl='yt-dlp --restrict-filenames --embed-chapters -f "b" -S "res:1080" -P "$HOME/vids/youtube/" -o "%(channel)s/%(title)s.%(ext)s"'
+alias ytplay='mpv "$(ytlink)"'
+
+# emacs aliases
+alias emacsd='emacs --daemon'
+alias emacsdbg='emacs --debug-init'
+alias e='emacsclient -c -a "emacs"'
# docker aliases
alias dcb='docker build'
@@ -300,7 +314,8 @@ alias dbsmu='rsync -aPz db:/media/basilisk/music/ /media/kilimanjaro/music'
# oh-my-zsh git aliases
alias config='GIT_WORK_TREE=~/src/dotfiles/ GIT_DIR=~/src/dotfiles/.git'
-alias gmod='git status --short | sed '\''/^\s*M/!d;s/^\s*M\s*//'\'' | fzf | xargs $EDITOR'
+alias cfg='vi ~/src/dotfiles/"$(config git ls-files | fzf || exit)"'
+alias gmod='git status --short | sed '\''/^\s*M/!d;s/^\s*M\s*//'\'' | fzf | xargs vi'
alias g='git'
alias ga='git add'
alias gaa='git add --all'
diff --git a/config/essentials/zsh/functions.zsh b/config/essentials/shell/functions.sh
index 4145813..b699a86 100644
--- a/config/essentials/zsh/functions.zsh
+++ b/config/essentials/shell/functions.sh
@@ -1,4 +1,4 @@
-#!/bin/zsh
+#!/bin/sh
log() { >&2 printf '%s' "$@"; }
logn() { >&2 printf '%s\n' "$@"; }
@@ -9,12 +9,12 @@ vmp() {
-c 'set ft=man nolist nonu nornu'
}
nvf() {
- local cache="$HOME/.cache/nvf"
- local match="$(grep -m1 "$1$" "$cache" 2> /dev/null)"
+ cache="$HOME/.cache/nvf"
+ match="$(grep -m1 "$1$" "$cache" 2> /dev/null)"
if test ! -f "$match"
then
logn "resetting cache..."
- match="$(goo | tee "$cache" | grep -m 1 "$1$" 2> /dev/null)"
+ match="$(goo f "$HOME" | tee "$cache" | grep -m 1 "$1$" 2> /dev/null)"
# # Alternative:
# match="$(goo | grep -m 1 "$1" 2> /dev/null | tee -a | "$cache")"
fi
@@ -26,8 +26,8 @@ nvf() {
fi
}
-nnn() { test -z "$NNNLVL" && /usr/bin/nnn "$@" || exit }
-ranger() { test -z "$RANGER_LEVEL" && /usr/bin/ranger "$@" || exit }
+nnn() { test -z "$NNNLVL" && /usr/bin/nnn "$@" || exit; }
+ranger() { test -z "$RANGER_LEVEL" && /usr/bin/ranger "$@" || exit; }
# googoo aliases
_googoo_fzf_opt()
@@ -62,7 +62,7 @@ vimh() { vi -c "help $1" -c 'call feedkeys("\<c-w>o")'; }
dgo() { cd "$(goo d ~ | fzf --filter "$@" | head -n 1)"; }
open() { $EDITOR "$(goo f ~ | fzf --filter "$@" | head -n 1)"; }
pkbs() { doas pacman -Sy "$(pkgfile -b "$1" | tee /dev/stderr)"; }
-oclip() { printf "\033]52;c;$(echo -n "$@" | base64)\a"; }
+oclip() { printf "\033]52;c;$(printf '%s' "$@" | base64)\a"; }
sms() { ssh -t phone sendmsg "$1" "'$2'"; }
trcp() { scp "$1" db:/media/basilisk/downloads/transmission/torrents/; }
rln() { ln -s "$(readlink -f "$1")" "$2"; }
@@ -70,7 +70,7 @@ getgit() { git clone git@db:"$1"; }
ipc()
{
- if [[ "$(ip link show eno1 | awk -F, 'NR=1 {print $3}')" == "UP" ]]
+ if [ "$(ip link show eno1 | awk -F, 'NR=1 {print $3}')" = "UP" ]
then
doas ip link set eno1 down
else
@@ -85,7 +85,6 @@ psgrep()
}
unique() {
- local f
f="$(mktemp)"
awk '!x[$0]++' "$1" > "$f"
mv "$f" "$1"
@@ -111,7 +110,7 @@ __git_files() {
}
esc() {
- $EDITOR "$(which $1)"
+ eval "$EDITOR '$(which $1)'"
}
delfile() {
@@ -152,16 +151,16 @@ ginit()
# Returns current branch
git_current_branch()
{
- command git rev-parse --git-dir &>/dev/null || return
+ command git rev-parse --git-dir > /dev/null 2>&1 || return
git branch --show-current
}
# Check if main exists and use instead of master
git_main_branch()
{
- command git rev-parse --git-dir &>/dev/null || return
- local ref
- for ref in refs/{heads,remotes/{origin,upstream}}/{main,trunk,mainline,default}; do
+ command git rev-parse --git-dir > /dev/null 2>&1 || return
+ for ref in refs/{heads,remotes/{origin,upstream}}/{main,trunk,mainline,default}
+ do
if command git show-ref -q --verify $ref; then
echo ${ref:t}
return
@@ -172,10 +171,11 @@ git_main_branch()
# Check for develop and similarly named branches
function git_develop_branch() {
- command git rev-parse --git-dir &>/dev/null || return
- local branch
- for branch in dev devel development; do
- if command git show-ref -q --verify refs/heads/$branch; then
+ command git rev-parse --git-dir > /dev/null 2>&1 || return
+ for branch in dev devel development
+ do
+ if command git show-ref -q --verify refs/heads/$branch
+ then
echo $branch
return
fi
@@ -186,11 +186,14 @@ function git_develop_branch() {
# gpg backup
gpg_backup()
{
- gpg --export-secret-keys --armor > private.asc
- gpg --export --armor > public.asc
- gpg --export-ownertrust --armor > trust.asc
- tar czf gpg_backup.tar.gz {public,private,trust}.asc
- shred -uz {public,private,trust}.asc
+ # $1: option
+ # $2: output file (without .asc)
+ gpg_command() { gpg "$1" --armor > "$2".asc; }
+ gpg_command --export-secret-keys "private"
+ gpg_command --export "public"
+ gpg_command --export-ownertrust "trust"
+ tar -czvf gpg_backup.tar.gz public.asc private.asc trust.asc
+ shred -uz public.asc private.asc trust.asc
}
gpg_import()
@@ -200,7 +203,7 @@ gpg_import()
gpg --import public.asc
gpg --import-ownertrust trust.asc
gpg --import private.asc
- shred -uz {public,private,trust}.asc
+ shred -uz public.asc private.asc trust.asc
}
ngenable()
@@ -242,17 +245,23 @@ pacsize()
mime-default ()
{
- logn "Setting '$1' as default for its mimetypes"
- grep "MimeType=" /usr/share/applications/"$1".desktop |
+ [ "${mime:=$1}" ] ||
+ mime="$(find /usr/share/applications/ -iname '*.desktop' -printf '%f\n' |
+ sed 's/\.desktop$//' |
+ fzf)"
+
+ logn "Setting '$mime' as default for its mimetypes"
+ [ "$mime" ] || exit 1
+ grep "MimeType=" /usr/share/applications/"$mime".desktop |
cut -d '=' -f 2- | tr ';' '\0' |
- xargs -0I{} xdg-mime default "$1".desktop "{}"
+ xargs -0I{} xdg-mime default "$mime".desktop "{}"
logn "Done."
}
addedkeys() {
find ~/.ssh -iname "*.pub" | while read key
do
- local fingerprint="$(ssh-keygen -lf "$key" 2>/dev/null)"
+ fingerprint="$(ssh-keygen -lf "$key" 2>/dev/null)"
if ssh-add -l | grep -q "$fingerprint"
then
echo "$key"
@@ -270,8 +279,6 @@ fpass() {
muttmail()
{
- local config
- local mail
config="$HOME/.config/mutt"
mail="$(find "$config"/configs -type f -printf '%f\n' | fzf)"
[ "$mail" ] || return 1
@@ -292,3 +299,8 @@ edit_in_dir() {
[ -f "$file" ] || return 1
$EDITOR "$file"
}
+
+to_webm()
+{
+ ffmpeg -y -i "$1" -vcodec libvpx -cpu-used -12 -deadline realtime "${1%.*}".webm
+}
diff --git a/config/essentials/zsh/.zshrc b/config/essentials/zsh/.zshrc
index 76ff87f..90f4b14 100644
--- a/config/essentials/zsh/.zshrc
+++ b/config/essentials/zsh/.zshrc
@@ -15,24 +15,67 @@ autoload -U select-word-style
autoload -z edit-command-line
zle -N edit-command-line
zstyle ':compinstall' filename '/home/aluc/.zshrc'
+
+### Completion
+# cache
+zstyle ':completion:*' use-cache on
+zstyle ':completion:*' cache-path "$ZDOTDIR/zcompcache"
+
+# completers
+zstyle ':completion:*' completer _extensions _complete
+
+# format
+zstyle ':completion:*:*:*:*:descriptions' format '%F{blue}-- %D%d --%f'
+zstyle ':completion:*:*:*:*:messages' format '%F{purple}-- %d --%f'
+zstyle ':completion:*:*:*:*:warnings' format '%F{red}-- no matches found --%f'
+zstyle ':completion:*:default' list-prompt '%S%M matches%s'
+# show a 'ls -a' like outptut when listing files
+zstyle ':completion:*:*:*:*:default' list-colors ${(s.:.)LS_COLORS}
+
+# Group completions by categories
+zstyle ':completion:*' group-name ''
+zstyle ':completion:*:*:-command-:*:*' group-order aliases builtins functions commands
+
+zstyle ':completion:*' squeeze-slashes true
+
+# Prefer completing for an option (think cd -)
+zstyle ':completion:*' complete-options true
+
+# keep prefix when completing
+zstyle ':completion:*' keep-prefix true
+
+# ui
zstyle ':completion:*' menu select
-autoload -Uz compinit
+# Move around using h j k l in completion menu
+zmodload zsh/complist
+bindkey -M menuselect 'h' vi-backward-char
+bindkey -M menuselect 'k' vi-up-line-or-history
+bindkey -M menuselect 'j' vi-down-line-or-history
+bindkey -M menuselect 'l' vi-forward-char
+bindkey -M menuselect '^xg' clear-screen
+# interactive mode
+bindkey -M menuselect '^xi' vi-insert
+bindkey -M menuselect '^xh' accept-and-hold # Hold
+bindkey -M menuselect '^xn' accept-and-infer-next-history # Next
+bindkey -M menuselect '^xu' undo # Undo
+
+autoload -Uz compinit; compinit
+
autoload -Uz surround
zle -N delete-surround surround
zle -N add-surround surround
zle -N change-surround surround
-compinit
# Source files
-. $ZDOTDIR/functions.zsh
-. $ZDOTDIR/aliases.sh
+. $XDG_CONFIG_HOME/shell/functions.sh
+. $XDG_CONFIG_HOME/shell/aliases.sh
for file in /{etc,usr/lib}/os-release
do [ -f "$file" ] && . "$file" && break
done
case "${ID:=unknown}" in
debian|ubuntu) PLUGPATH=/usr/share/ ;;
- unknown) PLUGPATH=$HOME/.config/zsh/plugins ;;
+ unknown) PLUGPATH=$ZDOTDIR/plugins ;;
*) PLUGPATH=/usr/share/zsh/plugins ;;
esac
. $PLUGPATH/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
@@ -102,15 +145,16 @@ function osc7 {
add-zsh-hook -Uz chpwd osc7
command_not_found_handler () {
if [[ -o interactive ]] && isTextFile "$1"
- then
- "$EDITOR" "$1"
- else
- echo "zsh: command not found: $1" >&2
+ then "$EDITOR" "$1"
+ else echo "zsh: command not found: $1" >&2
fi
}
+# automatic ls after cd
+add-zsh-hook -Uz chpwd (){[ "$PWD" != "$HOME" ] && ls -a; }
+
# prompt
-PS1=' %B%(#.%F{1}.%F{13})[%n%b%f@%B%F{6}%m]%b%f %3~ '
+PS1=' %K{16}%B%(#.%F{1}.%F{13})%n%b%f@%B%F{6}%m%b%f %3~%k '
RPROMPT='%F{blue}$(parse_git_remote)%f%F{red}$(parse_git_status)%f%F{green}$(parse_git_branch)%f%(?.. %?)'
setopt prompt_subst
diff --git a/config/extra/emacs/config.org b/config/extra/emacs/config.org
deleted file mode 100644
index 60c0812..0000000
--- a/config/extra/emacs/config.org
+++ /dev/null
@@ -1,622 +0,0 @@
-#+TITLE: Emacs Configuration
-#+AUTHOR: TlasT
-#+STARTUP: showeverything
-#+OPTIONS: toc:3
-
-* TABLE OF CONTENTS :toc:
-- [[#startup-configuration][Startup Configuration]]
- - [[#elpaca-package-manager][Elpaca (Package Manager)]]
- - [[#evil-mode][Evil Mode]]
- - [[#keybindings][Keybindings]]
-- [[#helper-functions][Helper functions]]
- - [[#buffer-move][buffer-move]]
- - [[#reload-emacs][Reload Emacs]]
-- [[#graphical-configuration][Graphical configuration]]
- - [[#disable-menubar-toolbars-and-scrollbars][Disable Menubar, Toolbars and Scrollbars]]
- - [[#display-line-numbers-and-truncated-lines][Display Line Numbers and Truncated Lines]]
- - [[#fonts][Fonts]]
- - [[#setting-the-font-face][Setting the Font Face]]
- - [[#theme][Theme]]
-- [[#org-mode][ORG Mode]]
- - [[#enabling-table-of-contents][Enabling Table of Contents]]
- - [[#enabling-org-bullets][Enabling Org Bullets]]
- - [[#source-code-block-tag-expansion][Source Code Block Tag Expansion]]
-- [[#shell][Shell]]
- - [[#default-shell][Default shell]]
- - [[#eshell][Eshell]]
-- [[#packages][Packages]]
- - [[#sudo-edit][Sudo edit]]
- - [[#which-key][Which-Key]]
- - [[#all-the-icons][All The Icons]]
- - [[#rainbow-mode][Rainbow Mode]]
- - [[#ivy-counsel][IVY (Counsel)]]
- - [[#projectile][Projectile]]
- - [[#dashboard][Dashboard]]
- - [[#flycheck][Flycheck]]
- - [[#company][COMPANY]]
-
-* Startup Configuration
-** Elpaca (Package Manager)
-#+begin_src emacs-lisp
-(defvar elpaca-installer-version 0.6)
-(defvar elpaca-directory (expand-file-name "elpaca/" user-emacs-directory))
-(defvar elpaca-builds-directory (expand-file-name "builds/" elpaca-directory))
-(defvar elpaca-repos-directory (expand-file-name "repos/" elpaca-directory))
-(defvar elpaca-order '(elpaca :repo "https://github.com/progfolio/elpaca.git"
- :ref nil
- :files (:defaults (:exclude "extensions"))
- :build (:not elpaca--activate-package)))
-(let* ((repo (expand-file-name "elpaca/" elpaca-repos-directory))
- (build (expand-file-name "elpaca/" elpaca-builds-directory))
- (order (cdr elpaca-order))
- (default-directory repo))
- (add-to-list 'load-path (if (file-exists-p build) build repo))
- (unless (file-exists-p repo)
- (make-directory repo t)
- (when (< emacs-major-version 28) (require 'subr-x))
- (condition-case-unless-debug err
- (if-let ((buffer (pop-to-buffer-same-window "*elpaca-bootstrap*"))
- ((zerop (call-process "git" nil buffer t "clone"
- (plist-get order :repo) repo)))
- ((zerop (call-process "git" nil buffer t "checkout"
- (or (plist-get order :ref) "--"))))
- (emacs (concat invocation-directory invocation-name))
- ((zerop (call-process emacs nil buffer nil "-Q" "-L" "." "--batch"
- "--eval" "(byte-recompile-directory \".\" 0 'force)")))
- ((require 'elpaca))
- ((elpaca-generate-autoloads "elpaca" repo)))
- (kill-buffer buffer)
- (error "%s" (with-current-buffer buffer (buffer-string))))
-((error) (warn "%s" err) (delete-directory repo 'recursive))))
- (unless (require 'elpaca-autoloads nil t)
- (require 'elpaca)
- (elpaca-generate-autoloads "elpaca" repo)
- (load "./elpaca-autoloads")))
-(add-hook 'after-init-hook #'elpaca-process-queues)
-(elpaca `(,@elpaca-order))
-
-;; Install use-package support
-(elpaca elpaca-use-package
- ;; Enable :elpaca use-package keyword.
- (elpaca-use-package-mode)
- ;; Assume :elpaca t unless otherwise specified.
- (setq elpaca-use-package-by-default t))
-
-;; Block until current queue processed.
-(elpaca-wait)
-
-;;When installing a package which modifies a form used at the top-level
-;;(e.g. a package which adds a use-package key word),
-;;use `elpaca-wait' to block until that package has been installed/configured.
-;;For example:
-;;(use-package general :demand t)
-;;(elpaca-wait)
-
-;;Turns off elpaca-use-package-mode current declartion
-;;Note this will cause the declaration to be interpreted immediately (not deferred).
-;;Useful for configuring built-in emacs features.
-;;(use-package emacs :elpaca nil :config (setq ring-bell-function #'ignore))
-
-;; Don't install anything. Defer execution of BODY
-;;(elpaca nil (message "deferred"))
-#+end_src
-
-** Evil Mode
-
-#+begin_src emacs-lisp
-;; Expands to: (elpaca evil (use-package evil :demand t))
-(use-package evil
- :init ;; tweak evil's configuration before loading it
- (setq evil-want-integration t) ;; This is optional since it's already set to t by default.
- (setq evil-want-keybinding nil)
- (setq evil-vsplit-window-right t)
- (setq evil-split-window-below t)
- (evil-mode))
- (use-package evil-collection
- :after evil
- :config
- (setq evil-collection-mode-list '(dashboard dired ibuffer))
- (evil-collection-init))
- (use-package evil-tutor)
-#+end_src
-
-** Keybindings
-#+begin_src emacs-lisp
-(use-package general
- :config
- (general-evil-setup)
-
- ;; set up 'SPC' as the global leader key
- (general-create-definer user/leader-keys
- :states '(normal insert visual emacs)
- :keymaps 'override
- :prefix "SPC" ;; set leader
- :global-prefix "M-SPC") ;; access leader in insert mode
-
- (user/leader-keys
- "SPC" '(counsel-M-x :wk "Counsel M-x")
- "." '(find-file :wk "Find file")
- "f c" '((lambda () (interactive) (find-file "~/.config/emacs/config.org")) :wk "Edit emacs config")
- "f r" '(counsel-recentf :wk "Find recent files")
- "f w" '(evil-write :wk "Write current buffer")
- "f q" '(evil-quit :wk "Write current buffer")
- "TAB TAB" '(comment-line :wk "Comment lines"))
-
- (user/leader-keys
- "b" '(:ignore t :wk "buffer")
- "b b" '(switch-to-buffer :wk "Switch buffer")
- "b i" '(ibuffer :wk "Ibuffer")
- "b k" '(kill-this-buffer :wk "Kill this buffer")
- "b n" '(next-buffer :wk "Next buffer")
- "b p" '(previous-buffer :wk "Previous buffer")
- "b r" '(revert-buffer :wk "Reload buffer"))
-
- (user/leader-keys
- "e" '(:ignore t :wk "Eshell/Evaluate")
- "e b" '(eval-buffer :wk "Evaluate elisp in buffer")
- "e d" '(eval-defun :wk "Evaluate defun containing or after point")
- "e e" '(eval-expression :wk "Evaluate and elisp expression")
- "e h" '(counsel-esh-history :which-key "Eshell history")
- "e l" '(eval-last-sexp :wk "Evaluate elisp expression before point")
- "e r" '(eval-region :wk "Evaluate elisp in region")
- "e s" '(eshell :which-key "Eshell"))
-
- (user/leader-keys
- "h" '(:ignore t :wk "Help")
- "h f" '(describe-function :wk "Describe function")
- "h v" '(describe-variable :wk "Describe variable")
- ;;"h r r" '((lambda () (interactive) (load-file "~/.config/emacs/init.el")) :wk "Reload emacs config"))
- "h r r" '(reload-init-file :wk "Reload emacs config"))
-
- (user/leader-keys
- "t" '(:ignore t :wk "Toggle")
- "t l" '(display-line-numbers-mode :wk "Toggle line numbers")
- "t t" '(visual-line-mode :wk "Toggle truncated lines")
- "t v" '(shell :wk "open shell"))
-
- (user/leader-keys
- "w" '(:ignore t :wk "Windows")
- ;; Window splits
- "w c" '(evil-window-delete :wk "Close window")
- "w n" '(evil-window-new :wk "New window")
- "w s" '(evil-window-split :wk "Horizontal split window")
- "w v" '(evil-window-vsplit :wk "Vertical split window")
- ;; Window motions
- "w h" '(evil-window-left :wk "Window left")
- "w j" '(evil-window-down :wk "Window down")
- "w k" '(evil-window-up :wk "Window up")
- "w l" '(evil-window-right :wk "Window right")
- "w w" '(evil-window-next :wk "Goto next window")
- ;; Move Windows
- "w H" '(buf-move-left :wk "Buffer move left")
- "w J" '(buf-move-down :wk "Buffer move down")
- "w K" '(buf-move-up :wk "Buffer move up")
- "w L" '(buf-move-right :wk "Buffer move right"))
-
-;; org mode
- (user/leader-keys
- "m" '(:ignore t :wk "Org")
- "m a" '(org-agenda :wk "Org agenda")
- "m e" '(org-export-dispatch :wk "Org export dispatch")
- "m i" '(org-toggle-item :wk "Org toggle item")
- "m t" '(org-todo :wk "Org todo")
- "m B" '(org-babel-tangle :wk "Org babel tangle")
- "m T" '(org-todo-list :wk "Org todo list"))
- (user/leader-keys
- "m b" '(:ignore t :wk "Tables")
- "m b -" '(org-table-insert-hline :wk "Insert hline in table"))
- (user/leader-keys
- "m d" '(:ignore t :wk "Date/deadline")
- "m d t" '(org-time-stamp :wk "Org time stamp"))
- (user/leader-keys
- "p" '(projectile-command-map :wk "Projectile"))
-
-
-)
-
-#+end_src
-
-Zooming in and out
-#+begin_src emacs-lisp
-(global-set-key (kbd "C-=") 'text-scale-increase)
-(global-set-key (kbd "C--") 'text-scale-decrease)
-(global-set-key (kbd "<C-wheel-up>") 'text-scale-increase)
-(global-set-key (kbd "<C-wheel-down>") 'text-scale-decrease)
-#+end_src
-
-
-* Helper functions
-** buffer-move
-Creating some functions to allow us to easily move windows (splits) around. The following block of code was taken from buffer-move.el found on the EmacsWiki:
-https://www.emacswiki.org/emacs/buffer-move.el
-
-#+begin_src emacs-lisp
-(require 'windmove)
-
-;;;###autoload
-(defun buf-move-up ()
- "Swap the current buffer and the buffer above the split.
-If there is no split, ie now window above the current one, an
-error is signaled."
-;; "Switches between the current buffer, and the buffer above the
-;; split, if possible."
- (interactive)
- (let* ((other-win (windmove-find-other-window 'up))
- (buf-this-buf (window-buffer (selected-window))))
- (if (null other-win)
- (error "No window above this one")
- ;; swap top with this one
- (set-window-buffer (selected-window) (window-buffer other-win))
- ;; move this one to top
- (set-window-buffer other-win buf-this-buf)
- (select-window other-win))))
-
-;;;###autoload
-(defun buf-move-down ()
-"Swap the current buffer and the buffer under the split.
-If there is no split, ie now window under the current one, an
-error is signaled."
- (interactive)
- (let* ((other-win (windmove-find-other-window 'down))
- (buf-this-buf (window-buffer (selected-window))))
- (if (or (null other-win)
- (string-match "^ \\*Minibuf" (buffer-name (window-buffer other-win))))
- (error "No window under this one")
- ;; swap top with this one
- (set-window-buffer (selected-window) (window-buffer other-win))
- ;; move this one to top
- (set-window-buffer other-win buf-this-buf)
- (select-window other-win))))
-
-;;;###autoload
-(defun buf-move-left ()
-"Swap the current buffer and the buffer on the left of the split.
-If there is no split, ie now window on the left of the current
-one, an error is signaled."
- (interactive)
- (let* ((other-win (windmove-find-other-window 'left))
- (buf-this-buf (window-buffer (selected-window))))
- (if (null other-win)
- (error "No left split")
- ;; swap top with this one
- (set-window-buffer (selected-window) (window-buffer other-win))
- ;; move this one to top
- (set-window-buffer other-win buf-this-buf)
- (select-window other-win))))
-
-;;;###autoload
-(defun buf-move-right ()
-"Swap the current buffer and the buffer on the right of the split.
-If there is no split, ie now window on the right of the current
-one, an error is signaled."
- (interactive)
- (let* ((other-win (windmove-find-other-window 'right))
- (buf-this-buf (window-buffer (selected-window))))
- (if (null other-win)
- (error "No right split")
- ;; swap top with this one
- (set-window-buffer (selected-window) (window-buffer other-win))
- ;; move this one to top
- (set-window-buffer other-win buf-this-buf)
- (select-window other-win))))
-#+end_src
-
-** Reload Emacs
-This is just an example of how to create a simple function in Emacs. Use this function to reload Emacs after adding changes to the config. Yes, I am loading the user-init-file twice in this function, which is a hack because for some reason, just loading the user-init-file once does not work properly.
-
-#+begin_src emacs-lisp
-(defun reload-init-file ()
- (interactive)
- (load-file user-init-file)
- (load-file user-init-file))
-#+end_src
-
-
-* Graphical configuration
-** Disable Menubar, Toolbars and Scrollbars
-#+begin_src emacs-lisp
-(menu-bar-mode -1)
-(tool-bar-mode -1)
-(scroll-bar-mode -1)
-#+end_src
-
-** Display Line Numbers and Truncated Lines
-#+begin_src emacs-lisp
-(global-display-line-numbers-mode 1)
-(global-visual-line-mode t)
-#+end_src
-
-** Fonts
-Defining the various fonts that Emacs will use.
-
-** Setting the Font Face
-#+begin_src emacs-lisp
- (set-face-attribute 'default nil
- :font "JetBrains Mono"
- :height 105
- :weight 'medium)
- (set-face-attribute 'variable-pitch nil
- :font "Ubuntu"
- :height 115
- :weight 'medium)
- (set-face-attribute 'fixed-pitch nil
- :font "JetBrains Mono"
- :height 105
- :weight 'medium)
- ;; Makes commented text and keywords italics.
- ;; This is working in emacsclient but not emacs.
- ;; Your font must have an italic face available.
- (set-face-attribute 'font-lock-comment-face nil
- :slant 'italic)
- (set-face-attribute 'font-lock-keyword-face nil
- :slant 'italic)
-
- ;; This sets the default font on all graphical frames created after restarting Emacs.
- ;; Does the same thing as 'set-face-attribute default' above, but emacsclient fonts
- ;; are not right unless I also add this method of setting the default font.
- (add-to-list 'default-frame-alist '(font . "JetBrains Mono-11"))
-
- ;; Uncomment the following line if line spacing needs adjusting.
- (setq-default line-spacing 0.12)
-
-#+end_src
-
-** Theme
-
-How to make thet theme work even in daemon mode: (https://stackoverflow.com/questions/18904529/after-emacs-deamon-i-can-not-see-new-theme-in-emacsclient-frame-it-works-fr)
-#+begin_src emacs-lisp
- (add-to-list 'custom-theme-load-path "~/.config/emacs/themes/")
- (defvar my:theme 'nord)
-(defvar my:theme-window-loaded nil)
-(defvar my:theme-terminal-loaded nil)
-
-(if (daemonp)
- (add-hook 'after-make-frame-functions(lambda (frame)
- (select-frame frame)
- (if (window-system frame)
- (unless my:theme-window-loaded
- (if my:theme-terminal-loaded
- (enable-theme my:theme)
- (load-theme my:theme t))
- (setq my:theme-window-loaded t))
- (unless my:theme-terminal-loaded
- (if my:theme-window-loaded
- (enable-theme my:theme)
- (load-theme my:theme t))
- (setq my:theme-terminal-loaded t)))))
-
- (progn
- (load-theme my:theme t)
- (if (display-graphic-p)
- (setq my:theme-window-loaded t)
- (setq my:theme-terminal-loaded t))))
-
-#+end_src
-
-
-* ORG Mode
-** Enabling Table of Contents
-#+begin_src emacs-lisp
- (use-package toc-org
- :commands toc-org-enable
- :init (add-hook 'org-mode-hook 'toc-org-enable))
-#+end_src
-
-** Enabling Org Bullets
-Org-bullets gives us attractive bullets rather than asterisks.
-
-#+begin_src emacs-lisp
- (add-hook 'org-mode-hook 'org-indent-mode)
- (use-package org-bullets)
- (add-hook 'org-mode-hook (lambda () (org-bullets-mode 1)))
-#+end_src
-
-** Source Code Block Tag Expansion
-Org-tempo is not a separate package but a module within org that can be enabled. Org-tempo allows for '<s' followed by TAB to expand to a begin_src tag. Other expansions available include:
-
-| Typing the below + TAB | Expands to ... |
-|------------------------+-----------------------------------------|
-| <a | '#+BEGIN_EXPORT ascii' … '#+END_EXPORT |
-| <c | '#+BEGIN_CENTER' … '#+END_CENTER' |
-| <C | '#+BEGIN_COMMENT' … '#+END_COMMENT' |
-| <e | '#+BEGIN_EXAMPLE' … '#+END_EXAMPLE' |
-| <E | '#+BEGIN_EXPORT' … '#+END_EXPORT' |
-| <h | '#+BEGIN_EXPORT html' … '#+END_EXPORT' |
-| <l | '#+BEGIN_EXPORT latex' … '#+END_EXPORT' |
-| <q | '#+BEGIN_QUOTE' … '#+END_QUOTE' |
-| <s | '#+BEGIN_SRC' … '#+END_SRC' |
-| <v | '#+BEGIN_VERSE' … '#+END_VERSE' |
-
-
-#+begin_src emacs-lisp
-(require 'org-tempo)
-#+end_src
-
-
-* Shell
-
-** Default shell
-#+begin_src emacs-lisp
- (setq explicit-shell-file-name "/usr/bin/bash")
- (setq shell-file-name "bash")
-#+end_src
-
-** Eshell
-Eshell is an Emacs 'shell' that is written in Elisp.
-
-#+begin_src emacs-lisp
-(use-package eshell-syntax-highlighting
- :after esh-mode
- :config
- (eshell-syntax-highlighting-global-mode +1))
-
-;; eshell-syntax-highlighting -- adds fish/zsh-like syntax highlighting.
-;; eshell-rc-script -- your profile for eshell; like a bashrc for eshell.
-;; eshell-aliases-file -- sets an aliases file for the eshell.
-
-(setq eshell-rc-script (concat user-emacs-directory "eshell/profile")
- eshell-aliases-file (concat user-emacs-directory "eshell/aliases")
- eshell-history-size 5000
- eshell-buffer-maximum-lines 5000
- eshell-hist-ignoredups t
- eshell-scroll-to-bottom-on-input t
- eshell-destroy-buffer-when-process-dies t
- eshell-visual-commands'("bash" "fish" "htop" "ssh" "top" "zsh"))
-#+end_src
-
-
-* Packages
-** Sudo edit
-[[https://github.com/nflath/sudo-edit][sudo-edit]] gives us the ability to open files with sudo privileges or switch over to editing with sudo privileges if we initially opened the file without such privileges.
-
-#+begin_src emacs-lisp
-(use-package sudo-edit
- :config
- (user/leader-keys
- "fu" '(sudo-edit-find-file :wk "Sudo find file")
- "fU" '(sudo-edit :wk "Sudo edit file")))
-#+end_src
-
-** Which-Key
-#+begin_src emacs-lisp
- (use-package which-key
- :init
- (which-key-mode 1)
- :config
- (setq which-key-side-window-location 'bottom
- which-key-sort-order #'which-key-key-order-alpha
- which-key-sort-uppercase-first nil
- which-key-add-column-padding 1
- which-key-max-display-columns nil
- which-key-min-display-lines 6
- which-key-side-window-slot -10
- which-key-side-window-max-height 0.25
- which-key-idle-delay 0.8
- which-key-max-description-length 25
- which-key-allow-imprecise-window-fit nil
- which-key-separator " → " ))
-#+end_src
-
-** All The Icons
-This is an icon set that can be used with dashboard, dired, ibuffer and other Emacs programs.
-
-#+begin_src emacs-lisp
-(use-package all-the-icons
- :ensure t
- :if (display-graphic-p))
-
-(use-package all-the-icons-dired
- :hook (dired-mode . (lambda () (all-the-icons-dired-mode t))))
-#+end_src
-
-** Rainbow Mode
-Display the actual color as a background for any hex color value (ex. #ffffff). The code block below enables rainbow-mode in all programming modes (prog-mode) as well as org-mode, which is why rainbow works in this document.
-
-#+begin_src emacs-lisp
- (use-package rainbow-mode
- :hook
- ((org-mode prog-mode) . rainbow-mode))
-#+end_src
-
-** IVY (Counsel)
-+ Ivy, a generic completion mechanism for Emacs.
-+ Counsel, a collection of Ivy-enhanced versions of common Emacs commands.
-+ Ivy-rich allows us to add descriptions alongside the commands in M-x.
-#+begin_src emacs-lisp
- (use-package counsel
- :after ivy
- :config (counsel-mode))
-
- (use-package ivy
- :custom
- (setq ivy-use-virtual-buffers t)
- (setq ivy-count-format "(%d/%d) ")
- (setq enable-recursive-minibuffers t)
- :config
- (ivy-mode))
-
- (use-package all-the-icons-ivy-rich
- :after ivy
- :ensure t
- :init (all-the-icons-ivy-rich-mode 1))
-
- (use-package ivy-rich
- :after ivy
- :ensure t
- :init (ivy-rich-mode 1) ;; this gets us descriptions in M-x.
- :custom
- (ivy-virtual-abbreviate 'full
- ivy-rich-switch-buffer-align-virtual-buffer t
- ivy-rich-path-style 'abbrev)
- :config
- (ivy-set-display-transformer 'ivy-switch-buffer
- 'ivy-rich-switch-buffer-transformer))
-
-#+end_src
-
-** Projectile
-#+begin_src emacs-lisp
-(use-package projectile
- :config
- (projectile-mode 1))
-#+end_src
-
-** Dashboard
-Emacs Dashboard is an extensible startup screen showing you recent files, bookmarks, agenda items and an Emacs banner.
-
-#+begin_src emacs-lisp
- (use-package dashboard
- :ensure t
- :init
- (setq initial-buffer-choice 'dashboard-open)
- (setq dashboard-set-heading-icons t)
- (setq dashboard-set-file-icons t)
- (setq dashboard-banner-logo-title "Emacs Is More Than A Text Editor!")
- (setq dashboard-startup-banner 'logo) ;; use standard emacs logo as banner
- ;; (setq dashboard-startup-banner "/home/aluc/.config/emacs/images/emacs-dash.png") ;; use custom image as banner
- (setq dashboard-center-content nil) ;; set to 't' for centered content
- (setq dashboard-items '((recents . 5)
- (agenda . 5 )
- (bookmarks . 3)
- (projects . 3)
- (registers . 3)))
- :custom
- (dashboard-modify-heading-icons '((recents . "file-text")
- (bookmarks . "book")))
- :config
- (dashboard-setup-startup-hook))
-#+end_src
-
-** Flycheck
-Install =luacheck= from your Linux distro's repositories for flycheck to work correctly with lua files. Install =python-pylint= for flycheck to work with python files. Haskell works with flycheck as long as =haskell-ghc= or =haskell-stack-ghc= is installed. For more information on language support for flycheck, [[https://www.flycheck.org/en/latest/languages.html][read this]].
-
-#+begin_src emacs-lisp
-(use-package flycheck
- :ensure t
- :defer t
- :diminish
- :init (global-flycheck-mode))
-
-#+end_src
-
-** COMPANY
-[[https://company-mode.github.io/][Company]] is a text completion framework for Emacs. The name stands for "complete anything". Completion will start automatically after you type a few letters. Use M-n and M-p to select, <return> to complete or <tab> to complete the common part.
-
-#+begin_src emacs-lisp
- (use-package company
- :defer 2
- :diminish
- :custom
- (company-begin-commands '(self-insert-command))
- (company-idle-delay .1)
- (company-minimum-prefix-length 2)
- (company-show-numbers t)
- (company-tooltip-align-annotations 't)
- (global-company-mode t))
-
- (use-package company-box
- :after company
- :diminish
- :hook (company-mode . company-box-mode))
-#+end_src
-
diff --git a/config/extra/emacs/early-init.el b/config/extra/emacs/early-init.el
deleted file mode 100644
index 512068a..0000000
--- a/config/extra/emacs/early-init.el
+++ /dev/null
@@ -1 +0,0 @@
-(setq package-enable-at-startup nil)
diff --git a/config/extra/emacs/init.el b/config/extra/emacs/init.el
deleted file mode 100644
index 19a2beb..0000000
--- a/config/extra/emacs/init.el
+++ /dev/null
@@ -1,17 +0,0 @@
-(org-babel-load-file
- (expand-file-name
- "config.org"
- user-emacs-directory))
-(custom-set-variables
- ;; custom-set-variables was added by Custom.
- ;; If you edit it by hand, you could mess it up, so be careful.
- ;; Your init file should contain only one such instance.
- ;; If there is more than one, they won't work right.
- '(custom-safe-themes
- '("4c7228157ba3a48c288ad8ef83c490b94cb29ef01236205e360c2c4db200bb18" default)))
-(custom-set-faces
- ;; custom-set-faces was added by Custom.
- ;; If you edit it by hand, you could mess it up, so be careful.
- ;; Your init file should contain only one such instance.
- ;; If there is more than one, they won't work right.
- )
diff --git a/config/extra/emacs/themes/nord-theme.el b/config/extra/emacs/themes/nord-theme.el
deleted file mode 100644
index 2e2d84d..0000000
--- a/config/extra/emacs/themes/nord-theme.el
+++ /dev/null
@@ -1,727 +0,0 @@
-;;; nord-theme.el --- An arctic, north-bluish clean and elegant theme
-
-;; Copyright (c) 2016-present Sven Greb <development@svengreb.de> (https://www.svengreb.de)
-
-;; Title: Nord Theme
-;; Project: nord-emacs
-;; Version: 0.5.0
-;; URL: https://github.com/nordtheme/emacs
-;; Author: Sven Greb <development@svengreb.de>
-;; Package-Requires: ((emacs "24"))
-;; License: MIT
-
-;;; Commentary:
-
-;; Nord is a 16 colorspace theme build to run in GUI- and terminal
-;; mode with support for many third-party syntax- and UI packages.
-
-;;; References:
-;; Awesome Emacs
-;; https://github.com/emacs-tw/awesome-emacs
-;; GNU ELPA
-;; https://elpa.gnu.org
-;; GNU Emacs
-;; https://www.gnu.org/software/emacs/manual/html_node/emacs/Custom-Themes.html
-;; https://www.gnu.org/software/emacs/manual/html_node/emacs/Creating-Custom-Themes.html
-;; https://www.gnu.org/software/emacs/manual/html_node/emacs/Faces.html
-;; https://www.gnu.org/software/emacs/manual/html_node/emacs/Standard-Faces.html
-;; https://www.gnu.org/software/emacs/manual/html_node/emacs/Face-Customization.html
-;; https://www.gnu.org/software/emacs/manual/html_node/elisp/Face-Attributes.html
-;; https://www.gnu.org/software/emacs/manual/html_node/elisp/Faces-for-Font-Lock.html
-;; https://www.gnu.org/software/emacs/manual/html_node/elisp/Display-Feature-Testing.html
-;; marmalade repo
-;; https://marmalade-repo.org
-;; MELPA
-;; https://melpa.org
-;; https://stable.melpa.org
-
-;;; Code:
-
-(unless (>= emacs-major-version 24)
- (error "Nord theme requires Emacs 24 or later!"))
-
-(deftheme nord "An arctic, north-bluish clean and elegant theme")
-
-(defgroup nord nil
- "Nord theme customizations.
- The theme has to be reloaded after changing anything in this group."
- :group 'faces)
-
-(defcustom nord-comment-brightness 10
- "Allows to define a custom comment color brightness with percentage adjustments from 0% - 20%.
- As of version 0.4.0, this variable is obsolete/deprecated and has no effect anymore and will be removed in version 1.0.0!
- The comment color brightness has been increased by 10% by default.
- Please see https://github.com/nordtheme/emacs/issues/73 for more details."
- :type 'integer
- :group 'nord)
-
-(make-obsolete-variable
- 'nord-comment-brightness
- "The custom color brightness feature has been deprecated and will be removed in version 1.0.0!
- The comment color brightness has been increased by 10% by default.
- Please see https://github.com/nordtheme/emacs/issues/73 for more details."
- "0.4.0")
-
-(defcustom nord-region-highlight nil
- "Allows to set a region highlight style based on the Nord components.
- Valid styles are
- - 'snowstorm' - Uses 'nord0' as foreground- and 'nord4' as background color
- - 'frost' - Uses 'nord0' as foreground- and 'nord8' as background color"
- :type 'string
- :group 'nord)
-
-(defcustom nord-uniform-mode-lines nil
- "Enables uniform activate- and inactive mode lines using 'nord3' as background."
- :type 'boolean
- :group 'nord)
-
-(setq nord-theme--brightened-comments '("#4c566a" "#4e586d" "#505b70" "#525d73" "#556076" "#576279" "#59647c" "#5b677f" "#5d6982" "#5f6c85" "#616e88" "#63718b" "#66738e" "#687591" "#6a7894" "#6d7a96" "#6f7d98" "#72809a" "#75829c" "#78859e" "#7b88a1"))
-
-(defun nord-theme--brightened-comment-color (percent)
- "Returns the brightened comment color for the given percent.
- The value must be greater or equal to 0 and less or equal to 20, otherwise the default 'nord3' color is used.
- As of version 0.4.0, this function is obsolete/deprecated and has no effect anymore and will be removed in version 1.0.0!
- The comment color brightness has been increased by 10% by default.
- Please see https://github.com/nordtheme/emacs/issues/73 for more details."
- (nth 10 nord-theme--brightened-comments))
-
-(make-obsolete
- 'nord-theme--brightened-comment-color
- "The custom color brightness feature has been deprecated and will be removed in version 1.0.0!\
- The comment color brightness has been increased by 10% by default.\
- Please see https://github.com/nordtheme/emacs/issues/73 for more details."
- "0.4.0")
-
-(defun nord-display-truecolor-or-graphic-p ()
- "Returns whether the display can display nord colors"
- (or (= (display-color-cells) 16777216) (display-graphic-p)))
-
-;;;; Color Constants
-(let ((class '((class color) (min-colors 89)))
- (nord0 (if (nord-display-truecolor-or-graphic-p) "#2E3440" nil))
- (nord1 (if (nord-display-truecolor-or-graphic-p) "#3B4252" "black"))
- (nord2 (if (nord-display-truecolor-or-graphic-p) "#434C5E" "#434C5E"))
- (nord3 (if (nord-display-truecolor-or-graphic-p) "#4C566A" "brightblack"))
- (nord4 (if (nord-display-truecolor-or-graphic-p) "#D8DEE9" "#D8DEE9"))
- (nord5 (if (nord-display-truecolor-or-graphic-p) "#E5E9F0" "white"))
- (nord6 (if (nord-display-truecolor-or-graphic-p) "#ECEFF4" "brightwhite"))
- (nord7 (if (nord-display-truecolor-or-graphic-p) "#8FBCBB" "cyan"))
- (nord8 (if (nord-display-truecolor-or-graphic-p) "#88C0D0" "brightcyan"))
- (nord9 (if (nord-display-truecolor-or-graphic-p) "#81A1C1" "blue"))
- (nord10 (if (nord-display-truecolor-or-graphic-p) "#5E81AC" "brightblue"))
- (nord11 (if (nord-display-truecolor-or-graphic-p) "#BF616A" "red"))
- (nord12 (if (nord-display-truecolor-or-graphic-p) "#D08770" "brightyellow"))
- (nord13 (if (nord-display-truecolor-or-graphic-p) "#EBCB8B" "yellow"))
- (nord14 (if (nord-display-truecolor-or-graphic-p) "#A3BE8C" "green"))
- (nord15 (if (nord-display-truecolor-or-graphic-p) "#B48EAD" "magenta"))
- (nord-annotation (if (nord-display-truecolor-or-graphic-p) "#D08770" "brightyellow"))
- (nord-attribute (if (nord-display-truecolor-or-graphic-p) "#8FBCBB" "cyan"))
- (nord-class (if (nord-display-truecolor-or-graphic-p) "#8FBCBB" "cyan"))
- (nord-comment (if (nord-display-truecolor-or-graphic-p) (nord-theme--brightened-comment-color nord-comment-brightness) "brightblack"))
- (nord-escape (if (nord-display-truecolor-or-graphic-p) "#D08770" "brightyellow"))
- (nord-method (if (nord-display-truecolor-or-graphic-p) "#88C0D0" "brightcyan"))
- (nord-keyword (if (nord-display-truecolor-or-graphic-p) "#81A1C1" "blue"))
- (nord-numeric (if (nord-display-truecolor-or-graphic-p) "#B48EAD" "magenta"))
- (nord-operator (if (nord-display-truecolor-or-graphic-p) "#81A1C1" "blue"))
- (nord-preprocessor (if (nord-display-truecolor-or-graphic-p) "#5E81AC" "brightblue"))
- (nord-punctuation (if (nord-display-truecolor-or-graphic-p) "#D8DEE9" "#D8DEE9"))
- (nord-regexp (if (nord-display-truecolor-or-graphic-p) "#EBCB8B" "yellow"))
- (nord-string (if (nord-display-truecolor-or-graphic-p) "#A3BE8C" "green"))
- (nord-tag (if (nord-display-truecolor-or-graphic-p) "#81A1C1" "blue"))
- (nord-variable (if (nord-display-truecolor-or-graphic-p) "#D8DEE9" "#D8DEE9"))
- (nord-region-highlight-foreground (if (or
- (string= nord-region-highlight "frost")
- (string= nord-region-highlight "snowstorm")) "#2E3440" nil))
- (nord-region-highlight-background (if
- (string= nord-region-highlight "frost") "#88C0D0"
- (if (string= nord-region-highlight "snowstorm") "#D8DEE9" "#434C5E")))
- (nord-uniform-mode-lines-background (if nord-uniform-mode-lines "#4C566A" "#3B4252")))
-
-;;;; +------------+
-;;;; + Core Faces +
-;;;; +------------+
- (custom-theme-set-faces
- 'nord
- ;; +--- Base ---+
- `(bold ((,class (:weight bold))))
- `(bold-italic ((,class (:weight bold :slant italic))))
- `(default ((,class (:foreground ,nord4 :background ,nord0))))
- `(error ((,class (:foreground ,nord11 :weight bold))))
- `(escape-glyph ((,class (:foreground ,nord12))))
- `(font-lock-builtin-face ((,class (:foreground ,nord9))))
- `(font-lock-comment-face ((,class (:foreground ,nord-comment))))
- `(font-lock-comment-delimiter-face ((,class (:foreground ,nord-comment))))
- `(font-lock-constant-face ((,class (:foreground ,nord9))))
- `(font-lock-doc-face ((,class (:foreground ,nord-comment))))
- `(font-lock-function-name-face ((,class (:foreground ,nord8))))
- `(font-lock-keyword-face ((,class (:foreground ,nord9))))
- `(font-lock-negation-char-face ((,class (:foreground ,nord9))))
- `(font-lock-preprocessor-face ((,class (:foreground ,nord10 :weight bold))))
- `(font-lock-reference-face ((,class (:foreground ,nord9))))
- `(font-lock-regexp-grouping-backslash ((,class (:foreground ,nord13))))
- `(font-lock-regexp-grouping-construct ((,class (:foreground ,nord13))))
- `(font-lock-string-face ((,class (:foreground ,nord14))))
- `(font-lock-type-face ((,class (:foreground ,nord7))))
- `(font-lock-variable-name-face ((,class (:foreground ,nord4))))
- `(font-lock-warning-face ((,class (:foreground ,nord13))))
- `(italic ((,class (:slant italic))))
- `(shadow ((,class (:foreground ,nord3))))
- `(underline ((,class (:underline t))))
- `(warning ((,class (:foreground ,nord13 :weight bold))))
-
- ;; +--- Syntax ---+
- ;; > C
- `(c-annotation-face ((,class (:foreground ,nord-annotation))))
-
- ;; > diff
- `(diff-added ((,class (:foreground ,nord14))))
- `(diff-changed ((,class (:foreground ,nord13))))
- `(diff-context ((,class (:inherit default))))
- `(diff-file-header ((,class (:foreground ,nord8))))
- `(diff-function ((,class (:foreground ,nord7))))
- `(diff-header ((,class (:foreground ,nord9 :weight bold))))
- `(diff-hunk-header ((,class (:foreground ,nord9 :background ,nord0))))
- `(diff-indicator-added ((,class (:foreground ,nord14))))
- `(diff-indicator-changed ((,class (:foreground ,nord13))))
- `(diff-indicator-removed ((,class (:foreground ,nord11))))
- `(diff-nonexistent ((,class (:foreground ,nord11))))
- `(diff-refine-added ((,class (:foreground ,nord14))))
- `(diff-refine-changed ((,class (:foreground ,nord13))))
- `(diff-refine-removed ((,class (:foreground ,nord11))))
- `(diff-removed ((,class (:foreground ,nord11))))
-
- ;; +--- UI ---+
- `(border ((,class (:foreground ,nord4))))
- `(buffer-menu-buffer ((,class (:foreground ,nord4 :weight bold))))
- `(button ((,class (:background ,nord0 :foreground ,nord8 :box (:line-width 2 :color ,nord4 :style sunken-button)))))
- `(completions-annotations ((,class (:foreground ,nord9))))
- `(completions-common-part ((,class (:foreground ,nord8 :weight bold))))
- `(completions-first-difference ((,class (:foreground ,nord11))))
- `(custom-button ((,class (:background ,nord0 :foreground ,nord8 :box (:line-width 2 :color ,nord4 :style sunken-button)))))
- `(custom-button-mouse ((,class (:background ,nord4 :foreground ,nord0 :box (:line-width 2 :color ,nord4 :style sunken-button)))))
- `(custom-button-pressed ((,class (:background ,nord6 :foreground ,nord0 :box (:line-width 2 :color ,nord4 :style sunken-button)))))
- `(custom-button-pressed-unraised ((,class (:background ,nord4 :foreground ,nord0 :box (:line-width 2 :color ,nord4 :style sunken-button)))))
- `(custom-button-unraised ((,class (:background ,nord0 :foreground ,nord8 :box (:line-width 2 :color ,nord4 :style sunken-button)))))
- `(custom-changed ((,class (:foreground ,nord13))))
- `(custom-comment ((,class (:foreground ,nord-comment))))
- `(custom-comment-tag ((,class (:foreground ,nord7))))
- `(custom-documentation ((,class (:foreground ,nord4))))
- `(custom-group-tag ((,class (:foreground ,nord8 :weight bold))))
- `(custom-group-tag-1 ((,class (:foreground ,nord8 :weight bold))))
- `(custom-invalid ((,class (:foreground ,nord11))))
- `(custom-modified ((,class (:foreground ,nord13))))
- `(custom-rogue ((,class (:foreground ,nord12 :background ,nord2))))
- `(custom-saved ((,class (:foreground ,nord14))))
- `(custom-set ((,class (:foreground ,nord8))))
- `(custom-state ((,class (:foreground ,nord14))))
- `(custom-themed ((,class (:foreground ,nord8 :background ,nord2))))
- `(cursor ((,class (:background ,nord4))))
- `(fringe ((,class (:foreground ,nord4 :background ,nord0))))
- `(file-name-shadow ((,class (:inherit shadow))))
- `(header-line ((,class (:foreground ,nord4 :background ,nord2))))
- `(help-argument-name ((,class (:foreground ,nord8))))
- `(highlight ((,class (:foreground ,nord8 :background ,nord2))))
- `(hl-line ((,class (:background ,nord1))))
- `(info-menu-star ((,class (:foreground ,nord9))))
- `(isearch ((,class (:foreground ,nord0 :background ,nord8))))
- `(isearch-fail ((,class (:foreground ,nord11))))
- `(link ((,class (:underline t))))
- `(link-visited ((,class (:underline t))))
- `(linum ((,class (:foreground ,nord3 :background ,nord0))))
- `(linum-relative-current-face ((,class (:foreground ,nord3 :background ,nord0))))
- `(match ((,class (:inherit isearch))))
- `(message-cited-text ((,class (:foreground ,nord4))))
- `(message-header-cc ((,class (:foreground ,nord9))))
- `(message-header-name ((,class (:foreground ,nord7))))
- `(message-header-newsgroup ((,class (:foreground ,nord14))))
- `(message-header-other ((,class (:foreground ,nord4))))
- `(message-header-subject ((,class (:foreground ,nord8))))
- `(message-header-to ((,class (:foreground ,nord9))))
- `(message-header-xheader ((,class (:foreground ,nord13))))
- `(message-mml ((,class (:foreground ,nord10))))
- `(message-separator ((,class (:inherit shadow))))
- `(minibuffer-prompt ((,class (:foreground ,nord8 :weight bold))))
- `(mm-command-output ((,class (:foreground ,nord8))))
- `(mode-line ((,class (:foreground ,nord8 :background ,nord3))))
- `(mode-line-buffer-id ((,class (:weight bold))))
- `(mode-line-highlight ((,class (:inherit highlight))))
- `(mode-line-inactive ((,class (:foreground ,nord4 :background ,nord-uniform-mode-lines-background))))
- `(next-error ((,class (:inherit error))))
- `(nobreak-space ((,class (:foreground ,nord3))))
- `(outline-1 ((,class (:foreground ,nord8 :weight bold))))
- `(outline-2 ((,class (:inherit outline-1))))
- `(outline-3 ((,class (:inherit outline-1))))
- `(outline-4 ((,class (:inherit outline-1))))
- `(outline-5 ((,class (:inherit outline-1))))
- `(outline-6 ((,class (:inherit outline-1))))
- `(outline-7 ((,class (:inherit outline-1))))
- `(outline-8 ((,class (:inherit outline-1))))
- `(package-description ((,class (:foreground ,nord4))))
- `(package-help-section-name ((,class (:foreground ,nord8 :weight bold))))
- `(package-name ((,class (:foreground ,nord8))))
- `(package-status-available ((,class (:foreground ,nord7))))
- `(package-status-avail-obso ((,class (:foreground ,nord7 :slant italic))))
- `(package-status-built-in ((,class (:foreground ,nord9))))
- `(package-status-dependency ((,class (:foreground ,nord8 :slant italic))))
- `(package-status-disabled ((,class (:foreground ,nord3))))
- `(package-status-external ((,class (:foreground ,nord12 :slant italic))))
- `(package-status-held ((,class (:foreground ,nord4 :weight bold))))
- `(package-status-new ((,class (:foreground ,nord14))))
- `(package-status-incompat ((,class (:foreground ,nord11))))
- `(package-status-installed ((,class (:foreground ,nord7 :weight bold))))
- `(package-status-unsigned ((,class (:underline ,nord13))))
- `(query-replace ((,class (:foreground ,nord8 :background ,nord2))))
- `(region ((,class (:foreground ,nord-region-highlight-foreground :background ,nord-region-highlight-background))))
- `(scroll-bar ((,class (:background ,nord3))))
- `(secondary-selection ((,class (:background ,nord2))))
-
- ;; `show-paren-match-face` and `show-paren-mismatch-face` are deprecated since Emacs version 22.1 and were
- ;; removed in Emacs 25.
- ;; https://github.com/nordtheme/emacs/issues/75
- ;; http://git.savannah.gnu.org/cgit/emacs.git/commit/?id=c430f7e23fc2c22f251ace4254e37dea1452dfc3
- ;; https://github.com/emacs-mirror/emacs/commit/c430f7e23fc2c22f251ace4254e37dea1452dfc3
- `(show-paren-match-face ((,class (:foreground ,nord0 :background ,nord8))))
- `(show-paren-mismatch-face ((,class (:background ,nord11))))
-
- `(show-paren-match ((,class (:foreground ,nord0 :background ,nord8))))
- `(show-paren-mismatch ((,class (:background ,nord11))))
- `(success ((,class (:foreground ,nord14))))
- `(term ((,class (:foreground ,nord4 :background ,nord0))))
- `(term-color-black ((,class (:foreground ,nord1 :background ,nord1))))
- `(term-color-white ((,class (:foreground ,nord5 :background ,nord5))))
- `(term-color-cyan ((,class (:foreground ,nord7 :background ,nord7))))
- `(term-color-blue ((,class (:foreground ,nord8 :background ,nord8))))
- `(term-color-red ((,class (:foreground ,nord11 :background ,nord11))))
- `(term-color-yellow ((,class (:foreground ,nord13 :background ,nord13))))
- `(term-color-green ((,class (:foreground ,nord14 :background ,nord14))))
- `(term-color-magenta ((,class (:foreground ,nord15 :background ,nord15))))
- `(tool-bar ((,class (:foreground ,nord4 :background ,nord3))))
- `(tooltip ((,class (:foreground ,nord0 :background ,nord4))))
- `(trailing-whitespace ((,class (:foreground ,nord3))))
- `(tty-menu-disabled-face ((,class (:foreground ,nord1))))
- `(tty-menu-enabled-face ((,class (:background ,nord2 foreground ,nord4))))
- `(tty-menu-selected-face ((,class (:foreground ,nord8 :underline t))))
- `(undo-tree-visualizer-current-face ((,class (:foreground ,nord8))))
- `(undo-tree-visualizer-default-face ((,class (:foreground ,nord4))))
- `(undo-tree-visualizer-unmodified-face ((,class (:foreground ,nord4))))
- `(undo-tree-visualizer-register-face ((,class (:foreground ,nord9))))
- `(vc-conflict-state ((,class (:foreground ,nord12))))
- `(vc-edited-state ((,class (:foreground ,nord13))))
- `(vc-locally-added-state ((,class (:underline ,nord14))))
- `(vc-locked-state ((,class (:foreground ,nord10))))
- `(vc-missing-state ((,class (:foreground ,nord11))))
- `(vc-needs-update-state ((,class (:foreground ,nord12))))
- `(vc-removed-state ((,class (:foreground ,nord11))))
- `(vc-state-base ((,class (:foreground ,nord4))))
- `(vc-up-to-date-state ((,class (:foreground ,nord8))))
- `(vertical-border ((,class (:foreground ,nord2))))
- `(which-func ((,class (:foreground ,nord8))))
- `(whitespace-big-indent ((,class (:foreground ,nord3 :background ,nord0))))
- `(whitespace-empty ((,class (:foreground ,nord3 :background ,nord0))))
- `(whitespace-hspace ((,class (:foreground ,nord3 :background ,nord0))))
- `(whitespace-indentation ((,class (:foreground ,nord3 :background ,nord0))))
- `(whitespace-line ((,class (:background ,nord0))))
- `(whitespace-newline ((,class (:foreground ,nord3 :background ,nord0))))
- `(whitespace-space ((,class (:foreground ,nord3 :background ,nord0))))
- `(whitespace-space-after-tab ((,class (:foreground ,nord3 :background ,nord0))))
- `(whitespace-space-before-tab ((,class (:foreground ,nord3 :background ,nord0))))
- `(whitespace-tab ((,class (:foreground ,nord3 :background ,nord0))))
- `(whitespace-trailing ((,class (:inherit trailing-whitespace))))
- `(widget-button-pressed ((,class (:foreground ,nord9 :background ,nord1))))
- `(widget-documentation ((,class (:foreground ,nord4))))
- `(widget-field ((,class (:background ,nord2 :foreground ,nord4))))
- `(widget-single-line-field ((,class (:background ,nord2 :foreground ,nord4))))
- `(window-divider ((,class (:background ,nord3))))
- `(window-divider-first-pixel ((,class (:background ,nord3))))
- `(window-divider-last-pixel ((,class (:background ,nord3))))
-
- ;;;; +-----------------+
- ;;;; + Package Support +
- ;;;; +-----------------+
- ;; +--- Syntax ---+
- ;; > Auctex
- `(font-latex-bold-face ((,class (:inherit bold))))
- `(font-latex-italic-face ((,class (:inherit italic))))
- `(font-latex-math-face ((,class (:foreground ,nord8))))
- `(font-latex-sectioning-0-face ((,class (:foreground ,nord8 :weight bold))))
- `(font-latex-sectioning-1-face ((,class (:inherit font-latex-sectioning-0-face))))
- `(font-latex-sectioning-2-face ((,class (:inherit font-latex-sectioning-0-face))))
- `(font-latex-sectioning-3-face ((,class (:inherit font-latex-sectioning-0-face))))
- `(font-latex-sectioning-4-face ((,class (:inherit font-latex-sectioning-0-face))))
- `(font-latex-sectioning-5-face ((,class (:inherit font-latex-sectioning-0-face))))
- `(font-latex-script-char-face ((,class (:inherit font-lock-warning-face))))
- `(font-latex-string-face ((,class (:inherit font-lock-string-face))))
- `(font-latex-warning-face ((,class (:inherit font-lock-warning-face))))
-
- ;; > Elixir
- `(elixir-attribute-face ((,class (:foreground ,nord-annotation))))
- `(elixir-atom-face ((,class (:foreground ,nord4 :weight bold))))
-
- ;; > Enhanced Ruby
- `(enh-ruby-heredoc-delimiter-face ((,class (:foreground ,nord14))))
- `(enh-ruby-op-face ((,class (:foreground ,nord9))))
- `(enh-ruby-regexp-delimiter-face ((,class (:foreground ,nord13))))
- `(enh-ruby-regexp-face ((,class (:foreground ,nord13))))
- `(enh-ruby-string-delimiter-face ((,class (:foreground ,nord14))))
- `(erm-syn-errline ((,class (:foreground ,nord11 :underline t))))
- `(erm-syn-warnline ((,class (:foreground ,nord13 :underline t))))
-
- ;; > Java Development Environment for Emacs
- `(jdee-db-active-breakpoint-face ((,class (:background ,nord2 :weight bold))))
- `(jdee-bug-breakpoint-cursor ((,class (:background ,nord2))))
- `(jdee-db-requested-breakpoint-face ((,class (:foreground ,nord13 :background ,nord2 :weight bold))))
- `(jdee-db-spec-breakpoint-face ((,class (:foreground ,nord14 :background ,nord2 :weight bold))))
- `(jdee-font-lock-api-face ((,class (:foreground ,nord4))))
- `(jdee-font-lock-code-face ((,class (:slant italic))))
- `(jdee-font-lock-constant-face ((,class (:foreground ,nord-keyword))))
- `(jdee-font-lock-constructor-face ((,class (:foreground ,nord-method))))
- `(jdee-font-lock-doc-tag-face ((,class (:foreground ,nord7))))
- `(jdee-font-lock-link-face ((,class (:underline t))))
- `(jdee-font-lock-modifier-face ((,class (:foreground ,nord-keyword))))
- `(jdee-font-lock-number-face ((,class (:foreground ,nord-numeric))))
- `(jdee-font-lock-operator-fac ((,class (:foreground ,nord-operator))))
- `(jdee-font-lock-package-face ((,class (:foreground ,nord-class))))
- `(jdee-font-lock-pre-face ((,class (:foreground ,nord-comment :slant italic))))
- `(jdee-font-lock-private-face ((,class (:foreground ,nord-keyword))))
- `(jdee-font-lock-public-face ((,class (:foreground ,nord-keyword))))
- `(jdee-font-lock-variable-face ((,class (:foreground ,nord-variable))))
-
- ;; > JavaScript 2
- `(js2-function-call ((,class (:foreground ,nord8))))
- `(js2-private-function-call ((,class (:foreground ,nord8))))
- `(js2-jsdoc-html-tag-delimiter ((,class (:foreground ,nord6))))
- `(js2-jsdoc-html-tag-name ((,class (:foreground ,nord9))))
- `(js2-external-variable ((,class (:foreground ,nord4))))
- `(js2-function-param ((,class (:foreground ,nord4))))
- `(js2-jsdoc-value ((,class (:foreground ,nord-comment))))
- `(js2-jsdoc-tag ((,class (:foreground ,nord7))))
- `(js2-jsdoc-type ((,class (:foreground ,nord7))))
- `(js2-private-member ((,class (:foreground ,nord4))))
- `(js2-object-property ((,class (:foreground ,nord4))))
- `(js2-error ((,class (:foreground ,nord11))))
- `(js2-warning ((,class (:foreground ,nord13))))
- `(js2-instance-member ((,class (:foreground ,nord4))))
-
- ;; > JavaScript 3
- `(js3-error-face ((,class (:foreground ,nord11))))
- `(js3-external-variable-face ((,class (:foreground ,nord4))))
- `(js3-function-param-face ((,class (:foreground ,nord4))))
- `(js3-instance-member-face ((,class (:foreground ,nord4))))
- `(js3-jsdoc-html-tag-delimiter-face ((,class (:foreground ,nord6))))
- `(js3-jsdoc-html-tag-name-face ((,class (:foreground ,nord9))))
- `(js3-jsdoc-tag-face ((,class (:foreground ,nord9))))
- `(js3-jsdoc-type-face ((,class (:foreground ,nord7))))
- `(js3-jsdoc-value-face ((,class (:foreground ,nord4))))
- `(js3-magic-paren-face ((,class (:inherit show-paren-match-face))))
- `(js3-private-function-call-face ((,class (:foreground ,nord8))))
- `(js3-private-member-face ((,class (:foreground ,nord4))))
- `(js3-warning-face ((,class (:foreground ,nord13))))
-
- ;; > Markdown
- `(markdown-blockquote-face ((,class (:foreground ,nord-comment))))
- `(markdown-bold-face ((,class (:inherit bold))))
- `(markdown-header-face-1 ((,class (:foreground ,nord8))))
- `(markdown-header-face-2 ((,class (:foreground ,nord8))))
- `(markdown-header-face-3 ((,class (:foreground ,nord8))))
- `(markdown-header-face-4 ((,class (:foreground ,nord8))))
- `(markdown-header-face-5 ((,class (:foreground ,nord8))))
- `(markdown-header-face-6 ((,class (:foreground ,nord8))))
- `(markdown-inline-code-face ((,class (:foreground ,nord7))))
- `(markdown-italic-face ((,class (:inherit italic))))
- `(markdown-link-face ((,class (:foreground ,nord8))))
- `(markdown-markup-face ((,class (:foreground ,nord9))))
- `(markdown-reference-face ((,class (:inherit markdown-link-face))))
- `(markdown-url-face ((,class (:foreground ,nord4 :underline t))))
-
- ;; > Rainbow Delimeters
- `(rainbow-delimiters-depth-1-face ((,class :foreground ,nord7)))
- `(rainbow-delimiters-depth-2-face ((,class :foreground ,nord8)))
- `(rainbow-delimiters-depth-3-face ((,class :foreground ,nord9)))
- `(rainbow-delimiters-depth-4-face ((,class :foreground ,nord10)))
- `(rainbow-delimiters-depth-5-face ((,class :foreground ,nord12)))
- `(rainbow-delimiters-depth-6-face ((,class :foreground ,nord13)))
- `(rainbow-delimiters-depth-7-face ((,class :foreground ,nord14)))
- `(rainbow-delimiters-depth-8-face ((,class :foreground ,nord15)))
- `(rainbow-delimiters-unmatched-face ((,class :foreground ,nord11)))
-
- ;; > Web Mode
- `(web-mode-attr-tag-custom-face ((,class (:foreground ,nord-attribute))))
- `(web-mode-builtin-face ((,class (:foreground ,nord-keyword))))
- `(web-mode-comment-face ((,class (:foreground ,nord-comment))))
- `(web-mode-comment-keyword-face ((,class (:foreground ,nord-comment))))
- `(web-mode-constant-face ((,class (:foreground ,nord-variable))))
- `(web-mode-css-at-rule-face ((,class (:foreground ,nord-annotation))))
- `(web-mode-css-function-face ((,class (:foreground ,nord-method))))
- `(web-mode-css-property-name-face ((,class (:foreground ,nord-keyword))))
- `(web-mode-css-pseudo-class-face ((,class (:foreground ,nord-class))))
- `(web-mode-css-selector-face ((,class (:foreground ,nord-keyword))))
- `(web-mode-css-string-face ((,class (:foreground ,nord-string))))
- `(web-mode-doctype-face ((,class (:foreground ,nord-preprocessor))))
- `(web-mode-function-call-face ((,class (:foreground ,nord-method))))
- `(web-mode-function-name-face ((,class (:foreground ,nord-method))))
- `(web-mode-html-attr-name-face ((,class (:foreground ,nord-attribute))))
- `(web-mode-html-attr-equal-face ((,class (:foreground ,nord-punctuation))))
- `(web-mode-html-attr-value-face ((,class (:foreground ,nord-string))))
- `(web-mode-html-entity-face ((,class (:foreground ,nord-keyword))))
- `(web-mode-html-tag-bracket-face ((,class (:foreground ,nord-punctuation))))
- `(web-mode-html-tag-custom-face ((,class (:foreground ,nord-tag))))
- `(web-mode-html-tag-face ((,class (:foreground ,nord-tag))))
- `(web-mode-html-tag-namespaced-face ((,class (:foreground ,nord-keyword))))
- `(web-mode-json-key-face ((,class (:foreground ,nord-class))))
- `(web-mode-json-string-face ((,class (:foreground ,nord-string))))
- `(web-mode-keyword-face ((,class (:foreground ,nord-keyword))))
- `(web-mode-preprocessor-face ((,class (:foreground ,nord-preprocessor))))
- `(web-mode-string-face ((,class (:foreground ,nord-string))))
- `(web-mode-symbol-face ((,class (:foreground ,nord-variable))))
- `(web-mode-type-face ((,class (:foreground ,nord-class))))
- `(web-mode-warning-face ((,class (:inherit ,font-lock-warning-face))))
- `(web-mode-variable-name-face ((,class (:foreground ,nord-variable))))
-
- ;; +--- UI ---+
- ;; > Anzu
- `(anzu-mode-line ((,class (:foreground, nord8))))
- `(anzu-mode-line-no-match ((,class (:foreground, nord11))))
-
- ;; > Avy
- `(avy-lead-face ((,class (:background ,nord11 :foreground ,nord5))))
- `(avy-lead-face-0 ((,class (:background ,nord10 :foreground ,nord5))))
- `(avy-lead-face-1 ((,class (:background ,nord3 :foreground ,nord5))))
- `(avy-lead-face-2 ((,class (:background ,nord15 :foreground ,nord5))))
-
- ;; > Company
- `(company-echo-common ((,class (:foreground ,nord0 :background ,nord4))))
- `(company-preview ((,class (:foreground ,nord4 :background ,nord10))))
- `(company-preview-common ((,class (:foreground ,nord0 :background ,nord8))))
- `(company-preview-search ((,class (:foreground ,nord0 :background ,nord8))))
- `(company-scrollbar-bg ((,class (:foreground ,nord1 :background ,nord1))))
- `(company-scrollbar-fg ((,class (:foreground ,nord2 :background ,nord2))))
- `(company-template-field ((,class (:foreground ,nord0 :background ,nord7))))
- `(company-tooltip ((,class (:foreground ,nord4 :background ,nord2))))
- `(company-tooltip-annotation ((,class (:foreground ,nord12))))
- `(company-tooltip-annotation-selection ((,class (:foreground ,nord12 :weight bold))))
- `(company-tooltip-common ((,class (:foreground ,nord8))))
- `(company-tooltip-common-selection ((,class (:foreground ,nord8 :background ,nord3))))
- `(company-tooltip-mouse ((,class (:inherit highlight))))
- `(company-tooltip-selection ((,class (:background ,nord3 :weight bold))))
-
- ;; > diff-hl
- `(diff-hl-change ((,class (:background ,nord13))))
- `(diff-hl-insert ((,class (:background ,nord14))))
- `(diff-hl-delete ((,class (:background ,nord11))))
-
- ;; > Evil
- `(evil-ex-info ((,class (:foreground ,nord8))))
- `(evil-ex-substitute-replacement ((,class (:foreground ,nord9))))
- `(evil-ex-substitute-matches ((,class (:inherit isearch))))
-
- ;; > Flycheck
- `(flycheck-error ((,class (:underline (:style wave :color ,nord11)))))
- `(flycheck-fringe-error ((,class (:foreground ,nord11 :weight bold))))
- `(flycheck-fringe-info ((,class (:foreground ,nord8 :weight bold))))
- `(flycheck-fringe-warning ((,class (:foreground ,nord13 :weight bold))))
- `(flycheck-info ((,class (:underline (:style wave :color ,nord8)))))
- `(flycheck-warning ((,class (:underline (:style wave :color ,nord13)))))
-
- ;; > Git Gutter
- `(git-gutter:modified ((,class (:foreground ,nord13))))
- `(git-gutter:added ((,class (:foreground ,nord14))))
- `(git-gutter:deleted ((,class (:foreground ,nord11))))
-
- ;; > Git Gutter Plus
- `(git-gutter+-modified ((,class (:foreground ,nord13))))
- `(git-gutter+-added ((,class (:foreground ,nord14))))
- `(git-gutter+-deleted ((,class (:foreground ,nord11))))
-
- ;; > Helm
- `(helm-bookmark-addressbook ((,class (:foreground ,nord7))))
- `(helm-bookmark-directory ((,class (:foreground ,nord9))))
- `(helm-bookmark-file ((,class (:foreground ,nord8))))
- `(helm-bookmark-gnus ((,class (:foreground ,nord10))))
- `(helm-bookmark-info ((,class (:foreground ,nord14))))
- `(helm-bookmark-man ((,class (:foreground ,nord4))))
- `(helm-bookmark-w3m ((,class (:foreground ,nord9))))
- `(helm-buffer-directory ((,class (:foreground ,nord9))))
- `(helm-buffer-file ((,class (:foreground ,nord8))))
- `(helm-buffer-not-saved ((,class (:foreground ,nord13))))
- `(helm-buffer-process ((,class (:foreground ,nord10))))
- `(helm-candidate-number ((,class (:foreground ,nord4 :weight bold))))
- `(helm-candidate-number-suspended ((,class (:foreground ,nord4))))
- `(helm-ff-directory ((,class (:foreground ,nord9 :weight bold))))
- `(helm-ff-dirs ((,class (:foreground ,nord9))))
- `(helm-ff-dotted-director ((,class (:foreground ,nord9 :underline t))))
- `(helm-ff-dotted-symlink-director ((,class (:foreground ,nord7 :weight bold))))
- `(helm-ff-executable ((,class (:foreground ,nord8))))
- `(helm-ff-file ((,class (:foreground ,nord4))))
- `(helm-ff-invalid-symlink ((,class (:foreground ,nord11 :weight bold))))
- `(helm-ff-prefix ((,class (:foreground ,nord0 :background ,nord9))))
- `(helm-ff-symlink ((,class (:foreground ,nord7))))
- `(helm-grep-cmd-line ((,class (:foreground ,nord4 :background ,nord0))))
- `(helm-grep-file ((,class (:foreground ,nord8))))
- `(helm-grep-finish ((,class (:foreground ,nord5))))
- `(helm-grep-lineno ((,class (:foreground ,nord4))))
- `(helm-grep-match ((,class (:inherit isearch))))
- `(helm-grep-running ((,class (:foreground ,nord8))))
- `(helm-header ((,class (:foreground ,nord9 :background ,nord2))))
- `(helm-header-line-left-margin ((,class (:foreground ,nord9 :background ,nord2))))
- `(helm-history-deleted ((,class (:foreground ,nord11))))
- `(helm-history-remote ((,class (:foreground ,nord4))))
- `(helm-lisp-completion-info ((,class (:foreground ,nord4 :weight bold))))
- `(helm-lisp-show-completion ((,class (:inherit isearch))))
- `(helm-locate-finish ((,class (:foreground ,nord14))))
- `(helm-match ((,class (:foreground ,nord8))))
- `(helm-match-item ((,class (:inherit isearch))))
- `(helm-moccur-buffer ((,class (:foreground ,nord8))))
- `(helm-resume-need-update ((,class (:foreground ,nord0 :background ,nord13))))
- `(helm-selection ((,class (:inherit highlight))))
- `(helm-selection-line ((,class (:background ,nord2))))
- `(helm-source-header ((,class (:height 1.44 :foreground ,nord8 :background ,nord2))))
- `(helm-swoop-line-number-face ((,class (:foreground ,nord4 :background ,nord0))))
- `(helm-swoop-target-word-face ((,class (:foreground ,nord0 :background ,nord7))))
- `(helm-swoop-target-line-face ((,class (:background ,nord13 :foreground ,nord3))))
- `(helm-swoop-target-line-block-face ((,class (:background ,nord13 :foreground ,nord3))))
- `(helm-separator ((,class (:background ,nord2))))
- `(helm-visible-mark ((,class (:background ,nord2))))
-
- ;; > Magit
- `(magit-branch ((,class (:foreground ,nord7 :weight bold))))
- `(magit-diff-context-highlight ((,class (:background ,nord2))))
- `(magit-diff-file-header ((,class (:foreground ,nord8 :box (:color ,nord8)))))
- `(magit-diffstat-added ((,class (:foreground ,nord14))))
- `(magit-diffstat-removed ((,class (:foreground ,nord11))))
- `(magit-hash ((,class (:foreground ,nord8))))
- `(magit-hunk-heading ((,class (:foreground ,nord9))))
- `(magit-hunk-heading-highlight ((,class (:foreground ,nord9 :background ,nord2))))
- `(magit-item-highlight ((,class (:foreground ,nord8 :background ,nord2))))
- `(magit-log-author ((,class (:foreground ,nord7))))
- `(magit-process-ng ((,class (:foreground ,nord13 :weight bold))))
- `(magit-process-ok ((,class (:foreground ,nord14 :weight bold))))
- `(magit-section-heading ((,class (:foreground ,nord7 :weight bold))))
- `(magit-section-highlight ((,class (:background ,nord2))))
-
- ;; > MU4E
- `(mu4e-header-marks-face ((,class (:foreground ,nord9))))
- `(mu4e-title-face ((,class (:foreground ,nord8))))
- `(mu4e-header-key-face ((,class (:foreground ,nord8))))
- `(mu4e-highlight-face ((,class (:highlight))))
- `(mu4e-flagged-face ((,class (:foreground ,nord13))))
- `(mu4e-unread-face ((,class (:foreground ,nord13 :weight bold))))
- `(mu4e-link-face ((,class (:underline t))))
-
- ;; > Powerline
- `(powerline-active1 ((,class (:foreground ,nord4 :background ,nord1))))
- `(powerline-active2 ((,class (:foreground ,nord4 :background ,nord3))))
- `(powerline-inactive1 ((,class (:background ,nord2))))
- `(powerline-inactive2 ((,class (:background ,nord2))))
-
- ;; > Powerline Evil
- `(powerline-evil-base-face ((,class (:foreground ,nord4))))
- `(powerline-evil-normal-face ((,class (:background ,nord8))))
- `(powerline-evil-insert-face ((,class (:foreground ,nord0 :background ,nord4))))
- `(powerline-evil-visual-face ((,class (:foreground ,nord0 :background ,nord7))))
- `(powerline-evil-replace-face ((,class (:foreground ,nord0 :background ,nord9))))
-
- ;; > NeoTree
- `(neo-banner-face ((,class (:foreground ,nord10))))
- `(neo-dir-link-face ((,class (:foreground ,nord9))))
- `(neo-expand-btn-face ((,class (:foreground ,nord6 :bold t))))
- `(neo-file-link-face ((,class (:foreground ,nord4))))
- `(neo-root-dir-face ((,class (:foreground ,nord7 :weight bold))))
- `(neo-vc-added-face ((,class (:foreground ,nord14))))
- `(neo-vc-conflict-face ((,class (:foreground ,nord11))))
- `(neo-vc-default-face ((,class (:foreground ,nord4))))
- `(neo-vc-edited-face ((,class (:foreground ,nord13))))
- `(neo-vc-ignored-face ((,class (:foreground ,nord3))))
- `(neo-vc-missing-face ((,class (:foreground ,nord12))))
- `(neo-vc-needs-merge-face ((,class (:background ,nord12 :foreground ,nord4))))
- `(neo-vc-needs-update-face ((,class (:background ,nord10 :foreground ,nord4))))
- `(neo-vc-removed-face ((,class (:foreground ,nord11 :strike-through nil))))
- `(neo-vc-up-to-date-face ((,class (:foreground ,nord4))))
- `(neo-vc-user-face ((,class (:foreground ,nord4))))
-
- ;; > Cider
- `(cider-result-overlay-face ((t (:background unspecified))))
-
- ;; > Org
- `(org-level-1 ((,class (:foreground ,nord7 :weight extra-bold))))
- `(org-level-2 ((,class (:foreground ,nord8 :weight bold))))
- `(org-level-3 ((,class (:foreground ,nord9 :weight semi-bold))))
- `(org-level-4 ((,class (:foreground ,nord10 :weight normal))))
- `(org-level-5 ((,class (:inherit org-level-4))))
- `(org-level-6 ((,class (:inherit org-level-4))))
- `(org-level-7 ((,class (:inherit org-level-4))))
- `(org-level-8 ((,class (:inherit org-level-4))))
- `(org-agenda-structure ((,class (:foreground ,nord9))))
- `(org-agenda-date ((,class (:foreground ,nord8 :underline nil))))
- `(org-agenda-done ((,class (:foreground ,nord14))))
- `(org-agenda-dimmed-todo-face ((,class (:background ,nord13))))
- `(org-block ((,class (:foreground ,nord4))))
- `(org-block-background ((,class (:background ,nord0))))
- `(org-block-begin-line ((,class (:foreground ,nord7))))
- `(org-block-end-line ((,class (:foreground ,nord7))))
- `(org-checkbox ((,class (:foreground ,nord9))))
- `(org-checkbox-statistics-done ((,class (:foreground ,nord14))))
- `(org-checkbox-statistics-todo ((,class (:foreground ,nord13))))
- `(org-code ((,class (:foreground ,nord7))))
- `(org-column ((,class (:background ,nord2))))
- `(org-column-title ((,class (:inherit org-column :weight bold :underline t))))
- `(org-date ((,class (:foreground ,nord8))))
- `(org-document-info ((,class (:foreground ,nord4))))
- `(org-document-info-keyword ((,class (:foreground ,nord3 :weight bold))))
- `(org-document-title ((,class (:foreground ,nord8 :weight bold))))
- `(org-done ((,class (:foreground ,nord14 :weight bold))))
- `(org-ellipsis ((,class (:foreground ,nord3))))
- `(org-footnote ((,class (:foreground ,nord8))))
- `(org-formula ((,class (:foreground ,nord9))))
- `(org-hide ((,class (:foreground ,nord0 :background ,nord0))))
- `(org-link ((,class (:underline t))))
- `(org-scheduled ((,class (:foreground ,nord14))))
- `(org-scheduled-previously ((,class (:foreground ,nord13))))
- `(org-scheduled-today ((,class (:foreground ,nord8))))
- `(org-special-keyword ((,class (:foreground ,nord9))))
- `(org-table ((,class (:foreground ,nord9))))
- `(org-todo ((,class (:foreground ,nord13 :weight bold))))
- `(org-upcoming-deadline ((,class (:foreground ,nord12))))
- `(org-warning ((,class (:foreground ,nord13 :weight bold))))
- `(font-latex-bold-face ((,class (:inherit bold))))
- `(font-latex-italic-face ((,class (:slant italic))))
- `(font-latex-string-face ((,class (:foreground ,nord14))))
- `(font-latex-match-reference-keywords ((,class (:foreground ,nord9))))
- `(font-latex-match-variable-keywords ((,class (:foreground ,nord4))))
- `(ido-only-match ((,class (:foreground ,nord8))))
- `(org-sexp-date ((,class (:foreground ,nord7))))
- `(ido-first-match ((,class (:foreground ,nord8 :weight bold))))
- `(ido-subdir ((,class (:foreground ,nord9))))
- `(org-quote ((,class (:inherit org-block :slant italic))))
- `(org-verse ((,class (:inherit org-block :slant italic))))
- `(org-agenda-date-weekend ((,class (:foreground ,nord9))))
- `(org-agenda-date-today ((,class (:foreground ,nord8 :weight bold))))
- `(org-agenda-done ((,class (:foreground ,nord14))))
- `(org-verbatim ((,class (:foreground ,nord7))))
-
- ;; > ivy-mode
- `(ivy-current-match ((,class (:inherit region))))
- `(ivy-minibuffer-match-face-1 ((,class (:inherit default))))
- `(ivy-minibuffer-match-face-2 ((,class (:background ,nord7 :foreground ,nord0))))
- `(ivy-minibuffer-match-face-3 ((,class (:background ,nord8 :foreground ,nord0))))
- `(ivy-minibuffer-match-face-4 ((,class (:background ,nord9 :foreground ,nord0))))
- `(ivy-remote ((,class (:foreground ,nord14))))
- `(ivy-posframe ((,class (:background ,nord1))))
- `(ivy-posframe-border ((,class (:background ,nord1))))
- `(ivy-remote ((,class (:foreground ,nord14))))
-
- ;; > perspective
- `(persp-selected-face ((,class (:foreground ,nord8 :weight bold))))))
-
-;;;###autoload
-(when (and (boundp 'custom-theme-load-path) load-file-name)
- (add-to-list 'custom-theme-load-path
- (file-name-as-directory (file-name-directory load-file-name))))
-
-(provide-theme 'nord)
-
-;; Local Variables:
-;; no-byte-compile: t
-;; indent-tabs-mode: nil
-;; End:
-
-;;; nord-theme.el ends here
diff --git a/config/extra/emacs/themes/tlast-theme.el b/config/extra/emacs/themes/tlast-theme.el
deleted file mode 100644
index a6ed15f..0000000
--- a/config/extra/emacs/themes/tlast-theme.el
+++ /dev/null
@@ -1,306 +0,0 @@
-;;; tlast-theme.el --- Theme
-
-;; Copyright (C) 2023 , tlast
-
-;; Author: tlast
-;; Version: 0.1
-;; Package-Requires: ((emacs "24.1"))
-;; Created with ThemeCreator, https://github.com/mswift42/themecreator.
-
-;; This program is free software: you can redistribute it and/or modify
-;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation, either version 3 of the License, or
-;; (at your option) any later version.
-
-;; This program is distributed in the hope that it will be useful,
-;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-;; GNU General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-;; This file is not part of Emacs.
-
-;;; Commentary:
-;;; tlast theme created by tlast in 2023
-
-;;; Code:
-
-(deftheme tlast)
-(let ((class '((class color) (min-colors 89)))
- (fg1 "#62a0ea")
- (fg2 "#5a93d7")
- (fg3 "#5286c5")
- (fg4 "#4a7ab2")
- (fg6 "#88b7ef")
- (bg1 "#3d3846")
- (bg2 "#4d4855")
- (bg3 "#5c5864")
- (bg4 "#6c6872")
- (builtin "#26a269")
- (keyword "#3584e4")
- (const "#ffffff")
- (comment "#77767b")
- (func "#99c1f1")
- (str "#57e389")
- (type "#f6d32d")
- (var "#ff7800")
- (selection "#dc8add")
- (warning "#ff0000")
- (warning2 "#ff8800")
- (unspec (when (>= emacs-major-version 29) 'unspecified)))
- (custom-theme-set-faces
- 'tlast
- `(default ((,class (:background ,bg1 :foreground ,fg1))))
- `(font-lock-builtin-face ((,class (:foreground ,builtin))))
- `(font-lock-comment-face ((,class (:foreground ,comment))))
- `(font-lock-negation-char-face ((,class (:foreground ,const))))
- `(font-lock-reference-face ((,class (:foreground ,const))))
- `(font-lock-constant-face ((,class (:foreground ,const))))
- `(font-lock-doc-face ((,class (:foreground ,comment))))
- `(font-lock-function-name-face ((,class (:foreground ,func ))))
- `(font-lock-keyword-face ((,class (:bold ,class :foreground ,keyword))))
- `(font-lock-string-face ((,class (:foreground ,str))))
- `(font-lock-type-face ((,class (:foreground ,type ))))
- `(font-lock-variable-name-face ((,class (:foreground ,var))))
- `(font-lock-warning-face ((,class (:foreground ,warning :background ,bg2))))
- `(term-color-black ((,class (:foreground ,fg2 :background ,unspec))))
- ;; `(region ((,class (:background ,fg1 :foreground ,bg1))))
- `(region ((,class (:background ,selection))))
- `(highlight ((,class (:foreground ,fg3 :background ,bg3))))
- `(hl-line ((,class (:background ,bg2))))
- `(fringe ((,class (:background ,bg2 :foreground ,fg4))))
- `(cursor ((,class (:background ,fg4))))
- `(isearch ((,class (:bold t :foreground ,warning :background ,bg3))))
- `(mode-line ((,class (:box (:line-width 1 :color nil) :bold t :foreground ,fg4 :background ,bg2))))
- `(mode-line-inactive ((,class (:box (:line-width 1 :color nil :style pressed-button) :foreground ,var :background ,bg1 :weight normal))))
- `(mode-line-buffer-id ((,class (:bold t :foreground ,func :background ,unspec))))
- `(mode-line-highlight ((,class (:foreground ,keyword :box nil :weight bold))))
- `(mode-line-emphasis ((,class (:foreground ,fg1))))
- `(vertical-border ((,class (:foreground ,fg3))))
- `(minibuffer-prompt ((,class (:bold t :foreground ,keyword))))
- `(default-italic ((,class (:italic t))))
- `(link ((,class (:foreground ,const :underline t))))
- `(org-code ((,class (:foreground ,fg2))))
- `(org-hide ((,class (:foreground ,fg4))))
- `(org-level-1 ((,class (:bold t :foreground ,fg2 :height 1.1))))
- `(org-level-2 ((,class (:bold nil :foreground ,fg3))))
- `(org-level-3 ((,class (:bold t :foreground ,fg4))))
- `(org-level-4 ((,class (:bold nil :foreground ,bg4))))
- `(org-date ((,class (:underline t :foreground ,var) )))
- `(org-footnote ((,class (:underline t :foreground ,fg4))))
- `(org-link ((,class (:underline t :foreground ,type ))))
- `(org-special-keyword ((,class (:foreground ,func))))
- `(org-block ((,class (:foreground ,fg3))))
- `(org-quote ((,class (:inherit org-block :slant italic))))
- `(org-verse ((,class (:inherit org-block :slant italic))))
- `(org-todo ((,class (:box (:line-width 1 :color ,fg3) :foreground ,keyword :bold t))))
- `(org-done ((,class (:box (:line-width 1 :color ,bg3) :bold t :foreground ,bg4))))
- `(org-warning ((,class (:underline t :foreground ,warning))))
- `(org-agenda-structure ((,class (:weight bold :foreground ,fg3 :box (:color ,fg4) :background ,bg3))))
- `(org-agenda-date ((,class (:foreground ,var :height 1.1 ))))
- `(org-agenda-date-weekend ((,class (:weight normal :foreground ,fg4))))
- `(org-agenda-date-today ((,class (:weight bold :foreground ,keyword :height 1.4))))
- `(org-agenda-done ((,class (:foreground ,bg4))))
- `(org-scheduled ((,class (:foreground ,type))))
- `(org-scheduled-today ((,class (:foreground ,func :weight bold :height 1.2))))
- `(org-ellipsis ((,class (:foreground ,builtin))))
- `(org-verbatim ((,class (:foreground ,fg4))))
- `(org-document-info-keyword ((,class (:foreground ,func))))
- `(font-latex-bold-face ((,class (:foreground ,type))))
- `(font-latex-italic-face ((,class (:foreground ,var :italic t))))
- `(font-latex-string-face ((,class (:foreground ,str))))
- `(font-latex-match-reference-keywords ((,class (:foreground ,const))))
- `(font-latex-match-variable-keywords ((,class (:foreground ,var))))
- `(ido-only-match ((,class (:foreground ,warning))))
- `(org-sexp-date ((,class (:foreground ,fg4))))
- `(ido-first-match ((,class (:foreground ,keyword :bold t))))
- `(ivy-current-match ((,class (:foreground ,fg3 :inherit highlight :underline t))))
- `(gnus-header-content ((,class (:foreground ,keyword))))
- `(gnus-header-from ((,class (:foreground ,var))))
- `(gnus-header-name ((,class (:foreground ,type))))
- `(gnus-header-subject ((,class (:foreground ,func :bold t))))
- `(mu4e-view-url-number-face ((,class (:foreground ,type))))
- `(mu4e-cited-1-face ((,class (:foreground ,fg2))))
- `(mu4e-cited-7-face ((,class (:foreground ,fg3))))
- `(mu4e-header-marks-face ((,class (:foreground ,type))))
- `(ffap ((,class (:foreground ,fg4))))
- `(js2-private-function-call ((,class (:foreground ,const))))
- `(js2-jsdoc-html-tag-delimiter ((,class (:foreground ,str))))
- `(js2-jsdoc-html-tag-name ((,class (:foreground ,var))))
- `(js2-external-variable ((,class (:foreground ,type ))))
- `(js2-function-param ((,class (:foreground ,const))))
- `(js2-jsdoc-value ((,class (:foreground ,str))))
- `(js2-private-member ((,class (:foreground ,fg3))))
- `(js3-warning-face ((,class (:underline ,keyword))))
- `(js3-error-face ((,class (:underline ,warning))))
- `(js3-external-variable-face ((,class (:foreground ,var))))
- `(js3-function-param-face ((,class (:foreground ,fg2))))
- `(js3-jsdoc-tag-face ((,class (:foreground ,keyword))))
- `(js3-instance-member-face ((,class (:foreground ,const))))
- `(warning ((,class (:foreground ,warning))))
- `(ac-completion-face ((,class (:underline t :foreground ,keyword))))
- `(info-quoted-name ((,class (:foreground ,builtin))))
- `(info-string ((,class (:foreground ,str))))
- `(icompletep-determined ((,class :foreground ,builtin)))
- `(undo-tree-visualizer-current-face ((,class :foreground ,builtin)))
- `(undo-tree-visualizer-default-face ((,class :foreground ,fg2)))
- `(undo-tree-visualizer-unmodified-face ((,class :foreground ,var)))
- `(undo-tree-visualizer-register-face ((,class :foreground ,type)))
- `(slime-repl-inputed-output-face ((,class (:foreground ,type))))
- `(trailing-whitespace ((,class :foreground ,unspec :background ,warning)))
- `(rainbow-delimiters-depth-1-face ((,class :foreground ,fg1)))
- `(rainbow-delimiters-depth-2-face ((,class :foreground ,type)))
- `(rainbow-delimiters-depth-3-face ((,class :foreground ,var)))
- `(rainbow-delimiters-depth-4-face ((,class :foreground ,const)))
- `(rainbow-delimiters-depth-5-face ((,class :foreground ,keyword)))
- `(rainbow-delimiters-depth-6-face ((,class :foreground ,fg1)))
- `(rainbow-delimiters-depth-7-face ((,class :foreground ,type)))
- `(rainbow-delimiters-depth-8-face ((,class :foreground ,var)))
- `(magit-item-highlight ((,class :background ,bg3)))
- `(magit-section-heading ((,class (:foreground ,keyword :weight bold))))
- `(magit-hunk-heading ((,class (:background ,bg3))))
- `(magit-section-highlight ((,class (:background ,bg2))))
- `(magit-hunk-heading-highlight ((,class (:background ,bg3))))
- `(magit-diff-context-highlight ((,class (:background ,bg3 :foreground ,fg3))))
- `(magit-diffstat-added ((,class (:foreground ,type))))
- `(magit-diffstat-removed ((,class (:foreground ,var))))
- `(magit-process-ok ((,class (:foreground ,func :weight bold))))
- `(magit-process-ng ((,class (:foreground ,warning :weight bold))))
- `(magit-branch ((,class (:foreground ,const :weight bold))))
- `(magit-log-author ((,class (:foreground ,fg3))))
- `(magit-hash ((,class (:foreground ,fg2))))
- `(magit-diff-file-header ((,class (:foreground ,fg2 :background ,bg3))))
- `(lazy-highlight ((,class (:foreground ,fg2 :background ,bg3))))
- `(term ((,class (:foreground ,fg1 :background ,bg1))))
- `(term-color-black ((,class (:foreground ,bg3 :background ,bg3))))
- `(term-color-blue ((,class (:foreground ,func :background ,func))))
- `(term-color-red ((,class (:foreground ,keyword :background ,bg3))))
- `(term-color-green ((,class (:foreground ,type :background ,bg3))))
- `(term-color-yellow ((,class (:foreground ,var :background ,var))))
- `(term-color-magenta ((,class (:foreground ,builtin :background ,builtin))))
- `(term-color-cyan ((,class (:foreground ,str :background ,str))))
- `(term-color-white ((,class (:foreground ,fg2 :background ,fg2))))
- `(rainbow-delimiters-unmatched-face ((,class :foreground ,warning)))
- `(helm-header ((,class (:foreground ,fg2 :background ,bg1 :underline nil :box nil))))
- `(helm-source-header ((,class (:foreground ,keyword :background ,bg1 :underline nil :weight bold))))
- `(helm-selection ((,class (:background ,bg2 :underline nil))))
- `(helm-selection-line ((,class (:background ,bg2))))
- `(helm-visible-mark ((,class (:foreground ,bg1 :background ,bg3))))
- `(helm-candidate-number ((,class (:foreground ,bg1 :background ,fg1))))
- `(helm-separator ((,class (:foreground ,type :background ,bg1))))
- `(helm-time-zone-current ((,class (:foreground ,builtin :background ,bg1))))
- `(helm-time-zone-home ((,class (:foreground ,type :background ,bg1))))
- `(helm-buffer-not-saved ((,class (:foreground ,type :background ,bg1))))
- `(helm-buffer-process ((,class (:foreground ,builtin :background ,bg1))))
- `(helm-buffer-saved-out ((,class (:foreground ,fg1 :background ,bg1))))
- `(helm-buffer-size ((,class (:foreground ,fg1 :background ,bg1))))
- `(helm-ff-directory ((,class (:foreground ,func :background ,bg1 :weight bold))))
- `(helm-ff-file ((,class (:foreground ,fg1 :background ,bg1 :weight normal))))
- `(helm-ff-executable ((,class (:foreground ,var :background ,bg1 :weight normal))))
- `(helm-ff-invalid-symlink ((,class (:foreground ,warning2 :background ,bg1 :weight bold))))
- `(helm-ff-symlink ((,class (:foreground ,keyword :background ,bg1 :weight bold))))
- `(helm-ff-prefix ((,class (:foreground ,bg1 :background ,keyword :weight normal))))
- `(helm-grep-cmd-line ((,class (:foreground ,fg1 :background ,bg1))))
- `(helm-grep-file ((,class (:foreground ,fg1 :background ,bg1))))
- `(helm-grep-finish ((,class (:foreground ,fg2 :background ,bg1))))
- `(helm-grep-lineno ((,class (:foreground ,fg1 :background ,bg1))))
- `(helm-grep-match ((,class (:foreground ,unspec :background ,unspec :inherit helm-match))))
- `(helm-grep-running ((,class (:foreground ,func :background ,bg1))))
- `(helm-moccur-buffer ((,class (:foreground ,func :background ,bg1))))
- `(helm-source-go-package-godoc-description ((,class (:foreground ,str))))
- `(helm-bookmark-w3m ((,class (:foreground ,type))))
- `(company-echo-common ((,class (:foreground ,bg1 :background ,fg1))))
- `(company-preview ((,class (:background ,bg1 :foreground ,var))))
- `(company-preview-common ((,class (:foreground ,bg2 :foreground ,fg3))))
- `(company-preview-search ((,class (:foreground ,type :background ,bg1))))
- `(company-scrollbar-bg ((,class (:background ,bg3))))
- `(company-scrollbar-fg ((,class (:foreground ,keyword))))
- `(company-tooltip ((,class (:foreground ,fg2 :background ,bg2 :bold t))))
- `(company-tooltop-annotation ((,class (:foreground ,const))))
- `(company-tooltip-common ((,class ( :foreground ,fg3))))
- `(company-tooltip-common-selection ((,class (:foreground ,str))))
- `(company-tooltip-mouse ((,class (:inherit highlight))))
- `(company-tooltip-selection ((,class (:background ,bg3 :foreground ,fg3))))
- `(company-template-field ((,class (:inherit region))))
- `(web-mode-builtin-face ((,class (:inherit ,font-lock-builtin-face))))
- `(web-mode-comment-face ((,class (:inherit ,font-lock-comment-face))))
- `(web-mode-constant-face ((,class (:inherit ,font-lock-constant-face))))
- `(web-mode-keyword-face ((,class (:foreground ,keyword))))
- `(web-mode-doctype-face ((,class (:inherit ,font-lock-comment-face))))
- `(web-mode-function-name-face ((,class (:inherit ,font-lock-function-name-face))))
- `(web-mode-string-face ((,class (:foreground ,str))))
- `(web-mode-type-face ((,class (:inherit ,font-lock-type-face))))
- `(web-mode-html-attr-name-face ((,class (:foreground ,func))))
- `(web-mode-html-attr-value-face ((,class (:foreground ,keyword))))
- `(web-mode-warning-face ((,class (:inherit ,font-lock-warning-face))))
- `(web-mode-html-tag-face ((,class (:foreground ,builtin))))
- `(jde-java-font-lock-package-face ((t (:foreground ,var))))
- `(jde-java-font-lock-public-face ((t (:foreground ,keyword))))
- `(jde-java-font-lock-private-face ((t (:foreground ,keyword))))
- `(jde-java-font-lock-constant-face ((t (:foreground ,const))))
- `(jde-java-font-lock-modifier-face ((t (:foreground ,fg2))))
- `(jde-jave-font-lock-protected-face ((t (:foreground ,keyword))))
- `(jde-java-font-lock-number-face ((t (:foreground ,var))))
- `(yas-field-highlight-face ((t (:background ,selection)))))
- ;; Legacy
- (if (< emacs-major-version 22)
- (custom-theme-set-faces
- 'tlast
- `(show-paren-match-face ((,class (:background ,warning))))) ;; obsoleted in 22.1, removed 2016
- (custom-theme-set-faces
- 'tlast
- `(show-paren-match ((,class (:foreground ,bg1 :background ,str))))
- `(show-paren-mismatch ((,class (:foreground ,bg1 :background ,warning))))))
- ;; emacs >= 26.1
- (when (>= emacs-major-version 26)
- (custom-theme-set-faces
- 'tlast
- `(line-number ((t (:inherit fringe))))
- `(line-number-current-line ((t (:inherit fringe :foreground ,fg6 :weight bold))))))
-
- ;; emacs >= 27.1
- (when (>= emacs-major-version 27)
- (custom-theme-set-faces
- 'tlast
- `(tab-line ((,class (:background ,bg2 :foreground ,fg4))))
- `(tab-line-tab ((,class (:inherit tab-line))))
- `(tab-line-tab-inactive ((,class (:background ,bg2 :foreground ,fg4))))
- `(tab-line-tab-current ((,class (:background ,bg1 :foreground ,fg1))))
- `(tab-line-highlight ((,class (:background ,bg1 :foreground ,fg2))))))
- (when (>= emacs-major-version 28)
- (custom-theme-set-faces
- 'tlast
- `(line-number ((t (:inherit fringe))))
- `(line-number-current-line ((t (:inherit fringe :foreground ,fg6 :weight bold))))))
-;; emacs >= 27.1
-(when (>= emacs-major-version 27)
- (custom-theme-set-faces
- 'tlast
- `(tab-line ((,class (:background ,bg2 :foreground ,fg4))))
- `(tab-line-tab ((,class (:inherit tab-line))))
- `(tab-line-tab-inactive ((,class (:background ,bg2 :foreground ,fg4))))
- `(tab-line-tab-current ((,class (:background ,bg1 :foreground ,fg1))))
- `(tab-line-highlight ((,class (:background ,bg1 :foreground ,fg2))))))
- (when (>= emacs-major-version 28)
- (custom-theme-set-faces
- 'tlast
- `(tab-line-tab-modified ((,class (:foreground ,warning2 :weight bold))))))
- (when (boundp 'font-lock-regexp-face)
- (custom-theme-set-faces
- 'tlast
- `(font-lock-regexp-face ((,class (:inherit font-lock-string-face :underline t)))))))
-
-;;;###autoload
-(when load-file-name
- (add-to-list 'custom-theme-load-path
- (file-name-as-directory (file-name-directory load-file-name))))
-
-(provide-theme 'tlast)
-
-;; Local Variables:
-;; no-byte-compile: t
-;; End:
-
-;;; tlast-theme.el ends here
diff --git a/config/extra/tridactyl/tridactylrc b/config/extra/tridactyl/tridactylrc
index 977578b..1a96af5 100644
--- a/config/extra/tridactyl/tridactylrc
+++ b/config/extra/tridactyl/tridactylrc
@@ -1,5 +1,5 @@
set newtab http://localhost:28669
-set searchengine duckduckgo
+set searchengine ""
" Searchurls
set searchurls.1x https://www.1377x.to/search/%s/1
diff --git a/config/home/.bashrc b/config/home/.bashrc
index 33dbba4..312500d 100644
--- a/config/home/.bashrc
+++ b/config/home/.bashrc
@@ -2,8 +2,11 @@ SHELL=/bin/bash
PATH=$HOME/bin:$PATH
color1="\[\033[35m\]"
color2="\[\033[36m\]"
+color3="\[\033[40m\]"
+color4="\[\033[38m\]"
bold="\[\033[1m\]"
reset="\[\033[0m\]"
-PS1="${color1}${bold} [\\u${reset}@${color2}${bold}\\h]${reset} \\w "
+PS1="${color1}${bold} ${color3}\\u${reset}${color3}${color4}@${color2}${bold}\\h${reset}${color3} \\w${reset} "
HISTFILE=
-. $HOME/.config/zsh/aliases.sh
+. $HOME/.config/shell/aliases.sh
+. $HOME/.config/shell/functions.sh
diff --git a/config/home/.zshenv b/config/home/.zshenv
index cfaef9c..e8021ec 100644
--- a/config/home/.zshenv
+++ b/config/home/.zshenv
@@ -1,6 +1,6 @@
#!/bin/zsh
-export EDITOR="nvim"
-export VISUAL="nvim"
+export EDITOR="emacsclient -nw -q"
+export VISUAL="emacsclient -nw -q"
export BROWSER="librewolf"
export VIEWER="zathura"
diff --git a/config/theme/fontconfig/fonts.conf b/config/theme/fontconfig/fonts.conf
index 8681e4e..625dd34 100644
--- a/config/theme/fontconfig/fonts.conf
+++ b/config/theme/fontconfig/fonts.conf
@@ -16,7 +16,8 @@
<alias>
<family>monospace</family>
<prefer>
- <family>JetBrains Mono</family>
+ <family>JetBrains Mono</family>
+ <family>JetBrains Mono NerdFont</family>
<family>Joy Pixels</family>
</prefer>
</alias>
diff --git a/config/wayland/dwl/startup.sh b/config/wayland/dwl/startup.sh
index d743f19..0f482fa 100755
--- a/config/wayland/dwl/startup.sh
+++ b/config/wayland/dwl/startup.sh
@@ -10,6 +10,7 @@ swaybg -i ~/pics/wallpaper &
wl-paste --watch cliphist store &
swayidle 300 locker &
keyadd id_rsa &
+emacs --daemon &
pkill -f "tail -f $HOME/.config/wob/pipe"
WOBCONFIG="$HOME"/.config/wob
@@ -20,4 +21,5 @@ then
fi
(tail -f "$WOBCONFIG"/pipe | wob) &
-$TERMINAL -e tmux a || $TERMINAL tmux &
+# $TERMINAL -e tmux a || $TERMINAL tmux &
+emacsclient -c -a 'emacs' &
diff --git a/config/wayland/hypr/binds.conf b/config/wayland/hypr/binds.conf
index 251ce69..15af7dd 100644
--- a/config/wayland/hypr/binds.conf
+++ b/config/wayland/hypr/binds.conf
@@ -112,8 +112,8 @@ bind = $mainMod, L, exec, dmlang
bind =, L, exec, dmlang
bind = $mainMod, S, exec, mmedia schoolpdf
bind =, S, exec, mmedia schoolpdf
-bind = $mainMod, V, exec, mmedia video
-bind =, V, exec, mmedia video
+bind = $mainMod, V, exec, mmpv
+bind =, V, exec, mmpv
bind = $mainMod, U, exec, mmedia cursus
bind =, U, exec, mmedia cursus
bind = $mainMod, M, exec, mmedia
diff --git a/config/wayland/hypr/hyprland.conf b/config/wayland/hypr/hyprland.conf
index 9eb0549..eb232c9 100644
--- a/config/wayland/hypr/hyprland.conf
+++ b/config/wayland/hypr/hyprland.conf
@@ -10,7 +10,7 @@ input {
kb_layout = us
kb_variant =
kb_model =
- kb_options = ctrl:nocaps
+ kb_options = ctrl:swapcaps
kb_rules =
follow_mouse = 2
@@ -23,8 +23,8 @@ input {
}
general {
- gaps_in = 1
- gaps_out = 3
+ gaps_in = 0
+ gaps_out = 0
border_size = 2
col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
col.inactive_border = rgba(595959aa)
@@ -46,20 +46,20 @@ decoration {
enabled = 1
size = 6
}
- dim_inactive = true
+ dim_inactive = false
dim_strength = 0.08
- active_opacity = 0.98
- inactive_opacity = 0.92
+ active_opacity = 1.00
+ inactive_opacity = 0.97
- drop_shadow = yes
+ drop_shadow = no
shadow_range = 4
shadow_render_power = 3
col.shadow = rgba(1a1a1aee)
}
animations {
- enabled = yes
+ enabled = no
bezier = myBezier, 0.05, 0.9, 0.1, 1.05
@@ -93,3 +93,16 @@ windowrulev2 = noanim, class:dmenu
layerrule = noanim, launcher
source = ./binds.conf
+
+# Even are for left monitor
+workspace = 1,monitor:HDMI-A-4
+workspace = 3,monitor:HDMI-A-4
+workspace = 5,monitor:HDMI-A-4
+workspace = 7,monitor:HDMI-A-4
+workspace = 9,monitor:HDMI-A-4
+
+# Odd are for right monitor
+workspace = 2,monitor:DP-2
+workspace = 4,monitor:DP-2
+workspace = 6,monitor:DP-2
+workspace = 8,monitor:DP-2
diff --git a/config/wayland/mako/config b/config/wayland/mako/config
index 4380506..06eed6e 100644
--- a/config/wayland/mako/config
+++ b/config/wayland/mako/config
@@ -24,6 +24,6 @@ default-timeout=0
default-timeout=2000
group-by=category
-[app-name=gurk]
+[summary=lolaa]
# 45887 = 70%
on-notify=exec paplay --volume=45887 ~/.local/share/sounds/ring1.ogg
diff --git a/config/wayland/waybar/config.jsonc b/config/wayland/waybar/config.jsonc
index 1d795fc..aa93297 120000..100644
--- a/config/wayland/waybar/config.jsonc
+++ b/config/wayland/waybar/config.jsonc
@@ -1 +1,16 @@
-configs/hyprland.jsonc \ No newline at end of file
+{
+ "modules-left": ["hyprland/workspaces", "custom/layout", "hyprland/window"],
+ "modules-right": ["custom/status"],
+ "hyprland/window": {
+ "format": " {} "
+ },
+ "custom/layout": {
+ "format": " []= ",
+ "interval": "once",
+ },
+ "custom/status": {
+ "exec": "~/.config/waybar/status.sh",
+ "format": " {} ",
+ "interval": 1
+ }
+}
diff --git a/config/wayland/waybar/configs/dwm.jsonc b/config/wayland/waybar/configs/dwm.jsonc
deleted file mode 100644
index 211f776..0000000
--- a/config/wayland/waybar/configs/dwm.jsonc
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "modules-left": ["hyprland/workspaces", "custom/layout", "hyprland/window"],
- "modules-right": ["custom/status"],
- "hyprland/window": {
- "format": " {} "
- },
- "custom/layout": {
- "format": " []= ",
- "interval": "once",
- },
- "custom/status": {
- "exec": "~/.config/waybar/scripts/status.sh",
- "format": " {} ",
- "interval": 1
- }
-}
diff --git a/config/wayland/waybar/configs/hyprland.jsonc b/config/wayland/waybar/configs/hyprland.jsonc
deleted file mode 100644
index 9d60915..0000000
--- a/config/wayland/waybar/configs/hyprland.jsonc
+++ /dev/null
@@ -1,78 +0,0 @@
-{
- "layer": "top",
- "modules-left": ["battery", "hyprland/workspaces", "mpd", "hyprland/window"],
- "modules-center": ["clock"],
- "modules-right": ["custom/wireguard", "network", "pulseaudio", "temperature", "cpu", "custom/memory", "custom/bluetooth", "tray"],
- "mpd": {
- "format": "{artist} - {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S})",
- "artist-len": 24,
- "format-disconnected": "s",
- "format-stopped": "",
- "state-icons": {
- "playing": "",
- "paused": "",
- },
- "tooltip-format": "{songPosition}/{queueLength} ({volume}%)",
- "on-click": "mpc toggle",
- "on-scroll-up": "mpc volume +5",
- "on-scroll-down": "mpc volume -5",
- },
- "battery": {
- "format-charging": " {capacity}%",
- "on-click": "mpower",
- "interval": 10,
- },
- "hyprland/window": {
- "format": " {}",
- "separate-outputs": true,
- },
- "pulseaudio": {
- "scroll-step": 1,
- "format": "{icon} {volume:3}%",
- "format-icons": {
- "default": ["", "", ""]
- },
- "on-click": "pavucontrol",
- },
- "temperature": {
- "interval": 3,
- "format": "{icon} {temperatureC}°C",
- "format-icons": {
- "default":["", "", "", "", ""]
- },
- },
- "custom/wireguard": {
- "exec": "ip addr show dev wg0",
- "format": "wg0",
- "restart-interval": 3,
- },
- "network": {
- "format-wifi": " ",
- "tooltip-format-wifi": "{ifname} {essid}",
- "format-ethernet": "",
- "tooltip-format-ethernet": "{ifname} {ipaddr}",
- "format-disconnected": "",
- },
- "cpu": {
- "format": " {usage:2}%",
- "interval": 3,
- },
- "custom/memory": {
- "exec": "free -h | awk '(NR==2){ print $3 }'",
- "format": "{}",
- "restart-interval": 3,
- },
- "clock": {
- "format": "{:%R}",
- "format-alt": "{:(%T) %A %d %B}",
- "interval": 1,
- },
- "custom/bluetooth": {
- "exec": "bluetoothctl info",
- "format": "",
- "interval": 3,
- },
- "tray": {
- "spacing": 5,
- }
-}
diff --git a/config/wayland/waybar/scripts/status.sh b/config/wayland/waybar/scripts/status.sh
deleted file mode 100755
index 3b658e5..0000000
--- a/config/wayland/waybar/scripts/status.sh
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-printf 'Hyprland %s' "$(expac %v hyprland)"
diff --git a/config/wayland/waybar/status.sh b/config/wayland/waybar/status.sh
new file mode 100755
index 0000000..6d5bd66
--- /dev/null
+++ b/config/wayland/waybar/status.sh
@@ -0,0 +1,2 @@
+#!/bin/sh
+printf '%s' "$(date '+%-d %b %R')"
diff --git a/config/wayland/waybar/style.css b/config/wayland/waybar/style.css
index 76f49ff..31eacf0 120000..100644
--- a/config/wayland/waybar/style.css
+++ b/config/wayland/waybar/style.css
@@ -1 +1,20 @@
-styles/nord.css \ No newline at end of file
+* {
+ border: none;
+ border-radius: 0;
+ font-family: monospace;
+ font-size: 14px;
+ min-height: 16px;
+}
+
+window#waybar, #workspaces button.active {
+ background-color: #4c566a;
+}
+
+#workspaces button, #custom-layout, #custom-status {
+ background-color: #2e3440;
+}
+
+#workspaces button {
+ padding: 0 2px;
+ margin: 0;
+}
diff --git a/config/wayland/waybar/styles/base16.css b/config/wayland/waybar/styles/base16.css
deleted file mode 100644
index 639b590..0000000
--- a/config/wayland/waybar/styles/base16.css
+++ /dev/null
@@ -1,181 +0,0 @@
-/*
- ********************************************
- *░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░*
- *░░█▀█░█░░░█░█░█▀▀░░░█░█░█░░░▀█▀░█▀▄░█▀█░░*
- *░░█▀▀░█░░░█░█░▀▀█░░░█░█░█░░░░█░░█▀▄░█▀█░░*
- *░░▀░░░▀▀▀░▀▀▀░▀▀▀░░░▀▀▀░▀▀▀░░▀░░▀░▀░▀░▀░░*
- *░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░*
- ********************************************
- */
-/* https://github.com/jakehamilton/dotfiles */
-/* Amazing I love it :))) */
-
-@import "styles/colors/colors.css";
-
-* {
- border: none;
- border-radius: 0;
- font-family: monospace;
- font-weight: bold;
- font-size: 12px;
- min-height: 24px;
-}
-
-window#waybar {
- background: transparent;
-}
-
-window#waybar.hidden {
- opacity: 0.2;
-}
-
-tooltip {
- background: @background;
- color: @foreground;
- border: 2px solid @color0;
-}
-
-window#waybar.termite #window,
-window#waybar.Firefox #window,
-window#waybar.Navigator #window,
-window#waybar.PCSX2 #window {
- color: @background;
- background: @color7;
-}
-
-.modules-right * {
- padding: 0 16px;
-}
-
-.modules-right {
- margin-right: 2px;
-}
-.modules-left {
- margin-left: 3px;
-}
-
-#workspaces, #tags, #mpd, #battery,
-#clock,
-#custom-wireguard, #network, #pulseaudio, #temperature, #cpu, #custom-memory, #custom-bluetooth, #tray {
- border: solid @background;
- border-width: 2px 2px 2px 0;
- margin-top: 4px;
- margin-bottom: 2px;
- transition: none;
-}
-
-#battery {
- color: @color6;
- background: @background;
- border-color: @color4;
- border-width: 2px;
- padding: 0 12px;
- margin-right: 16px;
-}
-
-#workspaces, #tags {
- border: solid @background 2px;
- background: @color3;
-}
-
-#workspaces button, #tags button {
- transition: none;
- background: transparent;
- color: @background;
-}
-
-#tags button.occupied {
- background: @color2;
-}
-
-#workspaces button.active, #tags button.focused {
- background-color: @color6;
-}
-
-#workspaces button:hover, #tags button:hover {
- transition: none;
- color: @color8;
-}
-
-#tags button {
- margin: 0;
- padding-left: 5px;
- padding-right: 5px;
-}
-
-#mpd {
- color: @background;
- padding: 0 16px;
- background: @color6;
-}
-
-#mpd.disconnected,
-#mpd.stopped {
- color: @foreground;
- background: @background;
- border-color: @color4;
-}
-
-#clock {
- border: solid @color4 2px;
- padding: 0 16px;
- color: @color3;
- background: @background;
-}
-
-#window {
- margin-left: 16px;
- padding: 0;
- color: @color5;
-}
-
-#custom-wireguard {
- color: @color5;
- border: 2px solid @color8;
- background: @background;
-}
-
-#network {
- color: @background;
- border-left: 2px solid @background;
- background: @color5;
-}
-
-#pulseaudio {
- color: @background;
- background: @color4;
-}
-
-#temperature {
- color: @background;
- background: @color3;
-}
-
-#cpu {
- color: @background;
- background: @color4;
-}
-
-#custom-memory {
- padding: 0 16px;
- color: @background;
- background: @color5;
-}
-
-#custom-bluetooth {
- color: @color6;
- background: @color8;
-}
-
-#tray * {
- padding: unset;
-}
-
-#tray > .needs-attention {
- -gtk-icon-effect: highlight;
- background-color: @color1;
-}
-
-#tray > .passive {
- -gtk-icon-effect: dim;
-}
diff --git a/config/wayland/waybar/styles/colors/colors-nord b/config/wayland/waybar/styles/colors/colors-nord
deleted file mode 100644
index 9622792..0000000
--- a/config/wayland/waybar/styles/colors/colors-nord
+++ /dev/null
@@ -1,29 +0,0 @@
-@define-color foreground #d8dee9;
-@define-color background #2e3440;
-
-@define-color color0 #3b4252;
-@define-color color1 #bf616a;
-@define-color color2 #a3be8c;
-@define-color color3 #ebcb8b;
-@define-color color4 #81a1c1;
-@define-color color5 #b48ead;
-@define-color color6 #88c0d0;
-@define-color color7 #e5e9f0;
-
-@define-color color8 #4c566a;
-@define-color color9 #bf616a;
-@define-color color10 #a3be8c;
-@define-color color11 #ebcb8b;
-@define-color color12 #81a1c1;
-@define-color color13 #b48ead;
-@define-color color14 #d08770;
-@define-color color15 #eceff4;
-
-@define-color color16 #373e4d;
-@define-color color17 #94545d;
-@define-color color18 #809575;
-@define-color color19 #b29e75;
-@define-color color20 #68809a;
-@define-color color21 #8c738c;
-@define-color color22 #6d96a5;
-@define-color color23 #aeb3bb;
diff --git a/config/wayland/waybar/styles/colors/colors.css b/config/wayland/waybar/styles/colors/colors.css
deleted file mode 120000
index 801cf92..0000000
--- a/config/wayland/waybar/styles/colors/colors.css
+++ /dev/null
@@ -1 +0,0 @@
-colors-nord \ No newline at end of file
diff --git a/config/wayland/waybar/styles/dwm.css b/config/wayland/waybar/styles/dwm.css
deleted file mode 100644
index 31eacf0..0000000
--- a/config/wayland/waybar/styles/dwm.css
+++ /dev/null
@@ -1,20 +0,0 @@
-* {
- border: none;
- border-radius: 0;
- font-family: monospace;
- font-size: 14px;
- min-height: 16px;
-}
-
-window#waybar, #workspaces button.active {
- background-color: #4c566a;
-}
-
-#workspaces button, #custom-layout, #custom-status {
- background-color: #2e3440;
-}
-
-#workspaces button {
- padding: 0 2px;
- margin: 0;
-}
diff --git a/config/wayland/waybar/styles/nord.css b/config/wayland/waybar/styles/nord.css
deleted file mode 100644
index 3b7b7f6..0000000
--- a/config/wayland/waybar/styles/nord.css
+++ /dev/null
@@ -1,142 +0,0 @@
-/*
- ********************************************
- *░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░*
- *░░█▀█░█░░░█░█░█▀▀░░░█░█░█░░░▀█▀░█▀▄░█▀█░░*
- *░░█▀▀░█░░░█░█░▀▀█░░░█░█░█░░░░█░░█▀▄░█▀█░░*
- *░░▀░░░▀▀▀░▀▀▀░▀▀▀░░░▀▀▀░▀▀▀░░▀░░▀░▀░▀░▀░░*
- *░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░*
- ********************************************
- */
-/* https://github.com/jakehamilton/dotfiles */
-/* Amazing I love it :))) */
-
-* {
- border: none;
- border-radius: 0;
- font-family: JetBrains Mono;
- font-weight: bold;
- font-size: 14px;
- min-height: 24px;
-}
-
-window#waybar {
- background: transparent;
-}
-
-window#waybar.hidden {
- opacity: 0.2;
-}
-
-window#waybar.termite #window,
-window#waybar.Firefox #window,
-window#waybar.Navigator #window,
-window#waybar.PCSX2 #window {
- color: #2e3440;
- background: #e6e6e6;
-}
-
-#mpd, #battery,
-#network, #pulseaudio, #temperature, #cpu, #custom-memory {
- margin-left: 8px;
- padding-left: 16px;
- padding-right: 16px;
-}
-
-#workspaces, #mpd, #battery,
-#network, #pulseaudio, #temperature, #cpu, #custom-memory, #workspaces, #clock, #tray {
- margin-top: 4px;
- margin-bottom: 2px;
- transition: none;
- border-radius: 6px;
-}
-
-#battery {
- color: #b48ead;
- background: #4c566a;
-}
-
-#workspaces {
- margin-left: 12px;
- background: #2e3440;
-}
-
-#workspaces button {
- transition: none;
- color: #d8dee9;
- background: transparent;
- font-size: 16px;
-}
-
-#workspaces button.active {
- color: #a3be8c;
- text-shadow: 0px 0px 1px #a3be8c;
-}
-
-#workspaces button:hover {
- transition: none;
- color: #d08770;
-}
-
-#mpd {
- color: #2e3440;
- background: #88c0d0;
-}
-
-#mpd.disconnected,
-#mpd.stopped {
- color: #d8dee9;
- background: #2e3440;
-}
-
-#window {
- color: #88c0d0;
-}
-
-#network {
- color: #2e3440;
- background: #5e81ac;
-}
-
-#pulseaudio {
- color: #2e3440;
- background: #b48ead;
-}
-
-#temperature {
- color: #2e3440;
- background: #d08770;
-}
-
-#cpu {
- color: #2e3440;
- background: #ebcb8b;
-}
-
-#custom-memory {
- color: #2e3440;
- background: #a3be8c;
-}
-
-#clock {
- margin-left: 8px;
- margin-right: 12px;
- padding-left: 16px;
- padding-right: 16px;
- color: #d8dee9;
- background: #2e3440;
-}
-
-#tray {
- margin-right: 12px;
- color: #d8dee9;
- background: transparent;
-}
-
-#tray > .needs-attention {
- -gtk-icon-effect: highlight;
- background-color: #bf616a;
-}
-
-#tray > .passive {
- -gtk-icon-effect: dim;
-}