Compare commits

..
3 Commits
Author SHA1 Message Date
Henrik Bakken 56087cff6e nvim updates 2026-10-06 23:14:36 +02:00
Henrik Bakken e1f3e35f9a zsh added krew (k8s tool) to path 2026-10-06 23:07:02 +02:00
Henrik Bakken 7ba1342f8a nvim updates 2026-10-06 23:07:02 +02:00
33 changed files with 745 additions and 408 deletions
+13 -5
View File
@@ -38,7 +38,7 @@ update_check = false
## which search mode to use ## which search mode to use
## possible values: prefix, fulltext, fuzzy, skim ## possible values: prefix, fulltext, fuzzy, skim
search_mode = "fuzzy" search_mode = "fulltext"
## which filter mode to use by default ## which filter mode to use by default
## possible values: "global", "host", "session", "directory", "workspace" ## possible values: "global", "host", "session", "directory", "workspace"
@@ -108,7 +108,11 @@ ctrl_n_shortcuts = true
## with ^ or end with $, they'll match anywhere in the command. ## with ^ or end with $, they'll match anywhere in the command.
## For details on the supported regular expression syntax, see ## For details on the supported regular expression syntax, see
## https://docs.rs/regex/latest/regex/#syntax ## https://docs.rs/regex/latest/regex/#syntax
history_filter = [ "^exit$", "^ .*", "_secret=" ] history_filter = [
"^exit$",
"^ .*",
"_secret="
]
## prevent commands run with cwd matching any of these regexes from being written ## prevent commands run with cwd matching any of these regexes from being written
## to history. Note that these regular expressions are unanchored, i.e. if they don't ## to history. Note that these regular expressions are unanchored, i.e. if they don't
@@ -203,10 +207,14 @@ keymap_mode = "auto"
# ] # ]
## Set commands that should be totally stripped and ignored from stats ## Set commands that should be totally stripped and ignored from stats
# common_prefix = [ "sudo" ] # common_prefix = ["sudo"]
## Set commands that will be completely ignored from stats ## Set commands that will be completely ignored from stats
# ignored_commands = [ "cd", "ls", "vi" ] # ignored_commands = [
# "cd",
# "ls",
# "vi"
# ]
[keys] [keys]
# Defaults to true. If disabled, using the up/down key won't exit the TUI when scrolled past the first/last entry. # Defaults to true. If disabled, using the up/down key won't exit the TUI when scrolled past the first/last entry.
@@ -273,4 +281,4 @@ records = true
# filters = [ "global", "host", "session", "workspace", "directory" ] # filters = [ "global", "host", "session", "workspace", "directory" ]
[ui] [ui]
columns = [ "datetime", "duration", "host", "command" ] columns = ["datetime", "duration", "host", "command"]
+2 -2
View File
@@ -5,7 +5,7 @@
color_theme = "Default" color_theme = "Default"
#* If the theme set background should be shown, set to False if you want terminal background transparency. #* If the theme set background should be shown, set to False if you want terminal background transparency.
theme_background = false theme_background = true
#* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false. #* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false.
truecolor = true truecolor = true
@@ -27,7 +27,7 @@ presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:defaul
#* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists. #* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists.
#* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift. #* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift.
vim_keys = true vim_keys = false
#* Disable all mouse events. #* Disable all mouse events.
disable_mouse = false disable_mouse = false
+144
View File
@@ -0,0 +1,144 @@
# Whether to enable mouse or not.
mouse = true
# The program to open when the `keys.message_input.editor` keymap is pressed. Set the value to `"default"` to use `$EDITOR`.
editor = "default"
# "default" (unknown), "online", "dnd", "idle", "invisible", "offline"
status = "default"
# Whether to parse and render markdown in messages or not.
markdown = true
hide_blocked_users = true
show_attachment_links = true
# Use autocomplete_limit = 0 to disable autocompleting mentions
# Note: tab completion will still work, but it won't show any list.
autocomplete_limit = 20
# The number of messages to fetch when a text-based channel is selected from guilds tree. The minimum and maximum value is 0 and 100, respectively.
messages_limit = 50
[timestamps]
enabled = true
# https://pkg.go.dev/time#Layout
format = "01-02 15:04:05 (Z07:00)"
[notifications]
enabled = true
# The duration of the sound. Set the value to `0` to use default duration. This is only supported on Unix and Windows.
duration = 0
[notifications.sound]
enabled = true
only_on_ping = true
# Global shortcuts
# Esc: Reset message selection or close the channel selection popup.
[keys]
focus_guilds_tree = "Ctrl+G"
focus_messages_list = "Ctrl+T"
focus_message_input = "Ctrl+Space"
# Cycle focus between the widgets.
focus_previous = "Ctrl+H"
focus_next = "Ctrl+L"
# Hide/show the guilds tree.
toggle_guilds_tree = "Ctrl+B"
quit = "Ctrl+C"
# Log out and remove the authentication token from keyring.
# Requires re-login upon restart.
logout = "Ctrl+D"
# Only while focusing on the guilds tree
[keys.guilds_tree]
select_previous = "Rune[k]"
select_next = "Rune[j]"
select_first = "Rune[g]"
select_last = "Rune[G]"
# Select the currently highlighted text-based channel or expand a guild or channel.
select_current = "Enter"
yank_id = "Rune[i]"
collapse_parent_node = "Rune[-]"
move_to_parent_node = "Rune[p]"
# Only while focusing on sent messages
[keys.messages_list]
select_previous = "Rune[k]"
select_next = "Rune[j]"
select_first = "Rune[g]"
select_last = "Rune[G]"
# Select the message reference (reply) of the selected channel.
select_reply = "Rune[s]"
# Reply to the selected message.
reply = "Rune[r]"
# Reply (with mention) to the selected message.
reply_mention = "Rune[R]"
cancel = "Esc"
edit = "Rune[e]"
delete = "Rune[D]"
delete_confirm = "Rune[d]"
# Open the selected message's attachments or hyperlinks in the message
# using the default browser application.
open = "Rune[o]"
# Yank (copy) the selected message's content/url/id.
yank_content = "Rune[y]"
yank_url = "Rune[u]"
yank_id = "Rune[i]"
# Only while typing a message
# Alt+Enter: Insert a new line to the current text.
[keys.message_input]
# paste from clipboard (supports both text and images)
paste = "Ctrl+V"
send = "Enter"
# Remove existing text or cancel reply.
cancel = "Esc"
# Complete usernames when mentioning
tab_complete = "Tab"
open_editor = "Ctrl+E"
open_file_picker = "Ctrl+\\"
[keys.mentions_list]
up = "Ctrl+P"
down = "Ctrl+N"
# style = { foreground = "", background = "", attributes = "" or [""] }
[theme.title]
alignment = "left" # `"left"`, `"center"`, or `"right"`.
normal_style = { attributes = "dim" }
active_style = { foreground = "green", attributes = "bold" }
[theme.border]
enabled = true
padding = [0, 0, 1, 1] # [top, bottom, left, right]
normal_style = { attributes = "dim" }
active_style = { foreground = "green", attributes = "bold" }
# `"hidden"`, `"plain"`, `"round"`, `"thick"`, or `"double"`.
normal_set = "round"
active_set = "round"
[theme.guilds_tree]
auto_expand_folders = true
# Give tree-like shape
graphics = true
graphics_color = "default"
[theme.messages_list]
reply_indicator = ">"
forwarded_indicator = "<"
mention_style = { foreground = "blue" }
emoji_style = { foreground = "green" }
url_style = { foreground = "blue" }
attachment_style = { foreground = "yellow" }
[theme.mentions_list]
# Note: width and height are capped to the avaliable space
# Minimum width
# 0 = make the list as wide as possible
min_width = 20
# Maximum height
# 0 = make the list as tall as needed
max_height = 0
+13 -11
View File
@@ -1,6 +1,6 @@
# output=<not set> # output=<not set>
font=JetBrainsMono-Regular:size=14 font=JetBrainsMono-Regular:size=14
dpi-aware=auto dpi-aware=no
# use-bold=no # use-bold=no
prompt="❯ " prompt="❯ "
# placeholder= # placeholder=
@@ -9,7 +9,7 @@ icon-theme=Qogir-dark
# fields=filename,name,generic # fields=filename,name,generic
# password-character=* # password-character=*
# filter-desktop=no # filter-desktop=no
match-mode=fzf # match-mode=fzf
# sort-result=yes # sort-result=yes
# match-counter=no # match-counter=no
# delayed-filter-ms=300 # delayed-filter-ms=300
@@ -43,15 +43,17 @@ exit-on-keyboard-focus-loss=no
# match-workers=<number of logical CPUs> # match-workers=<number of logical CPUs>
[colors] [colors]
background=0a0a0aff background=08052bdd
text=ffffffff text=e3e3eaff
prompt=00e5ffff prompt=ff7f7fff
input=ffffffff # placeholder=ffd966ff
match=00e5ffff input=ff7f7fff
selection-match=00e5ffff match=FFE57Fff
selection=333333ff selection-match=FFE57Fff
selection-text=ffffffff selection=44475add
border=00e5ffff selection-text=FFFFFFff
# counter=93a1a1ff
border=7f3fbf55
[border] [border]
# width=1 # width=1
+3 -3
View File
@@ -1,5 +1,5 @@
[Settings] [Settings]
gtk-theme-name=Adwaita-dark gtk-theme-name=Arc-Dark
gtk-icon-theme-name=Qogir-dark gtk-icon-theme-name=Qogir-dark
gtk-font-name=Noto Sans 10 gtk-font-name=Noto Sans 10
gtk-cursor-theme-name=Qogir-dark gtk-cursor-theme-name=Qogir-dark
@@ -8,8 +8,8 @@ gtk-toolbar-style=GTK_TOOLBAR_BOTH_HORIZ
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
gtk-button-images=0 gtk-button-images=0
gtk-menu-images=0 gtk-menu-images=0
gtk-enable-event-sounds=0 gtk-enable-event-sounds=1
gtk-enable-input-feedback-sounds=0 gtk-enable-input-feedback-sounds=1
gtk-xft-antialias=1 gtk-xft-antialias=1
gtk-xft-hinting=1 gtk-xft-hinting=1
gtk-xft-hintstyle=hintmedium gtk-xft-hintstyle=hintmedium
+2 -2
View File
@@ -1,5 +1,5 @@
[main] [main]
gtk-theme-name=Adwaita-dark gtk-theme=Arc-Dark
time-format=%H:%M time-format=%H:%M
start-hidden=1 start-hidden=1
modules=powerbar-module modules=powerbar-module
@@ -13,7 +13,7 @@ under-clock=true
show-labels=true show-labels=true
linked-buttons=true linked-buttons=true
reboot-command=systemctl reboot reboot-command=systemctl reboot
poweroff-command=systemctl poweroff poweroff-command=systemctl -i poweroff
suspend-command=systemctl suspend suspend-command=systemctl suspend
userswitch-command= userswitch-command=
logout-command=swaymsg exit logout-command=swaymsg exit
+16 -18
View File
@@ -1,45 +1,43 @@
* { * {
border: none; border: none;
text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.9); text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.8)
border-radius: 0px;
} }
window { window {
background-image: url("EndeavourOS_Astronaut_SpaceWalk.png"); background-image: url("EndeavourOS_Astronaut_SpaceWalk.png");
background-size: cover; background-size: cover;
background-repeat: no-repeat; background-repeat: no-repeat;
background-position: center; background-position: center;
background-color: #0a0a0a; background-color: black;
} }
#clock-label { #clock-label {
font-family: JetBrainsMono; font-family: JetBrainsMono;
font-size: 64px; font-size: 64.0px;
color: #00e5ff;
} }
#unlock-button { #unlock-button {
background-color: rgba(10, 10, 10, 0.8); background: none;
border: 2px solid #333333; background-color: rgba(127, 63, 191, 0.4);
border: 2px solid rgba(127, 63, 191, 0.5);
padding: 4px; padding: 4px;
color: #ffffff;
} }
#unlock-button:hover { #unlock-button:hover {
border-color: #00e5ff; background-color: rgba(127, 63, 191, 0.9);
background-color: #000000;
} }
#input-field { #input-field {
background-color: rgba(0, 0, 0, 0.8); border-radius: 10px;
border: 2px solid #00e5ff; background-color: rgba(127, 127, 255, 0.1);
border: 2px solid rgba(127, 63, 191, 0.5);
padding-top: 5px; padding-top: 5px;
padding-bottom: 5px; padding-bottom: 5px;
color: #ffffff;
} }
#powerbar-box button { #powerbar-box button {
background-color: rgba(10, 10, 10, 0.8); background: none;
border: 2px solid #333333; background-color: rgba(127, 63, 191, 0.4);
padding: 6px; border: 2px solid rgba(127, 63, 191, 0.5);
border-radius: 10px;
padding: 4px;
} }
#powerbar-box button:hover { #powerbar-box button:hover {
border-color: #00e5ff; background-color: rgba(127, 63, 191, 0.9);
color: #00e5ff;
} }
#input-label { #input-label {
font-size: 0px; font-size: 0px;
+53
View File
@@ -0,0 +1,53 @@
theme = "catppuccin_mocha"
[editor]
bufferline = "multiple"
true-color = true
line-number = "relative"
rulers = [100]
insert-final-newline = false
cursorline = true
[editor.cursor-shape]
insert = "bar"
normal = "block"
select = "underline"
[editor.file-picker]
git-ignore = false
[editor.indent-guides]
character = "│"
render = true
[editor.lsp]
auto-signature-help = false
display-messages = true
[editor.soft-wrap]
enable = false
# wrap-at-text-width = true
wrap-indicator = "↩ "
[editor.statusline]
left = ["mode", "spinner", "version-control", "file-name", "read-only-indicator", "file-modification-indicator"]
right = ["diagnostics", "selections", "register", "position", "position-percentage", "file-encoding", "file-line-ending"]
[editor.whitespace.characters]
space = " "
nbsp = "⍽" # Non breaking space
tab = "→"
newline = "⏎"
tabpad = "·"
[editor.whitespace.render]
space = "all"
tab = "all"
newline = "none"
[keys.normal]
X = ["extend_line_up", "extend_to_line_bounds"]
[keys.select]
X = ["extend_line_up", "extend_to_line_bounds"]
+42
View File
@@ -0,0 +1,42 @@
[[language]]
name = "go"
auto-format = true
formatter = { command = "goimports" }
[[language]]
name = "markdown"
#language-servers = [ "marksman", "ltex-ls", "mpls" ]
language-servers = [ "marksman", "ltex-ls" ]
rulers = [120]
[[language]]
name = "html"
formatter = { command = 'prettier', args = ["--parser", "html"] }
[[language]]
name = "json"
formatter = { command = 'prettier', args = ["--parser", "json"] }
[[language]]
name = "css"
formatter = { command = 'prettier', args = ["--parser", "css"] }
[[language]]
name = "javascript"
formatter = { command = 'prettier', args = ["--parser", "typescript"] }
auto-format = true
# markdown previewer https://github.com/mhersson/mpls
[language-server.mpls]
command = "mpls"
# args = ["--no-auto","--port","8989","--browser","explorer.exe"]
args = ["--browser","explorer.exe"]
[[language]]
name = "hledger-rules"
scope = "source.hledger-rules"
file-types = ["toml", { glob = "*.rules"} ]
#[language-server.ltex-ls.config]
#ltex.disabledRules = { "en-US" = ["PROFANITY"], "en-GB" = ["PROFANITY"] }
#ltex.dictionary = { "en-US" = ["builtin"], "en-GB" = ["builtin"] }
+27
View File
@@ -0,0 +1,27 @@
font=UbuntuMono 12.5
background-color=#404552
text-color=#e5e9f0
width=315
height=200
padding=10
margin=10
progress-color=over #eceff480
icon-path=/usr/share/icons/Arc-X-D
max-icon-size=70
layer=overlay
anchor=bottom-center
border-size=2
border-radius=15
border-color=#5294e2
default-timeout=0
ignore-timeout=1
[urgency=normal]
border-color=#d08770
[urgency=high]
border-color=#bf616a
default-timeout=0
+182
View File
@@ -0,0 +1,182 @@
$env.SYSTEMD_EDITOR = "/usr/bin/nvim"
$env.EDITOR = "/usr/bin/nvim"
$env.VISUAL = "/usr/bin/nvim"
$env.path ++= ["~/.local/bin"]
$env.config = {
buffer_editor: "/usr/bin/nvim"
completions: {
external: {
enable: true
max_results: 100
completer: {|spans|
let carapace_completer = {|spans: list<string>|
carapace $spans.0 nushell ...$spans
| from json
| if ($in | default [] | where value =~ '^-.*ERR$' | is-empty) { $in } else { null }
}
match $spans.0 {
_ => $carapace_completer
} | do $in $spans
}
}
}
cursor_shape: {
vi_insert: line
vi_normal: block
}
edit_mode: 'vi'
history: {
file_format: sqlite
isolation: true
}
hooks: {
env_change: {
PWD: [
{
__zoxide_hook: true,
code: {|_, dir| zoxide add -- $dir}
}
]
}
}
keybindings: [
{
name: fuzzy_history_fzf
modifier: control
keycode: char_r
mode: [emacs, vi_normal, vi_insert]
event: {
send: ExecuteHostCommand
cmd: "commandline edit --insert (
history
# | where exit_status == 0
| get command
| reverse
| uniq
| str join (char -i 0)
| fzf
--preview '{}'
--preview-window 'bottom:3:wrap'
--scheme history
--read0
--layout reverse
--bind alt-up:preview-up,alt-down:preview-down
--height 70%
--query (commandline)
| decode utf-8
| str trim
)"
}
}
{
name: fuzzy_history_fzf
modifier: none
keycode: char_/
mode: [ vi_normal ]
event: { send: menu name: fuzzy_history_fzf }
}
{
name: clear_everything
modifier: control
keycode: char_b
mode: [ emacs, vi_insert, vi_normal ]
event: [
{ send: clearscreen }
{ send: clearscrollback }
]
}
{
name: move_right_or_take_history_hint
modifier: control
keycode: char_f
mode: [ emacs, vi_insert, vi_normal ]
event: {
until: [
{ send: historyhintcomplete }
{ send: menuright }
{ send: right }
]
}
}
{
name: delete_one_word_backward
modifier: alt
keycode: backspace
mode: vi_insert
event: {edit: backspaceword}
}
]
show_banner: false
}
# from: https://github.com/nushell/nushell/issues/8166
def monitor [
--duration (-d): duration = 1sec
...args
] {
let args = $args | into string
let cmd = $args | str join ' '
loop {
let last_run = (date now)
let till = $last_run + $duration
let out = nu --config $nu.config-path --env-config $nu.env-path --commands $cmd | complete
if $out.exit_code == 0 {
clear
print $"Running every ($duration) on '(hostname)': `($cmd)`"
print $out.stdout
print $"Last run: ($last_run)"
sleep ($till - (date now))
} else {
print $out.stdout $out.stderr
break
}
}
}
# Jump to a directory using only keywords.
def --env --wrapped z [...rest: string@zoxide_completer] {
let path = match $rest {
[] => {'~'},
[ '-' ] => {'-'},
[ $arg ] if ($arg | path type) == 'dir' => {$arg}
_ => {
zoxide query --exclude $env.PWD -- ...$rest | str trim -r -c "\n"
}
}
cd $path
}
# Jump to a directory using interactive search.
def --env --wrapped zi [...rest:string] {
cd $'(zoxide query --interactive -- ...$rest | str trim -r -c "\n")'
}
def zoxide_completer [context: string] {
let parts = $context | split row " " | skip 1
{
options: {
sort: false
completion_algorithm: prefix
positional: false
case_sensitive: false
}
completions: (zoxide query --list --exclude $env.PWD -- ...$parts | lines)
}
}
# yazi helper
def --env y [...args] {
let tmp = (mktemp -t "yazi-cwd.XXXXXX")
yazi ...$args --cwd-file $tmp
let cwd = (open $tmp)
if $cwd != "" and $cwd != $env.PWD {
cd $cwd
}
rm -fp $tmp
}
source ~/.oh-my-posh.nu
+2 -1
View File
@@ -1154,6 +1154,7 @@ local function makespecs_mini()
"echasnovski/mini.basics", "echasnovski/mini.basics",
opts = { options = { basic = true, extra_ui = true }, mappings = { move_with_alt = true } }, opts = { options = { basic = true, extra_ui = true }, mappings = { move_with_alt = true } },
}, },
{ "echasnovski/mini.pairs", version = false, opts = {} },
{ {
"echasnovski/mini.icons", "echasnovski/mini.icons",
opts = {}, opts = {},
@@ -1751,4 +1752,4 @@ require("lazy").setup({
checker = { enabled = true }, checker = { enabled = true },
rocks = { enabled = false }, rocks = { enabled = false },
}) })
vim.cmd("colorscheme gruvbox-material") vim.cmd("colorscheme sonokai")
+18 -23
View File
@@ -1,43 +1,38 @@
window { window {
background-color: rgba(10, 10, 10, 0.95); background-color: rgba (38, 18, 57, 0.9);
color: #ffffff; color: #eceff4;
border-radius: 0px; border-radius: 30px
border-right: 2px solid #00e5ff;
} }
/* search entry */ /* search entry */
entry { entry {
box-shadow: none; box-shadow: 0 0 6px 5px #2e3440;
border: 1px solid #00e5ff; background-color: rgba (0, 0, 0, 0.5)
background-color: #000000;
color: #00e5ff;
padding: 5px;
} }
button, button, image {
image { background-color: #3b4252;
background-color: transparent; background: none;
background: none; border: none;
border: 1px solid transparent; margin: 10px
margin: 5px;
} }
button:hover { button:hover {
background-color: #111111; background-color: rgba (127, 63, 191, .4);
border: 1px solid #00e5ff; box-shadow: 0 0 6px 5px #190C26
box-shadow: none;
} }
/* in case you wanted to give category buttons a different look */
#category-button { #category-button {
margin: 0; margin: 0 0px 0 0px
} }
#pinned-box { #pinned-box {
padding-bottom: 5px; padding-bottom: 1px;
border-bottom: 2px solid #333333; border-bottom: 1px solid gray
} }
#files-box { #files-box {
padding: 5px; padding: 1px;
border: 1px solid #333333; border: 1px solid gray
} }
+15 -23
View File
@@ -86,9 +86,7 @@ c.content.blocking.adblock.lists = [
] ]
c.content.javascript.log_message.excludes = { c.content.javascript.log_message.excludes = {
"userscript:_qute_js": ["*TrustedHTML*"], "userscript:_qute_js": ["*TrustedHTML*"],
"userscript:_qute_stylesheet": [ "userscript:_qute_stylesheet": ["*Refused to apply inline style because it violates the following Content Security Policy directive: *"]
"*Refused to apply inline style because it violates the following Content Security Policy directive: *"
],
} }
c.completion.web_history.max_items = 10000 c.completion.web_history.max_items = 10000
c.completion.height = "100%" c.completion.height = "100%"
@@ -150,13 +148,7 @@ c.input.insert_mode.plugins = True
c.messages.timeout = 5000 c.messages.timeout = 5000
c.qt.force_platform = "wayland" c.qt.force_platform = "wayland"
c.qt.highdpi = True c.qt.highdpi = True
c.qt.args = [ c.qt.args = ["disable-features=WebAuth"] # makes BankID work
"disable-features=WebAuth", # makes BankID work
"disable-gpu", # Stops using the GPU for rendering
"disable-gpu-compositing", # Forces CPU compositing
"disable-accelerated-2d-canvas", # Offloads canvas drawing to CPU
"disable-accelerated-video-decode", # Prevents VRAM usage for videos
]
c.scrolling.bar = "always" c.scrolling.bar = "always"
c.scrolling.smooth = False c.scrolling.smooth = False
c.session.lazy_restore = False c.session.lazy_restore = False
@@ -212,20 +204,20 @@ c.fonts.web.family.fixed = "IBM Plex Mono"
c.fonts.web.family.standard = c.fonts.web.family.sans_serif c.fonts.web.family.standard = c.fonts.web.family.sans_serif
# COLORS # COLORS
base00 = "#0A0A0A" base00 = "#181818"
base01 = "#111111" base01 = "#282828"
base02 = "#333333" base02 = "#383838"
base03 = "#585858" base03 = "#585858"
base04 = "#b8b8b8" base04 = "#b8b8b8"
base05 = "#FFFFFF" base05 = "#d8d8d8"
base06 = "#e8e8e8" base06 = "#e8e8e8"
base07 = "#f8f8f8" base07 = "#f8f8f8"
base08 = "#FF0033" base08 = "#ab4642"
base09 = "#dc9656" base09 = "#dc9656"
base0A = "#FFE57F" base0A = "#f7ca88"
base0B = "#00E5FF" base0B = "#a1b56c"
base0C = "#86c1b9" base0C = "#86c1b9"
base0D = "#00E5FF" base0D = "#7cafc2"
base0E = "#ba8baf" base0E = "#ba8baf"
base0F = "#a16946" base0F = "#a16946"
c.colors.webpage.preferred_color_scheme = "light" c.colors.webpage.preferred_color_scheme = "light"
@@ -259,9 +251,9 @@ c.colors.downloads.start.bg = base0D
c.colors.downloads.stop.fg = base00 c.colors.downloads.stop.fg = base00
c.colors.downloads.stop.bg = base0C c.colors.downloads.stop.bg = base0C
c.colors.downloads.error.fg = base08 c.colors.downloads.error.fg = base08
c.colors.hints.bg = base00 c.colors.hints.fg = base00
c.colors.hints.fg = base0B c.colors.hints.bg = base0A
c.colors.hints.match.fg = base08 c.colors.hints.match.fg = base05
c.colors.keyhint.fg = base05 c.colors.keyhint.fg = base05
c.colors.keyhint.suffix.fg = base05 c.colors.keyhint.suffix.fg = base05
c.colors.keyhint.bg = base00 c.colors.keyhint.bg = base00
@@ -319,9 +311,9 @@ c.colors.tabs.pinned.selected.even.fg = base05
c.colors.tabs.pinned.selected.odd.bg = base02 c.colors.tabs.pinned.selected.odd.bg = base02
c.colors.tabs.pinned.selected.odd.fg = base05 c.colors.tabs.pinned.selected.odd.fg = base05
c.colors.tabs.selected.odd.fg = base05 c.colors.tabs.selected.odd.fg = base05
c.colors.tabs.selected.odd.bg = base02
c.colors.tabs.selected.even.fg = base05 c.colors.tabs.selected.even.fg = base05
c.colors.tabs.selected.odd.bg = base0B c.colors.tabs.selected.even.bg = base02
c.colors.tabs.selected.even.bg = base0B
# overrides # overrides
c.colors.hints.fg = base05 c.colors.hints.fg = base05
+14 -24
View File
@@ -5,29 +5,19 @@ should_launch_new_window 1
should_launch_new_instance 1 should_launch_new_instance 1
startup_commands toggle_visual_scroll;toggle_custom_color startup_commands toggle_visual_scroll;toggle_custom_color
# Document Colors (Deep Black bg, Pure White text) # - dracula: https://github.com/dracula/sioyek
custom_background_color #0A0A0A # - catppuccin: https://github.com/catppuccin/sioyek
custom_text_color #FFFFFF # - gruvbox: https://mil.ad/blog/2022/gruvbox-for-sioyek.html
custom_color_mode_empty_background_color #000000 new_macro _theme_solaris setconfig_custom_text_color(#b58900);setconfig_custom_background_color(#586e75)
page_separator_color #333333 new_macro _theme_normal setconfig_custom_text_color(#000000);setconfig_custom_background_color(#ffffff)
new_macro _theme_dark setconfig_custom_text_color(#ffffff);setconfig_custom_background_color(#000000)
# UI & Status Bar (Electric Cyan & Black) new_macro _theme_softlight setconfig_custom_text_color(#434c5e);setconfig_custom_background_color(#faf4ed)
ui_background_color #111111 new_macro _theme_macchiato setconfig_custom_text_color(#cad3f5);setconfig_custom_background_color(#24273a)
ui_text_color #FFFFFF new_macro _theme_frappe setconfig_custom_text_color(#c6d0f5);setconfig_custom_background_color(#303446)
ui_selected_background_color #333333 new_macro _theme_moccha setconfig_custom_text_color(#cdd6f4);setconfig_custom_background_color(#1e1e2e)
ui_selected_text_color #00E5FF new_macro _theme_latte setconfig_custom_text_color(#4c4f69);setconfig_custom_background_color(#eff1f5)
new_macro _theme_gruvbox setconfig_custom_text_color(#fbf1c7);setconfig_custom_background_color(#282828)
status_bar_color #00E5FF new_macro _theme_dracula setconfig_custom_text_color(0.97255 0.97255 0.94902);setconfig_custom_background_color(0.15686 0.16471 0.21176)
status_bar_text_color #000000
# Highlights (Cyan for links, Crimson for search)
search_highlight_color #FF0033
unselected_search_highlight_color #880011
link_highlight_color #00E5FF
synctex_highlight_color #00E5FF
# Visual Mark (You autostart this, make it subtle but sharp)
visual_mark_color #333333
# page separation # page separation
page_separator_color #1d2021 page_separator_color #1d2021
@@ -55,7 +45,7 @@ custom_color_mode_empty_background_color #1d2021
# search # search
should_highlight_unselected_search 1 should_highlight_unselected_search 1
unselected_search_highlight_color #FF5733 unselected_search_highlight_color #FF5733
# gruvbox # gruvbox
custom_background_color #282828 custom_background_color #282828
+27 -34
View File
@@ -10,31 +10,29 @@ mouse_warping none
# Set inner/outer gaps # Set inner/outer gaps
smart_gaps on smart_gaps on
gaps inner 4 gaps inner 2
gaps outer 0 gaps outer 0
# Hide titlebar on windows: # Hide titlebar on windows:
default_border pixel 2 default_border pixel 1
smart_borders on
# Default Font # Default Font
font pango:Noto Sans Regular 10 font pango:Noto Sans Regular 10
# Title format for windows # Thin borders:
set $focus #00E5FF smart_borders on
set $unfocused #333333
set $urgent #FF0033
set $bg #0A0A0A
set $text_dark #000000
set $text_dim #888888
# class border bground text indicator child_border # Title format for windows
client.focused $focus $focus $text_dark $focus $focus for_window [shell="xdg_shell"] title_format "%title (%app_id)"
client.focused_inactive $unfocused $unfocused $text_dim $unfocused $unfocused for_window [shell="x_wayland"] title_format "%class - %title"
client.unfocused $unfocused $unfocused $text_dim $unfocused $unfocused
client.urgent $urgent $urgent #FFFFFF $urgent $urgent # class border bground text indicator child_border
client.placeholder #000000 #000000 #FFFFFF #000000 #000000 client.focused #556064 #F9CE5C #000000 #CB4B16 #FDF6E3
client.background $bg client.focused_inactive #CB4B16 #2F3D44 #1ABC9C #454948 #454948
client.unfocused #556064 #2F3D44 #1ABC9C #454948 #454948
client.urgent #CB4B16 #FDF6E3 #1ABC9C #268BD2 #268BD2
client.placeholder #000000 #0C0C0C #ffffff #000000 #000000
client.background #2B2C2B
# Status Bar: # Status Bar:
bar { bar {
@@ -69,7 +67,7 @@ set $powermenu ~/.config/sway/scripts/power_menu.sh
# ------------------------------------------ # ------------------------------------------
# Launch the terminal # Launch the terminal
bindsym $mod+Return exec $term bindsym $mod+Return exec $term
bindsym $mod+Shift+Return exec foot bash bindsym Mod4+Shift+Return exec foot bash
# Kill focused window # Kill focused window
bindsym $mod+Shift+q kill bindsym $mod+Shift+q kill
# Lock screen # Lock screen
@@ -255,14 +253,9 @@ bindsym {
# Launch the file explorer # Launch the file explorer
$mod+o exec pcmanfm $mod+o exec pcmanfm
# Dismiss current notification # Dismiss message
$mod+n exec swaync-client -c $mod+n exec makoctl dismiss
$mod+Shift+n exec makoctl dismiss -a
# Dismiss all notifications
$mod+Shift+n exec swaync-client -C
# Toggle the SwayNC control center panel
$mod+Shift+m exec swaync-client -t -sw
} }
# config tools # config tools
@@ -285,9 +278,6 @@ bindsym $mod+m mode "$mode_monitor"
# Auth with polkit-gnome # Auth with polkit-gnome
exec /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 exec /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
# Keyring
exec gnome-keyring-daemon --start --components=secrets
# Import environment variables for user systemd service manager # Import environment variables for user systemd service manager
exec systemctl --user import-environment DISPLAY WAYLAND_DISPLAY SWAYSOCK XDG_CURRENT_DESKTOP exec systemctl --user import-environment DISPLAY WAYLAND_DISPLAY SWAYSOCK XDG_CURRENT_DESKTOP
@@ -297,15 +287,19 @@ exec hash dbus-update-activation-environment 2>/dev/null && \
# Idle configuration # Idle configuration
exec swayidle -w \ exec swayidle -w \
timeout 1200 'gtklock -d' \ timeout 1200 'pgrep -x gtklock || gtklock -d' \
timeout 2400 'swaymsg "output * power off"' resume 'swaymsg "output * power on"' \ timeout 2400 'swaymsg "output * power off"' resume 'swaymsg "output * power on"' \
timeout 10 'if pgrep -x gtklock; then swaymsg "output * power off"; fi' \ before-sleep 'pgrep -x gtklock || gtklock -d' \
before-sleep 'gtklock -d' after-resume 'swaymsg reload' \
idlehint 240
# Start foot server # Start foot server
exec systemctl --user enable --now foot-server.service exec systemctl --user enable --now foot-server.service
exec { exec {
# Desktop notifications
exec mako
# Set wallpaper # Set wallpaper
~/.azotebg ~/.azotebg
@@ -323,8 +317,6 @@ exec {
} }
exec_always { exec_always {
pkill -x swaync; exec swaync
# nwg-drawer # nwg-drawer
nwg-drawer -r -c 7 -is 90 -mb 10 -ml 50 -mr 50 -mt 10 nwg-drawer -r -c 7 -is 90 -mb 10 -ml 50 -mr 50 -mt 10
@@ -395,3 +387,4 @@ input type:mouse {
accel_profile "flat" accel_profile "flat"
pointer_accel 0.5 pointer_accel 0.5
} }
+2 -1
View File
@@ -1,4 +1,6 @@
#!/bin/sh #!/bin/sh
# usage: import-gsettings
config="${XDG_CONFIG_HOME:-$HOME/.config}/gtk-3.0/settings.ini" config="${XDG_CONFIG_HOME:-$HOME/.config}/gtk-3.0/settings.ini"
if [ ! -f "$config" ]; then exit 1; fi if [ ! -f "$config" ]; then exit 1; fi
@@ -11,4 +13,3 @@ gsettings set "$gnome_schema" gtk-theme "$gtk_theme"
gsettings set "$gnome_schema" icon-theme "$icon_theme" gsettings set "$gnome_schema" icon-theme "$icon_theme"
gsettings set "$gnome_schema" cursor-theme "$cursor_theme" gsettings set "$gnome_schema" cursor-theme "$cursor_theme"
gsettings set "$gnome_schema" font-name "$font_name" gsettings set "$gnome_schema" font-name "$font_name"
gsettings set "$gnome_schema" color-scheme 'prefer-dark'
+22 -29
View File
@@ -1,7 +1,6 @@
#!/bin/bash #!/bin/bash
SELECTION="$(printf "󰌾 Lock\n󰤄 Suspend\n󰍃 Log out\n Reboot\n Reboot to UEFI\n󰐥 Shutdown" | fuzzel --dmenu -a top-right -l 6 -w 18 -p "Select an option: ")" SELECTION="$(printf "󰌾 Lock\n󰤄 Suspend\n󰍃 Log out\n Reboot\n Reboot to UEFI\n󰐥 Shutdown" | fuzzel --dmenu -a top-right -l 6 -w 18 -p "Select an option: ")"
[[ -z "$SELECTION" ]] && exit 0
confirm_action() { confirm_action() {
local action="$1" local action="$1"
@@ -10,32 +9,26 @@ confirm_action() {
} }
case $SELECTION in case $SELECTION in
*"󰌾 Lock"*) *"󰌾 Lock"*)
gtklock gtklock;;
;; *"󰤄 Suspend"*)
*"󰤄 Suspend"*) if confirm_action "Suspend"; then
if confirm_action "Suspend"; then systemctl suspend-then-hibernate
systemctl suspend-then-hibernate fi;;
fi *"󰍃 Log out"*)
;; if confirm_action "Log out"; then
*"󰍃 Log out"*) swaymsg exit
if confirm_action "Log out"; then fi;;
swaymsg exit *" Reboot"*)
fi if confirm_action "Reboot"; then
;; systemctl reboot
*" Reboot"*) fi;;
if confirm_action "Reboot"; then *" Reboot to UEFI"*)
systemctl reboot if confirm_action "Reboot to UEFI"; then
fi systemctl reboot --firmware-setup
;; fi;;
*" Reboot to UEFI"*) *"󰐥 Shutdown"*)
if confirm_action "Reboot to UEFI"; then if confirm_action "Shutdown"; then
systemctl reboot --firmware-setup systemctl poweroff
fi fi;;
;;
*"󰐥 Shutdown"*)
if confirm_action "Shutdown"; then
systemctl poweroff
fi
;;
esac esac
-41
View File
@@ -1,41 +0,0 @@
{
"positionX": "right",
"positionY": "top",
"layer": "overlay",
"control-center-layer": "top",
"layer-shell": true,
"cssPriority": "application",
"control-center-margin-top": 8,
"control-center-margin-bottom": 8,
"control-center-margin-right": 8,
"control-center-margin-left": 8,
"notification-2d-margin": true,
"notification-window-width": 400,
"keyboard-shortcuts": true,
"image-visibility": "when-available",
"transition-length": 200,
"hide-on-clear": false,
"hide-on-action": true,
"script-fail-notify": true,
"widgets": [
"title",
"dnd",
"mpris",
"volume",
"notifications"
],
"widget-config": {
"title": {
"text": "Notifications",
"clear-all-button": true,
"button-text": "Clear All"
},
"dnd": {
"text": "Do Not Disturb"
},
"mpris": {
"image-size": 96,
"image-radius": 8
}
}
}
-52
View File
@@ -1,52 +0,0 @@
@define-color bg #0A0A0A;
@define-color border #333333;
@define-color text #FFFFFF;
@define-color focus #00E5FF;
@define-color urgent #FF0033;
* {
font-family: "Noto Sans", sans-serif;
border-radius: 0px; /* Sharp corners */
background-clip: padding-box;
}
.control-center {
background: @bg;
border-left: 2px solid @border;
color: @text;
}
.floating-notifications .notification {
background: @bg;
border: 2px solid @focus; /* Instantly clear it's a new notification */
box-shadow: none;
margin: 4px;
}
button:hover {
background: @border;
border: 1px solid @focus;
}
.widget-title {
color: @focus;
font-size: 1.2rem;
font-weight: bold;
padding: 10px;
border-bottom: 1px solid @border;
}
.widget-dnd,
.widget-mpris,
.widget-volume {
background: transparent;
border: 1px solid @border;
margin: 8px;
padding: 8px;
}
.notification-row:focus,
.notification-row:hover {
background: #111111;
border-left: 2px solid @focus;
}
-2
View File
@@ -69,8 +69,6 @@ bind generic um status-merge
bind generic - stage-update-line bind generic - stage-update-line
bind generic \ stage-split-chunk bind generic \ stage-split-chunk
bind generic y @sh -c "echo -n %(commit) | wl-copy"
bind generic c none bind generic c none
bind generic cc !git commit bind generic cc !git commit
bind generic ca !?@git commit --amend --no-edit bind generic ca !?@git commit --amend --no-edit
+16 -14
View File
@@ -14,8 +14,9 @@ set -g focus-events on
# Advertise tmux correctly to programs running inside it. # Advertise tmux correctly to programs running inside it.
set -g default-terminal "tmux-256color" set -g default-terminal "tmux-256color"
set -as terminal-features ',*:RGB'
set -as terminal-features ',*:clipboard' # Tell tmux which features the outer Foot client supports.
set -as terminal-features ',foot*:RGB,clipboard,focus,title'
# Allow image passthrough # Allow image passthrough
set -gq allow-passthrough on set -gq allow-passthrough on
@@ -89,11 +90,13 @@ bind c copy-mode
# clipboard control # clipboard control
bind p paste-buffer bind p paste-buffer
bind -T copy-mode-vi v send-keys -X begin-selection bind -T copy-mode-vi v send-keys -X begin-selection
bind -T copy-mode-vi y send-keys -X copy-selection-and-cancel bind -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "wl-copy"
bind -T copy-mode-vi Enter send-keys -X copy-selection-and-cancel bind -T copy-mode-vi Enter send-keys -X copy-selection-and-cancel
bind -T copy-mode-vi r send-keys -X rectangle-toggle bind -T copy-mode-vi r send-keys -X rectangle-toggle
bind -T copy-mode-vi Escape send-keys -X cancel bind -T copy-mode-vi Escape send-keys -X cancel
bind -T copy-mode-vi q send-keys -X clear-selection bind -T copy-mode-vi q send-keys -X clear-selection
bind -T copy-mode MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "wl-copy"
bind -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "wl-copy"
# Rename window # Rename window
bind , command-prompt "rename-window %%" bind , command-prompt "rename-window %%"
@@ -144,17 +147,16 @@ bind w choose-tree
# Change current pane to next window # Change current pane to next window
bind ` break-pane bind ` break-pane
# Change current pane to specific window (join if exists, break if it doesn't) bind 1 if 'tmux join-pane -t :1 -h' '' 'new-window -d -t :1; join-pane -t :1'
bind 1 if-shell 'tmux join-pane -t :1 -h' '' 'break-pane -t :1' bind 2 if 'tmux join-pane -t :2 -h' '' 'new-window -d -t :2; join-pane -t :2'
bind 2 if-shell 'tmux join-pane -t :2 -h' '' 'break-pane -t :2' bind 3 if 'tmux join-pane -t :3 -h' '' 'new-window -d -t :3; join-pane -t :3'
bind 3 if-shell 'tmux join-pane -t :3 -h' '' 'break-pane -t :3' bind 4 if 'tmux join-pane -t :4 -h' '' 'new-window -d -t :4; join-pane -t :4'
bind 4 if-shell 'tmux join-pane -t :4 -h' '' 'break-pane -t :4' bind 5 if 'tmux join-pane -t :5 -h' '' 'new-window -d -t :5; join-pane -t :5'
bind 5 if-shell 'tmux join-pane -t :5 -h' '' 'break-pane -t :5' bind 6 if 'tmux join-pane -t :6 -h' '' 'new-window -d -t :6; join-pane -t :6'
bind 6 if-shell 'tmux join-pane -t :6 -h' '' 'break-pane -t :6' bind 7 if 'tmux join-pane -t :7 -h' '' 'new-window -d -t :7; join-pane -t :7'
bind 7 if-shell 'tmux join-pane -t :7 -h' '' 'break-pane -t :7' bind 8 if 'tmux join-pane -t :8 -h' '' 'new-window -d -t :8; join-pane -t :8'
bind 8 if-shell 'tmux join-pane -t :8 -h' '' 'break-pane -t :8' bind 9 if 'tmux join-pane -t :9 -h' '' 'new-window -d -t :9; join-pane -t :9'
bind 9 if-shell 'tmux join-pane -t :9 -h' '' 'break-pane -t :9' bind 0 if 'tmux join-pane -t :10 -h' '' 'new-window -d -t :10; join-pane -t :10 -h'
bind 0 if-shell 'tmux join-pane -t :10 -h' '' 'break-pane -t :10'
# move windows # move windows
bind m command-prompt -p "move window to:" "move-window -t '%%'" bind m command-prompt -p "move window to:" "move-window -t '%%'"
+5 -4
View File
@@ -85,10 +85,11 @@
"on-click": "footclient --app-id floating_shell --window-size-chars 120x45 -e btop" "on-click": "footclient --app-id floating_shell --window-size-chars 120x45 -e btop"
}, },
"temperature": { "custom/cputemp": {
"critical-threshold": 80, "exec": "sensors | grep 'CPU:' | awk '{print substr($2,2); }'",
"format": " {temperatureC}°C", "format": " {}",
"on-click": "swaymsg exec 'footclient --app-id floating_shell --window-size-chars 80x45 -e watch sensors'" "on-click": "swaymsg exec 'footclient --app-id floating_shell --window-size-chars 80x45 watch sensors'",
"interval": 1
}, },
"memory": { "memory": {
+93 -75
View File
@@ -1,50 +1,60 @@
/* =============================================================================
*
* Waybar configuration
*
* Configuration reference: https://github.com/Alexays/Waybar/wiki/Configuration
*
* =========================================================================== */
/* ----------------------------------------------------------------------------- /* -----------------------------------------------------------------------------
* Keyframes & Colors * Keyframes
* -------------------------------------------------------------------------- */ * -------------------------------------------------------------------------- */
@define-color highlight #00E5FF;
@define-color base1 #0A0A0A; @define-color highlight #685878 ;
@define-color text #FFFFFF; @define-color base1 #19191e ;
@define-color urgent #FF0033;
@define-color dim #333333;
@keyframes blink-warning { @keyframes blink-warning {
70% { 70% {
color: @text; color: white;
} }
to {
color: @text; to {
background-color: orange; color: white;
} background-color: orange;
}
} }
@keyframes blink-critical { @keyframes blink-critical {
70% { 70% {
color: @text; color: white;
} }
to {
color: @text; to {
background-color: @urgent; color: white;
} background-color: red;
}
} }
/* ----------------------------------------------------------------------------- /* -----------------------------------------------------------------------------
* Base styles * Base styles
* -------------------------------------------------------------------------- */ * -------------------------------------------------------------------------- */
/* Reset all styles */
* { * {
border: none; border: none;
border-radius: 0; border-radius: 0;
min-height: 0; min-height: 0;
margin: 1px; margin: 1px;
padding: 0; padding: 0;
} }
/* The whole bar */
#waybar { #waybar {
background: transparent; background: transparent;
color: @text; color: #e3e3ea;
background-color: @base1; background-color: @base1;
font-family: JetBrainsMono; font-family: JetBrainsMono;
font-size: 13px; font-size: 13px;
border-bottom: 2px solid @dim;
} }
/* Every modules */ /* Every modules */
@@ -59,72 +69,80 @@
#battery, #battery,
#clock, #clock,
#tray { #tray {
padding: 0.5rem 0.6rem; padding:0.5rem 0.6rem;
margin: 1px 0px; margin: 1px 0px;
} }
/* ----------------------------------------------------------------------------- /* -----------------------------------------------------------------------------
* Module styles * Module styles
* -------------------------------------------------------------------------- */ * -------------------------------------------------------------------------- */
#custom-launcher {
margin-left:15px;
margin-right:10px;
}
#workspaces {
font-size:13px;
}
#workspaces button { #workspaces button {
border-radius: 0px; border-radius: 5px;
color: @text; color: #eceff4;
padding: 1px 6px; padding: 1px 6px;
margin-right: 2px; margin-right: 2px;
margin-left: 2px; margin-left: 2px;
border-bottom: 2px solid transparent;
} }
#workspaces button.focused { #workspaces button.focused {
border-bottom: 2px solid @highlight; border: 1px solid #d8dee9;
color: @highlight;
} }
#workspaces button.urgent { #workspaces button.urgent {
border-color: @urgent; border-color: #c9545d;
color: @urgent; color: #c9545d;
} }
#mode { #mode {
background: @highlight; background: @highlight;
color: #000000; border-bottom: 3px transparent;
font-weight: bold; color:white;
margin-left: 5px; margin-left: 5px;
padding: 7px; padding: 7px;
} }
#window { #window {
font-weight: bold; font-weight: bold;
} }
#network.disconnected { #network.disconnected {
color: orange; color: orange;
} }
#cpu.warning { #cpu.warning {
color: orange; color: orange;
} }
#cpu.critical { #cpu.critical {
color: red; color: red;
} }
#memory { #memory {
animation-timing-function: linear; animation-timing-function: linear;
animation-iteration-count: infinite; animation-iteration-count: infinite;
animation-direction: alternate; animation-direction: alternate;
} }
#memory.warning { #memory.warning {
color: orange; color: orange;
} }
#memory.critical { #memory.critical {
color: red; color: red;
animation-name: blink-critical; animation-name: blink-critical;
animation-duration: 2s; animation-duration: 2s;
padding-left: 5px; padding-left:5px;
padding-right: 5px; padding-right:5px;
} }
#backlight.icon { #backlight.icon {
@@ -134,35 +152,35 @@
} }
#pulseaudio.muted { #pulseaudio.muted {
color: @highlight; color: @highlight;
} }
#battery { #battery {
animation-timing-function: linear; animation-timing-function: linear;
animation-iteration-count: infinite; animation-iteration-count: infinite;
animation-direction: alternate; animation-direction: alternate;
} }
#battery.warning { #battery.warning {
color: orange; color: orange;
} }
#battery.critical { #battery.critical {
color: red; color: red;
} }
#battery.warning.discharging { #battery.warning.discharging {
animation-name: blink-warning; animation-name: blink-warning;
animation-duration: 3s; animation-duration: 3s;
} }
#battery.critical.discharging { #battery.critical.discharging {
animation-name: blink-critical; animation-name: blink-critical;
animation-duration: 2s; animation-duration: 2s;
} }
#custom-power { #custom-power {
margin-left: 15px; margin-left:15px;
margin-right: 15px; margin-right:15px;
font-size: 15px; font-size:15px;
} }
+1
View File
@@ -1,4 +1,5 @@
[screencast] [screencast]
chooser_type = dmenu chooser_type = dmenu
chooser_cmd = fuzzel --dmenu chooser_cmd = fuzzel --dmenu
output_name=DP-1
max_fps=30 max_fps=30
+2 -19
View File
@@ -4,11 +4,6 @@ show_hidden = true
sort_by = "natural" sort_by = "natural"
ratio = [ 1, 4, 5 ] ratio = [ 1, 4, 5 ]
[[mgr.prepend_keymap]]
on = "O"
run = "open --interactive"
desc = "Open with... (Interactive menu)"
[preview] [preview]
wrap = "yes" wrap = "yes"
image_delay = 50 image_delay = 50
@@ -43,10 +38,6 @@ group = "git"
url = "*/" url = "*/"
run = "git" run = "git"
[[plugin.prepend_previewers]]
url = "*/"
run = "eza-preview"
[[plugin.prepend_previewers]] [[plugin.prepend_previewers]]
url = "*.tar*" url = "*.tar*"
run = 'piper --format=url -- tar tf "$1"' run = 'piper --format=url -- tar tf "$1"'
@@ -60,16 +51,8 @@ url = "*.md"
run = 'piper -- CLICOLOR_FORCE=1 glow -w=$w -s=dark "$1"' run = 'piper -- CLICOLOR_FORCE=1 glow -w=$w -s=dark "$1"'
[[plugin.prepend_previewers]] [[plugin.prepend_previewers]]
url = "*.parquet" url = "*/"
run = "parquet-preview" run = 'piper -- eza -TL=3 --color=always --icons=always --group-directories-first --no-quotes "$1"'
[[plugin.prepend_previewers]]
url = "*.parq"
run = "parquet-preview"
[[plugin.prepend_previewers]]
url = "*.pq"
run = "parquet-preview"
[[plugin.prepend_spotters]] [[plugin.prepend_spotters]]
url = "*" url = "*"
+1 -2
View File
@@ -21,7 +21,6 @@ catai () {
echo '```' echo '```'
done done
} }
alias sioyek="QT_QPA_PLATFORM=xcb sioyek"
# --- basic keybinds --- # --- basic keybinds ---
bindkey '^[[Z' reverse-menu-complete # shift-tab bindkey '^[[Z' reverse-menu-complete # shift-tab
@@ -45,7 +44,7 @@ autoload -Uz compinit
compinit -d "~/.config/zsh/zcompdump" compinit -d "~/.config/zsh/zcompdump"
zstyle ':completion:*' menu select zstyle ':completion:*' menu select
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Za-z}' 'r:|[._-]=** r:|=**' zstyle ':completion:*' matcher-list 'm:{a-z}={A-Za-z}' 'r:|[._-]=** r:|=**'
zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS} zstyle ':completion:*' list-colors ''
if command -v kubectl >/dev/null 2>&1; then if command -v kubectl >/dev/null 2>&1; then
source <(kubectl completion zsh) source <(kubectl completion zsh)
fi fi
+25 -15
View File
@@ -1,7 +1,7 @@
[core] [core]
filemode = false filemode = false
pager = delta pager = delta --diff-so-fancy
autocrlf = input autorcrlf = true
editor = nvim editor = nvim
[user] [user]
name = Henrik Bakken name = Henrik Bakken
@@ -13,10 +13,8 @@
required = true required = true
[interactive] [interactive]
diffFilter = delta --color-only diffFilter = delta --color-only
; [merge]
[merge] ; conflictstyle = diff3
conflictstyle = zdiff3
[delta] [delta]
navigate = true navigate = true
light = false light = false
@@ -31,14 +29,16 @@
plus-non-emph-style = bold green plus-non-emph-style = bold green
plus-emph-style = bold reverse green plus-emph-style = bold reverse green
[delta "interactive"] [delta "interactive"]
keep-plus-minus-markers = false keep-plus-minus-markers = false[delta "decorations"]
[delta "decorations"]
commit-decoration-style = bold yellow box ul commit-decoration-style = bold yellow box ul
file-style = bold yellow ul file-style = bold yellow ul
file-decoration-style = none file-decoration-style = none
hunk-header-decoration-style = cyan box ul hunk-header-decoration-style = cyan box ul
[init] [init]
defaultBranch = main defaultBranch = main
# better defaults
# https://blog.gitbutler.com/how-git-core-devs-configure-git/
[column] [column]
ui = auto ui = auto
[branch] [branch]
@@ -57,8 +57,6 @@
prune = true prune = true
pruneTags = true pruneTags = true
all = true all = true
[pull]
rebase = true
[help] [help]
autocorrect = prompt autocorrect = prompt
[rebase] [rebase]
@@ -66,12 +64,24 @@
autoStash = true autoStash = true
updateRefs = true updateRefs = true
[rerere] # Improved colors for the highlighted bits
enabled = true # https://github.com/so-fancy/diff-so-fancy
autoupdate = true
[color] [color]
ui = true ui = true
[color "diff-highlight"]
oldNormal = red bold
oldHighlight = red bold 52
newNormal = green bold
newHighlight = green bold 22
[color "diff"]
meta = 11
frag = magenta bold
func = 146 bold
commit = yellow bold
old = red bold
new = green bold
whitespace = red reverse
[safe] [safe]
directory = /tmp directory = /tmp
[credential] [credential]
helper = /usr/lib/git-core/git-credential-libsecret helper = store
@@ -26,7 +26,7 @@
"modules-right": [ "modules-right": [
"idle_inhibitor", "idle_inhibitor",
"cpu", "cpu",
"temperature", "custom/cputemp",
"memory", "memory",
"custom/nvidia", "custom/nvidia",
"disk#root", "disk#root",
@@ -26,7 +26,7 @@
"modules-right": [ "modules-right": [
"idle_inhibitor", "idle_inhibitor",
"cpu", "cpu",
"temperature", "custom/cputemp",
"memory", "memory",
"custom/nvidia", "custom/nvidia",
"disk#root", "disk#root",
+1 -1
View File
@@ -12,7 +12,7 @@
"modules-right": [ "modules-right": [
"idle_inhibitor", "idle_inhibitor",
"cpu", "cpu",
"temperature", "custom/cputemp",
"memory", "memory",
"disk#root", "disk#root",
"backlight", "backlight",
@@ -12,7 +12,7 @@
"modules-right": [ "modules-right": [
"idle_inhibitor", "idle_inhibitor",
"cpu", "cpu",
"temperature", "custom/cputemp",
"memory", "memory",
"disk#root", "disk#root",
"backlight", "backlight",
+1 -4
View File
@@ -331,7 +331,6 @@ def install_filebrowsers(overwrite: bool, reinstall: bool) -> None:
"yazi-rs/plugins:smart-enter", "yazi-rs/plugins:smart-enter",
"yazi-rs/plugins:smart-filter", "yazi-rs/plugins:smart-filter",
"yazi-rs/plugins:toggle-pane", "yazi-rs/plugins:toggle-pane",
"ahkohd/eza-preview",
"boydaihungst/file-extra-metadata", "boydaihungst/file-extra-metadata",
]: ]:
run(f"ya pkg add {plugin}".split()) run(f"ya pkg add {plugin}".split())
@@ -400,7 +399,7 @@ def install_sway(overwrite: bool, reinstall: bool) -> None:
"waybar", "waybar",
"gtklock", "gtklock",
"gtk-3.0", "gtk-3.0",
"swaync", "mako",
"fuzzel", "fuzzel",
"nwg-drawer", "nwg-drawer",
"xdg-desktop-portal-wlr", "xdg-desktop-portal-wlr",
@@ -414,8 +413,6 @@ def install_sway(overwrite: bool, reinstall: bool) -> None:
helper_clone_foldercontents(CUSTOM_SRC / "CONFIG", CFG_TGT, "sway", overwrite) helper_clone_foldercontents(CUSTOM_SRC / "CONFIG", CFG_TGT, "sway", overwrite)
# custom waybar configs # custom waybar configs
helper_clone_foldercontents(CUSTOM_SRC / "CONFIG", CFG_TGT, "waybar", overwrite) helper_clone_foldercontents(CUSTOM_SRC / "CONFIG", CFG_TGT, "waybar", overwrite)
# custom swaync configs
helper_clone_foldercontents(CUSTOM_SRC / "CONFIG", CFG_TGT, "swaync", overwrite)
# desktop entries # desktop entries
helper_clone_foldercontents( helper_clone_foldercontents(
HOME_SRC, HOME_SRC,