Update 12.03.2024

This commit is contained in:
2024-03-12 11:15:25 +02:00
parent 555a4f8a7c
commit 8afdbc8322
79 changed files with 289506 additions and 3165 deletions

View File

@@ -0,0 +1,31 @@
{
"hybrid": {
"namespace": "hybrid-bar",
"r": 22,
"g": 22,
"b": 30,
"a": 0.5
},
"left-spacing_end": {
"spacing_end": 5
},
"left-label_ws": {
"text": "",
"command": "hyprctl -j workspaces | jq '.[] .id' | sort -n | tr '\n' ' '"
},
"centered-label_window": {
"text": "",
"command": "hyprctl activewindow -j | jq --raw-output .title"
},
"right-label_volume": {
"text": "",
"command": "wpctl get-volume @DEFAULT_SINK@ | awk '{print $2}' | sed -e 's/^0.//' -e 's/^1./1/' -e 's/$/%/'"
},
"right-label_time": {
"text": "",
"command": "date +%H:%M:%S"
},
"right-spacing_end": {
"spacing_end": 5
}
}

View File

@@ -0,0 +1,21 @@
#!/bin/bash
function clamp {
min=$1
max=$2
val=$3
python -c "print(max($min, min($val, $max)))"
}
direction=$1
current=$2
if test "$direction" = "down"
then
target=$(clamp 1 10 $(($current+1)))
echo "jumping to $target"
hyprctl dispatch workspace $target
elif test "$direction" = "up"
then
target=$(clamp 1 10 $(($current-1)))
echo "jumping to $target"
hyprctl dispatch workspace $target
fi

View File

@@ -0,0 +1,6 @@
#!/usr/bin/env bash
hyprctl monitors -j | jq '.[] | select(.focused) | .activeWorkspace.id'
socat -u UNIX-CONNECT:/tmp/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock - |
stdbuf -o0 awk -F '>>|,' -e '/^workspace>>/ {print $2}' -e '/^focusedmon>>/ {print $3}'

View File

@@ -0,0 +1,3 @@
#!/bin/sh
hyprctl activewindow -j | jq --raw-output .title
socat -u UNIX-CONNECT:/tmp/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock - | stdbuf -o0 awk -F '>>|,' '/^activewindow>>/{print $3}'

View File

@@ -0,0 +1,11 @@
#!/bin/bash
spaces (){
WORKSPACE_WINDOWS=$(hyprctl workspaces -j | jq 'map({key: .id | tostring, value: .windows}) | from_entries')
seq 1 10 | jq --argjson windows "${WORKSPACE_WINDOWS}" --slurp -Mc 'map(tostring) | map({id: ., windows: ($windows[.]//0)})'
}
spaces
socat -u UNIX-CONNECT:/tmp/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock - | while read -r line; do
spaces
done

View File

@@ -0,0 +1,76 @@
/* :root { */
/* --bg: #1a1b26; */
/* --bg-dark: #16161e; */
/* --bg-float: #16161e; */
/* --bg-highlight: #292e42; */
/* --bg-popup: #16161e; */
/* --bg-search: #3d59a1; */
/* --bg-sidebar: #16161e; */
/* --bg-statusline: #16161e; */
/* --bg-visual: #283457; */
/* --black: #15161e; */
/* --blue: #7aa2f7; */
/* --blue0: #3d59a1; */
/* --blue1: #2ac3de; */
/* --blue2: #0db9d7; */
/* --blue5: #89ddff; */
/* --blue6: #b4f9f8; */
/* --blue7: #394b70; */
/* --border: #15161e; */
/* --border-highlight: #27a1b9; */
/* --comment: #565f89; */
/* --cyan: #7dcfff; */
/* --dark3: #545c7e; */
/* --dark5: #737aa2; */
/* --delta-add: #2c5a66; */
/* --delta-delete: #713137; */
/* --diff-add: #20303b; */
/* --diff-change: #1f2231; */
/* --diff-delete: #37222c; */
/* --diff-text: #394b70; */
/* --error: #db4b4b; */
/* --fg: #c0caf5; */
/* --fg-dark: #a9b1d6; */
/* --fg-float: #c0caf5; */
/* --fg-gutter: #3b4261; */
/* --fg-sidebar: #a9b1d6; */
/* --git-add: #449dab; */
/* --git-change: #6183bb; */
/* --git-delete: #914c54; */
/* --git-ignore: #545c7e; */
/* --gitSigns-add: #266d6a; */
/* --gitSigns-change: #536c9e; */
/* --gitSigns-delete: #b2555b; */
/* --green: #9ece6a; */
/* --green1: #73daca; */
/* --green2: #41a6b5; */
/* --hint: #1abc9c; */
/* --info: #0db9d7; */
/* --magenta: #bb9af7; */
/* --magenta2: #ff007c; */
/* --orange: #ff9e64; */
/* --purple: #9d7cd8; */
/* --red: #f7768e; */
/* --red1: #db4b4b; */
/* --teal: #1abc9c; */
/* --terminal-black: #414868; */
/* --warning: #e0af68; */
/* --yellow: #e0af68; */
/* } */
label {
color: #c0caf5;
font-family: "JetBrainsMono NF";
margin: 0 10px;
font-weight: bold;
}
button {
font-weight: normal;
border: none;
box-shadow: none;
margin-bottom: -8px;
margin-top: -8px;
padding-right: 0;
padding-left: 0;
}

View File

@@ -0,0 +1,216 @@
[colors]
draw_bold_text_with_bright_colors = true
transparent_background_colors = false
[[colors.indexed_colors]]
color = "0xff9e64"
index = 16
[[colors.indexed_colors]]
color = "0xdb4b4b"
index = 17
[colors.bright]
black = "0x414868"
blue = "0x7aa2f7"
cyan = "0x7dcfff"
green = "0x9ece6a"
magenta = "0xbb9af7"
red = "0xf7768e"
white = "0xc0caf5"
yellow = "0xe0af68"
[colors.cursor]
cursor = "CellForeground"
text = "CellBackground"
[colors.hints.end]
background = "#282a36"
foreground = "#f1fa8c"
[colors.hints.start]
background = "#f1fa8c"
foreground = "#282a36"
[colors.normal]
black = "0x15161e"
blue = "0x7aa2f7"
cyan = "0x7dcfff"
green = "0x9ece6a"
magenta = "0xbb9af7"
red = "0xf7768e"
white = "0xa9b1d6"
yellow = "0xe0af68"
[colors.primary]
background = "#1a1b26"
bright_foreground = "#ffffff"
dim_foreground = "#828482"
foreground = "#c0caf5"
[colors.search.focused_match]
background = "#ffb86c"
foreground = "#44475a"
# [colors.search.footer_bar]
# background = "#282a36"
# foreground = "#f8f8f2"
[colors.search.matches]
background = "#50fa7b"
foreground = "#44475a"
[colors.selection]
background = "CellForeground"
text = "CellBackground"
[colors.vi_mode_cursor]
cursor = "CellForeground"
text = "CellBackground"
[cursor]
unfocused_hollow = false
vi_mode_style = "Block"
[cursor.style]
shape = "Beam"
[env]
TERM = "alacritty"
[font]
size = 11.0
[font.bold]
family = "JetBrainsMono NF"
style = "Bold"
[font.bold_italic]
family = "JetBrainsMono NF"
style = "Bold Italic"
[font.glyph_offset]
x = 0
y = 0
[font.italic]
family = "JetBrainsMono NF"
style = "Italic"
[font.normal]
family = "JetBrainsMono NF"
style = "Regular"
[font.offset]
x = 0
y = -1
[[keyboard.bindings]]
action = "ScrollPageUp"
key = "Up"
mode = "~Alt"
mods = "Shift"
[[keyboard.bindings]]
action = "ScrollPageDown"
key = "Down"
mode = "~Alt"
mods = "Shift"
[[keyboard.bindings]]
action = "ScrollToTop"
key = "Home"
mode = "~Alt"
mods = "Shift"
[[keyboard.bindings]]
action = "ScrollToBottom"
key = "End"
mode = "~Alt"
mods = "Shift"
[[keyboard.bindings]]
action = "Paste"
key = "V"
mode = "~Vi"
mods = "Control|Shift"
[[keyboard.bindings]]
action = "Copy"
key = "C"
mods = "Control|Shift"
[[keyboard.bindings]]
action = "SearchForward"
key = "F"
mode = "~Search"
mods = "Control|Shift"
[[keyboard.bindings]]
action = "SearchBackward"
key = "B"
mode = "~Search"
mods = "Control|Shift"
[[keyboard.bindings]]
action = "ResetFontSize"
key = "Key0"
mods = "Control"
[[keyboard.bindings]]
action = "IncreaseFontSize"
key = "Equals"
mods = "Control"
[[keyboard.bindings]]
action = "IncreaseFontSize"
key = "NumpadAdd"
mods = "Control"
[[keyboard.bindings]]
action = "DecreaseFontSize"
key = "Minus"
mods = "Control"
[[keyboard.bindings]]
action = "DecreaseFontSize"
key = "NumpadSubtract"
mods = "Control"
[[keyboard.bindings]]
action = "Quit"
key = "Q"
mods = "Control|Shift"
[[mouse.bindings]]
action = "PasteSelection"
mode = "~Vi"
mouse = "Middle"
[scrolling]
history = 10000
multiplier = 3
[selection]
save_to_clipboard = true
semantic_escape_chars = ",│`|:\"' ()[]{}<>\t"
[shell]
program = "/bin/zsh"
[window]
decorations = "none"
decorations_theme_variant = "Dark"
dynamic_padding = true
dynamic_title = true
opacity = 0.9
startup_mode = "Windowed"
title = "Alacritty"
[window.dimensions]
columns = 0
lines = 0
[window.padding]
x = 0
y = 0

View File

@@ -799,9 +799,9 @@ key_bindings:
- {key: NumpadAdd, mods: Control, action: IncreaseFontSize}
- {key: Minus, mods: Control, action: DecreaseFontSize}
- {key: NumpadSubtract, mods: Control, action: DecreaseFontSize}
- {key: Q, mods: Control|Shift, action: Quit}
- {key: Q, mods: Control|Shift, action: Quit,}
# (Windows only)
- {key: F11, action: ToggleFullscreen,}
# - {key: F11, action: ToggleFullscreen,}
# (macOS only)
#- { key: K, mods: Command, mode: ~Vi|~Search, chars: "\x0c" }
#- { key: K, mods: Command, mode: ~Vi|~Search, action: ClearHistory }

View File

@@ -0,0 +1,10 @@
base: lua51
globals:
awesome:
any: true
client:
any: true
screen:
any: true
root:
any: true

View File

