Compare commits
22
Commits
56087cff6e
...
1b1de5d39e
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1b1de5d39e | ||
|
|
e219f9976e | ||
|
|
1bf1ac4664 | ||
|
|
73ff813c6a | ||
|
|
7adc711bcd | ||
|
|
dc9b1aaf4f | ||
|
|
943dfe676d | ||
|
|
2148012cce | ||
|
|
cd40badbe0 | ||
|
|
50f61afdf6 | ||
|
|
0891f4ffdb | ||
|
|
3dc419248f | ||
|
|
fbbb662cf9 | ||
|
|
af5e04a5e4 | ||
|
|
84432e1f82 | ||
|
|
3428c87856 | ||
|
|
13382f42fa | ||
|
|
43edbad2f6 | ||
|
|
c481cbc15f | ||
|
|
bcdb3ea110 | ||
|
|
b5621616d8 | ||
|
|
bdfc601b5f |
@@ -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 = "fulltext"
|
search_mode = "fuzzy"
|
||||||
|
|
||||||
## 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,11 +108,7 @@ 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 = [
|
history_filter = [ "^exit$", "^ .*", "_secret=" ]
|
||||||
"^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
|
||||||
@@ -207,14 +203,10 @@ 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 = [
|
# ignored_commands = [ "cd", "ls", "vi" ]
|
||||||
# "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.
|
||||||
@@ -281,4 +273,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" ]
|
||||||
|
|||||||
@@ -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 = true
|
theme_background = false
|
||||||
|
|
||||||
#* 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 = false
|
vim_keys = true
|
||||||
|
|
||||||
#* Disable all mouse events.
|
#* Disable all mouse events.
|
||||||
disable_mouse = false
|
disable_mouse = false
|
||||||
|
|||||||
@@ -1,144 +0,0 @@
|
|||||||
# 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
|
|
||||||
+11
-13
@@ -1,6 +1,6 @@
|
|||||||
# output=<not set>
|
# output=<not set>
|
||||||
font=JetBrainsMono-Regular:size=14
|
font=JetBrainsMono-Regular:size=14
|
||||||
dpi-aware=no
|
dpi-aware=auto
|
||||||
# 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,17 +43,15 @@ exit-on-keyboard-focus-loss=no
|
|||||||
# match-workers=<number of logical CPUs>
|
# match-workers=<number of logical CPUs>
|
||||||
|
|
||||||
[colors]
|
[colors]
|
||||||
background=08052bdd
|
background=0a0a0aff
|
||||||
text=e3e3eaff
|
text=ffffffff
|
||||||
prompt=ff7f7fff
|
prompt=00e5ffff
|
||||||
# placeholder=ffd966ff
|
input=ffffffff
|
||||||
input=ff7f7fff
|
match=00e5ffff
|
||||||
match=FFE57Fff
|
selection-match=00e5ffff
|
||||||
selection-match=FFE57Fff
|
selection=333333ff
|
||||||
selection=44475add
|
selection-text=ffffffff
|
||||||
selection-text=FFFFFFff
|
border=00e5ffff
|
||||||
# counter=93a1a1ff
|
|
||||||
border=7f3fbf55
|
|
||||||
|
|
||||||
[border]
|
[border]
|
||||||
# width=1
|
# width=1
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
[Settings]
|
[Settings]
|
||||||
gtk-theme-name=Arc-Dark
|
gtk-theme-name=Adwaita-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=1
|
gtk-enable-event-sounds=0
|
||||||
gtk-enable-input-feedback-sounds=1
|
gtk-enable-input-feedback-sounds=0
|
||||||
gtk-xft-antialias=1
|
gtk-xft-antialias=1
|
||||||
gtk-xft-hinting=1
|
gtk-xft-hinting=1
|
||||||
gtk-xft-hintstyle=hintmedium
|
gtk-xft-hintstyle=hintmedium
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
[main]
|
[main]
|
||||||
gtk-theme=Arc-Dark
|
gtk-theme-name=Adwaita-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 -i poweroff
|
poweroff-command=systemctl poweroff
|
||||||
suspend-command=systemctl suspend
|
suspend-command=systemctl suspend
|
||||||
userswitch-command=
|
userswitch-command=
|
||||||
logout-command=swaymsg exit
|
logout-command=swaymsg exit
|
||||||
|
|||||||
+18
-16
@@ -1,43 +1,45 @@
|
|||||||
* {
|
* {
|
||||||
border: none;
|
border: none;
|
||||||
text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.8)
|
text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.9);
|
||||||
|
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: black;
|
background-color: #0a0a0a;
|
||||||
}
|
}
|
||||||
#clock-label {
|
#clock-label {
|
||||||
font-family: JetBrainsMono;
|
font-family: JetBrainsMono;
|
||||||
font-size: 64.0px;
|
font-size: 64px;
|
||||||
|
color: #00e5ff;
|
||||||
}
|
}
|
||||||
#unlock-button {
|
#unlock-button {
|
||||||
background: none;
|
background-color: rgba(10, 10, 10, 0.8);
|
||||||
background-color: rgba(127, 63, 191, 0.4);
|
border: 2px solid #333333;
|
||||||
border: 2px solid rgba(127, 63, 191, 0.5);
|
|
||||||
padding: 4px;
|
padding: 4px;
|
||||||
|
color: #ffffff;
|
||||||
}
|
}
|
||||||
#unlock-button:hover {
|
#unlock-button:hover {
|
||||||
background-color: rgba(127, 63, 191, 0.9);
|
border-color: #00e5ff;
|
||||||
|
background-color: #000000;
|
||||||
}
|
}
|
||||||
#input-field {
|
#input-field {
|
||||||
border-radius: 10px;
|
background-color: rgba(0, 0, 0, 0.8);
|
||||||
background-color: rgba(127, 127, 255, 0.1);
|
border: 2px solid #00e5ff;
|
||||||
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: none;
|
background-color: rgba(10, 10, 10, 0.8);
|
||||||
background-color: rgba(127, 63, 191, 0.4);
|
border: 2px solid #333333;
|
||||||
border: 2px solid rgba(127, 63, 191, 0.5);
|
padding: 6px;
|
||||||
border-radius: 10px;
|
|
||||||
padding: 4px;
|
|
||||||
}
|
}
|
||||||
#powerbar-box button:hover {
|
#powerbar-box button:hover {
|
||||||
background-color: rgba(127, 63, 191, 0.9);
|
border-color: #00e5ff;
|
||||||
|
color: #00e5ff;
|
||||||
}
|
}
|
||||||
#input-label {
|
#input-label {
|
||||||
font-size: 0px;
|
font-size: 0px;
|
||||||
|
|||||||
@@ -1,53 +0,0 @@
|
|||||||
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"]
|
|
||||||
@@ -1,42 +0,0 @@
|
|||||||
[[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"] }
|
|
||||||
@@ -1,27 +0,0 @@
|
|||||||
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
|
|
||||||
@@ -1,182 +0,0 @@
|
|||||||
$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
|
|
||||||
+72
-27
@@ -1,4 +1,4 @@
|
|||||||
vim.g.mapleader = vim.keycode("<space>")
|
vim.g.mapleader = vim.keycode(" ")
|
||||||
vim.g.maplocalleader = vim.keycode("/")
|
vim.g.maplocalleader = vim.keycode("/")
|
||||||
vim.opt.langmap = "ø:"
|
vim.opt.langmap = "ø:"
|
||||||
|
|
||||||
@@ -108,7 +108,7 @@ vim.diagnostic.config({
|
|||||||
float = { source = true },
|
float = { source = true },
|
||||||
})
|
})
|
||||||
|
|
||||||
vim.api.nvim_create_autocmd("BufEnter", {
|
vim.api.nvim_create_autocmd("FileType", {
|
||||||
desc = "Disable auto-commenting on new line",
|
desc = "Disable auto-commenting on new line",
|
||||||
pattern = "*",
|
pattern = "*",
|
||||||
callback = function() vim.opt_local.formatoptions:remove({ "r", "o" }) end,
|
callback = function() vim.opt_local.formatoptions:remove({ "r", "o" }) end,
|
||||||
@@ -153,8 +153,8 @@ map("i", ".", ".<c-g>u")
|
|||||||
map("i", ";", ";<c-g>u")
|
map("i", ";", ";<c-g>u")
|
||||||
|
|
||||||
-- save file
|
-- save file
|
||||||
map({ "x", "n", "s" }, "<leader>ww", "<cmd>w<cr><esc>", { desc = "Save File" })
|
map({ "x", "n", "s" }, "<leader>ww", "<cmd>w<cr>", { desc = "Save File" })
|
||||||
map({ "x", "n", "s" }, "<leader>wa", "<cmd>wa<cr><esc>", { desc = "Save Files" })
|
map({ "x", "n", "s" }, "<leader>wa", "<cmd>wa<cr>", { desc = "Save Files" })
|
||||||
|
|
||||||
-- quit
|
-- quit
|
||||||
map("n", "<leader>qq", "<cmd>q<cr>", { desc = "Close Window" })
|
map("n", "<leader>qq", "<cmd>q<cr>", { desc = "Close Window" })
|
||||||
@@ -532,12 +532,16 @@ local function makespec_smearcursor()
|
|||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
local function makespec_hexokinase()
|
local function makespec_highlight_colors()
|
||||||
return {
|
return {
|
||||||
-- coloring of colornames
|
"brenoprata10/nvim-highlight-colors",
|
||||||
"rrethy/vim-hexokinase",
|
event = "VeryLazy",
|
||||||
build = function(plugin) vim.system({ "make", "hexokinase" }, { cwd = plugin.dir }):wait() end,
|
opts = {
|
||||||
config = function() vim.g.Hexokinase_highlighters = { "virtual" } end,
|
render = "virtual",
|
||||||
|
virtual_symbol = "■",
|
||||||
|
enable_named_colors = true,
|
||||||
|
enable_tailwind = false,
|
||||||
|
},
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -1150,7 +1154,17 @@ 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.icons", opts = {} },
|
{
|
||||||
|
"echasnovski/mini.icons",
|
||||||
|
opts = {},
|
||||||
|
init = function()
|
||||||
|
-- catch nvim-web-devicons
|
||||||
|
package.preload["nvim-web-devicons"] = function()
|
||||||
|
require("mini.icons").mock_nvim_web_devicons()
|
||||||
|
return package.loaded["nvim-web-devicons"]
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"echasnovski/mini.bracketed",
|
"echasnovski/mini.bracketed",
|
||||||
version = false,
|
version = false,
|
||||||
@@ -1355,9 +1369,10 @@ end
|
|||||||
local function makespec_treesitter()
|
local function makespec_treesitter()
|
||||||
return {
|
return {
|
||||||
"nvim-treesitter/nvim-treesitter",
|
"nvim-treesitter/nvim-treesitter",
|
||||||
|
branch = "main",
|
||||||
build = ":TSUpdate",
|
build = ":TSUpdate",
|
||||||
lazy = false,
|
lazy = false,
|
||||||
main = "nvim-treesitter.configs",
|
main = "nvim-treesitter.config",
|
||||||
opts = {
|
opts = {
|
||||||
ensure_installed = {
|
ensure_installed = {
|
||||||
"bash",
|
"bash",
|
||||||
@@ -1375,6 +1390,7 @@ local function makespec_treesitter()
|
|||||||
"lua",
|
"lua",
|
||||||
"markdown",
|
"markdown",
|
||||||
"markdown_inline",
|
"markdown_inline",
|
||||||
|
"query", -- for folds
|
||||||
"python",
|
"python",
|
||||||
"regex",
|
"regex",
|
||||||
"toml",
|
"toml",
|
||||||
@@ -1395,6 +1411,41 @@ local function makespec_treesitter()
|
|||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
|
local function makespec_blink()
|
||||||
|
return {
|
||||||
|
"saghen/blink.cmp",
|
||||||
|
version = false,
|
||||||
|
event = "InsertEnter",
|
||||||
|
build = function() require("blink.cmp").build():pwait() end,
|
||||||
|
dependencies = {
|
||||||
|
"saghen/blink.lib",
|
||||||
|
},
|
||||||
|
opts = {
|
||||||
|
keymap = { preset = "default" },
|
||||||
|
completion = {
|
||||||
|
accept = { auto_brackets = { enabled = false } },
|
||||||
|
documentation = { auto_show = true },
|
||||||
|
},
|
||||||
|
fuzzy = { sorts = { "exact", "score", "sort_text" } },
|
||||||
|
sources = {
|
||||||
|
default = { "lsp", "buffer", "path" },
|
||||||
|
providers = {
|
||||||
|
lsp = {
|
||||||
|
-- Strip any completion item that tries to inject an auto-import
|
||||||
|
transform_items = function(_, items)
|
||||||
|
return vim.tbl_filter(function(item)
|
||||||
|
-- If the LSP item includes additionalTextEdits, it's mutating
|
||||||
|
-- lines outside your cursor (e.g., adding an import at the top)
|
||||||
|
return not (item.additionalTextEdits and #item.additionalTextEdits > 0)
|
||||||
|
end, items)
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
end
|
||||||
|
|
||||||
local function makespec_treewalker()
|
local function makespec_treewalker()
|
||||||
return {
|
return {
|
||||||
"aaronik/treewalker.nvim",
|
"aaronik/treewalker.nvim",
|
||||||
@@ -1471,8 +1522,6 @@ end
|
|||||||
local function makespec_conform()
|
local function makespec_conform()
|
||||||
return {
|
return {
|
||||||
"stevearc/conform.nvim",
|
"stevearc/conform.nvim",
|
||||||
-- Load conform right before you save a file, or when you trigger a keymap
|
|
||||||
event = { "BufWritePre" },
|
|
||||||
cmd = { "ConformInfo" },
|
cmd = { "ConformInfo" },
|
||||||
keys = {
|
keys = {
|
||||||
{
|
{
|
||||||
@@ -1510,6 +1559,7 @@ local function makespec_conform()
|
|||||||
},
|
},
|
||||||
default_format_opts = {
|
default_format_opts = {
|
||||||
lsp_format = "fallback",
|
lsp_format = "fallback",
|
||||||
|
timeout_ms = 1000,
|
||||||
},
|
},
|
||||||
formatters = {
|
formatters = {
|
||||||
javascript = { require_cwd = true },
|
javascript = { require_cwd = true },
|
||||||
@@ -1613,7 +1663,6 @@ local function makespec_noice()
|
|||||||
override = {
|
override = {
|
||||||
["vim.lsp.util.convert_input_to_markdown_lines"] = true,
|
["vim.lsp.util.convert_input_to_markdown_lines"] = true,
|
||||||
["vim.lsp.util.stylize_markdown"] = true,
|
["vim.lsp.util.stylize_markdown"] = true,
|
||||||
["cmp.entry.get_documentation"] = true,
|
|
||||||
},
|
},
|
||||||
signature = { enabled = true, auto_open = { enabled = false, throttle = 50 } },
|
signature = { enabled = true, auto_open = { enabled = false, throttle = 50 } },
|
||||||
},
|
},
|
||||||
@@ -1644,13 +1693,17 @@ local lazyspecs = {
|
|||||||
{ "ethanholz/nvim-lastplace", opts = {} }, -- keep location upon reopening
|
{ "ethanholz/nvim-lastplace", opts = {} }, -- keep location upon reopening
|
||||||
"tpope/vim-eunuch", -- Move, Rename etc
|
"tpope/vim-eunuch", -- Move, Rename etc
|
||||||
"tpope/vim-sleuth", -- do the right thing with tabstop and softtabstop
|
"tpope/vim-sleuth", -- do the right thing with tabstop and softtabstop
|
||||||
}
|
{
|
||||||
for _, spec in ipairs({
|
"esmuellert/codediff.nvim",
|
||||||
|
cmd = "CodeDiff",
|
||||||
|
opts = { diff = { compute_moves = true } },
|
||||||
|
},
|
||||||
makespec_lazydev(), -- nvim lsp helpers
|
makespec_lazydev(), -- nvim lsp helpers
|
||||||
makespec_snacks(),
|
makespec_snacks(),
|
||||||
makespec_conform(), -- autoformat
|
makespec_conform(), -- autoformat
|
||||||
makespec_lspconfig(),
|
makespec_lspconfig(),
|
||||||
makespec_treesitter(),
|
makespec_treesitter(),
|
||||||
|
makespec_blink(),
|
||||||
makespec_treewalker(),
|
makespec_treewalker(),
|
||||||
makespec_todocomments(),
|
makespec_todocomments(),
|
||||||
makespec_autotag(),
|
makespec_autotag(),
|
||||||
@@ -1666,7 +1719,7 @@ for _, spec in ipairs({
|
|||||||
makespec_grugfar(),
|
makespec_grugfar(),
|
||||||
-- visuals
|
-- visuals
|
||||||
makespec_smearcursor(),
|
makespec_smearcursor(),
|
||||||
makespec_hexokinase(),
|
makespec_highlight_colors(),
|
||||||
makespec_lualine(),
|
makespec_lualine(),
|
||||||
makespec_noice(),
|
makespec_noice(),
|
||||||
-- file browsers
|
-- file browsers
|
||||||
@@ -1677,18 +1730,10 @@ for _, spec in ipairs({
|
|||||||
makespec_fugitive(),
|
makespec_fugitive(),
|
||||||
makespec_diffview(),
|
makespec_diffview(),
|
||||||
makespec_vimflog(),
|
makespec_vimflog(),
|
||||||
}) do
|
|
||||||
table.insert(lazyspecs, spec)
|
|
||||||
end
|
|
||||||
for _, specs in ipairs({
|
|
||||||
makespecs_themes(),
|
makespecs_themes(),
|
||||||
makespecs_mini(),
|
makespecs_mini(),
|
||||||
makespecs_previewers(),
|
makespecs_previewers(),
|
||||||
}) do
|
}
|
||||||
for _, spec in ipairs(specs) do
|
|
||||||
table.insert(lazyspecs, spec)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
||||||
if not (vim.uv or vim.loop).fs_stat(lazypath) then
|
if not (vim.uv or vim.loop).fs_stat(lazypath) then
|
||||||
vim.fn.system({
|
vim.fn.system({
|
||||||
@@ -1706,4 +1751,4 @@ require("lazy").setup({
|
|||||||
checker = { enabled = true },
|
checker = { enabled = true },
|
||||||
rocks = { enabled = false },
|
rocks = { enabled = false },
|
||||||
})
|
})
|
||||||
vim.cmd("colorscheme sonokai")
|
vim.cmd("colorscheme gruvbox-material")
|
||||||
|
|||||||
@@ -1,38 +1,43 @@
|
|||||||
window {
|
window {
|
||||||
background-color: rgba (38, 18, 57, 0.9);
|
background-color: rgba(10, 10, 10, 0.95);
|
||||||
color: #eceff4;
|
color: #ffffff;
|
||||||
border-radius: 30px
|
border-radius: 0px;
|
||||||
|
border-right: 2px solid #00e5ff;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* search entry */
|
/* search entry */
|
||||||
entry {
|
entry {
|
||||||
box-shadow: 0 0 6px 5px #2e3440;
|
box-shadow: none;
|
||||||
background-color: rgba (0, 0, 0, 0.5)
|
border: 1px solid #00e5ff;
|
||||||
|
background-color: #000000;
|
||||||
|
color: #00e5ff;
|
||||||
|
padding: 5px;
|
||||||
}
|
}
|
||||||
|
|
||||||
button, image {
|
button,
|
||||||
background-color: #3b4252;
|
image {
|
||||||
|
background-color: transparent;
|
||||||
background: none;
|
background: none;
|
||||||
border: none;
|
border: 1px solid transparent;
|
||||||
margin: 10px
|
margin: 5px;
|
||||||
}
|
}
|
||||||
|
|
||||||
button:hover {
|
button:hover {
|
||||||
background-color: rgba (127, 63, 191, .4);
|
background-color: #111111;
|
||||||
box-shadow: 0 0 6px 5px #190C26
|
border: 1px solid #00e5ff;
|
||||||
|
box-shadow: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* in case you wanted to give category buttons a different look */
|
|
||||||
#category-button {
|
#category-button {
|
||||||
margin: 0 0px 0 0px
|
margin: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#pinned-box {
|
#pinned-box {
|
||||||
padding-bottom: 1px;
|
padding-bottom: 5px;
|
||||||
border-bottom: 1px solid gray
|
border-bottom: 2px solid #333333;
|
||||||
}
|
}
|
||||||
|
|
||||||
#files-box {
|
#files-box {
|
||||||
padding: 1px;
|
padding: 5px;
|
||||||
border: 1px solid gray
|
border: 1px solid #333333;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -86,7 +86,9 @@ 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": ["*Refused to apply inline style because it violates the following Content Security Policy directive: *"]
|
"userscript:_qute_stylesheet": [
|
||||||
|
"*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%"
|
||||||
@@ -148,7 +150,13 @@ 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 = ["disable-features=WebAuth"] # makes BankID work
|
c.qt.args = [
|
||||||
|
"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
|
||||||
@@ -204,20 +212,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 = "#181818"
|
base00 = "#0A0A0A"
|
||||||
base01 = "#282828"
|
base01 = "#111111"
|
||||||
base02 = "#383838"
|
base02 = "#333333"
|
||||||
base03 = "#585858"
|
base03 = "#585858"
|
||||||
base04 = "#b8b8b8"
|
base04 = "#b8b8b8"
|
||||||
base05 = "#d8d8d8"
|
base05 = "#FFFFFF"
|
||||||
base06 = "#e8e8e8"
|
base06 = "#e8e8e8"
|
||||||
base07 = "#f8f8f8"
|
base07 = "#f8f8f8"
|
||||||
base08 = "#ab4642"
|
base08 = "#FF0033"
|
||||||
base09 = "#dc9656"
|
base09 = "#dc9656"
|
||||||
base0A = "#f7ca88"
|
base0A = "#FFE57F"
|
||||||
base0B = "#a1b56c"
|
base0B = "#00E5FF"
|
||||||
base0C = "#86c1b9"
|
base0C = "#86c1b9"
|
||||||
base0D = "#7cafc2"
|
base0D = "#00E5FF"
|
||||||
base0E = "#ba8baf"
|
base0E = "#ba8baf"
|
||||||
base0F = "#a16946"
|
base0F = "#a16946"
|
||||||
c.colors.webpage.preferred_color_scheme = "light"
|
c.colors.webpage.preferred_color_scheme = "light"
|
||||||
@@ -251,9 +259,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.fg = base00
|
c.colors.hints.bg = base00
|
||||||
c.colors.hints.bg = base0A
|
c.colors.hints.fg = base0B
|
||||||
c.colors.hints.match.fg = base05
|
c.colors.hints.match.fg = base08
|
||||||
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
|
||||||
@@ -311,9 +319,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.even.bg = base02
|
c.colors.tabs.selected.odd.bg = base0B
|
||||||
|
c.colors.tabs.selected.even.bg = base0B
|
||||||
|
|
||||||
# overrides
|
# overrides
|
||||||
c.colors.hints.fg = base05
|
c.colors.hints.fg = base05
|
||||||
|
|||||||
@@ -5,19 +5,29 @@ 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
|
||||||
|
|
||||||
# - dracula: https://github.com/dracula/sioyek
|
# Document Colors (Deep Black bg, Pure White text)
|
||||||
# - catppuccin: https://github.com/catppuccin/sioyek
|
custom_background_color #0A0A0A
|
||||||
# - gruvbox: https://mil.ad/blog/2022/gruvbox-for-sioyek.html
|
custom_text_color #FFFFFF
|
||||||
new_macro _theme_solaris setconfig_custom_text_color(#b58900);setconfig_custom_background_color(#586e75)
|
custom_color_mode_empty_background_color #000000
|
||||||
new_macro _theme_normal setconfig_custom_text_color(#000000);setconfig_custom_background_color(#ffffff)
|
page_separator_color #333333
|
||||||
new_macro _theme_dark setconfig_custom_text_color(#ffffff);setconfig_custom_background_color(#000000)
|
|
||||||
new_macro _theme_softlight setconfig_custom_text_color(#434c5e);setconfig_custom_background_color(#faf4ed)
|
# UI & Status Bar (Electric Cyan & Black)
|
||||||
new_macro _theme_macchiato setconfig_custom_text_color(#cad3f5);setconfig_custom_background_color(#24273a)
|
ui_background_color #111111
|
||||||
new_macro _theme_frappe setconfig_custom_text_color(#c6d0f5);setconfig_custom_background_color(#303446)
|
ui_text_color #FFFFFF
|
||||||
new_macro _theme_moccha setconfig_custom_text_color(#cdd6f4);setconfig_custom_background_color(#1e1e2e)
|
ui_selected_background_color #333333
|
||||||
new_macro _theme_latte setconfig_custom_text_color(#4c4f69);setconfig_custom_background_color(#eff1f5)
|
ui_selected_text_color #00E5FF
|
||||||
new_macro _theme_gruvbox setconfig_custom_text_color(#fbf1c7);setconfig_custom_background_color(#282828)
|
|
||||||
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_color #00E5FF
|
||||||
|
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
|
||||||
|
|||||||
+32
-25
@@ -10,29 +10,31 @@ mouse_warping none
|
|||||||
|
|
||||||
# Set inner/outer gaps
|
# Set inner/outer gaps
|
||||||
smart_gaps on
|
smart_gaps on
|
||||||
gaps inner 2
|
gaps inner 4
|
||||||
gaps outer 0
|
gaps outer 0
|
||||||
|
|
||||||
# Hide titlebar on windows:
|
# Hide titlebar on windows:
|
||||||
default_border pixel 1
|
default_border pixel 2
|
||||||
|
smart_borders on
|
||||||
|
|
||||||
# Default Font
|
# Default Font
|
||||||
font pango:Noto Sans Regular 10
|
font pango:Noto Sans Regular 10
|
||||||
|
|
||||||
# Thin borders:
|
|
||||||
smart_borders on
|
|
||||||
|
|
||||||
# Title format for windows
|
# Title format for windows
|
||||||
for_window [shell="xdg_shell"] title_format "%title (%app_id)"
|
set $focus #00E5FF
|
||||||
for_window [shell="x_wayland"] title_format "%class - %title"
|
set $unfocused #333333
|
||||||
|
set $urgent #FF0033
|
||||||
|
set $bg #0A0A0A
|
||||||
|
set $text_dark #000000
|
||||||
|
set $text_dim #888888
|
||||||
|
|
||||||
# class border bground text indicator child_border
|
# class border bground text indicator child_border
|
||||||
client.focused #556064 #F9CE5C #000000 #CB4B16 #FDF6E3
|
client.focused $focus $focus $text_dark $focus $focus
|
||||||
client.focused_inactive #CB4B16 #2F3D44 #1ABC9C #454948 #454948
|
client.focused_inactive $unfocused $unfocused $text_dim $unfocused $unfocused
|
||||||
client.unfocused #556064 #2F3D44 #1ABC9C #454948 #454948
|
client.unfocused $unfocused $unfocused $text_dim $unfocused $unfocused
|
||||||
client.urgent #CB4B16 #FDF6E3 #1ABC9C #268BD2 #268BD2
|
client.urgent $urgent $urgent #FFFFFF $urgent $urgent
|
||||||
client.placeholder #000000 #0C0C0C #ffffff #000000 #000000
|
client.placeholder #000000 #000000 #FFFFFF #000000 #000000
|
||||||
client.background #2B2C2B
|
client.background $bg
|
||||||
|
|
||||||
# Status Bar:
|
# Status Bar:
|
||||||
bar {
|
bar {
|
||||||
@@ -67,7 +69,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 Mod4+Shift+Return exec foot bash
|
bindsym $mod+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
|
||||||
@@ -253,9 +255,14 @@ bindsym {
|
|||||||
# Launch the file explorer
|
# Launch the file explorer
|
||||||
$mod+o exec pcmanfm
|
$mod+o exec pcmanfm
|
||||||
|
|
||||||
# Dismiss message
|
# Dismiss current notification
|
||||||
$mod+n exec makoctl dismiss
|
$mod+n exec swaync-client -c
|
||||||
$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
|
||||||
@@ -278,6 +285,9 @@ 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
|
||||||
|
|
||||||
@@ -287,19 +297,15 @@ exec hash dbus-update-activation-environment 2>/dev/null && \
|
|||||||
|
|
||||||
# Idle configuration
|
# Idle configuration
|
||||||
exec swayidle -w \
|
exec swayidle -w \
|
||||||
timeout 1200 'pgrep -x gtklock || gtklock -d' \
|
timeout 1200 'gtklock -d' \
|
||||||
timeout 2400 'swaymsg "output * power off"' resume 'swaymsg "output * power on"' \
|
timeout 2400 'swaymsg "output * power off"' resume 'swaymsg "output * power on"' \
|
||||||
before-sleep 'pgrep -x gtklock || gtklock -d' \
|
timeout 10 'if pgrep -x gtklock; then swaymsg "output * power off"; fi' \
|
||||||
after-resume 'swaymsg reload' \
|
before-sleep 'gtklock -d'
|
||||||
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
|
||||||
|
|
||||||
@@ -317,6 +323,8 @@ 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
|
||||||
|
|
||||||
@@ -387,4 +395,3 @@ input type:mouse {
|
|||||||
accel_profile "flat"
|
accel_profile "flat"
|
||||||
pointer_accel 0.5
|
pointer_accel 0.5
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,4 @@
|
|||||||
#!/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
|
||||||
|
|
||||||
@@ -13,3 +11,4 @@ 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'
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
#!/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"
|
||||||
@@ -9,26 +10,32 @@ 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"*)
|
;;
|
||||||
|
*" Log out"*)
|
||||||
if confirm_action "Log out"; then
|
if confirm_action "Log out"; then
|
||||||
swaymsg exit
|
swaymsg exit
|
||||||
fi;;
|
fi
|
||||||
*" Reboot"*)
|
;;
|
||||||
|
*" Reboot"*)
|
||||||
if confirm_action "Reboot"; then
|
if confirm_action "Reboot"; then
|
||||||
systemctl reboot
|
systemctl reboot
|
||||||
fi;;
|
fi
|
||||||
*" Reboot to UEFI"*)
|
;;
|
||||||
|
*" Reboot to UEFI"*)
|
||||||
if confirm_action "Reboot to UEFI"; then
|
if confirm_action "Reboot to UEFI"; then
|
||||||
systemctl reboot --firmware-setup
|
systemctl reboot --firmware-setup
|
||||||
fi;;
|
fi
|
||||||
*" Shutdown"*)
|
;;
|
||||||
|
*" Shutdown"*)
|
||||||
if confirm_action "Shutdown"; then
|
if confirm_action "Shutdown"; then
|
||||||
systemctl poweroff
|
systemctl poweroff
|
||||||
fi;;
|
fi
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
|
|||||||
@@ -0,0 +1,41 @@
|
|||||||
|
{
|
||||||
|
"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
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,52 @@
|
|||||||
|
@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;
|
||||||
|
}
|
||||||
@@ -69,6 +69,8 @@ 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
|
||||||
|
|||||||
+14
-16
@@ -14,9 +14,8 @@ 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'
|
||||||
# Tell tmux which features the outer Foot client supports.
|
set -as terminal-features ',*:clipboard'
|
||||||
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
|
||||||
@@ -90,13 +89,11 @@ 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-pipe-and-cancel "wl-copy"
|
bind -T copy-mode-vi y 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 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 %%"
|
||||||
@@ -147,16 +144,17 @@ bind w choose-tree
|
|||||||
|
|
||||||
# Change current pane to next window
|
# Change current pane to next window
|
||||||
bind ` break-pane
|
bind ` break-pane
|
||||||
bind 1 if 'tmux join-pane -t :1 -h' '' 'new-window -d -t :1; join-pane -t :1'
|
# Change current pane to specific window (join if exists, break if it doesn't)
|
||||||
bind 2 if 'tmux join-pane -t :2 -h' '' 'new-window -d -t :2; join-pane -t :2'
|
bind 1 if-shell 'tmux join-pane -t :1 -h' '' 'break-pane -t :1'
|
||||||
bind 3 if 'tmux join-pane -t :3 -h' '' 'new-window -d -t :3; join-pane -t :3'
|
bind 2 if-shell 'tmux join-pane -t :2 -h' '' 'break-pane -t :2'
|
||||||
bind 4 if 'tmux join-pane -t :4 -h' '' 'new-window -d -t :4; join-pane -t :4'
|
bind 3 if-shell 'tmux join-pane -t :3 -h' '' 'break-pane -t :3'
|
||||||
bind 5 if 'tmux join-pane -t :5 -h' '' 'new-window -d -t :5; join-pane -t :5'
|
bind 4 if-shell 'tmux join-pane -t :4 -h' '' 'break-pane -t :4'
|
||||||
bind 6 if 'tmux join-pane -t :6 -h' '' 'new-window -d -t :6; join-pane -t :6'
|
bind 5 if-shell 'tmux join-pane -t :5 -h' '' 'break-pane -t :5'
|
||||||
bind 7 if 'tmux join-pane -t :7 -h' '' 'new-window -d -t :7; join-pane -t :7'
|
bind 6 if-shell 'tmux join-pane -t :6 -h' '' 'break-pane -t :6'
|
||||||
bind 8 if 'tmux join-pane -t :8 -h' '' 'new-window -d -t :8; join-pane -t :8'
|
bind 7 if-shell 'tmux join-pane -t :7 -h' '' 'break-pane -t :7'
|
||||||
bind 9 if 'tmux join-pane -t :9 -h' '' 'new-window -d -t :9; join-pane -t :9'
|
bind 8 if-shell 'tmux join-pane -t :8 -h' '' 'break-pane -t :8'
|
||||||
bind 0 if 'tmux join-pane -t :10 -h' '' 'new-window -d -t :10; join-pane -t :10 -h'
|
bind 9 if-shell 'tmux join-pane -t :9 -h' '' 'break-pane -t :9'
|
||||||
|
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 '%%'"
|
||||||
|
|||||||
@@ -85,11 +85,10 @@
|
|||||||
"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"
|
||||||
},
|
},
|
||||||
|
|
||||||
"custom/cputemp": {
|
"temperature": {
|
||||||
"exec": "sensors | grep 'CPU:' | awk '{print substr($2,2); }'",
|
"critical-threshold": 80,
|
||||||
"format": " {}",
|
"format": " {temperatureC}°C",
|
||||||
"on-click": "swaymsg exec 'footclient --app-id floating_shell --window-size-chars 80x45 watch sensors'",
|
"on-click": "swaymsg exec 'footclient --app-id floating_shell --window-size-chars 80x45 -e watch sensors'"
|
||||||
"interval": 1
|
|
||||||
},
|
},
|
||||||
|
|
||||||
"memory": {
|
"memory": {
|
||||||
|
|||||||
+29
-47
@@ -1,45 +1,35 @@
|
|||||||
/* =============================================================================
|
|
||||||
*
|
|
||||||
* Waybar configuration
|
|
||||||
*
|
|
||||||
* Configuration reference: https://github.com/Alexays/Waybar/wiki/Configuration
|
|
||||||
*
|
|
||||||
* =========================================================================== */
|
|
||||||
|
|
||||||
/* -----------------------------------------------------------------------------
|
/* -----------------------------------------------------------------------------
|
||||||
* Keyframes
|
* Keyframes & Colors
|
||||||
* -------------------------------------------------------------------------- */
|
* -------------------------------------------------------------------------- */
|
||||||
|
@define-color highlight #00E5FF;
|
||||||
@define-color highlight #685878 ;
|
@define-color base1 #0A0A0A;
|
||||||
@define-color base1 #19191e ;
|
@define-color text #FFFFFF;
|
||||||
|
@define-color urgent #FF0033;
|
||||||
|
@define-color dim #333333;
|
||||||
|
|
||||||
@keyframes blink-warning {
|
@keyframes blink-warning {
|
||||||
70% {
|
70% {
|
||||||
color: white;
|
color: @text;
|
||||||
}
|
}
|
||||||
|
|
||||||
to {
|
to {
|
||||||
color: white;
|
color: @text;
|
||||||
background-color: orange;
|
background-color: orange;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@keyframes blink-critical {
|
@keyframes blink-critical {
|
||||||
70% {
|
70% {
|
||||||
color: white;
|
color: @text;
|
||||||
}
|
}
|
||||||
|
|
||||||
to {
|
to {
|
||||||
color: white;
|
color: @text;
|
||||||
background-color: red;
|
background-color: @urgent;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -----------------------------------------------------------------------------
|
/* -----------------------------------------------------------------------------
|
||||||
* Base styles
|
* Base styles
|
||||||
* -------------------------------------------------------------------------- */
|
* -------------------------------------------------------------------------- */
|
||||||
|
|
||||||
/* Reset all styles */
|
|
||||||
* {
|
* {
|
||||||
border: none;
|
border: none;
|
||||||
border-radius: 0;
|
border-radius: 0;
|
||||||
@@ -48,13 +38,13 @@
|
|||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* The whole bar */
|
|
||||||
#waybar {
|
#waybar {
|
||||||
background: transparent;
|
background: transparent;
|
||||||
color: #e3e3ea;
|
color: @text;
|
||||||
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 */
|
||||||
@@ -69,44 +59,36 @@
|
|||||||
#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: 5px;
|
border-radius: 0px;
|
||||||
color: #eceff4;
|
color: @text;
|
||||||
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: 1px solid #d8dee9;
|
border-bottom: 2px solid @highlight;
|
||||||
|
color: @highlight;
|
||||||
}
|
}
|
||||||
|
|
||||||
#workspaces button.urgent {
|
#workspaces button.urgent {
|
||||||
border-color: #c9545d;
|
border-color: @urgent;
|
||||||
color: #c9545d;
|
color: @urgent;
|
||||||
}
|
}
|
||||||
|
|
||||||
#mode {
|
#mode {
|
||||||
background: @highlight;
|
background: @highlight;
|
||||||
border-bottom: 3px transparent;
|
color: #000000;
|
||||||
color:white;
|
font-weight: bold;
|
||||||
margin-left: 5px;
|
margin-left: 5px;
|
||||||
padding: 7px;
|
padding: 7px;
|
||||||
}
|
}
|
||||||
@@ -135,14 +117,14 @@
|
|||||||
|
|
||||||
#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 {
|
||||||
@@ -180,7 +162,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
#custom-power {
|
#custom-power {
|
||||||
margin-left:15px;
|
margin-left: 15px;
|
||||||
margin-right:15px;
|
margin-right: 15px;
|
||||||
font-size:15px;
|
font-size: 15px;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
[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
|
||||||
|
|||||||
+19
-2
@@ -4,6 +4,11 @@ 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
|
||||||
@@ -38,6 +43,10 @@ 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"'
|
||||||
@@ -51,8 +60,16 @@ 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 = "*/"
|
url = "*.parquet"
|
||||||
run = 'piper -- eza -TL=3 --color=always --icons=always --group-directories-first --no-quotes "$1"'
|
run = "parquet-preview"
|
||||||
|
|
||||||
|
[[plugin.prepend_previewers]]
|
||||||
|
url = "*.parq"
|
||||||
|
run = "parquet-preview"
|
||||||
|
|
||||||
|
[[plugin.prepend_previewers]]
|
||||||
|
url = "*.pq"
|
||||||
|
run = "parquet-preview"
|
||||||
|
|
||||||
[[plugin.prepend_spotters]]
|
[[plugin.prepend_spotters]]
|
||||||
url = "*"
|
url = "*"
|
||||||
|
|||||||
+3
-2
@@ -3,7 +3,7 @@ export SYSTEMD_EDITOR=nvim
|
|||||||
export EDITOR=nvim
|
export EDITOR=nvim
|
||||||
export VISUAL=nvim
|
export VISUAL=nvim
|
||||||
export PAGER="bat --style=header,rule,snip"
|
export PAGER="bat --style=header,rule,snip"
|
||||||
export PATH=~/.local/bin:$PATH
|
export PATH=~/.local/bin:${KREW_ROOT:-$HOME/.krew}/bin:$PATH
|
||||||
export BROWSER=/usr/bin/qutebrowser
|
export BROWSER=/usr/bin/qutebrowser
|
||||||
export HISTFILE=~/.config/zsh/history
|
export HISTFILE=~/.config/zsh/history
|
||||||
export HISTSIZE=200000
|
export HISTSIZE=200000
|
||||||
@@ -21,6 +21,7 @@ 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
|
||||||
@@ -44,7 +45,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 ''
|
zstyle ':completion:*' list-colors ${(s.:.)LS_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
|
||||||
|
|||||||
+14
-24
@@ -1,7 +1,7 @@
|
|||||||
[core]
|
[core]
|
||||||
filemode = false
|
filemode = false
|
||||||
pager = delta --diff-so-fancy
|
pager = delta
|
||||||
autorcrlf = true
|
autocrlf = input
|
||||||
editor = nvim
|
editor = nvim
|
||||||
[user]
|
[user]
|
||||||
name = Henrik Bakken
|
name = Henrik Bakken
|
||||||
@@ -13,8 +13,10 @@
|
|||||||
required = true
|
required = true
|
||||||
[interactive]
|
[interactive]
|
||||||
diffFilter = delta --color-only
|
diffFilter = delta --color-only
|
||||||
; [merge]
|
|
||||||
; conflictstyle = diff3
|
[merge]
|
||||||
|
conflictstyle = zdiff3
|
||||||
|
|
||||||
[delta]
|
[delta]
|
||||||
navigate = true
|
navigate = true
|
||||||
light = false
|
light = false
|
||||||
@@ -29,16 +31,14 @@
|
|||||||
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[delta "decorations"]
|
keep-plus-minus-markers = false
|
||||||
|
[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,6 +57,8 @@
|
|||||||
prune = true
|
prune = true
|
||||||
pruneTags = true
|
pruneTags = true
|
||||||
all = true
|
all = true
|
||||||
|
[pull]
|
||||||
|
rebase = true
|
||||||
[help]
|
[help]
|
||||||
autocorrect = prompt
|
autocorrect = prompt
|
||||||
[rebase]
|
[rebase]
|
||||||
@@ -64,24 +66,12 @@
|
|||||||
autoStash = true
|
autoStash = true
|
||||||
updateRefs = true
|
updateRefs = true
|
||||||
|
|
||||||
# Improved colors for the highlighted bits
|
[rerere]
|
||||||
# https://github.com/so-fancy/diff-so-fancy
|
enabled = true
|
||||||
|
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 = store
|
helper = /usr/lib/git-core/git-credential-libsecret
|
||||||
|
|||||||
@@ -26,7 +26,7 @@
|
|||||||
"modules-right": [
|
"modules-right": [
|
||||||
"idle_inhibitor",
|
"idle_inhibitor",
|
||||||
"cpu",
|
"cpu",
|
||||||
"custom/cputemp",
|
"temperature",
|
||||||
"memory",
|
"memory",
|
||||||
"custom/nvidia",
|
"custom/nvidia",
|
||||||
"disk#root",
|
"disk#root",
|
||||||
|
|||||||
@@ -26,7 +26,7 @@
|
|||||||
"modules-right": [
|
"modules-right": [
|
||||||
"idle_inhibitor",
|
"idle_inhibitor",
|
||||||
"cpu",
|
"cpu",
|
||||||
"custom/cputemp",
|
"temperature",
|
||||||
"memory",
|
"memory",
|
||||||
"custom/nvidia",
|
"custom/nvidia",
|
||||||
"disk#root",
|
"disk#root",
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
"modules-right": [
|
"modules-right": [
|
||||||
"idle_inhibitor",
|
"idle_inhibitor",
|
||||||
"cpu",
|
"cpu",
|
||||||
"custom/cputemp",
|
"temperature",
|
||||||
"memory",
|
"memory",
|
||||||
"disk#root",
|
"disk#root",
|
||||||
"backlight",
|
"backlight",
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
"modules-right": [
|
"modules-right": [
|
||||||
"idle_inhibitor",
|
"idle_inhibitor",
|
||||||
"cpu",
|
"cpu",
|
||||||
"custom/cputemp",
|
"temperature",
|
||||||
"memory",
|
"memory",
|
||||||
"disk#root",
|
"disk#root",
|
||||||
"backlight",
|
"backlight",
|
||||||
|
|||||||
@@ -56,6 +56,7 @@ installmap = dict(
|
|||||||
"ripgrep",
|
"ripgrep",
|
||||||
"npm", # required for nvim plugins
|
"npm", # required for nvim plugins
|
||||||
"go", # required for vim-hexokinase build
|
"go", # required for vim-hexokinase build
|
||||||
|
"tree-sitter-cli", # required for nvim treesitter
|
||||||
),
|
),
|
||||||
utils=("uv", "ncdu", "unzip", "jq", "bluetui"),
|
utils=("uv", "ncdu", "unzip", "jq", "bluetui"),
|
||||||
gittools=(
|
gittools=(
|
||||||
@@ -330,6 +331,7 @@ 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())
|
||||||
@@ -398,7 +400,7 @@ def install_sway(overwrite: bool, reinstall: bool) -> None:
|
|||||||
"waybar",
|
"waybar",
|
||||||
"gtklock",
|
"gtklock",
|
||||||
"gtk-3.0",
|
"gtk-3.0",
|
||||||
"mako",
|
"swaync",
|
||||||
"fuzzel",
|
"fuzzel",
|
||||||
"nwg-drawer",
|
"nwg-drawer",
|
||||||
"xdg-desktop-portal-wlr",
|
"xdg-desktop-portal-wlr",
|
||||||
@@ -412,6 +414,8 @@ 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,
|
||||||
|
|||||||
Reference in New Issue
Block a user