@@ -725,6 +725,18 @@ awful.rules.rules = {
{ rule_any = { class = { "kdeconnect.app" } }, properties = { screen = 2, tag = "7" } },
{ rule_any = { class = { "Spotify" } }, properties = { screen = 2, tag = "9" } },
{ rule_any = { class = { "mpv" } }, properties = { fullscreen = true } },
-- {
-- rule = { name = "Tetris", class = "main.py" },
-- properties = {
-- skip_taskbar = true,
-- floating = true,
-- ontop = false,
-- below = true,
-- focusable = false,
-- screen = 2,
-- tag = "6",
-- },
-- },
}
-- {{{ Signals

View File

@@ -0,0 +1,7 @@
std = "awesome"
[rules]
global_usage = "allow"
multiple_statements = "allow"
incorrect_standard_library_use = "allow"
mixed_table = "allow"

View File

@@ -1,4 +1,4 @@
#? Config file for btop v. 1.2.13
#? Config file for btop v. 1.3.0
#* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes.
#* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes"
@@ -46,15 +46,15 @@ graph_symbol_net = "default"
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_proc = "default"
#* Manually set which boxes to show. Available values are "cpu mem net proc", separate values with whitespace.
#* Manually set which boxes to show. Available values are "cpu mem net proc" and "gpu0" through "gpu5", separate values with whitespace.
shown_boxes = "cpu mem net proc"
#* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs.
update_ms = 1000
update_ms = 500
#* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct",
#* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly.
proc_sorting = "memory"
proc_sorting = "cpu direct"
#* Reverse sorting order, True or False.
proc_reversed = False
@@ -86,6 +86,9 @@ proc_left = False
#* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop).
proc_filter_kernel = False
#* In tree-view, always accumulate child process resources in the parent process.
proc_aggregate = False
#* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available.
#* Select from a list of detected attributes from the options menu.
cpu_graph_upper = "total"
@@ -193,7 +196,7 @@ net_download = 100
net_upload = 100
#* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest.
net_auto = False
net_auto = True
#* Sync the auto scaling for download and upload to whichever currently has the highest scale.
net_sync = False

View File

@@ -1,3 +1,63 @@
2023/08/10 (02:10:35) | ===> btop++ v.1.2.13
2023/08/10 (02:10:35) | ERROR: Stall in Runner thread, restarting!
2024/01/13 (21:21:49) | ===> btop++ v.1.3.0
2024/01/13 (21:21:49) | WARNING: ROCm SMI: Failed to get maximum GPU temperature, defaulting to 110°C
2024/01/13 (21:21:50) | ===> btop++ v.1.3.0
2024/01/13 (21:21:50) | WARNING: ROCm SMI: Failed to get maximum GPU temperature, defaulting to 110°C
2024/01/13 (21:22:09) | ===> btop++ v.1.3.0
2024/01/13 (21:22:09) | WARNING: ROCm SMI: Failed to get maximum GPU temperature, defaulting to 110°C
2024/01/13 (21:38:44) | ===> btop++ v.1.3.0
2024/01/13 (21:38:44) | WARNING: ROCm SMI: Failed to get maximum GPU temperature, defaulting to 110°C
2024/01/13 (22:01:27) | ===> btop++ v.1.3.0
2024/01/13 (22:01:27) | WARNING: ROCm SMI: Failed to get maximum GPU temperature, defaulting to 110°C
2024/01/14 (04:10:02) | ===> btop++ v.1.3.0
2024/01/14 (04:10:02) | WARNING: ROCm SMI: Failed to get maximum GPU temperature, defaulting to 110°C
2024/01/14 (04:10:08) | ===> btop++ v.1.3.0
2024/01/14 (04:10:08) | WARNING: ROCm SMI: Failed to get maximum GPU temperature, defaulting to 110°C
2024/01/14 (21:25:43) | ===> btop++ v.1.3.0
2024/01/14 (21:25:43) | WARNING: ROCm SMI: Failed to get maximum GPU temperature, defaulting to 110°C
2024/01/15 (22:44:37) | ===> btop++ v.1.3.0
2024/01/15 (22:44:37) | WARNING: ROCm SMI: Failed to get maximum GPU temperature, defaulting to 110°C
2024/01/19 (02:14:13) | ===> btop++ v.1.3.0
2024/01/19 (02:14:13) | WARNING: ROCm SMI: Failed to get maximum GPU temperature, defaulting to 110°C
2024/01/19 (02:14:24) | ===> btop++ v.1.3.0
2024/01/19 (02:14:24) | WARNING: ROCm SMI: Failed to get maximum GPU temperature, defaulting to 110°C
2024/01/23 (19:46:44) | ===> btop++ v.1.3.0
2024/01/23 (19:46:44) | WARNING: ROCm SMI: Failed to get maximum GPU temperature, defaulting to 110°C
2024/01/23 (21:52:47) | ===> btop++ v.1.3.0
2024/01/23 (21:52:47) | WARNING: ROCm SMI: Failed to get maximum GPU temperature, defaulting to 110°C
2024/01/23 (22:31:03) | ===> btop++ v.1.3.0
2024/01/23 (22:31:03) | WARNING: ROCm SMI: Failed to get maximum GPU temperature, defaulting to 110°C
2024/01/26 (22:24:26) | ===> btop++ v.1.3.0
2024/01/26 (22:24:26) | WARNING: ROCm SMI: Failed to get maximum GPU temperature, defaulting to 110°C
2024/01/26 (22:24:38) | ===> btop++ v.1.3.0
2024/01/26 (22:24:38) | WARNING: ROCm SMI: Failed to get maximum GPU temperature, defaulting to 110°C
2024/01/26 (22:26:54) | ===> btop++ v.1.3.0
2024/01/26 (22:26:54) | WARNING: ROCm SMI: Failed to get maximum GPU temperature, defaulting to 110°C
2024/01/29 (16:24:58) | ===> btop++ v.1.3.0
2024/01/29 (16:24:58) | WARNING: ROCm SMI: Failed to get maximum GPU temperature, defaulting to 110°C
2024/02/01 (22:04:55) | ===> btop++ v.1.3.0
2024/02/01 (22:04:55) | WARNING: ROCm SMI: Failed to get maximum GPU temperature, defaulting to 110°C
2024/02/10 (14:03:02) | ===> btop++ v.1.3.0
2024/02/10 (14:03:02) | WARNING: ROCm SMI: Failed to get maximum GPU temperature, defaulting to 110°C

169
.config/eww/eww.scss Normal file
View File

@@ -0,0 +1,169 @@
$bg: #1a1b26;
$bg_dark: #16161e;
$bg_float: #16161e;
$bg_highlight: #292e42;
$bg_popup: #16161e;
$bg_search: #3d59a1;
$bg_sidebar: #16161e;
$bg_statusline: #16161e;
$bg_visual: #283457;
$black: #15161e;
$blue: #7aa2f7;
$blue0: #3d59a1;
$blue1: #2ac3de;
$blue2: #0db9d7;
$blue5: #89ddff;
$blue6: #b4f9f8;
$blue7: #394b70;
$border: #15161e;
$border_highlight: #27a1b9;
$comment: #565f89;
$cyan: #7dcfff;
$dark3: #545c7e;
$dark5: #737aa2;
$delta_add: #2c5a66;
$delta_delete: #713137;
$diff_add: #20303b;
$diff_change: #1f2231;
$diff_delete: #37222c;
$diff_text: #394b70;
$error: #db4b4b;
$fg: #c0caf5;
$fg_dark: #a9b1d6;
$fg_float: #c0caf5;
$fg_gutter: #3b4261;
$fg_sidebar: #a9b1d6;
$git_add: #449dab;
$git_change: #6183bb;
$git_delete: #914c54;
$git_ignore: #545c7e;
$gitSigns_add: #266d6a;
$gitSigns_change: #536c9e;
$gitSigns_delete: #b2555b;
$green: #9ece6a;
$green1: #73daca;
$green2: #41a6b5;
$hint: #1abc9c;
$info: #0db9d7;
$magenta: #bb9af7;
$magenta2: #ff007c;
$orange: #ff9e64;
$purple: #9d7cd8;
$red: #f7768e;
$red1: #db4b4b;
$teal: #1abc9c;
$terminal_black: #414868;
$warning: #e0af68;
$yellow: #e0af68;
* {
all: unset; //Unsets everything so you can style everything from scratch
}
//Global Styles
.bar {
background-color: rgba(22, 22, 30, 0.7);
color: $fg;
font-family: "JetBrainsMono NF";
font-weight: bold;
}
// Styles on classes (see eww.yuck for more information)
.sidestuff slider {
all: unset;
}
.metric scale trough highlight {
all: unset;
background-color: $error;
border-radius: 10px;
}
.metric scale trough {
all: unset;
background-color: $bg_visual;
border-radius: 50px;
min-height: 3px;
min-width: 50px;
margin-left: 1px;
margin-right: 2px;
}
.metric scale trough highlight {
all: unset;
// background-color: $fg_sidebar;
background-color: $teal;
color: $bg;
border-radius: 10px;
}
.metric scale trough {
all: unset;
background-color: $bg_visual;
border-radius: 50px;
min-height: 3px;
min-width: 50px;
margin-left: 1px;
margin-right: 2px;
}
.label-ram {
font-size: large;
}
.music {
&.playing {
color: $teal;
}
&.paused {
color: $terminal_black;
}
}
.workspaces {
.current {
color: $hint;
}
}
.icon-module {
& > &__icon {
margin-right: 5px;
}
}
.cpu {
&.warning {
color: $warning;
}
&.danger {
color: $red;
}
}
.battery {
&.warning {
color: $warning;
}
&.critical {
color: $red;
}
&.Charging {
color: $teal;
}
}
.network {
&.disconnected {
color: $error;
}
}
.workspaces button:hover {
background: $bg_highlight;
}

185
.config/eww/eww.yuck Normal file
View File

@@ -0,0 +1,185 @@
(defwidget bar []
(centerbox :orientation "h"
(workspaces)
(window)
(sidestuff)))
(defwidget sidestuff []
(box
:class "sidestuff"
:orientation "h"
:space-evenly false
:halign "end"
:spacing 10
(music)
(metric
:label ""
:value volume
:onchange "pulsemixer --set-volume {}" )
;; (metric_extended
;; :label ""
;; :value brightness
;; :onchange "doas brightnessctl set {}" )
(cpu)
(github)
;; (network)
(battery)
time
date
))
(deflisten workspaces :initial "[]" "bash ~/.config/eww/scripts/get-workspaces")
(deflisten current_workspace :initial "1" "bash ~/.config/eww/scripts/get-active-workspace")
(defwidget workspaces []
(eventbox :onscroll "bash ~/.config/eww/scripts/change-active-workspace {} ${current_workspace}" :class "workspaces"
(box :space-evenly true :halign "start" :spacing 10
(label :text "${workspaces}${current_workspace}" :visible false)
(for workspace in workspaces
(button :onclick "hyprctl dispatch workspace ${workspace.id}"
(box :class "workspaces ${workspace.id == current_workspace ? "current" : ""}"
(label :text "${workspace.id}")))))))
(deflisten window :initial "..." "bash ~/.config/eww/scripts/get-window-title")
(defwidget window []
(box :class "window"
(label :text "${window}")))
(defwidget music []
(box :class "music ${music_status == "Playing" ? "playing" : "paused"}"
:orientation "h"
:space-evenly false
:halign "center"
(button :onclick "sp play" {music != "" ? "${music}" : ""})))
(defwidget icon-module [icon ?class ?visible]
(box :class "${class} icon-module"
:orientation "h"
:halign "end"
:space-evenly false
:visible {visible ?: true} ; because the argument is optional
(label :class "icon-module__icon" :text "${icon}")
(children)))
(defwidget metric [label value onchange]
(box :orientation "h"
:class "metric"
:space-evenly false
(box :class "label" label)
(scale :min 0
:max 101
:active {onchange != ""}
:value value
:onchange onchange)))
(defpoll music
:interval "1s"
"scripts/get-music")
(defpoll music_status
:interval "1s"
"sp status")
(defpoll volume
:interval "1s"
"scripts/getvol")
(defwidget metric_extended [label value onchange]
(box
:orientation "h"
:class "metric"
:space-evenly false
(box
:class "label" label)
(scale
:min 0
:max 256
:active {onchange != ""}
:value value
:onchang
:onchange onchange)))
(defpoll brightness
:interval "1s"
:class "brightness"
"brightnessctl get")
;; "format-icons": ["", "", "", "", "", "", "", "", ""],
(defwidget battery []
(icon-module
:icon "${EWW_BATTERY.BAT0.status == "Charging" ? "" :
EWW_BATTERY.BAT0.capacity > 90 ? "" :
EWW_BATTERY.BAT0.capacity > 70 ? "" :
EWW_BATTERY.BAT0.capacity > 40 ? "" :
EWW_BATTERY.BAT0.capacity > 20 ? "" :
""}"
:class "battery ${EWW_BATTERY.BAT0.capacity > 30 ? "good" : EWW_BATTERY.BAT0.capacity > 10 ? "warning" : "critical"} ${EWW_BATTERY.BAT0.status}"
(label
:text "${EWW_BATTERY.BAT0.capacity}%")))
(defpoll time :interval "1s"
"date '+%H:%M:%S'")
(defpoll date :interval "10s"
"date '+%d.%m.%Y'")
(defpoll github_poll
:initial ""
:interval "1m" "sh ~/.config/eww/scripts/github")
(defwidget github []
(button
:onclick "xdg-open https://github.com/notifications"
(box
(icon-module
:class "github"
:icon ""
:visible {github_poll != ""})
github_poll)))
(defwidget cpu []
(icon-module
:icon ""
:class "cpu ${EWW_CPU.avg > 90 ? "danger" : EWW_CPU.avg > 60 ? "warning" : ""}"
(label
:text "${round(EWW_CPU.avg, 0)}%")))
;; (defpoll net_poll
;; :initial "..."
;; :interval "10s" "sh ~/.config/eww/scripts/get-network")
(defwidget network []
(icon-module
:icon ""
:class "network ${EWW_NET.wlan0.NET_DOWN == 0 && EWW_NET.wlan0.NET_UP == 0 ? "disconnected" : ""}"
(label
:text "${EWW_NET.wlan0.NET_DOWN == 0 && EWW_NET.wlan0.NET_UP == 0 ? "Disconnected ⚠" : ""}")))
;; "network": {
;; "format-wifi": "{essid} ({signalStrength}%) ",
;; "format-ethernet": "{ipaddr}/{cidr} ",
;; "tooltip-format": "{ifname} via {gwaddr} ",
;; "format-linked": "{ifname} (No IP) ",
;; "format-disconnected": "",
;; "format-alt": "{ifname}: {ipaddr}/{cidr}"
;; },
(defwindow bar
:monitor 0
:exclusive true
:geometry (geometry
:x "0%"
:y "0%"
:width "100%"
:height "10px"
:anchor "top center")
:reserve (struts :side "top" :distance "4%")
(bar))

View File

@@ -0,0 +1,21 @@
#!/bin/bash
function clamp {
min=$1
max=$2
val=$3
python -c "print(max($min, min($val, $max)))"
}
direction=$1
current=$2
if test "$direction" = "down"
then
target=$(clamp 1 10 $(($current+1)))
echo "jumping to $target"
hyprctl dispatch workspace $target
elif test "$direction" = "up"
then
target=$(clamp 1 10 $(($current-1)))
echo "jumping to $target"
hyprctl dispatch workspace $target
fi

View File

@@ -0,0 +1,6 @@
#!/usr/bin/env bash
hyprctl monitors -j | jq '.[] | select(.focused) | .activeWorkspace.id'
socat -u UNIX-CONNECT:/tmp/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock - |
stdbuf -o0 awk -F '>>|,' -e '/^workspace>>/ {print $2}' -e '/^focusedmon>>/ {print $3}'

5
.config/eww/scripts/get-music Executable file
View File

@@ -0,0 +1,5 @@
#!/bin/bash
title="$(sp metadata | rg title| cut -d'|' -f2)"
artist="$(sp metadata | rg artist | cut -d'|' -f2)"
echo "$artist" - "$title"

View File

@@ -0,0 +1,5 @@
#!/bin/bash
line=$(nmcli connection show | rg wlan0)
echo $line

View File

@@ -0,0 +1,3 @@
#!/bin/sh
hyprctl activewindow -j | jq --raw-output .title
socat -u UNIX-CONNECT:/tmp/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock - | stdbuf -o0 awk -F '>>|,' '/^activewindow>>/{print $3}'

View File

@@ -0,0 +1,11 @@
#!/bin/bash
spaces (){
windows=$(hyprctl workspaces -j | jq 'map({id: .id}) | sort_by(.id)')
echo $windows
}
spaces
socat -u UNIX-CONNECT:/tmp/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock - | while read -r line; do
spaces
done

12
.config/eww/scripts/getvol Executable file
View File

@@ -0,0 +1,12 @@
#!/bin/sh
if command -v pamixer &>/dev/null; then
if [ true == $(pamixer --get-mute) ]; then
echo 0
exit
else
pamixer --get-volume
fi
else
amixer -D pulse sget Master | awk -F '[^0-9]+' '/Left:/{print $3}'
fi

4
.config/eww/scripts/github Executable file
View File

@@ -0,0 +1,4 @@
#!/bin/sh
notifications="$(gh api notifications 2> /dev/null | jq '. | length')"
[ -z notifications ] && echo "" || echo "$notifications"

View File

@@ -1,6 +1,6 @@
[General]
contrastOpacity=188
drawColor=#ff0000
drawColor=#ff0046
filenamePattern=%Y-%m-%d_%H-%M-%S
saveAfterCopy=true
savePath=/home/kristofers/Pictures/screenshots

View File

@@ -0,0 +1,95 @@
// bit for modifiers
// bits: 0 None
// bits: 1 SHIFT
// bits: 2 CONTROL
//
// NOTE:
// If the default key layout is lower case,
// and you want to use `Shift + q` to trigger the exit event,
// the setting should like this `exit: Some(( code: Char('Q'), modifiers: ( bits: 1,),)),`
// The Char should be upper case, and the shift modified bit should be set to 1.
(
tab_status: Some((code: Char('1'), modifiers: (bits: 0))),
tab_log: Some((code: Char('2'), modifiers: (bits: 0))),
tab_files: Some((code: Char('3'), modifiers: (bits: 0))),
tab_stashing: Some((code: Char('4'), modifiers: (bits: 0))),
tab_stashes: Some((code: Char('5'), modifiers: (bits: 0))),
tab_toggle: Some((code: Char('L'), modifiers: (bits: 1))),
tab_toggle_reverse: Some((code: Char('H'), modifiers: (bits: 1))),
toggle_workarea: Some((code: Char('w'), modifiers: (bits: 0))),
exit: None,
quit: None,
exit_popup: Some((code: Char('q'), modifiers: (bits: 0))),
open_commit: Some((code: Char('c'), modifiers: (bits: 0))),
open_commit_editor: Some((code: Char('e'), modifiers: (bits: 2))),
open_help: Some((code: F(1), modifiers: (bits: 0))),
open_options: Some((code: Char('o'), modifiers: (bits: 0))),
move_left: Some((code: Char('h'), modifiers: (bits: 0))),
move_right: Some((code: Char('l'), modifiers: (bits: 0))),
tree_collapse_recursive: Some((code: Left, modifiers: (bits: 1))),
tree_expand_recursive: Some((code: Right, modifiers: (bits: 1))),
home: Some((code: Char('g'), modifiers: (bits: 0))),
end: Some((code: Char('G'), modifiers: (bits: 0))),
move_up: Some((code: Char('k'), modifiers: (bits: 0))),
move_down: Some((code: Char('j'), modifiers: (bits: 0))),
popup_up: Some((code: Char('p'), modifiers: (bits: 2))),
popup_down: Some((code: Char('n'), modifiers: (bits: 2))),
page_up: Some((code: Char('u'), modifiers: (bits: 2))),
page_down: Some((code: Char('d'), modifiers: (bits: 2))),
shift_up: Some((code: Up, modifiers: (bits: 1))),
shift_down: Some((code: Down, modifiers: (bits: 1))),
enter: Some((code: Enter, modifiers: (bits: 0))),
blame: Some((code: Char('b'), modifiers: (bits: 0))),
file_history: Some((code: Char('h'), modifiers: (bits: 2))),
edit_file: Some((code: Char('e'), modifiers: (bits: 0))),
status_stage_all: Some((code: Char('a'), modifiers: (bits: 0))),
status_reset_item: Some((code: Char('U'), modifiers: (bits: 1))),
diff_reset_lines: Some((code: Char('u'), modifiers: (bits: 0))),
status_ignore_file: Some((code: Char('i'), modifiers: (bits: 0))),
diff_stage_lines: Some((code: Char('s'), modifiers: (bits: 0))),
stashing_save: Some((code: Char('w'), modifiers: (bits: 0))),
stashing_toggle_untracked: Some((code: Char('u'), modifiers: (bits: 0))),
stashing_toggle_index: Some((code: Char('m'), modifiers: (bits: 0))),
stash_apply: Some((code: Char('a'), modifiers: (bits: 0))),
stash_open: Some((code: Char('l'), modifiers: (bits: 0))),
stash_drop: Some((code: Char('D'), modifiers: (bits: 1))),
cmd_bar_toggle: Some((code: Char('.'), modifiers: (bits: 0))),
log_tag_commit: Some((code: Char('t'), modifiers: (bits: 0))),
log_mark_commit: Some((code: Char(' '), modifiers: (bits: 0))),
log_checkout_commit: Some((code: Char('S'), modifiers: (bits: 1))),
log_reset_comit: Some((code: Char('R'), modifiers: (bits: 1))),
log_reword_comit: Some((code: Char('r'), modifiers: (bits: 0))),
log_find: Some((code: Char('/'), modifiers: (bits: 0))),
find_commit_sha: Some((code: Char('/'), modifiers: (bits: 0))),
commit_amend: Some((code: Char('a'), modifiers: (bits: 2))),
toggle_signoff: Some((code: Char('s'), modifiers: (bits: 2))),
toggle_verify: Some((code: Char('v'), modifiers: (bits: 2))),
copy: Some((code: Char('y'), modifiers: (bits: 0))),
create_branch: Some((code: Char('c'), modifiers: (bits: 0))),
rename_branch: Some((code: Char('r'), modifiers: (bits: 0))),
select_branch: Some((code: Char('b'), modifiers: (bits: 0))),
delete_branch: Some((code: Char('D'), modifiers: (bits: 1))),
merge_branch: Some((code: Char('m'), modifiers: (bits: 0))),
rebase_branch: Some((code: Char('R'), modifiers: (bits: 1))),
compare_commits: Some((code: Char('C'), modifiers: (bits: 1))),
tags: Some((code: Char('T'), modifiers: (bits: 1))),
delete_tag: Some((code: Char('D'), modifiers: (bits: 1))),
select_tag: Some((code: Char(' '), modifiers: (bits: 0))),
push: Some((code: Char('P'), modifiers: (bits: 1))),
force_push: None,
undo_commit: Some((code: Char('U'), modifiers: (bits: 1))),
fetch: Some((code: Char('F'), modifiers: (bits: 1))),
pull: Some((code: Char('p'), modifiers: (bits: 0))),
abort_merge: Some((code: Char('A'), modifiers: (bits: 1))),
open_file_tree: Some((code: Char('F'), modifiers: (bits: 1))),
file_find: Some((code: Char('/'), modifiers: (bits: 0))),
branch_find: Some((code: Char('/'), modifiers: (bits: 0))),
diff_hunk_next: Some((code: Char('n'), modifiers: (bits: 0))),
diff_hunk_prev: Some((code: Char('p'), modifiers: (bits: 0))),
stage_unstage_item: Some((code: Char(' '), modifiers: (bits: 0))),
tag_annotate: Some((code: Char('a'), modifiers: (bits: 2))),
view_submodules: Some((code: Char('S'), modifiers: (bits: 1))),
view_submodule_parent: Some((code: Char('p'), modifiers: (bits: 0))),
update_submodule: Some((code: Char('u'), modifiers: (bits: 0))),
commit_history_next: Some((code: Char('n'), modifiers: (bits: 2))),
)

23
.config/gitui/theme.ron Normal file
View File

@@ -0,0 +1,23 @@
(
selected_tab: Reset,
command_fg: White,
selection_bg: Blue,
selection_fg: Black,
cmdbar_bg: Reset,
cmdbar_extra_lines_bg: Reset,
disabled_fg: DarkGray,
diff_line_add: Green,
diff_line_delete: Red,
diff_file_added: LightGreen,
diff_file_removed: LightRed,
diff_file_moved: LightMagenta,
diff_file_modified: Yellow,
commit_hash: Magenta,
commit_time: LightCyan,
commit_author: Green,
danger_fg: Red,
push_gauge_bg: Reset,
push_gauge_fg: Magenta,
tag_fg: LightMagenta,
branch_fg: LightYellow,
)

View File

@@ -15,7 +15,7 @@ monitor=,preferred,auto,1
# Execute your favorite apps at launch
# exec-once = waybar & hyprpaper & firefox
exec-once = pipewire & pipewire-pulse & wireplumber & waybar & hyprpaper & tuxedo-control-center & flameshot & librewolf & nextcloud & /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 & dbus-update-activation-environment DISPLAY XAUTHORITY WAYLAND_DISPLAY & xrdb "$XDG_CONFIG_HOME/X11/xresources" & spotifyd --no-daemon & syncthing
exec-once = pipewire & pipewire-pulse & wireplumber & eww daemon & eww open bar & tuxedo-control-center & flameshot & librewolf & nextcloud & /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 & xrdb "$XDG_CONFIG_HOME/x11/xresources" & spotifyd --no-daemon & syncthing & dbus-update-activation-environment DISPLAY XAUTHORITY WAYLAND_DISPLAY & transmission-daemon #& hyprpaper
@@ -47,7 +47,7 @@ general {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
gaps_in = 5
gaps_out = 20
gaps_out = 10
border_size = 2
col.active_border = rgb(27a1b9)
col.inactive_border = rgba(15161eaa)
@@ -55,14 +55,21 @@ general {
layout = master
}
plugin {
split-monitor-workspaces {
count = 10
}
}
decoration {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
rounding = 10
blur = yes
blur_size = 4
blur_passes = 1
blur_new_optimizations = on
rounding = 5
# blur = yes
# blur_size = 4
# blur_passes = 1
# blur_new_optimizations = on
drop_shadow = yes
shadow_range = 4
@@ -71,7 +78,7 @@ decoration {
}
animations {
enabled = yes
enabled = no
# Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
@@ -109,16 +116,17 @@ device:epic mouse V1 {
# Example windowrule v1
windowrulev2 = fullscreen, class:mpv
windowrulev2 = workspace 5, class:steam
windowrulev2 = workspace 7, class:tuxedo-control-center
windowrulev2 = workspace 7, class:corectrl
windowrulev2 = workspace 7, class:thunderbird
windowrulev2 = opacity 0.95, class:thunderbird
windowrulev2 = workspace 8, class:discord
windowrulev2 = opacity 0.95, class:discord
windowrulev2 = workspace 8, class:Ripcord
windowrulev2 = workspace 8, class:telegram
windowrulev2 = opacity 0.95, class:telegram
windowrulev2 = workspace 8, class:TelegramDesktop
windowrulev2 = opacity 0.95, class:TelegramDesktop
windowrulev2 = workspace 8, class:Ferdium
windowrulev2 = opacity 0.9, class:Ferdium
@@ -149,16 +157,14 @@ $mainMod = SUPER
bind = $mainMod, B ,exec, librewolf
bind = $mainMod, Return, exec, alacritty
bind = $mainMod SHIFT, Q, killactive
bind = $mainMod SHIFT CTRL, Q, exit
bind = $mainMod, N, exec, spacefm
# bind = $mainMod SHIFT CTRL, Q, exit
bind = $mainMod, N, exec, alacritty -e lfrun
bind = $mainMod CTRL, SPACE, togglefloating
bind = $mainMod, P, exec, wofi --show drun -ib
bind = $mainMod, F, fullscreen
bind = $mainMod, M, bringactivetotop
bind = $mainMod, A, pin
bind = $mainMod, O, swapactiveworkspaces
bind = $mainMod CTRL, R, forcerendererreload
# bind = $mainMod, O, split-changemonitor
# Resize window
bind = $mainMod, L, splitratio, 0.05
@@ -214,13 +220,14 @@ bind = , PRINT, exec, hyprshot -m output
bind = SHIFT, PRINT, exec, hyprshot -m window
bind = $mainMod ALT, P, exec, hyprpicker -a # colorpicker
# bind = $mainMod SHIFT, L, exec, lock # lock
# Control keybinds
bindel = , XF86MonBrightnessUp, exec, brightnessctl set +2% # increase brightness by 2%
bindel = , XF86MonBrightnessDown, exec, brightnessctl set 2%- # decrease brightness by 2%
bindel = , XF86MonBrightnessUp, exec, doas brightnessctl set +2% # increase brightness by 2%
bindel = , XF86MonBrightnessDown, exec, doas brightnessctl set 2%- # decrease brightness by 2%
bindel = , XF86AudioRaiseVolume, exec, pulsemixer --change-volume +2 # increase volume by 2
bindel = , XF86AudioLowerVolume, exec, pulsemixer --change-volume -2 # decrease volume by 2
bindel = , XF86AudioMute, exec, pulsemixer --toggle-mute # mute volume
bindel = , XF86AudioPlay, exec, playerctl -a play-pause # pause/play everything
bindl = , switch:Lid Switch, exec, lock
bindl = , switch:Lid Switch, exec, swaylock

View File

@@ -1,3 +0,0 @@
plugins = {
"Duckonaut/split-monitor-workspaces"
}

View File

@@ -1,12 +1,6 @@
ipc = off
splash = true
preload = ~/Pictures/wallpapers/Linux-Dynamic-Wallpapers/Firewatch2/Firewatch2-1.png
preload = ~/Pictures/wallpapers/Linux-Dynamic-Wallpapers/Firewatch2/Firewatch2-2.png
preload = ~/Pictures/wallpapers/Linux-Dynamic-Wallpapers/Firewatch2/Firewatch2-3.png
preload = ~/Pictures/wallpapers/Linux-Dynamic-Wallpapers/Firewatch2/Firewatch2-4.png
preload = ~/Pictures/wallpapers/Linux-Dynamic-Wallpapers/Firewatch2/Firewatch2-5.png
preload = ~/Pictures/wallpapers/Linux-Dynamic-Wallpapers/Firewatch2/Firewatch2-6.png
preload = ~/Pictures/wallpapers/Linux-Dynamic-Wallpapers/Firewatch2/Firewatch2-7.png
preload = ~/Pictures/wallpapers/Linux-Dynamic-Wallpapers/Firewatch2/Firewatch2-8.png
preload = ~/Pictures/wallpapers/Linux-Dynamic-Wallpapers/LakesideDeerComplete/LakesideDeer-03.png
wallpaper = ,~/Pictures/wallpapers/Linux-Dynamic-Wallpapers/Firewatch2/Firewatch2-1.png
wallpaper = ,~/Pictures/wallpapers/Linux-Dynamic-Wallpapers/LakesideDeerComplete/LakesideDeer-03.png

View File

@@ -0,0 +1,6 @@
bookmark = [
{ key = "r", path = "/" },
{ key = "e", path = "/etc" },
{ key = "h", path = "~/" },
]

View File

@@ -0,0 +1,51 @@
numbered_command = false
use_trash = true
watch_files = true
xdg_open = false
xdg_open_fork = false
[display]
# default, hsplit
mode = "default"
automatically_count_files = false
collapse_preview = true
# ratios for parent view (optional), current view and preview
column_ratio = [1, 4, 4]
scroll_offset = 6
show_borders = true
show_hidden = false
show_icons = true
tilde_in_titlebar = true
# none, absolute, relative
line_number_style = "none"
# size, mtime, user, gourp, perm. can be combined with |.
# `none` to disable, `all` to enable all
# all and none can't be combined with other options
linemode = "size"
[display.sort]
# lexical, mtime, natural, size, ext
sort_method = "natural"
case_sensitive = false
directories_first = true
reverse = false
[preview]
max_preview_size = 2097152 # 2MB
preview_script = "~/.config/joshuto/preview_file.sh" # make sure it's marked as executable
[search]
# insensitive, sensitive, smart
string_case_sensitivity = "insensitive"
# see above
glob_case_sensitivity = "sensitive"
# see above
fzf_case_sensitivity = "insensitive"
[tab]
# inherit, home, root
home_page = "home"

172
.config/joshuto/keymap.toml Normal file
View File

@@ -0,0 +1,172 @@
[default_view]
keymap = [
{ keys = ["escape"], command = "escape" },
{ keys = ["ctrl+t"], command = "new_tab" },
{ keys = ["alt+t"], command = "new_tab --cursor" },
{ keys = ["T"], command = "new_tab --current" },
{ keys = ["W"], command = "close_tab" },
{ keys = ["ctrl+w"], command = "close_tab" },
{ keys = ["q"], command = "close_tab" },
{ keys = ["ctrl+c"], command = "quit" },
{ keys = ["Q"], command = "quit --output-current-directory" },
{ keys = ["R"], command = "reload_dirlist" },
{ keys = ["z", "h"], command = "toggle_hidden" },
{ keys = ["ctrl+h"], command = "toggle_hidden" },
{ keys = ["\t"], command = "tab_switch 1" },
{ keys = ["backtab"], command = "tab_switch -1" },
{ keys = ["alt+1"], command = "tab_switch_index 1" },
{ keys = ["alt+2"], command = "tab_switch_index 2" },
{ keys = ["alt+3"], command = "tab_switch_index 3" },
{ keys = ["alt+4"], command = "tab_switch_index 4" },
{ keys = ["alt+5"], command = "tab_switch_index 5" },
{ keys = ["1"], command = "numbered_command 1" },
{ keys = ["2"], command = "numbered_command 2" },
{ keys = ["3"], command = "numbered_command 3" },
{ keys = ["4"], command = "numbered_command 4" },
{ keys = ["5"], command = "numbered_command 5" },
{ keys = ["6"], command = "numbered_command 6" },
{ keys = ["7"], command = "numbered_command 7" },
{ keys = ["8"], command = "numbered_command 8" },
{ keys = ["9"], command = "numbered_command 9" },
# arrow keys
{ keys = ["arrow_up"], command = "cursor_move_up" },
{ keys = ["arrow_down"], command = "cursor_move_down" },
{ keys = ["arrow_left"], command = "cd .." },
{ keys = ["arrow_right"], command = "open" },
{ keys = ["\n"], command = "open" },
{ keys = ["home"], command = "cursor_move_home" },
{ keys = ["end"], command = "cursor_move_end" },
{ keys = ["page_up"], command = "cursor_move_page_up" },
{ keys = ["page_down"], command = "cursor_move_page_down" },
{ keys = ["ctrl+u"], command = "cursor_move_page_up 0.5" },
{ keys = ["ctrl+d"], command = "cursor_move_page_down 0.5" },
{ keys = ["ctrl+b"], command = "cursor_move_page_up" },
{ keys = ["ctrl+f"], command = "cursor_move_page_down" },
# vim-like keybindings
{ keys = ["j"], command = "cursor_move_down" },
{ keys = ["k"], command = "cursor_move_up" },
{ keys = ["h"], command = "cd .." },
{ keys = ["l"], command = "open" },
{ keys = ["g", "g"], command = "cursor_move_home" },
{ keys = ["G"], command = "cursor_move_end" },
{ keys = ["r"], command = "open_with" },
{ keys = ["H"], command = "cursor_move_page_home" },
{ keys = ["L"], command = "cursor_move_page_middle" },
{ keys = ["M"], command = "cursor_move_page_end" },
{ keys = ["["], command = "parent_cursor_move_up" },
{ keys = ["]"], command = "parent_cursor_move_down" },
{ keys = ["c", "d"], command = ":cd " },
{ keys = ["d", "d"], command = "cut_files" },
{ keys = ["y", "y"], command = "copy_files" },
{ keys = ["y", "n"], command = "copy_filename" },
{ keys = ["y", "."], command = "copy_filename_without_extension" },
{ keys = ["y", "p"], command = "copy_filepath" },
{ keys = ["y", "a"], command = "copy_filepath --all-selected=true" },
{ keys = ["y", "d"], command = "copy_dirpath" },
{ keys = ["p", "l"], command = "symlink_files --relative=false" },
{ keys = ["p", "L"], command = "symlink_files --relative=true" },
{ keys = ["delete"], command = "delete_files" },
{ keys = ["d", "D"], command = "delete_files" },
{ keys = ["p", "p"], command = "paste_files" },
{ keys = ["p", "o"], command = "paste_files --overwrite=true" },
{ keys = ["a"], command = "rename_append" },
{ keys = ["A"], command = "rename_prepend" },
{ keys = ["f", "t"], command = ":touch " },
{ keys = [" "], command = "select --toggle=true" },
{ keys = ["t"], command = "select --all=true --toggle=true" },
{ keys = ["V"], command = "toggle_visual" },
{ keys = ["w"], command = "show_tasks --exit-key=w" },
{ keys = ["b", "b"], command = "bulk_rename" },
{ keys = ["="], command = "set_mode" },
{ keys = [":"], command = ":" },
{ keys = [";"], command = ":" },
{ keys = ["'"], command = ":shell " },
{ keys = ["m", "k"], command = ":mkdir " },
{ keys = ["c", "w"], command = ":rename " },
{ keys = ["/"], command = ":search " },
{ keys = ["|"], command = ":search_inc " },
{ keys = ["\\"], command = ":search_glob " },
{ keys = ["S"], command = "search_fzf" },
{ keys = ["C"], command = "subdir_fzf" },
{ keys = ["n"], command = "search_next" },
{ keys = ["N"], command = "search_prev" },
{ keys = ["s", "r"], command = "sort reverse" },
{ keys = ["s", "l"], command = "sort lexical" },
{ keys = ["s", "m"], command = "sort mtime" },
{ keys = ["s", "n"], command = "sort natural" },
{ keys = ["s", "s"], command = "sort size" },
{ keys = ["s", "e"], command = "sort ext" },
{ keys = ["m", "s"], command = "linemode size" },
{ keys = ["m", "m"], command = "linemode mtime" },
{ keys = ["m", "M"], command = "linemode size | mtime" },
{ keys = ["m", "u"], command = "linemode user" },
{ keys = ["m", "U"], command = "linemode user | group" },
{ keys = ["m", "p"], command = "linemode perm" },
{ keys = ["g", "r"], command = "cd /" },
{ keys = ["g", "c"], command = "cd ~/.config" },
{ keys = ["g", "d"], command = "cd ~/Downloads" },
{ keys = ["g", "e"], command = "cd /etc" },
{ keys = ["g", "h"], command = "cd ~/" },
{ keys = ["?"], command = "help" },
]
[task_view]
keymap = [
# arrow keys
{ keys = ["arrow_up"], command = "cursor_move_up" },
{ keys = ["arrow_down"], command = "cursor_move_down" },
{ keys = ["home"], command = "cursor_move_home" },
{ keys = ["end"], command = "cursor_move_end" },
# vim-like keybindings
{ keys = ["j"], command = "cursor_move_down" },
{ keys = ["k"], command = "cursor_move_up" },
{ keys = ["g", "g"], command = "cursor_move_home" },
{ keys = ["G"], command = "cursor_move_end" },
{ keys = ["w"], command = "show_tasks" },
{ keys = ["escape"], command = "show_tasks" },
]
[help_view]
keymap = [
# arrow keys
{ keys = ["arrow_up"], command = "cursor_move_up" },
{ keys = ["arrow_down"], command = "cursor_move_down" },
{ keys = ["home"], command = "cursor_move_home" },
{ keys = ["end"], command = "cursor_move_end" },
# vim-like keybindings
{ keys = ["j"], command = "cursor_move_down" },
{ keys = ["k"], command = "cursor_move_up" },
{ keys = ["g", "g"], command = "cursor_move_home" },
{ keys = ["G"], command = "cursor_move_end" },
{ keys = ["w"], command = "show_tasks" },
{ keys = ["escape"], command = "show_tasks" },
]

View File

@@ -0,0 +1,229 @@
[class]
audio_default = [
{ command = "mpv", args = [
"--",
] },
{ command = "mediainfo", confirm_exit = true },
]
image_default = [
{ command = "qimgv", args = [
"--",
], fork = true, silent = true },
{ command = "krita", args = [
"--",
], fork = true, silent = true },
{ command = "exiftool", confirm_exit = true },
{ command = "swappy", args = [
"-f",
], fork = true },
]
video_default = [
{ command = "mpv", args = [
"--",
], fork = true, silent = true },
{ command = "mediainfo", confirm_exit = true },
{ command = "mpv", args = [
"--mute",
"on",
"--",
], fork = true, silent = true },
]
text_default = [
{ command = "micro" },
{ command = "gedit", fork = true, silent = true },
{ command = "bat", args = [
"--paging=always",
] },
]
reader_default = [{ command = "evince", fork = true, silent = true }]
libreoffice_default = [{ command = "libreoffice", fork = true, silent = true }]
[extension]
## image formats
avif.inherit = "image_default"
bmp.inherit = "image_default"
gif.inherit = "image_default"
heic.inherit = "image_default"
jpeg.inherit = "image_default"
jpe.inherit = "image_default"
jpg.inherit = "image_default"
pgm.inherit = "image_default"
png.inherit = "image_default"
ppm.inherit = "image_default"
webp.inherit = "image_default"
svg.app_list = [
{ command = "inkview", fork = true, silent = true },
{ command = "inkscape", fork = true, silent = true },
]
tiff.app_list = [
{ command = "qimgv", fork = true, silent = true },
{ command = "krita", fork = true, silent = true },
]
## audio formats
flac.inherit = "audio_default"
m4a.inherit = "audio_default"
mp3.inherit = "audio_default"
ogg.inherit = "audio_default"
wav.inherit = "audio_default"
## video formats
avi.inherit = "video_default"
av1.inherit = "video_default"
flv.inherit = "video_default"
mkv.inherit = "video_default"
m4v.inherit = "video_default"
mov.inherit = "video_default"
mp4.inherit = "video_default"
ts.inherit = "video_default"
webm.inherit = "video_default"
wmv.inherit = "video_default"
## text formats
build.inherit = "text_default"
c.inherit = "text_default"
cmake.inherit = "text_default"
conf.inherit = "text_default"
cpp.inherit = "text_default"
css.inherit = "text_default"
csv.inherit = "text_default"
cu.inherit = "text_default"
ebuild.inherit = "text_default"
eex.inherit = "text_default"
env.inherit = "text_default"
ex.inherit = "text_default"
exs.inherit = "text_default"
go.inherit = "text_default"
h.inherit = "text_default"
hpp.inherit = "text_default"
hs.inherit = "text_default"
html.inherit = "text_default"
ini.inherit = "text_default"
java.inherit = "text_default"
js.inherit = "text_default"
json.inherit = "text_default"
kt.inherit = "text_default"
lua.inherit = "text_default"
log.inherit = "text_default"
md.inherit = "text_default"
micro.inherit = "text_default"
ninja.inherit = "text_default"
py.inherit = "text_default"
rkt.inherit = "text_default"
rs.inherit = "text_default"
scss.inherit = "text_default"
sh.inherit = "text_default"
srt.inherit = "text_default"
svelte.inherit = "text_default"
toml.inherit = "text_default"
tsx.inherit = "text_default"
txt.inherit = "text_default"
vim.inherit = "text_default"
xml.inherit = "text_default"
yaml.inherit = "text_default"
yml.inherit = "text_default"
# archive formats
7z.app_list = [
{ command = "7z", args = [
"x",
], confirm_exit = true },
{ command = "file-roller", fork = true, silent = true },
]
bz2.app_list = [
{ command = "tar", args = [
"-xvjf",
], confirm_exit = true },
{ command = "file-roller", fork = true, silent = true },
]
gz.app_list = [
{ command = "tar", args = [
"-xvzf",
], confirm_exit = true },
{ command = "file-roller", fork = true, silent = true },
]
tar.app_list = [
{ command = "tar", args = [
"-xvf",
], confirm_exit = true },
{ command = "file-roller", fork = true, silent = true },
]
tgz.app_list = [
{ command = "tar", args = [
"-xvzf",
], confirm_exit = true },
{ command = "file-roller", fork = true, silent = true },
]
rar.app_list = [
{ command = "unrar", args = [
"x",
], confirm_exit = true },
{ command = "file-roller", fork = true, silent = true },
]
xz.app_list = [
{ command = "tar", args = [
"-xvJf",
], confirm_exit = true },
{ command = "file-roller", fork = true, silent = true },
]
zip.app_list = [
{ command = "unzip", confirm_exit = true },
{ command = "file-roller", fork = true, silent = true },
]
# misc formats
aup.app_list = [{ command = "audacity", fork = true, silent = true }]
m3u.app_list = [
{ command = "micro" },
{ command = "mpv" },
{ command = "gedit", fork = true, silent = true },
{ command = "bat", confirm_exit = true },
]
odt.inherit = "libreoffice_default"
odf.inherit = "libreoffice_default"
ods.inherit = "libreoffice_default"
odp.inherit = "libreoffice_default"
doc.inherit = "libreoffice_default"
docx.inherit = "libreoffice_default"
xls.inherit = "libreoffice_default"
xlsx.inherit = "libreoffice_default"
ppt.inherit = "libreoffice_default"
pptx.inherit = "libreoffice_default"
pdf.inherit = "reader_default"
kra.app_list = [{ command = "krita", fork = true, silent = true }]
kdenlive.app_list = [{ command = "kdenlive", fork = true, silent = true }]
tex.app_list = [
{ command = "micro" },
{ command = "gedit", fork = true, silent = true },
{ command = "bat", confirm_exit = true },
{ command = "pdflatex" },
]
torrent.app_list = [{ command = "transmission-gtk" }]
[mimetype]
# application/octet-stream
[mimetype.application.subtype.octet-stream]
inherit = "video_default"
# text/*
[mimetype.text]
inherit = "text_default"
# text/*
[mimetype.video]
inherit = "video_default"

111
.config/joshuto/theme.toml Normal file
View File

@@ -0,0 +1,111 @@
##########################################
## Tabs
##########################################
# Inactive tabs
[tabs.inactive]
# Active tabs
[tabs.active]
invert=true
##########################################
## File List - Selections
##########################################
# Selected files (standard selection)
[selection]
fg = "light_yellow"
bold = true
# Files selected in current visual mode
[visual_mode_selection]
fg = "light_red"
bold = true
[selection.prefix]
prefix = " "
size = 2
##########################################
## File List - System File Types
##########################################
# Basic style, used for regular files (and also device files and FIFOs)
[regular]
fg = "white"
# For directories
[directory]
fg = "light_blue"
bold = true
# For symbolic links
[link]
fg = "cyan"
bold = true
# For socket files
[socket]
fg = "light_magenta"
bold = true
##########################################
## File List - Exceptional Files
##########################################
# Files marked as executable
[executable]
fg = "light_green"
bold = true
# Invalid symbolic links (pointing to non-existing target)
[link_invalid]
fg = "red"
bold = true
##########################################
## File list - Override style by extension
##########################################
# This sections allows to override the basic
# style with a specific style for the file's
# extension.
[ext]
bmp.fg = "yellow"
gif.fg = "yellow"
heic.fg = "yellow"
jpg.fg = "yellow"
jpeg.fg = "yellow"
pgm.fg = "yellow"
png.fg = "yellow"
ppm.fg = "yellow"
svg.fg = "yellow"
wav.fg = "magenta"
flac.fg = "magenta"
mp3.fg = "magenta"
amr.fg = "magenta"
avi.fg = "magenta"
flv.fg = "magenta"
m3u.fg = "magenta"
m4a.fg = "magenta"
m4v.fg = "magenta"
mkv.fg = "magenta"
mov.fg = "magenta"
mp4.fg = "magenta"
mpg.fg = "magenta"
rmvb.fg = "magenta"
webm.fg = "magenta"
wmv.fg = "magenta"
7z.fg = "red"
bz2.fg = "red"
gz.fg = "red"
rar.fg = "red"
tar.fg = "red"
tgz.fg = "red"
xz.fg = "red"
zip.fg = "red"

0
.config/lf/cleaner Executable file → Normal file
View File

0
.config/lf/preview Executable file → Normal file
View File

View File

@@ -7,4 +7,5 @@ k seek 60
J seek -90
K seek 90
S cycle sub
WHEEL_UP seek 5
WHEEL_DOWN seek -5

0
.config/nsxiv/exec/image-info Executable file → Normal file
View File

0
.config/nsxiv/exec/key-handler Executable file → Normal file
View File

0
.config/nsxiv/exec/thumb-info Executable file → Normal file
View File

0
.config/nsxiv/exec/win-title Executable file → Normal file
View File

View File

@@ -20,7 +20,7 @@ alias \
grep="rg --color=auto" \
ip="ip -color=auto" \
less="moar" \
ls="exa -a --icons --group-directories-first"
ls="eza -a --icons --group-directories-first"
# These common commands ate just too long! Abbreviate them
alias \
@@ -40,16 +40,13 @@ alias \
j="joshutoub" \
lf="lfub" \
lg="lazygit" \
matrix="unimatrix -s 95" \
lock="swaylock" \
night="redshift -PO 4500" \
py="python" \
sv="rsv" \
v="$EDITOR" \
vpn-down="wg-quick down wg0" \
vpn-restart="wg-quick down wg0 && wg-quick up wg0" \
vpn-up="wg-quick up wg0" \
weather="curl wttr.in/" \
ww="$EDITOR ~/vimwiki/index.md" \
ww="$EDITOR ~/neorg/" \
x="xplr -C ~/.config/xplr/hack.lua" \
z="zathura"

View File

@@ -33,6 +33,7 @@ export XDG_CACHE_HOME="$HOME/.cache"
export XDG_CONFIG_HOME="$HOME/.config"
export XDG_DATA_HOME="$HOME/.local/share"
export XDG_STATE_HOME="$HOME/.local/share"
export XDG_RUNTIME_DIR="$HOME/.cache/xdgr"
export HYPRSHOT_DIR="$HOME/Pictures/screenshots"
@@ -66,7 +67,7 @@ export UNISON="$XDG_DATA_HOME/unison"
export WEECHAT_HOME="$XDG_CONFIG_HOME/weechat"
export WGETRC="$XDG_CONFIG_HOME/wget/wgetrc"
export WINEPREFIX="$XDG_DATA_HOME/wineprefixes/default"
# export XAUTHORITY="$XDG_RUNTIME_DIR/Xauthority"
export XAUTHORITY="$XDG_RUNTIME_DIR/Xauthority"
export XINITRC="$XDG_CONFIG_HOME/x11/xinitrc"
export ZDOTDIR="$XDG_CONFIG_HOME/zsh"
export _JAVA_OPTIONS=-Djava.util.prefs.userRoot="$XDG_CONFIG_HOME/java"

View File

@@ -0,0 +1,13 @@
{
"connections": [
{
"name": "kristofersxyz-rs",
"adapter": "postgres",
"host": "localhost",
"port": 5432,
"user": "postgres",
"database": "kristofersxyz-rs-db",
"password": "password"
}
]
}

66
.config/swaylock/config Normal file
View File

@@ -0,0 +1,66 @@
ignore-empty-password
font="Fira Sans Semibold"
clock
timestr=%T
datestr=%d.%m.%Y
# Add current screenshot as wallpaper
screenshots
# Add an image as a background
# image=~/.cache/current_wallpaper.jpg
# Fade in time
# fade-in=1
# Effect for background
effect-blur=10x5
# effect-greyscale
# effect-pixelate=5
# Show/Hide indicator circle
indicator
# smaller indicator
indicator-radius=200
# bigger indicator
# indicator-radius=300
indicator-thickness=20
indicator-caps-lock
# Define all colors
key-hl-color=00000066
separator-color=00000000
inside-color=00000033
inside-clear-color=c0caf500
inside-caps-lock-color=c0caf500
inside-ver-color=c0caf500
inside-wrong-color=c0caf500
ring-color=c0caf5
ring-clear-color=c0caf5
ring-caps-lock-color=c0caf5
ring-ver-color=c0caf5
ring-wrong-color=c0caf5
line-color=00000000
line-clear-color=c0caf5FF
line-caps-lock-color=c0caf5FF
line-ver-color=c0caf5FF
line-wrong-color=c0caf5FF
text-color=c0caf5
text-clear-color=c0caf5
text-ver-color=c0caf5
text-wrong-color=c0caf5
bs-hl-color=c0caf5
caps-lock-key-hl-color=c0caf5FF
caps-lock-bs-hl-color=c0caf5FF
disable-caps-lock-text
text-caps-lock-color=c0caf5

View File

@@ -1 +1 @@
../../../../../../home/kristofers/.local/share/tmux/plugins
/home/kristofers/.local/share/tmux/plugins

View File

@@ -1,9 +1,13 @@
# Set true color
set -g default-terminal "screen-256color"
set-option -sa terminal-overrides ",Alacritty*:Tc"
set-option -sa terminal-overrides ",alacritty*:Tc"
set-option -sa terminal-overrides ",xterm*:Tc"
set-option -g status-position top
set-option -sg escape-time 0
set-option -g focus-events on
set -g mouse on
# Disable setatus bar
@@ -11,6 +15,7 @@ set -g status on
# Set prefix
unbind C-b
unbind C-l
set -g prefix C-s
# Shift-Alt vim keys to switch windows
@@ -35,6 +40,7 @@ bind % split-window -h -c "#{pane_current_path}"
bind-key -r i run-shell "tmux neww chtsh"
bind-key -r f run-shell "tmux neww ~/.local/bin/tmux-sessionizer"
set -g @plugin "tmux-plugins/tpm"
set -g @plugin "tmux-plugins/tmux-sensible"
set -g @plugin "christoomey/vim-tmux-navigator"
@@ -70,13 +76,13 @@ set -g status-left-style NONE
set -g status-right-style NONE
set -g status-left "#[fg=#15161e,bg=#7aa2f7,bold] #S #[fg=#7aa2f7,bg=#16161e,nobold,nounderscore,noitalics]"
set -g status-right "#[fg=#16161e,bg=#16161e,nobold,nounderscore,noitalics]#[fg=#7aa2f7,bg=#16161e] #{prefix_highlight} #[fg=#3b4261,bg=#16161e,nobold,nounderscore,noitalics]#[fg=#7aa2f7,bg=#3b4261] %d-%m-%Y  %H:%M %p #[fg=#7aa2f7,bg=#3b4261,nobold,nounderscore,noitalics]#[fg=#15161e,bg=#7aa2f7,bold] #h "
set -g status-right "#[fg=#16161e,bg=#16161e,nobold,nounderscore,noitalics]#[fg=#7aa2f7,bg=#16161e] #{prefix_highlight} #[fg=#3b4261,bg=#16161e,nobold,nounderscore,noitalics]#[fg=#7aa2f7,bg=#3b4261] %H:%M | %d.%m.%Y #[fg=#7aa2f7,bg=#3b4261,nobold,nounderscore,noitalics]#[fg=#15161e,bg=#7aa2f7,bold] #h "
setw -g window-status-activity-style "underscore,fg=#a9b1d6,bg=#16161e"
setw -g window-status-separator ""
setw -g window-status-style "NONE,fg=#a9b1d6,bg=#16161e"
setw -g window-status-format "#[fg=#16161e,bg=#16161e,nobold,nounderscore,noitalics]#[default] #I #W #F #[fg=#16161e,bg=#16161e,nobold,nounderscore,noitalics]"
setw -g window-status-current-format "#[fg=#16161e,bg=#3b4261,nobold,nounderscore,noitalics]#[fg=#7aa2f7,bg=#3b4261,bold] #I #W #F #[fg=#3b4261,bg=#16161e,nobold,nounderscore,noitalics]"
setw -g window-status-format "#[fg=#16161e,bg=#16161e,nobold,nounderscore,noitalics]#[default] #I #W #F #[fg=#16161e,bg=#16161e,nobold,nounderscore,noitalics]"
setw -g window-status-current-format "#[fg=#16161e,bg=#3b4261,nobold,nounderscore,noitalics]#[fg=#7aa2f7,bg=#3b4261,bold] #I #W #F #[fg=#3b4261,bg=#16161e,nobold,nounderscore,noitalics]"
# tmux-plugins/tmux-prefix-highlight support
set -g @prefix_highlight_output_prefix "#[fg=#e0af68]#[bg=#16161e]#[fg=#16161e]#[bg=#e0af68]"

2
.config/x11/opt-apps Executable file → Normal file
View File

@@ -1,6 +1,6 @@
#!/bin/sh
autostart="picom nextcloud telegram-desktop headset-charge-indicator spotify-launcher ferdium discord transmission-daemon librewolf easyeffects discord syncthing"
autostart="picom nextcloud telegram-desktop spotify-launcher discord transmission-daemon librewolf discord syncthing mullvad-vpn"
for program in $autostart; do
pidof -sx "$program" || "$program" &

0
.config/x11/xinitrc Executable file → Normal file
View File

0
.config/x11/xprofile Executable file → Normal file
View File

File diff suppressed because it is too large Load Diff

3079
.config/xplr/init.lua.old Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,77 @@
# Synctex
set synctex true
set synctex-editor-command "nvim --remote-silent +%{line} %{input}"
# Basic Settings
set highlight-transparency .1
set zoom-center "true"
set selection-clipboard clipboard
set render-loading "false"
set window-width 960
set window-height 1080
set window-title-basename "true"
set selection-clipboard "clipboard"
set adjust-open width
set recolor true
map <Space> toggle_index
map p print
map w recolor
map k 5k
map j 5k
# Dracula color theme for Zathura
# Swaps Foreground for Background to get a light version if the user prefers
#
# Dracula color theme
#
set notification-error-bg "#ff5555" # Red
set notification-error-fg "#f8f8f2" # Foreground
set notification-warning-bg "#ffb86c" # Orange
set notification-warning-fg "#44475a" # Selection
set notification-bg "#282a36" # Background
set notification-fg "#f8f8f2" # Foreground
set completion-bg "#282a36" # Background
set completion-fg "#6272a4" # Comment
set completion-group-bg "#282a36" # Background
set completion-group-fg "#6272a4" # Comment
set completion-highlight-bg "#44475a" # Selection
set completion-highlight-fg "#f8f8f2" # Foreground
set index-bg "#282a36" # Background
set index-fg "#f8f8f2" # Foreground
set index-active-bg "#44475a" # Current Line
set index-active-fg "#f8f8f2" # Foreground
set inputbar-bg "#282a36" # Background
set inputbar-fg "#f8f8f2" # Foreground
set statusbar-bg "#282a36" # Background
set statusbar-fg "#f8f8f2" # Foreground
set highlight-color "#ffb86c" # Orange
set highlight-active-color "#ff79c6" # Pink
set default-bg "#282a36" # Background
set default-fg "#f8f8f2" # Foreground
set render-loading true
set render-loading-fg "#282a36" # Background
set render-loading-bg "#f8f8f2" # Foreground
#
# Recolor mode settings
#
set recolor-lightcolor "#282a36" # Background
set recolor-darkcolor "#f8f8f2" # Foreground
#
# Startup options
#
set adjust-open width
set recolor true

View File

@@ -0,0 +1,69 @@
# Synctex
set synctex true
set synctex-editor-command "nvim --remote-silent +%{line} %{input}"
# Basic Settings
set highlight-transparency .1
set zoom-center "true"
set selection-clipboard clipboard
set render-loading "false"
set window-width 960
set window-height 1080
set window-title-basename "true"
set selection-clipboard "clipboard"
set adjust-open width
set recolor true
map <Space> toggle_index
map p print
map w recolor
map k 5k
map j 5k
# Tokyonight color theme for Zathura
# Swaps Foreground for Background to get a light version if the user prefers
#
# Tokyonight color theme
#
set notification-error-bg "#f7768e"
set notification-error-fg "#c0caf5"
set notification-warning-bg "#e0af68"
set notification-warning-fg "#414868"
set notification-bg "#1a1b26"
set notification-fg "#c0caf5"
set completion-bg "#1a1b26"
set completion-fg "#a9b1d6"
set completion-group-bg "#1a1b26"
set completion-group-fg "#a9b1d6"
set completion-highlight-bg "#414868"
set completion-highlight-fg "#c0caf5"
set index-bg "#1a1b26"
set index-fg "#c0caf5"
set index-active-bg "#414868"
set index-active-fg "#c0caf5"
set inputbar-bg "#1a1b26"
set inputbar-fg "#c0caf5"
set statusbar-bg "#1a1b26"
set statusbar-fg "#c0caf5"
set highlight-color "#e0af68"
set highlight-active-color "#9ece6a"
set default-bg "#1a1b26"
set default-fg "#c0caf5"
set render-loading true
set render-loading-fg "#1a1b26"
set render-loading-bg "#c0caf5"
#
# Recolor mode settings
#
set recolor-lightcolor "#1a1b26"
set recolor-darkcolor "#c0caf5"

View File

@@ -0,0 +1,64 @@
# Synctex
set synctex true
set synctex-editor-command "nvim --remote-silent +%{line} %{input}"
# Basic Settings
set highlight-transparency .1
set zoom-center "true"
set selection-clipboard clipboard
set render-loading "false"
set window-width 960
set window-height 1080
set window-title-basename "true"
set selection-clipboard "clipboard"
set adjust-open width
set recolor true
map <Space> toggle_index
map p print
map w recolor
map k 5k
map j 5k
set notification-error-bg "#282828" # bg
set notification-error-fg "#fb4934" # bright:red
set notification-warning-bg "#282828" # bg
set notification-warning-fg "#fabd2f" # bright:yellow
set notification-bg "#282828" # bg
set notification-fg "#b8bb26" # bright:green
set completion-bg "#504945" # bg2
set completion-fg "#ebdbb2" # fg
set completion-group-bg "#3c3836" # bg1
set completion-group-fg "#928374" # gray
set completion-highlight-bg "#83a598" # bright:blue
set completion-highlight-fg "#504945" # bg2
# Define the color in index mode
set index-bg "#504945" # bg2
set index-fg "#ebdbb2" # fg
set index-active-bg "#83a598" # bright:blue
set index-active-fg "#504945" # bg2
set inputbar-bg "#282828" # bg
set inputbar-fg "#ebdbb2" # fg
set statusbar-bg "#504945" # bg2
set statusbar-fg "#ebdbb2" # fg
set highlight-color "#fabd2f" # bright:yellow
set highlight-active-color "#fe8019" # bright:orange
set default-bg "#282828" # bg
set default-fg "#ebdbb2" # fg
set render-loading true
set render-loading-bg "#282828" # bg
set render-loading-fg "#ebdbb2" # fg
# Recolor book content's color
set recolor-lightcolor "#282828" # bg
set recolor-darkcolor "#ebdbb2" # fg
set recolor "true"
# set recolor-keephue true # keep original color

View File

@@ -0,0 +1,64 @@
# Synctex
set synctex true
set synctex-editor-command "nvim --remote-silent +%{line} %{input}"
# Basic Settings
set highlight-transparency .3
set zoom-center "true"
set selection-clipboard clipboard
set render-loading "false"
set window-width 960
set window-height 1080
set window-title-basename "true"
set selection-clipboard "clipboard"
set adjust-open width
set recolor true
map <Space> toggle_index
map p print
map w recolor
map k 5k
map j 5k
set notification-error-bg "#ebdbb2" # bg
set notification-error-fg "#9d0006" # bright:red
set notification-warning-bg "#ebdbb2" # bg
set notification-warning-fg "#b57614" # bright:yellow
set notification-bg "#ebdbb2" # bg
set notification-fg "#79740e" # bright:green
set completion-bg "#d5c4a1" # bg2
set completion-fg "#3c3836" # fg
set completion-group-bg "#ebdbb2" # bg1
set completion-group-fg "#928374" # gray
set completion-highlight-bg "#076678" # bright:blue
set completion-highlight-fg "#d5c4a1" # bg2
# Define the color in index mode
set index-bg "#d5c4a1" # bg2
set index-fg "#3c3836" # fg
set index-active-bg "#076678" # bright:blue
set index-active-fg "#d5c4a1" # bg2
set inputbar-bg "#ebdbb2" # bg
set inputbar-fg "#3c3836" # fg
set statusbar-bg "#d5c4a1" # bg2
set statusbar-fg "#3c3836" # fg
set highlight-color "#b57614" # bright:yellow
set highlight-active-color "#af3a03" # bright:orange
set default-bg "#1d2021" # bg
set default-fg "#3c3836" # fg
set render-loading true
set render-loading-bg "#ebdbb2" # bg
set render-loading-fg "#3c3836" # fg
# Recolor book content's color
set recolor-lightcolor "#ebdbb2" # bg
set recolor-darkcolor "#3c3836" # fg
set recolor true
set recolor-keephue true # keep original color

View File

@@ -0,0 +1,65 @@
# Synctex
set synctex true
set synctex-editor-command "nvim --remote-silent +%{line} %{input}"
# Basic Settings
set highlight-transparency .1
set zoom-center "true"
set selection-clipboard clipboard
set render-loading "false"
set window-width 960
set window-height 1080
set window-title-basename "true"
set selection-clipboard "clipboard"
set adjust-open width
set recolor true
map <Space> toggle_index
map p print
map w recolor
map k 5k
map j 5k
# zathurarc-dark
set notification-error-bg "#586e75" # base01 # seem not work
set notification-error-fg "#dc322f" # red
set notification-warning-bg "#586e75" # base01
set notification-warning-fg "#dc322f" # red
set notification-bg "#586e75" # base01
set notification-fg "#b58900" # yellow
set completion-group-bg "#002b36" # base03
set completion-group-fg "#839496" # base0
set completion-bg "#073642" # base02
set completion-fg "#93a1a1" # base1
set completion-highlight-bg "#586e75" # base01
set completion-highlight-fg "#eee8d5" # base2
# Define the color in index mode
set index-bg "#073642" # base02
set index-fg "#93a1a1" # base1
set index-active-bg "#586e75" # base01
set index-active-fg "#eee8d5" # base2
set inputbar-bg "#586e75" # base01
set inputbar-fg "#eee8d5" # base2
set statusbar-bg "#073642" # base02
set statusbar-fg "#93a1a1" # base1
set highlight-color "#657b83" # base00 # hightlight match when search keyword(vim's /)
set highlight-active-color "#268bd2" # blue
set default-bg "#073642" # base02
set default-fg "#93a1a1" # base1
# set render-loading true
# set render-loading-fg "#073642" # base02
# set render-loading-bg "#073642" # base02
# Recolor book content's color
set recolor true
set recolor-lightcolor "#073642" # base02
set recolor-darkcolor "#93a1a1" # base1
# set recolor-keephue true # keep original color

View File

@@ -0,0 +1,67 @@
# Synctex
set synctex true
set synctex-editor-command "nvim --remote-silent +%{line} %{input}"
# Basic Settings
set highlight-transparency .1
set zoom-center "true"
set selection-clipboard clipboard
set render-loading "false"
set window-width 960
set window-height 1080
set window-title-basename "true"
set selection-clipboard "clipboard"
set adjust-open width
set recolor true
map <Space> toggle_index
map p print
map w recolor
map k 5k
map j 5k
# zathurarc-light
set notification-error-bg "#eee8d5" # base2 # seem not work
set notification-error-fg "#dc322f" # red
set notification-warning-bg "#eee8d5" # base2
set notification-warning-fg "#dc322f" # red
set notification-bg "#eee8d5" # base2
set notification-fg "#268bd2" # blue
set completion-bg "#fdf6e3" # base3
set completion-fg "#657b83" # base00
set completion-group-bg "#eee8d5" # base2
set completion-group-fg "#586e75" # base01
set completion-highlight-bg "#93a1a1" # base1
set completion-highlight-fg "#073642" # base02
# Define the color in index mode
set index-bg "#fdf6e3" # base3
set index-fg "#657b83" # base00
set index-active-bg "#eee8d5" # base2
set index-active-fg "#586e75" # base01
set inputbar-bg "#93a1a1" # base1
set inputbar-fg "#073642" # base02
set statusbar-bg "#fdf6e3" # base3
set statusbar-fg "#657b83" # base00
set highlight-color "#839496" # base0 # hightlight match when search keyword(vim's /)
set highlight-active-color "#cb4616" # orange
set default-bg "#fdf6e3" # base3
set default-fg "#657b83" # base00
set render-loading true
# set render-loading-fg "#fdf6e3" # base3
# set render-loading-bg "#fdf6e3" # base3
# Recolor book content's color
# verbose
# verbose
set recolor-lightcolor "#fdf6e3" # base3
set recolor-darkcolor "#657b83" # base00
set recolor "true"
# set recolor-keephue true # keep original color

View File

@@ -1,54 +0,0 @@
set window-title-basename "true"
set selection-clipboard "clipboard"
# Tokyonight color theme for Zathura
# Swaps Foreground for Background to get a light version if the user prefers
#
# Tokyonight color theme
#
set notification-error-bg "#f7768e"
set notification-error-fg "#c0caf5"
set notification-warning-bg "#e0af68"
set notification-warning-fg "#414868"
set notification-bg "#1a1b26"
set notification-fg "#c0caf5"
set completion-bg "#1a1b26"
set completion-fg "#a9b1d6"
set completion-group-bg "#1a1b26"
set completion-group-fg "#a9b1d6"
set completion-highlight-bg "#414868"
set completion-highlight-fg "#c0caf5"
set index-bg "#1a1b26"
set index-fg "#c0caf5"
set index-active-bg "#414868"
set index-active-fg "#c0caf5"
set inputbar-bg "#1a1b26"
set inputbar-fg "#c0caf5"
set statusbar-bg "#1a1b26"
set statusbar-fg "#c0caf5"
set highlight-color "#e0af68"
set highlight-active-color "#9ece6a"
set default-bg "#1a1b26"
set default-fg "#c0caf5"
set render-loading true
set render-loading-fg "#1a1b26"
set render-loading-bg "#c0caf5"
#
# Recolor mode settings
#
set recolor-lightcolor "#1a1b26"
set recolor-darkcolor "#c0caf5"
#
# Startup options
#
set adjust-open width
set recolor true

1
.config/zathura/zathurarc Symbolic link
View File

@@ -0,0 +1 @@
themes/zathura-gruvbox-light

405
.config/zellij/config.kdl Normal file
View File

@@ -0,0 +1,405 @@
// If you'd like to override the default keybindings completely, be sure to change "keybinds" to "keybinds clear-defaults=true"
keybinds {
normal {
// uncomment this and adjust key if using copy_on_select=false
// bind "Alt c" { Copy; }
bind "Ctrl h" { MoveFocus "Left"; }
bind "Ctrl j" { MoveFocus "Down"; }
bind "Ctrl k" { MoveFocus "Up"; }
bind "Ctrl l" { MoveFocus "Right"; }
bind "Alt H" { GoToPreviousTab; }
bind "Alt L" { GoToNextTab; }
}
locked {
bind "Ctrl g" { SwitchToMode "Normal"; }
}
resize {
bind "Ctrl r" { SwitchToMode "Normal"; }
bind "h" "Left" { Resize "Increase Left"; }
bind "j" "Down" { Resize "Increase Down"; }
bind "k" "Up" { Resize "Increase Up"; }
bind "l" "Right" { Resize "Increase Right"; }
bind "H" { Resize "Decrease Left"; }
bind "J" { Resize "Decrease Down"; }
bind "K" { Resize "Decrease Up"; }
bind "L" { Resize "Decrease Right"; }
bind "=" "+" { Resize "Increase"; }
bind "-" { Resize "Decrease"; }
}
pane {
bind "Ctrl p" { SwitchToMode "Normal"; }
bind "p" { SwitchFocus; }
bind "n" { NewPane; SwitchToMode "Normal"; }
bind "h" { NewPane "Left"; SwitchToMode "Normal"; }
bind "j" { NewPane "Down"; SwitchToMode "Normal"; }
bind "k" { NewPane "Up"; SwitchToMode "Normal"; }
bind "l" { NewPane "Right"; SwitchToMode "Normal"; }
bind "x" { CloseFocus; SwitchToMode "Normal"; }
bind "f" { ToggleFocusFullscreen; SwitchToMode "Normal"; }
bind "z" { TogglePaneFrames; SwitchToMode "Normal"; }
bind "w" { ToggleFloatingPanes; SwitchToMode "Normal"; }
bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "Normal"; }
bind "r" { SwitchToMode "RenamePane"; PaneNameInput 0;}
}
move {
bind "Ctrl h" { SwitchToMode "Normal"; }
bind "n" "Tab" { MovePane; }
bind "p" { MovePaneBackwards; }
bind "h" "Left" { MovePane "Left"; }
bind "j" "Down" { MovePane "Down"; }
bind "k" "Up" { MovePane "Up"; }
bind "l" "Right" { MovePane "Right"; }
}
tab {
bind "Ctrl t" { SwitchToMode "Normal"; }
bind "r" { SwitchToMode "RenameTab"; TabNameInput 0; }
bind "h" "Left" "Up" "k" { GoToPreviousTab; }
bind "l" "Right" "Down" "j" { GoToNextTab; }
bind "n" { NewTab; SwitchToMode "Normal"; }
bind "x" { CloseTab; SwitchToMode "Normal"; }
bind "s" { ToggleActiveSyncTab; SwitchToMode "Normal"; }
bind "1" { GoToTab 1; SwitchToMode "Normal"; }
bind "2" { GoToTab 2; SwitchToMode "Normal"; }
bind "3" { GoToTab 3; SwitchToMode "Normal"; }
bind "4" { GoToTab 4; SwitchToMode "Normal"; }
bind "5" { GoToTab 5; SwitchToMode "Normal"; }
bind "6" { GoToTab 6; SwitchToMode "Normal"; }
bind "7" { GoToTab 7; SwitchToMode "Normal"; }
bind "8" { GoToTab 8; SwitchToMode "Normal"; }
bind "9" { GoToTab 9; SwitchToMode "Normal"; }
bind "Tab" { ToggleTab; }
}
scroll {
bind "Ctrl s" { SwitchToMode "Normal"; }
bind "e" { EditScrollback; SwitchToMode "Normal"; }
bind "s" { SwitchToMode "EnterSearch"; SearchInput 0; }
bind "Ctrl c" { ScrollToBottom; SwitchToMode "Normal"; }
bind "j" "Down" { ScrollDown; }
bind "k" "Up" { ScrollUp; }
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
bind "d" { HalfPageScrollDown; }
bind "u" { HalfPageScrollUp; }
// uncomment this and adjust key if using copy_on_select=false
// bind "Alt c" { Copy; }
}
search {
bind "Ctrl s" { SwitchToMode "Normal"; }
bind "Ctrl c" { ScrollToBottom; SwitchToMode "Normal"; }
bind "j" "Down" { ScrollDown; }
bind "k" "Up" { ScrollUp; }
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
bind "d" { HalfPageScrollDown; }
bind "u" { HalfPageScrollUp; }
bind "n" { Search "down"; }
bind "p" { Search "up"; }
bind "c" { SearchToggleOption "CaseSensitivity"; }
bind "w" { SearchToggleOption "Wrap"; }
bind "o" { SearchToggleOption "WholeWord"; }
}
entersearch {
bind "Ctrl r" "Esc" { SwitchToMode "Scroll"; }
bind "Enter" { SwitchToMode "Search"; }
}
renametab {
bind "Ctrl r" { SwitchToMode "Normal"; }
bind "Esc" { UndoRenameTab; SwitchToMode "Tab"; }
}
renamepane {
bind "Ctrl c" { SwitchToMode "Normal"; }
bind "Esc" { UndoRenamePane; SwitchToMode "Pane"; }
}
session {
// bind "Ctrl o" { SwitchToMode "Normal"; }
bind "Ctrl s" { SwitchToMode "Scroll"; }
bind "d" { Detach; }
}
tmux {
bind "[" { SwitchToMode "Scroll"; }
bind "Ctrl b" { Write 2; SwitchToMode "Normal"; }
bind "\"" { NewPane "Down"; SwitchToMode "Normal"; }
bind "%" { NewPane "Right"; SwitchToMode "Normal"; }
bind "z" { ToggleFocusFullscreen; SwitchToMode "Normal"; }
bind "c" { NewTab; SwitchToMode "Normal"; }
bind "," { SwitchToMode "RenameTab"; }
bind "p" { GoToPreviousTab; SwitchToMode "Normal"; }
bind "n" { GoToNextTab; SwitchToMode "Normal"; }
bind "Left" { MoveFocus "Left"; SwitchToMode "Normal"; }
bind "Right" { MoveFocus "Right"; SwitchToMode "Normal"; }
bind "Down" { MoveFocus "Down"; SwitchToMode "Normal"; }
bind "Up" { MoveFocus "Up"; SwitchToMode "Normal"; }
bind "h" { MoveFocus "Left"; SwitchToMode "Normal"; }
bind "l" { MoveFocus "Right"; SwitchToMode "Normal"; }
bind "j" { MoveFocus "Down"; SwitchToMode "Normal"; }
bind "k" { MoveFocus "Up"; SwitchToMode "Normal"; }
bind "o" { FocusNextPane; }
bind "d" { Detach; }
bind "Space" { NextSwapLayout; }
bind "x" { CloseFocus; SwitchToMode "Normal"; }
}
shared_except "locked" {
bind "Ctrl g" { SwitchToMode "Locked"; }
bind "Ctrl q" { Quit; }
bind "Alt n" { NewPane; }
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
bind "Alt =" "Alt +" { Resize "Increase"; }
bind "Alt -" { Resize "Decrease"; }
bind "Alt [" { PreviousSwapLayout; }
bind "Alt ]" { NextSwapLayout; }
bind "Ctrl h" {
LaunchOrFocusPlugin "file:~/.config/zellij/plugins/harpoon.wasm" {
floating true; move_to_focused_tab true
}
}
bind "F1" {
LaunchOrFocusPlugin "file:~/.config/zellij/plugins/monocle.wasm" {
floating true
};
SwitchToMode "Normal"
}
bind "Alt m" {
LaunchOrFocusPlugin "file:~/.config/zellij/plugins/monocle.wasm" {
in_place true
kiost true
};
SwitchToMode "Normal"
}
bind "Ctrl y" {
LaunchOrFocusPlugin "file:~/.config/zellij/plugins/forgot.wasm" {
"lock" "ctrl + g"
"unlock" "ctrl + g"
"new pane" "ctrl + p + n"
"change focus of pane" "ctrl + p + arrow key"
"close pane" "ctrl + p + x"
"rename pane" "ctrl + p + c"
"toggle fullscreen" "ctrl + p + f"
"toggle floating pane" "ctrl + p + w"
"toggle embed pane" "ctrl + p + e"
"choose right pane" "ctrl + p + l"
"choose left pane" "ctrl + p + r"
"choose upper pane" "ctrl + p + k"
"choose lower pane" "ctrl + p + j"
"new tab" "ctrl + t + n"
"close tab" "ctrl + t + x"
"change focus of tab" "ctrl + t + arrow key"
"rename tab" "ctrl + t + r"
"sync tab" "ctrl + t + s"
"brake pane to new tab" "ctrl + t + b"
"brake pane left" "ctrl + t + ["
"brake pane right" "ctrl + t + ]"
"toggle tab" "ctrl + t + tab"
"increase pane size" "ctrl + n + +"
"decrease pane size" "ctrl + n + -"
"increase pane top" "ctrl + n + k"
"increase pane right" "ctrl + n + l"
"increase pane bottom" "ctrl + n + j"
"increase pane left" "ctrl + n + h"
"decrease pane top" "ctrl + n + K"
"decrease pane right" "ctrl + n + L"
"decrease pane bottom" "ctrl + n + J"
"decrease pane left" "ctrl + n + H"
"move pane to top" "ctrl + h + k"
"move pane to right" "ctrl + h + l"
"move pane to bottom" "ctrl + h + j"
"move pane to left" "ctrl + h + h"
"search" "ctrl + s + s"
"go into edit mode" "ctrl + s + e"
"detach session" "ctrl + o + w"
"open session manager" "ctrl + o + w"
"quit zellij" "ctrl + q"
floating true
}
}
}
shared_except "normal" "locked" {
bind "Enter" "Esc" { SwitchToMode "Normal"; }
}
shared_except "pane" "locked" {
bind "Ctrl p" { SwitchToMode "Pane"; }
}
shared_except "resize" "locked" {
bind "Ctrl r" { SwitchToMode "Resize"; }
}
shared_except "scroll" "locked" {
bind "Ctrl s" { SwitchToMode "Scroll"; }
}
shared_except "session" "locked" {
bind "Ctrl o" { SwitchToMode "Session"; }
}
shared_except "tab" "locked" {
bind "Ctrl t" { SwitchToMode "Tab"; }
}
shared_except "move" "locked" {
bind "Ctrl h" { SwitchToMode "Move"; }
}
shared_except "tmux" "locked" {
bind "Ctrl b" { SwitchToMode "Tmux"; }
}
}
plugins {
tab-bar { path "tab-bar"; }
status-bar { path "status-bar"; }
strider { path "strider"; }
compact-bar { path "compact-bar"; }
}
// Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
// eg. when terminal window with an active zellij session is closed
// Options:
// - detach (Default)
// - quit
//
// on_force_close "quit"
// Send a request for a simplified ui (without arrow fonts) to plugins
// Options:
// - true
// - false (Default)
//
simplified_ui false
// Choose the path to the default shell that zellij will use for opening new panes
// Default: $SHELL
//
// default_shell "fish"
// Choose the path to override cwd that zellij will use for opening new panes
//
// default_cwd ""
// Toggle between having pane frames around the panes
// Options:
// - true (default)
// - false
//
pane_frames true
// Toggle between having Zellij lay out panes according to a predefined set of layouts whenever possible
// Options:
// - true (default)
// - false
//
auto_layout true
// Define color themes for Zellij
// For more examples, see: https://github.com/zellij-org/zellij/tree/main/example/themes
// Once these themes are defined, one of them should to be selected in the "theme" section of this file
//
themes {
dracula {
fg 248 248 242
bg 40 42 54
red 255 85 85
green 80 250 123
yellow 241 250 140
blue 98 114 164
magenta 255 121 198
orange 255 184 108
cyan 139 233 253
black 0 0 0
white 255 255 255
}
tokyo-night-dark {
fg 169 177 214
bg 26 27 38
black 56 62 90
red 249 51 87
green 158 206 106
yellow 224 175 104
blue 122 162 247
magenta 187 154 247
cyan 42 195 222
white 192 202 245
orange 255 158 100
}
}
// Choose the theme that is specified in the themes section.
// Default: default
theme "tokyo-night-dark"
// The name of the default layout to load on startup
// Default: "default"
// - "compact"
//
default_layout "default"
// Choose the mode that zellij uses when starting up.
// Default: normal
//
// default_mode "locked"
// Toggle enabling the mouse mode.
// On certain configurations, or terminals this could
// potentially interfere with copying text.
// Options:
// - true (default)
// - false
//
mouse_mode true
// Configure the scroll back buffer size
// This is the number of lines zellij stores for each pane in the scroll back
// buffer. Excess number of lines are discarded in a FIFO fashion.
// Valid values: positive integers
// Default value: 10000
//
scroll_buffer_size 10000000
// Provide a command to execute when copying text. The text will be piped to
// the stdin of the program to perform the copy. This can be used with
// terminal emulators which do not support the OSC 52 ANSI control sequence
// that will be used by default if this option is not set.
// Examples:
//
// copy_command "xclip -selection clipboard" // x11
// copy_command "wl-copy" // wayland
// copy_command "pbcopy" // osx
// Choose the destination for copied text
// Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
// Does not apply when using copy_command.
// Options:
// - system (default)
// - primary
//
copy_clipboard "system"
// Enable or disable automatic copy (and clear) of selection when releasing mouse
// Default: true
//
copy_on_select true
// Path to the default editor to use to edit pane scrollbuffer
// Default: $EDITOR or $VISUAL
//
// scrollback_editor "/usr/bin/vim"
// When attaching to an existing session with other users,
// should the session be mirrored (true)
// or should each user have their own cursor (false)
// Default: false
//
mirror_session false
// The folder in which Zellij will look for layouts
//
layout_dir "~/.config/zellij/layouts/"
// The folder in which Zellij will look for themes
//
// theme_dir "/path/to/my/theme_dir"
ui {
pane_frames {
rounded_corners true
}
}

View File

@@ -0,0 +1,34 @@
layout {
pane split_direction="vertical" {
pane
}
pane size=1 borderless=true {
plugin location="file:~/.config/zellij/plugins/zjstatus.wasm" {
format_left "{mode} #[fg=#89B4FA,bold]{session} {tabs}"
format_right "{command_git_branch} {datetime}"
format_space ""
border_enabled "false"
border_char "─"
border_format "#[fg=#6C7086]{char}"
border_position "top"
hide_frame_for_single_pane "true"
mode_normal "#[bg=blue] "
mode_tmux "#[bg=#ffc387] "
tab_normal "#[fg=#6C7086] {name} "
tab_active "#[fg=#9399B2,bold,italic] {name} "
command_git_branch_command "git rev-parse --abbrev-ref HEAD"
command_git_branch_format "#[fg=blue] {stdout} "
command_git_branch_interval "10"
datetime "#[fg=#6C7086,bold] {format} "
datetime_format "%A, %d %b %Y %H:%M"
datetime_timezone "Europe/Riga"
}
}
}

View File

@@ -1,3 +1,4 @@
#!/bin/zsh
# Import and execute startup file
[ -f "$XDG_CONFIG_HOME/zsh/startup" ] && source "$XDG_CONFIG_HOME/zsh/startup"
@@ -37,10 +38,6 @@ WORDCHARS=${WORDCHARS//\/[&.;]/} # Don't consider certain part of the word
[ -f "$XDG_CONFIG_HOME/shell/aliasrc" ] && source "$XDG_CONFIG_HOME/shell/aliasrc"
# theme/plugins
source /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh 2>/dev/null
source /usr/share/zsh/plugins/zsh-history-substring-search/zsh-history-substring-search.zsh 2>/dev/null
source /usr/share/zsh/plugins/zsh-autoswitch-virtualenv/autoswitch_virtualenv.plugin.zsh 2>/dev/null
zmodload zsh/terminfo
# Keybindings
@@ -65,13 +62,13 @@ zle -N zle-line-init
echo -ne '\e[5 q' # Use beam shape cursor on startup.
preexec() { echo -ne '\e[5 q'; } # Use beam shape cursor for each new prompt.
# Run exa on directory change
# Run eza on directory change
function cd {
new_directory="$*"
if [ $# -eq 0 ]; then
new_directory=${HOME}
fi
builtin cd "${new_directory}" && exa -a --icons --group-directories-first
builtin cd "${new_directory}" && eza -a --icons --group-directories-first
}
# Use lf to switch directories and bind it to ctrl-o
@@ -128,8 +125,20 @@ bindkey -M vicmd '^[[P' vi-delete-char
bindkey -M vicmd '^e' edit-command-line
bindkey -M visual '^[[P' vi-delete
bindkey -s '^n' '^uv\n'
bindkey -s '^n' '^uv .\n'
bindkey -s '^f' '^utmux neww tmux-sessionizer\n'
source /usr/share/zsh/plugins/fast-syntax-highlighting/fast-syntax-highlighting.plugin.zsh 2>/dev/null
eval "$(starship init zsh)"
[[ -r ~/.local/share/zsh/plugins/znap/znap.zsh ]] ||
git clone --depth 1 -- \
https://github.com/marlonrichert/zsh-snap.git ~/.local/share/zsh/plugins/znap
source ~/.local/share/zsh/plugins/znap/znap.zsh
znap source zsh-users/zsh-autosuggestions
znap source zsh-users/zsh-history-substring-search
znap source MichaelAquilina/zsh-autoswitch-virtualenv
znap source zdharma-continuum/fast-syntax-highlighting
. "$XDG_DATA_HOME/cargo/env"

View File

@@ -1,4 +1,3 @@
#!/bin/sh
# fastfetch
export BW_SESSION="21gE9V14VDoh9QmUqq8sVfi1Cxp1Fsq2rr9+LBmk1eMLsbNNFFJhtRfuyI059o2Lq3w7HPLh5EkcFyLDZq4Bow=="
# unix