Compare commits
133
Commits
endos
...
fedeedb070
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fedeedb070 | ||
|
|
32f3429acf | ||
|
|
da83f9ebcb | ||
|
|
b9333e7b39 | ||
|
|
eb77beb9e9 | ||
|
|
ff21471623 | ||
|
|
3a350b4f15 | ||
|
|
10df55cded | ||
|
|
e138d87f2c | ||
|
|
6fe5f1a047 | ||
|
|
2f7cc0f43d | ||
|
|
cdf8164ed8 | ||
|
|
ee68c858fb | ||
|
|
19da4a0f06 | ||
|
|
46c2c5f97e | ||
|
|
f19d8c4f15 | ||
|
|
10b67325e8 | ||
|
|
b82de0988e | ||
|
|
e219f9976e | ||
|
|
1bf1ac4664 | ||
|
|
73ff813c6a | ||
|
|
7adc711bcd | ||
|
|
dc9b1aaf4f | ||
|
|
943dfe676d | ||
|
|
2148012cce | ||
|
|
cd40badbe0 | ||
|
|
50f61afdf6 | ||
|
|
0891f4ffdb | ||
|
|
3dc419248f | ||
|
|
fbbb662cf9 | ||
|
|
af5e04a5e4 | ||
|
|
84432e1f82 | ||
|
|
3428c87856 | ||
|
|
13382f42fa | ||
|
|
43edbad2f6 | ||
|
|
c481cbc15f | ||
|
|
bcdb3ea110 | ||
|
|
b5621616d8 | ||
|
|
bdfc601b5f | ||
|
|
1687bc25d1 | ||
|
|
387064a349 | ||
|
|
8b2ce18321 | ||
|
|
b6fdb23275 | ||
|
|
4a9fd6c201 | ||
|
|
0acc0b37b7 | ||
|
|
c47abe26fe | ||
|
|
900a20a31f | ||
|
|
5c052509c4 | ||
|
|
03a9ca5060 | ||
|
|
9f17fbcb37 | ||
|
|
c42475c571 | ||
|
|
0d1702456e | ||
|
|
2914b79ded | ||
|
|
1c8d5284ca | ||
|
|
640379c105 | ||
|
|
379ae0f786 | ||
|
|
fe08de4f9a | ||
|
|
2d0f0470a0 | ||
|
|
99ab844325 | ||
|
|
927f556aef | ||
|
|
f0e19a1f71 | ||
|
|
608d9b8cf7 | ||
|
|
adbe1641ec | ||
|
|
0509989016 | ||
|
|
49dae6be39 | ||
|
|
4c362b4a71 | ||
|
|
0a1940c966 | ||
|
|
ddd7cb9fc4 | ||
|
|
749c89da0c | ||
|
|
1466a808c9 | ||
|
|
a9f9a69887 | ||
|
|
bd2c3c5303 | ||
|
|
98d8281d28 | ||
|
|
49e474caeb | ||
|
|
04e1114959 | ||
|
|
45e614e0c8 | ||
|
|
c9d9c39900 | ||
|
|
180e3e18e1 | ||
|
|
63f288c103 | ||
|
|
2d1994a042 | ||
|
|
b04ac36fb8 | ||
|
|
5310712394 | ||
|
|
e2e5716f80 | ||
|
|
fdfefd1d16 | ||
|
|
c08828490c | ||
|
|
f9545c9a5d | ||
|
|
ed1b0297db | ||
|
|
ed551d49ab | ||
|
|
775b156dba | ||
|
|
ee1344aca6 | ||
|
|
93d36adea8 | ||
|
|
c8e3d09a09 | ||
|
|
f2494ee53e | ||
|
|
8fb6d19af1 | ||
|
|
27776b26cd | ||
|
|
69fbd7cd0e | ||
|
|
be85a81057 | ||
|
|
54feaab93c | ||
|
|
7f9354c811 | ||
|
|
3a40f7d1d7 | ||
|
|
5468143a10 | ||
|
|
b3d67b9f2e | ||
|
|
28d1aee359 | ||
|
|
64655ec14e | ||
|
|
faeb82b6ff | ||
|
|
b16376854b | ||
|
|
545444c44b | ||
|
|
944cfda071 | ||
|
|
620ecae951 | ||
|
|
29b622c4e6 | ||
|
|
ff7282ee40 | ||
|
|
6d99debc67 | ||
|
|
6e33fdc5a0 | ||
|
|
818e445bf8 | ||
|
|
8d094bde9e | ||
|
|
9393888574 | ||
|
|
ccd537e7b8 | ||
|
|
a6e27b8903 | ||
|
|
8c2dcfcfa5 | ||
|
|
8d217d7894 | ||
|
|
d56dbfcc3b | ||
|
|
5902e9ad33 | ||
|
|
91be525403 | ||
|
|
afa25c9ddd | ||
|
|
6c777a7541 | ||
|
|
a799c63b90 | ||
|
|
8afe69fab8 | ||
|
|
9dbbce9a41 | ||
|
|
7b8e7e8ed2 | ||
|
|
6164c47093 | ||
|
|
3dba4eed8e | ||
|
|
29a90d44d8 | ||
|
|
823150aa43 |
+3
-1
@@ -1,3 +1,5 @@
|
|||||||
.gitsecret/keys/random_seed
|
.gitsecret/keys/random_seed
|
||||||
!*.secret
|
!*.secret
|
||||||
homeassistant/SERVICE_ACCOUNT.JSON
|
CONFIG/homeassistant/SERVICE_ACCOUNT.JSON
|
||||||
|
CONFIG/vdirsyncer/config
|
||||||
|
CONFIG/rclone/rclone.conf
|
||||||
|
|||||||
@@ -1 +1,3 @@
|
|||||||
homeassistant/SERVICE_ACCOUNT.JSON:5a3eabcbc53278f7713423b0ea20d0558f6334f8a1f6aed2a2e4cfb2ca9c93ab
|
CONFIG/homeassistant/SERVICE_ACCOUNT.JSON:5a3eabcbc53278f7713423b0ea20d0558f6334f8a1f6aed2a2e4cfb2ca9c93ab
|
||||||
|
CONFIG/vdirsyncer/config:73434db7346e1d070c38c8099c0c8ec99925f4d89ba3e558875fa2a179f41a25
|
||||||
|
CONFIG/rclone/rclone.conf:85e963d7e0487bf4c10c63a135cc958259eb4156276661276fccb4d9595e79bd
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
[general]
|
[general]
|
||||||
enable-osc8=true
|
|
||||||
log-file=~/aerc.log
|
log-file=~/aerc.log
|
||||||
|
|
||||||
[ui]
|
[ui]
|
||||||
@@ -25,8 +24,8 @@ icon-signed=✔
|
|||||||
icon-signed-encrypted=✔
|
icon-signed-encrypted=✔
|
||||||
icon-unknown=✘
|
icon-unknown=✘
|
||||||
icon-invalid=⚠
|
icon-invalid=⚠
|
||||||
reverse-thread-order=true
|
reverse-thread-order=false
|
||||||
threading-enabled=true
|
threading-enabled=false
|
||||||
|
|
||||||
[viewer]
|
[viewer]
|
||||||
always-show-mime=true
|
always-show-mime=true
|
||||||
@@ -73,12 +73,12 @@ D = :delete-message<Enter>
|
|||||||
<tab> = :next-part<Enter>
|
<tab> = :next-part<Enter>
|
||||||
<C-o> = :prev-part<Enter>
|
<C-o> = :prev-part<Enter>
|
||||||
<backtab> = :prev-part<Enter>
|
<backtab> = :prev-part<Enter>
|
||||||
<C-l> = :open-link <space>
|
|
||||||
A = :unmark -a<Enter>:mark -T<Enter>:archive flat<Enter>
|
A = :unmark -a<Enter>:mark -T<Enter>:archive flat<Enter>
|
||||||
aa = :archive flat<Enter>
|
aa = :archive flat<Enter>
|
||||||
D = :delete-message<Enter>
|
D = :delete-message<Enter>
|
||||||
dd = :mv Trash<Enter>
|
dd = :mv Trash<Enter>
|
||||||
f = :forward -A<Enter>
|
f = :open-link <space>
|
||||||
|
<C-f> = :forward -A<Enter>
|
||||||
H = :toggle-headers<Enter>
|
H = :toggle-headers<Enter>
|
||||||
J = :next-message<Enter>
|
J = :next-message<Enter>
|
||||||
K = :prev-message<Enter>
|
K = :prev-message<Enter>
|
||||||
@@ -0,0 +1,276 @@
|
|||||||
|
## where to store your database, default is your system data directory
|
||||||
|
## linux/mac: ~/.local/share/atuin/history.db
|
||||||
|
## windows: %USERPROFILE%/.local/share/atuin/history.db
|
||||||
|
# db_path = "~/.history.db"
|
||||||
|
|
||||||
|
## where to store your encryption key, default is your system data directory
|
||||||
|
## linux/mac: ~/.local/share/atuin/key
|
||||||
|
## windows: %USERPROFILE%/.local/share/atuin/key
|
||||||
|
# key_path = "~/.key"
|
||||||
|
|
||||||
|
## where to store your auth session token, default is your system data directory
|
||||||
|
## linux/mac: ~/.local/share/atuin/session
|
||||||
|
## windows: %USERPROFILE%/.local/share/atuin/session
|
||||||
|
# session_path = "~/.session"
|
||||||
|
|
||||||
|
## date format used, either "us" or "uk"
|
||||||
|
# dialect = "us"
|
||||||
|
|
||||||
|
## default timezone to use when displaying time
|
||||||
|
## either "l", "local" to use the system's current local timezone, or an offset
|
||||||
|
## from UTC in the format of "<+|->H[H][:M[M][:S[S]]]"
|
||||||
|
## for example: "+9", "-05", "+03:30", "-01:23:45", etc.
|
||||||
|
# timezone = "local"
|
||||||
|
|
||||||
|
## enable or disable automatic sync
|
||||||
|
# auto_sync = true
|
||||||
|
|
||||||
|
## enable or disable automatic update checks
|
||||||
|
update_check = false
|
||||||
|
|
||||||
|
## address of the sync server
|
||||||
|
# sync_address = "https://api.atuin.sh"
|
||||||
|
|
||||||
|
## how often to sync history. note that this is only triggered when a command
|
||||||
|
## is ran, so sync intervals may well be longer
|
||||||
|
## set it to 0 to sync after every command
|
||||||
|
# sync_frequency = "10m"
|
||||||
|
|
||||||
|
## which search mode to use
|
||||||
|
## possible values: prefix, fulltext, fuzzy, skim
|
||||||
|
search_mode = "fulltext"
|
||||||
|
|
||||||
|
## which filter mode to use by default
|
||||||
|
## possible values: "global", "host", "session", "directory", "workspace"
|
||||||
|
## consider using search.filters to customize the enablement and order of filter modes
|
||||||
|
# filter_mode = "global"
|
||||||
|
|
||||||
|
## With workspace filtering enabled, Atuin will filter for commands executed
|
||||||
|
## in any directory within a git repository tree (default: false).
|
||||||
|
##
|
||||||
|
## To use workspace mode by default when available, set this to true and
|
||||||
|
## set filter_mode to "workspace" or leave it unspecified and
|
||||||
|
## set search.filters to include "workspace" before other filter modes.
|
||||||
|
# workspaces = false
|
||||||
|
|
||||||
|
## which filter mode to use when atuin is invoked from a shell up-key binding
|
||||||
|
## the accepted values are identical to those of "filter_mode"
|
||||||
|
## leave unspecified to use same mode set in "filter_mode"
|
||||||
|
filter_mode_shell_up_key_binding = "session"
|
||||||
|
|
||||||
|
## which search mode to use when atuin is invoked from a shell up-key binding
|
||||||
|
## the accepted values are identical to those of "search_mode"
|
||||||
|
## leave unspecified to use same mode set in "search_mode"
|
||||||
|
# search_mode_shell_up_key_binding = "fuzzy"
|
||||||
|
|
||||||
|
## which style to use
|
||||||
|
## possible values: auto, full, compact
|
||||||
|
# style = "auto"
|
||||||
|
|
||||||
|
## the maximum number of lines the interface should take up
|
||||||
|
## set it to 0 to always go full screen
|
||||||
|
inline_height = 20
|
||||||
|
|
||||||
|
## the maximum number of lines the interface should take up
|
||||||
|
## when atuin is invoked from a shell up-key binding
|
||||||
|
## the accepted values are identical to those of "inline_height"
|
||||||
|
inline_height_shell_up_key_binding = 20
|
||||||
|
|
||||||
|
## Invert the UI - put the search bar at the top , Default to `false`
|
||||||
|
# invert = false
|
||||||
|
|
||||||
|
## enable or disable showing a preview of the selected command
|
||||||
|
## useful when the command is longer than the terminal width and is cut off
|
||||||
|
# show_preview = true
|
||||||
|
|
||||||
|
## what to do when the escape key is pressed when searching
|
||||||
|
## possible values: return-original, return-query
|
||||||
|
exit_mode = "return-query"
|
||||||
|
|
||||||
|
## possible values: emacs, subl
|
||||||
|
# word_jump_mode = "emacs"
|
||||||
|
|
||||||
|
## characters that count as a part of a word
|
||||||
|
# word_chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
|
||||||
|
|
||||||
|
## number of context lines to show when scrolling by pages
|
||||||
|
# scroll_context_lines = 1
|
||||||
|
|
||||||
|
## use ctrl instead of alt as the shortcut modifier key for numerical UI shortcuts
|
||||||
|
## alt-0 .. alt-9
|
||||||
|
ctrl_n_shortcuts = true
|
||||||
|
|
||||||
|
## default history list format - can also be specified with the --format arg
|
||||||
|
# history_format = "{time}\t{command}\t{duration}"
|
||||||
|
|
||||||
|
## prevent commands matching any of these regexes from being written to history.
|
||||||
|
## Note that these regular expressions are unanchored, i.e. if they don't start
|
||||||
|
## with ^ or end with $, they'll match anywhere in the command.
|
||||||
|
## For details on the supported regular expression syntax, see
|
||||||
|
## https://docs.rs/regex/latest/regex/#syntax
|
||||||
|
history_filter = [ "^exit$", "^ .*", "_secret=" ]
|
||||||
|
|
||||||
|
## 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
|
||||||
|
## start with ^ or end with $, they'll match anywhere in CWD.
|
||||||
|
## For details on the supported regular expression syntax, see
|
||||||
|
## https://docs.rs/regex/latest/regex/#syntax
|
||||||
|
# cwd_filter = [
|
||||||
|
# "^/very/secret/area",
|
||||||
|
# ]
|
||||||
|
|
||||||
|
## Configure the maximum height of the preview to show.
|
||||||
|
## Useful when you have long scripts in your history that you want to distinguish
|
||||||
|
## by more than the first few lines.
|
||||||
|
max_preview_height = 20
|
||||||
|
|
||||||
|
## Configure whether or not to show the help row, which includes the current Atuin
|
||||||
|
## version (and whether an update is available), a keymap hint, and the total
|
||||||
|
## amount of commands in your history.
|
||||||
|
# show_help = true
|
||||||
|
|
||||||
|
## Configure whether or not to show tabs for search and inspect
|
||||||
|
# show_tabs = true
|
||||||
|
|
||||||
|
## Configure whether or not the tabs row may be auto-hidden, which includes the current Atuin
|
||||||
|
## tab, such as Search or Inspector, and other tabs you may wish to see. This will
|
||||||
|
## only be hidden if there are fewer than this count of lines available, and does not affect the use
|
||||||
|
## of keyboard shortcuts to switch tab. 0 to never auto-hide, default is 8 (lines).
|
||||||
|
## This is ignored except in `compact` mode.
|
||||||
|
# auto_hide_height = 8
|
||||||
|
|
||||||
|
## Defaults to true. This matches history against a set of default regex, and will not save it if we get a match. Defaults include
|
||||||
|
## 1. AWS key id
|
||||||
|
## 2. Github pat (old and new)
|
||||||
|
## 3. Slack oauth tokens (bot, user)
|
||||||
|
## 4. Slack webhooks
|
||||||
|
## 5. Stripe live/test keys
|
||||||
|
# secrets_filter = true
|
||||||
|
|
||||||
|
## Defaults to true. If enabled, upon hitting enter Atuin will immediately execute the command. Press tab to return to the shell and edit.
|
||||||
|
# This applies for new installs. Old installs will keep the old behaviour unless configured otherwise.
|
||||||
|
# enter_accept = true
|
||||||
|
|
||||||
|
## Defaults to false. If enabled, when triggered after && or ||, Atuin will complete commands to chain rather than replace the current line.
|
||||||
|
# command_chaining = false
|
||||||
|
|
||||||
|
## Defaults to "emacs". This specifies the keymap on the startup of `atuin
|
||||||
|
## search`. If this is set to "auto", the startup keymap mode in the Atuin
|
||||||
|
## search is automatically selected based on the shell's keymap where the
|
||||||
|
## keybinding is defined. If this is set to "emacs", "vim-insert", or
|
||||||
|
## "vim-normal", the startup keymap mode in the Atuin search is forced to be
|
||||||
|
## the specified one.
|
||||||
|
keymap_mode = "auto"
|
||||||
|
|
||||||
|
## Cursor style in each keymap mode. If specified, the cursor style is changed
|
||||||
|
## in entering the cursor shape. Available values are "default" and
|
||||||
|
## "{blink,steady}-{block,underline,bar}".
|
||||||
|
# keymap_cursor = { emacs = "blink-block", vim_insert = "blink-block", vim_normal = "steady-block" }
|
||||||
|
|
||||||
|
# network_connect_timeout = 5
|
||||||
|
# network_timeout = 5
|
||||||
|
|
||||||
|
## Timeout (in seconds) for acquiring a local database connection (sqlite)
|
||||||
|
# local_timeout = 5
|
||||||
|
|
||||||
|
## Set this to true and Atuin will minimize motion in the UI - timers will not update live, etc.
|
||||||
|
## Alternatively, set env NO_MOTION=true
|
||||||
|
# prefers_reduced_motion = false
|
||||||
|
|
||||||
|
[stats]
|
||||||
|
## Set commands where we should consider the subcommand for statistics. Eg, kubectl get vs just kubectl
|
||||||
|
# common_subcommands = [
|
||||||
|
# "apt",
|
||||||
|
# "cargo",
|
||||||
|
# "composer",
|
||||||
|
# "dnf",
|
||||||
|
# "docker",
|
||||||
|
# "git",
|
||||||
|
# "go",
|
||||||
|
# "ip",
|
||||||
|
# "jj",
|
||||||
|
# "kubectl",
|
||||||
|
# "nix",
|
||||||
|
# "nmcli",
|
||||||
|
# "npm",
|
||||||
|
# "pecl",
|
||||||
|
# "pnpm",
|
||||||
|
# "podman",
|
||||||
|
# "port",
|
||||||
|
# "systemctl",
|
||||||
|
# "tmux",
|
||||||
|
# "yarn",
|
||||||
|
# ]
|
||||||
|
|
||||||
|
## Set commands that should be totally stripped and ignored from stats
|
||||||
|
# common_prefix = [ "sudo" ]
|
||||||
|
|
||||||
|
## Set commands that will be completely ignored from stats
|
||||||
|
# ignored_commands = [ "cd", "ls", "vi" ]
|
||||||
|
|
||||||
|
[keys]
|
||||||
|
# Defaults to true. If disabled, using the up/down key won't exit the TUI when scrolled past the first/last entry.
|
||||||
|
# scroll_exits = true
|
||||||
|
# Defaults to true. The left arrow key will exit the TUI when scrolling before the first character
|
||||||
|
# exit_past_line_start = true
|
||||||
|
# Defaults to true. The right arrow key performs the same functionality as Tab and copies the selected line to the command line to be modified.
|
||||||
|
# accept_past_line_end = true
|
||||||
|
|
||||||
|
[sync]
|
||||||
|
# Enable sync v2 by default
|
||||||
|
# This ensures that sync v2 is enabled for new installs only
|
||||||
|
# In a later release it will become the default across the board
|
||||||
|
records = true
|
||||||
|
|
||||||
|
[preview]
|
||||||
|
## which preview strategy to use to calculate the preview height (respects max_preview_height).
|
||||||
|
## possible values: auto, static
|
||||||
|
## auto: length of the selected command.
|
||||||
|
## static: length of the longest command stored in the history.
|
||||||
|
## fixed: use max_preview_height as fixed height.
|
||||||
|
# strategy = "auto"
|
||||||
|
|
||||||
|
[daemon]
|
||||||
|
## Enables using the daemon to sync. Requires the daemon to be running in the background. Start it with `atuin daemon`
|
||||||
|
# enabled = false
|
||||||
|
|
||||||
|
## How often the daemon should sync in seconds
|
||||||
|
# sync_frequency = 300
|
||||||
|
|
||||||
|
## The path to the unix socket used by the daemon (on unix systems)
|
||||||
|
## linux/mac: ~/.local/share/atuin/atuin.sock
|
||||||
|
## windows: Not Supported
|
||||||
|
# socket_path = "~/.local/share/atuin/atuin.sock"
|
||||||
|
|
||||||
|
## Use systemd socket activation rather than opening the given path (the path must still be correct for the client)
|
||||||
|
## linux: false
|
||||||
|
## mac/windows: Not Supported
|
||||||
|
# systemd_socket = false
|
||||||
|
|
||||||
|
## The port that should be used for TCP on non unix systems
|
||||||
|
# tcp_port = 8889
|
||||||
|
|
||||||
|
# [theme]
|
||||||
|
## Color theme to use for rendering in the terminal.
|
||||||
|
## There are some built-in themes, including the base theme ("default"),
|
||||||
|
## "autumn" and "marine". You can add your own themes to the "./themes" subdirectory of your
|
||||||
|
## Atuin config (or ATUIN_THEME_DIR, if provided) as TOML files whose keys should be one or
|
||||||
|
## more of AlertInfo, AlertWarn, AlertError, Annotation, Base, Guidance, Important, and
|
||||||
|
## the string values as lowercase entries from this list:
|
||||||
|
## https://ogeon.github.io/docs/palette/master/palette/named/index.html
|
||||||
|
## If you provide a custom theme file, it should be called "NAME.toml" and the theme below
|
||||||
|
## should be the stem, i.e. `theme = "NAME"` for your chosen NAME.
|
||||||
|
# name = "autumn"
|
||||||
|
|
||||||
|
## Whether the theme manager should output normal or extra information to help fix themes.
|
||||||
|
## Boolean, true or false. If unset, left up to the theme manager.
|
||||||
|
# debug = true
|
||||||
|
|
||||||
|
[search]
|
||||||
|
## The list of enabled filter modes, in order of priority.
|
||||||
|
## The "workspace" mode is skipped when not in a workspace or workspaces = false.
|
||||||
|
## Default filter mode can be overridden with the filter_mode setting.
|
||||||
|
# filters = [ "global", "host", "session", "workspace", "directory" ]
|
||||||
|
|
||||||
|
[ui]
|
||||||
|
columns = [ "datetime", "duration", "host", "command" ]
|
||||||
@@ -0,0 +1,286 @@
|
|||||||
|
#? Config file for btop v.1.4.7
|
||||||
|
|
||||||
|
#* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes.
|
||||||
|
#* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes"
|
||||||
|
color_theme = "Default"
|
||||||
|
|
||||||
|
#* If the theme set background should be shown, set to False if you want terminal background transparency.
|
||||||
|
theme_background = false
|
||||||
|
|
||||||
|
#* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false.
|
||||||
|
truecolor = true
|
||||||
|
|
||||||
|
#* Set to true to force tty mode regardless if a real tty has been detected or not.
|
||||||
|
#* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols.
|
||||||
|
force_tty = false
|
||||||
|
|
||||||
|
#* Option to disable presets. Either the default preset, custom presets, or all presets.
|
||||||
|
#* "Off" All presets are enabled.
|
||||||
|
#* "Default" preset is disabled.#* "Custom" presets are disabled.#* "All" presets are disabled.
|
||||||
|
disable_presets = "Off"
|
||||||
|
|
||||||
|
#* Define presets for the layout of the boxes. Preset 0 is always all boxes shown with default settings. Max 9 presets.
|
||||||
|
#* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box.
|
||||||
|
#* Use whitespace " " as separator between different presets.
|
||||||
|
#* Example: "cpu:0:default,mem:0:tty,proc:1:default cpu:0:braille,proc:0:tty"
|
||||||
|
presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:default cpu:0:block,net:0:tty"
|
||||||
|
|
||||||
|
#* 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.
|
||||||
|
vim_keys = true
|
||||||
|
|
||||||
|
#* Disable all mouse events.
|
||||||
|
disable_mouse = false
|
||||||
|
|
||||||
|
#* Rounded corners on boxes, is ignored if TTY mode is ON.
|
||||||
|
rounded_corners = true
|
||||||
|
|
||||||
|
#* Use terminal synchronized output sequences to reduce flickering on supported terminals.
|
||||||
|
terminal_sync = true
|
||||||
|
|
||||||
|
#* Default symbols to use for graph creation, "braille", "block" or "tty".
|
||||||
|
#* "braille" offers the highest resolution but might not be included in all fonts.
|
||||||
|
#* "block" has half the resolution of braille but uses more common characters.
|
||||||
|
#* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY.
|
||||||
|
#* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view.
|
||||||
|
graph_symbol = "braille"
|
||||||
|
|
||||||
|
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||||
|
graph_symbol_cpu = "default"
|
||||||
|
|
||||||
|
# Graph symbol to use for graphs in gpu box, "default", "braille", "block" or "tty".
|
||||||
|
graph_symbol_gpu = "default"
|
||||||
|
|
||||||
|
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||||
|
graph_symbol_mem = "default"
|
||||||
|
|
||||||
|
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||||
|
graph_symbol_net = "default"
|
||||||
|
|
||||||
|
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||||
|
graph_symbol_proc = "default"
|
||||||
|
|
||||||
|
#* Manually set which boxes to show. Available values are "cpu mem net proc" and "gpu0" through "gpu5", separate values with whitespace.
|
||||||
|
shown_boxes = "gpu0 cpu mem net proc"
|
||||||
|
|
||||||
|
#* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs.
|
||||||
|
update_ms = 2000
|
||||||
|
|
||||||
|
#* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct",
|
||||||
|
#* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly.
|
||||||
|
proc_sorting = "memory"
|
||||||
|
|
||||||
|
#* Reverse sorting order, True or False.
|
||||||
|
proc_reversed = false
|
||||||
|
|
||||||
|
#* Show processes as a tree.
|
||||||
|
proc_tree = false
|
||||||
|
|
||||||
|
#* Use the cpu graph colors in the process list.
|
||||||
|
proc_colors = true
|
||||||
|
|
||||||
|
#* Use a darkening gradient in the process list.
|
||||||
|
proc_gradient = true
|
||||||
|
|
||||||
|
#* If process cpu usage should be of the core it's running on or usage of the total available cpu power.
|
||||||
|
proc_per_core = false
|
||||||
|
|
||||||
|
#* Show process memory as bytes instead of percent.
|
||||||
|
proc_mem_bytes = true
|
||||||
|
|
||||||
|
#* Show cpu graph for each process.
|
||||||
|
proc_cpu_graphs = true
|
||||||
|
|
||||||
|
#* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate)
|
||||||
|
proc_info_smaps = false
|
||||||
|
|
||||||
|
#* Show proc box on left side of screen instead of right.
|
||||||
|
proc_left = false
|
||||||
|
|
||||||
|
#* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop).
|
||||||
|
proc_filter_kernel = false
|
||||||
|
|
||||||
|
#* Should the process list follow the selected process when detailed view is open.
|
||||||
|
proc_follow_detailed = true
|
||||||
|
|
||||||
|
#* In tree-view, always accumulate child process resources in the parent process.
|
||||||
|
proc_aggregate = false
|
||||||
|
|
||||||
|
#* Should cpu and memory usage display be preserved for dead processes when paused.
|
||||||
|
keep_dead_proc_usage = false
|
||||||
|
|
||||||
|
#* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available.
|
||||||
|
#* Select from a list of detected attributes from the options menu.
|
||||||
|
cpu_graph_upper = "Auto"
|
||||||
|
|
||||||
|
#* Sets the CPU stat shown in lower half of the CPU graph, "total" is always available.
|
||||||
|
#* Select from a list of detected attributes from the options menu.
|
||||||
|
cpu_graph_lower = "Auto"
|
||||||
|
|
||||||
|
#* If gpu info should be shown in the cpu box. Available values = "Auto", "On" and "Off".
|
||||||
|
show_gpu_info = "Auto"
|
||||||
|
|
||||||
|
#* Toggles if the lower CPU graph should be inverted.
|
||||||
|
cpu_invert_lower = true
|
||||||
|
|
||||||
|
#* Set to True to completely disable the lower CPU graph.
|
||||||
|
cpu_single_graph = false
|
||||||
|
|
||||||
|
#* Show cpu box at bottom of screen instead of top.
|
||||||
|
cpu_bottom = false
|
||||||
|
|
||||||
|
#* Shows the system uptime in the CPU box.
|
||||||
|
show_uptime = true
|
||||||
|
|
||||||
|
#* Shows the CPU package current power consumption in watts. Requires running `make setcap` or `make setuid` or running with sudo.
|
||||||
|
show_cpu_watts = true
|
||||||
|
|
||||||
|
#* Show cpu temperature.
|
||||||
|
check_temp = true
|
||||||
|
|
||||||
|
#* Which sensor to use for cpu temperature, use options menu to select from list of available sensors.
|
||||||
|
cpu_sensor = "Auto"
|
||||||
|
|
||||||
|
#* Show temperatures for cpu cores also if check_temp is True and sensors has been found.
|
||||||
|
show_coretemp = true
|
||||||
|
|
||||||
|
#* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core.
|
||||||
|
#* Use lm-sensors or similar to see which cores are reporting temperatures on your machine.
|
||||||
|
#* Format "x:y" x=core with wrong temp, y=core with correct temp, use space as separator between multiple entries.
|
||||||
|
#* Example: "4:0 5:1 6:3"
|
||||||
|
cpu_core_map = ""
|
||||||
|
|
||||||
|
#* Which temperature scale to use, available values: "celsius", "fahrenheit", "kelvin" and "rankine".
|
||||||
|
temp_scale = "celsius"
|
||||||
|
|
||||||
|
#* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024.
|
||||||
|
base_10_sizes = false
|
||||||
|
|
||||||
|
#* Show CPU frequency.
|
||||||
|
show_cpu_freq = true
|
||||||
|
|
||||||
|
#* How to calculate CPU frequency, available values: "first", "range", "lowest", "highest" and "average".
|
||||||
|
freq_mode = "first"
|
||||||
|
|
||||||
|
#* Draw a clock at top of screen, formatting according to strftime, empty string to disable.
|
||||||
|
#* Special formatting: /host = hostname | /user = username | /uptime = system uptime
|
||||||
|
clock_format = "%X"
|
||||||
|
|
||||||
|
#* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort.
|
||||||
|
background_update = true
|
||||||
|
|
||||||
|
#* Custom cpu model name, empty string to disable.
|
||||||
|
custom_cpu_name = ""
|
||||||
|
|
||||||
|
#* Optional filter for shown disks, should be full path of a mountpoint, separate multiple values with whitespace " ".
|
||||||
|
#* Only disks matching the filter will be shown. Prepend exclude= to only show disks not matching the filter. Examples: disk_filter="/boot /home/user", disks_filter="exclude=/boot /home/user"
|
||||||
|
disks_filter = ""
|
||||||
|
|
||||||
|
#* Show graphs instead of meters for memory values.
|
||||||
|
mem_graphs = true
|
||||||
|
|
||||||
|
#* Show mem box below net box instead of above.
|
||||||
|
mem_below_net = false
|
||||||
|
|
||||||
|
#* Count ZFS ARC in cached and available memory.
|
||||||
|
zfs_arc_cached = true
|
||||||
|
|
||||||
|
#* If swap memory should be shown in memory box.
|
||||||
|
show_swap = true
|
||||||
|
|
||||||
|
#* Show swap as a disk, ignores show_swap value above, inserts itself after first disk.
|
||||||
|
swap_disk = true
|
||||||
|
|
||||||
|
#* If mem box should be split to also show disks info.
|
||||||
|
show_disks = false
|
||||||
|
|
||||||
|
#* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar.
|
||||||
|
only_physical = true
|
||||||
|
|
||||||
|
#* Read disks list from /etc/fstab. This also disables only_physical.
|
||||||
|
use_fstab = true
|
||||||
|
|
||||||
|
#* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool)
|
||||||
|
zfs_hide_datasets = false
|
||||||
|
|
||||||
|
#* Set to true to show available disk space for privileged users.
|
||||||
|
disk_free_priv = false
|
||||||
|
|
||||||
|
#* Toggles if io activity % (disk busy time) should be shown in regular disk usage view.
|
||||||
|
show_io_stat = true
|
||||||
|
|
||||||
|
#* Toggles io mode for disks, showing big graphs for disk read/write speeds.
|
||||||
|
io_mode = false
|
||||||
|
|
||||||
|
#* Set to True to show combined read/write io graphs in io mode.
|
||||||
|
io_graph_combined = false
|
||||||
|
|
||||||
|
#* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ".
|
||||||
|
#* Example: "/mnt/media:100 /:20 /boot:1".
|
||||||
|
io_graph_speeds = ""
|
||||||
|
|
||||||
|
#* Swap the positions of the upload and download speed graphs. When true, upload will be on top.
|
||||||
|
swap_upload_download = false
|
||||||
|
|
||||||
|
#* Set fixed values for network graphs in Mebibits. Is only used if net_auto is also set to False.
|
||||||
|
net_download = 100
|
||||||
|
|
||||||
|
net_upload = 100
|
||||||
|
|
||||||
|
#* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest.
|
||||||
|
net_auto = true
|
||||||
|
|
||||||
|
#* Sync the auto scaling for download and upload to whichever currently has the highest scale.
|
||||||
|
net_sync = true
|
||||||
|
|
||||||
|
#* Starts with the Network Interface specified here.
|
||||||
|
net_iface = ""
|
||||||
|
|
||||||
|
#* "True" shows bitrates in base 10 (Kbps, Mbps). "False" shows bitrates in binary sizes (Kibps, Mibps, etc.). "Auto" uses base_10_sizes.
|
||||||
|
base_10_bitrate = "Auto"
|
||||||
|
|
||||||
|
#* Show battery stats in top right if battery is present.
|
||||||
|
show_battery = true
|
||||||
|
|
||||||
|
#* Which battery to use if multiple are present. "Auto" for auto detection.
|
||||||
|
selected_battery = "Auto"
|
||||||
|
|
||||||
|
#* Show power stats of battery next to charge indicator.
|
||||||
|
show_battery_watts = true
|
||||||
|
|
||||||
|
#* Set loglevel for "~/.local/state/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG".
|
||||||
|
#* The level set includes all lower levels, i.e. "DEBUG" will show all logging info.
|
||||||
|
log_level = "WARNING"
|
||||||
|
|
||||||
|
#* Automatically save current settings to config file on exit.
|
||||||
|
save_config_on_exit = true
|
||||||
|
|
||||||
|
#* Measure PCIe throughput on NVIDIA cards, may impact performance on certain cards.
|
||||||
|
nvml_measure_pcie_speeds = true
|
||||||
|
|
||||||
|
#* Measure PCIe throughput on AMD cards, may impact performance on certain cards.
|
||||||
|
rsmi_measure_pcie_speeds = true
|
||||||
|
|
||||||
|
#* Horizontally mirror the GPU graph.
|
||||||
|
gpu_mirror_graph = true
|
||||||
|
|
||||||
|
#* Set which GPU vendors to show. Available values are "nvidia amd intel apple"
|
||||||
|
shown_gpus = "nvidia amd intel"
|
||||||
|
|
||||||
|
#* Custom gpu0 model name, empty string to disable.
|
||||||
|
custom_gpu_name0 = ""
|
||||||
|
|
||||||
|
#* Custom gpu1 model name, empty string to disable.
|
||||||
|
custom_gpu_name1 = ""
|
||||||
|
|
||||||
|
#* Custom gpu2 model name, empty string to disable.
|
||||||
|
custom_gpu_name2 = ""
|
||||||
|
|
||||||
|
#* Custom gpu3 model name, empty string to disable.
|
||||||
|
custom_gpu_name3 = ""
|
||||||
|
|
||||||
|
#* Custom gpu4 model name, empty string to disable.
|
||||||
|
custom_gpu_name4 = ""
|
||||||
|
|
||||||
|
#* Custom gpu5 model name, empty string to disable.
|
||||||
|
custom_gpu_name5 = ""
|
||||||
@@ -0,0 +1,156 @@
|
|||||||
|
# -*- conf -*-
|
||||||
|
|
||||||
|
# shell=$SHELL (if set, otherwise user's default shell from /etc/passwd)
|
||||||
|
# term=foot (or xterm-256color if built with -Dterminfo=disabled)
|
||||||
|
# login-shell=no
|
||||||
|
|
||||||
|
# app-id=foot
|
||||||
|
# title=foot
|
||||||
|
# locked-title=no
|
||||||
|
|
||||||
|
font=monospace:size=10,JetBrainsMono Nerd Font:size=10
|
||||||
|
# font-bold=<bold variant of regular font>
|
||||||
|
# font-italic=<italic variant of regular font>
|
||||||
|
# font-bold-italic=<bold+italic variant of regular font>
|
||||||
|
# line-height=<font metrics>
|
||||||
|
# letter-spacing=0
|
||||||
|
# horizontal-letter-offset=0
|
||||||
|
# vertical-letter-offset=0
|
||||||
|
# underline-offset=<font metrics>
|
||||||
|
# box-drawings-uses-font-glyphs=no
|
||||||
|
dpi-aware=yes
|
||||||
|
|
||||||
|
# initial-window-size-pixels=700x500 # Or,
|
||||||
|
# initial-window-size-chars=<COLSxROWS>
|
||||||
|
# initial-window-mode=windowed
|
||||||
|
# resize-delay-ms=100
|
||||||
|
|
||||||
|
# notify=notify-send -a ${app-id} -i ${app-id} ${title} ${body}
|
||||||
|
|
||||||
|
# bold-text-in-bright=no
|
||||||
|
# word-delimiters=,│`|:"'()[]{}<>
|
||||||
|
# selection-target=primary
|
||||||
|
# workers=<number of logical CPUs>
|
||||||
|
|
||||||
|
[main]
|
||||||
|
include=/usr/share/foot/themes/gruvbox
|
||||||
|
|
||||||
|
[environment]
|
||||||
|
SYSTEMD_EDITOR=/usr/bin/nvim
|
||||||
|
EDITOR=/usr/bin/nvim
|
||||||
|
VISUAL=/usr/bin/nvim
|
||||||
|
PAGER="bat --style=header,rule,snip"
|
||||||
|
|
||||||
|
[bell]
|
||||||
|
# urgent=no
|
||||||
|
# notify=no
|
||||||
|
# command=
|
||||||
|
# command-focused=no
|
||||||
|
|
||||||
|
[scrollback]
|
||||||
|
lines=100000
|
||||||
|
# multiplier=3.0
|
||||||
|
# indicator-position=relative
|
||||||
|
# indicator-format=
|
||||||
|
|
||||||
|
[url]
|
||||||
|
# launch=xdg-open ${url}
|
||||||
|
# label-letters=sadfjklewcmpgh
|
||||||
|
# osc8-underline=url-mode
|
||||||
|
# protocols=http, https, ftp, ftps, file, gemini, gopher
|
||||||
|
# uri-characters=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_.,~:;/?#@!$&%*+="'()[]
|
||||||
|
|
||||||
|
[cursor]
|
||||||
|
# style=block
|
||||||
|
# color=<inverse foreground/background>
|
||||||
|
# blink=no
|
||||||
|
# beam-thickness=1.5
|
||||||
|
# underline-thickness=<font underline thickness>
|
||||||
|
|
||||||
|
[mouse]
|
||||||
|
# hide-when-typing=no
|
||||||
|
# alternate-scroll-mode=yes
|
||||||
|
|
||||||
|
[csd]
|
||||||
|
# preferred=server
|
||||||
|
size=0
|
||||||
|
# font=<primary font>
|
||||||
|
# color=<foreground color>
|
||||||
|
# hide-when-typing=no
|
||||||
|
# border-width=0
|
||||||
|
# border-color=<csd.color>
|
||||||
|
# button-width=26
|
||||||
|
# button-color=<background color>
|
||||||
|
# button-minimize-color=<regular4>
|
||||||
|
# button-maximize-color=<regular2>
|
||||||
|
# button-close-color=<regular1>
|
||||||
|
|
||||||
|
[key-bindings]
|
||||||
|
# scrollback-up-page=Shift+Page_Up
|
||||||
|
# scrollback-up-half-page=none
|
||||||
|
# scrollback-up-line=none
|
||||||
|
# scrollback-down-page=Shift+Page_Down
|
||||||
|
# scrollback-down-half-page=none
|
||||||
|
# scrollback-down-line=none
|
||||||
|
# clipboard-copy=Control+Shift+c XF86Copy
|
||||||
|
# clipboard-paste=Control+Shift+v XF86Paste
|
||||||
|
# primary-paste=Shift+Insert
|
||||||
|
search-start=Control+Shift+f
|
||||||
|
font-increase=Control+plus
|
||||||
|
font-decrease=Control+minus
|
||||||
|
font-reset=Control+equal
|
||||||
|
# spawn-terminal=Control+Shift+n
|
||||||
|
# minimize=none
|
||||||
|
# maximize=none
|
||||||
|
# fullscreen=none
|
||||||
|
# pipe-visible=[sh -c "xurls | fuzzel | xargs -r firefox"] none
|
||||||
|
# pipe-scrollback=[sh -c "xurls | fuzzel | xargs -r firefox"] none
|
||||||
|
# pipe-selected=[xargs -r firefox] none
|
||||||
|
# show-urls-launch=Control+Shift+o
|
||||||
|
show-urls-copy=Control+Shift+y
|
||||||
|
# show-urls-persistent=none
|
||||||
|
# prompt-prev=Control+Shift+z
|
||||||
|
# prompt-next=Control+Shift+x
|
||||||
|
# unicode-input=none
|
||||||
|
# noop=none
|
||||||
|
|
||||||
|
[search-bindings]
|
||||||
|
# cancel=Control+g Control+c Escape
|
||||||
|
# commit=Return
|
||||||
|
find-prev=Control+p
|
||||||
|
find-next=Control+n
|
||||||
|
# cursor-left=Left Control+b
|
||||||
|
# cursor-left-word=Control+Left Mod1+b
|
||||||
|
# cursor-right=Right Control+f
|
||||||
|
# cursor-right-word=Control+Right Mod1+f
|
||||||
|
# cursor-home=Home Control+a
|
||||||
|
# cursor-end=End Control+e
|
||||||
|
# delete-prev=BackSpace
|
||||||
|
# delete-prev-word=Mod1+BackSpace Control+BackSpace
|
||||||
|
# delete-next=Delete
|
||||||
|
# delete-next-word=Mod1+d Control+Delete
|
||||||
|
# extend-to-word-boundary=Control+w
|
||||||
|
# extend-to-next-whitespace=Control+Shift+w
|
||||||
|
# clipboard-paste=Control+v Control+Shift+v Control+y XF86Paste
|
||||||
|
# primary-paste=Shift+Insert
|
||||||
|
# unicode-input=none
|
||||||
|
|
||||||
|
[url-bindings]
|
||||||
|
# cancel=Control+g Control+c Control+d Escape
|
||||||
|
# toggle-url-visible=t
|
||||||
|
|
||||||
|
[text-bindings]
|
||||||
|
# \x03=Mod4+c # Map Super+c -> Ctrl+c
|
||||||
|
|
||||||
|
[mouse-bindings]
|
||||||
|
# selection-override-modifiers=Shift
|
||||||
|
# primary-paste=BTN_MIDDLE
|
||||||
|
# select-begin=BTN_LEFT
|
||||||
|
# select-begin-block=Control+BTN_LEFT
|
||||||
|
# select-extend=BTN_RIGHT
|
||||||
|
# select-extend-character-wise=Control+BTN_RIGHT
|
||||||
|
# select-word=BTN_LEFT-2
|
||||||
|
# select-word-whitespace=Control+BTN_LEFT-2
|
||||||
|
# select-row=BTN_LEFT-3
|
||||||
|
|
||||||
|
# vim: ft=dosini
|
||||||
@@ -0,0 +1,113 @@
|
|||||||
|
# output=<not set>
|
||||||
|
font=JetBrainsMono-Regular:size=14
|
||||||
|
dpi-aware=auto
|
||||||
|
# use-bold=no
|
||||||
|
prompt="❯ "
|
||||||
|
# placeholder=
|
||||||
|
icon-theme=Qogir-dark
|
||||||
|
# icons-enabled=yes
|
||||||
|
# fields=filename,name,generic
|
||||||
|
# password-character=*
|
||||||
|
# filter-desktop=no
|
||||||
|
match-mode=fzf
|
||||||
|
# sort-result=yes
|
||||||
|
# match-counter=no
|
||||||
|
# delayed-filter-ms=300
|
||||||
|
# delayed-filter-limit=20000
|
||||||
|
# show-actions=no
|
||||||
|
terminal=footclient -e
|
||||||
|
# launch-prefix=<not set>
|
||||||
|
# list-executables-in-path=no
|
||||||
|
|
||||||
|
# anchor=center
|
||||||
|
# x-margin=0
|
||||||
|
# y-margin=0
|
||||||
|
lines=16
|
||||||
|
width=50
|
||||||
|
tabs=4
|
||||||
|
horizontal-pad=50
|
||||||
|
vertical-pad=18
|
||||||
|
inner-pad=10
|
||||||
|
|
||||||
|
image-size-ratio=.25
|
||||||
|
|
||||||
|
# line-height=<use font metrics>
|
||||||
|
# letter-spacing=0
|
||||||
|
|
||||||
|
# layer=overlay
|
||||||
|
exit-on-keyboard-focus-loss=no
|
||||||
|
|
||||||
|
# cache=<not set>
|
||||||
|
|
||||||
|
# render-workers=<number of logical CPUs>
|
||||||
|
# match-workers=<number of logical CPUs>
|
||||||
|
|
||||||
|
[colors]
|
||||||
|
background=0a0a0aff
|
||||||
|
text=ffffffff
|
||||||
|
prompt=00e5ffff
|
||||||
|
input=ffffffff
|
||||||
|
match=00e5ffff
|
||||||
|
selection-match=00e5ffff
|
||||||
|
selection=333333ff
|
||||||
|
selection-text=ffffffff
|
||||||
|
border=00e5ffff
|
||||||
|
|
||||||
|
[border]
|
||||||
|
# width=1
|
||||||
|
# radius=10
|
||||||
|
|
||||||
|
[dmenu]
|
||||||
|
# mode=text # text|index
|
||||||
|
# exit-immediately-if-empty=no
|
||||||
|
|
||||||
|
[key-bindings]
|
||||||
|
# cancel=Escape Control+g Control+c Control+bracketleft
|
||||||
|
# execute=Return KP_Enter Control+y
|
||||||
|
# execute-or-next=Tab
|
||||||
|
# execute-input=Shift+Return Shift+KP_Enter
|
||||||
|
# cursor-left=Left Control+b
|
||||||
|
# cursor-left-word=Control+Left Mod1+b
|
||||||
|
# cursor-right=Right Control+f
|
||||||
|
# cursor-right-word=Control+Right Mod1+f
|
||||||
|
# cursor-home=Home Control+a
|
||||||
|
# cursor-end=End Control+e
|
||||||
|
# delete-prev=BackSpace Control+h
|
||||||
|
# delete-prev-word=Mod1+BackSpace Control+BackSpace Control+w
|
||||||
|
# delete-line-backward=Control+u
|
||||||
|
# delete-next=Delete KP_Delete Control+d
|
||||||
|
# delete-next-word=Mod1+d Control+Delete Control+KP_Delete
|
||||||
|
# delete-line-forward=Control+k
|
||||||
|
# prev=Up Control+p
|
||||||
|
# prev-with-wrap=ISO_Left_Tab
|
||||||
|
# prev-page=Page_Up KP_Page_Up
|
||||||
|
# next=Down Control+n
|
||||||
|
# next-with-wrap=none
|
||||||
|
# next-page=Page_Down KP_Page_Down
|
||||||
|
# expunge=Shift+Delete
|
||||||
|
# clipboard-paste=Control+v XF86Paste
|
||||||
|
# primary-paste=Shift+Insert Shift+KP_Insert
|
||||||
|
|
||||||
|
# custom-N: *dmenu mode only*. Like execute, but with a non-zero
|
||||||
|
# exit-code; custom-1 exits with code 10, custom-2 with 11, custom-3
|
||||||
|
# with 12, and so on.
|
||||||
|
|
||||||
|
# custom-1=Mod1+1
|
||||||
|
# custom-2=Mod1+2
|
||||||
|
# custom-3=Mod1+3
|
||||||
|
# custom-4=Mod1+4
|
||||||
|
# custom-5=Mod1+5
|
||||||
|
# custom-6=Mod1+6
|
||||||
|
# custom-7=Mod1+7
|
||||||
|
# custom-8=Mod1+8
|
||||||
|
# custom-9=Mod1+9
|
||||||
|
# custom-10=Mod1+0
|
||||||
|
# custom-11=Mod1+exclam
|
||||||
|
# custom-12=Mod1+at
|
||||||
|
# custom-13=Mod1+numbersign
|
||||||
|
# custom-14=Mod1+dollar
|
||||||
|
# custom-15=Mod1+percent
|
||||||
|
# custom-16=Mod1+dead_circumflex
|
||||||
|
# custom-17=Mod1+ampersand
|
||||||
|
# custom-18=Mod1+asterix
|
||||||
|
# custom-19=Mod1+parentleft
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
[Settings]
|
||||||
|
gtk-theme-name=Arc-Dark
|
||||||
|
gtk-icon-theme-name=Qogir-Dark
|
||||||
|
gtk-font-name=Noto Sans 10
|
||||||
|
gtk-cursor-theme-name=Qogir-Dark
|
||||||
|
gtk-cursor-theme-size=20
|
||||||
|
gtk-toolbar-style=GTK_TOOLBAR_BOTH_HORIZ
|
||||||
|
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
|
||||||
|
gtk-button-images=0
|
||||||
|
gtk-menu-images=0
|
||||||
|
gtk-enable-event-sounds=0
|
||||||
|
gtk-enable-input-feedback-sounds=0
|
||||||
|
gtk-xft-antialias=1
|
||||||
|
gtk-xft-hinting=1
|
||||||
|
gtk-xft-hintstyle=hintslight
|
||||||
|
gtk-xft-rgba=rgb
|
||||||
|
gtk-application-prefer-dark-theme=1
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
[main]
|
||||||
|
gtk-theme-name=Adwaita-dark
|
||||||
|
time-format=%H:%M
|
||||||
|
start-hidden=1
|
||||||
|
modules=powerbar-module
|
||||||
|
|
||||||
|
[userinfo]
|
||||||
|
round-image=true
|
||||||
|
horizontal-layout=false
|
||||||
|
under-clock=true
|
||||||
|
|
||||||
|
[powerbar]
|
||||||
|
show-labels=true
|
||||||
|
linked-buttons=true
|
||||||
|
reboot-command=systemctl reboot
|
||||||
|
poweroff-command=systemctl poweroff
|
||||||
|
suspend-command=systemctl suspend
|
||||||
|
userswitch-command=
|
||||||
|
logout-command=swaymsg exit
|
||||||
@@ -0,0 +1,49 @@
|
|||||||
|
* {
|
||||||
|
border: none;
|
||||||
|
text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.9);
|
||||||
|
border-radius: 0px;
|
||||||
|
}
|
||||||
|
window {
|
||||||
|
background-image: url("EndeavourOS_Astronaut_SpaceWalk.png");
|
||||||
|
background-size: cover;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-position: center;
|
||||||
|
background-color: #0a0a0a;
|
||||||
|
}
|
||||||
|
#clock-label {
|
||||||
|
font-family: JetBrainsMono;
|
||||||
|
font-size: 64px;
|
||||||
|
color: #00e5ff;
|
||||||
|
}
|
||||||
|
#unlock-button {
|
||||||
|
background-color: rgba(10, 10, 10, 0.8);
|
||||||
|
border: 2px solid #333333;
|
||||||
|
padding: 4px;
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
#unlock-button:hover {
|
||||||
|
border-color: #00e5ff;
|
||||||
|
background-color: #000000;
|
||||||
|
}
|
||||||
|
#input-field {
|
||||||
|
background-color: rgba(0, 0, 0, 0.8);
|
||||||
|
border: 2px solid #00e5ff;
|
||||||
|
padding-top: 5px;
|
||||||
|
padding-bottom: 5px;
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
#powerbar-box button {
|
||||||
|
background-color: rgba(10, 10, 10, 0.8);
|
||||||
|
border: 2px solid #333333;
|
||||||
|
padding: 6px;
|
||||||
|
}
|
||||||
|
#powerbar-box button:hover {
|
||||||
|
border-color: #00e5ff;
|
||||||
|
color: #00e5ff;
|
||||||
|
}
|
||||||
|
#input-label {
|
||||||
|
font-size: 0px;
|
||||||
|
}
|
||||||
|
#window-box infobar {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
Binary file not shown.
@@ -0,0 +1,30 @@
|
|||||||
|
- id: "1733842664884"
|
||||||
|
alias: Varmestyring
|
||||||
|
description: ""
|
||||||
|
use_blueprint:
|
||||||
|
path: MikaelUlvesjo/nordpool_simple_blueprint.yaml
|
||||||
|
input:
|
||||||
|
grid_area: sensor.nordpool_kwh_no1_nok_3_095_025
|
||||||
|
hour_rank: 16
|
||||||
|
turnon:
|
||||||
|
- action: climate.set_temperature
|
||||||
|
metadata: {}
|
||||||
|
data:
|
||||||
|
temperature: 19.5
|
||||||
|
target:
|
||||||
|
device_id:
|
||||||
|
- b65d14f7ef6300f4939db8935072b756
|
||||||
|
- ca85a2f25f3d48681e8d7e32d9de5e8e
|
||||||
|
- 2e1665d98e2051ea6f30e0b6ea31e7c5
|
||||||
|
turnoff:
|
||||||
|
- action: climate.set_temperature
|
||||||
|
metadata: {}
|
||||||
|
data:
|
||||||
|
temperature: 18
|
||||||
|
target:
|
||||||
|
device_id:
|
||||||
|
- b65d14f7ef6300f4939db8935072b756
|
||||||
|
- ca85a2f25f3d48681e8d7e32d9de5e8e
|
||||||
|
- 2e1665d98e2051ea6f30e0b6ea31e7c5
|
||||||
|
allways_off: 5
|
||||||
|
allways_on: 1
|
||||||
@@ -0,0 +1,269 @@
|
|||||||
|
|
||||||
|
# Loads default set of integrations. Do not remove.
|
||||||
|
default_config:
|
||||||
|
|
||||||
|
# Load frontend themes from the themes folder
|
||||||
|
frontend:
|
||||||
|
themes: !include_dir_merge_named themes
|
||||||
|
|
||||||
|
http:
|
||||||
|
use_x_forwarded_for: true
|
||||||
|
trusted_proxies: 10.2.0.0/16
|
||||||
|
|
||||||
|
automation: !include automations.yaml
|
||||||
|
script: !include scripts.yaml
|
||||||
|
scene: !include scenes.yaml
|
||||||
|
|
||||||
|
google_assistant:
|
||||||
|
project_id: homeassistant-mothership-1123
|
||||||
|
service_account: !include SERVICE_ACCOUNT.JSON
|
||||||
|
report_state: true
|
||||||
|
|
||||||
|
sensor:
|
||||||
|
- platform: nordpool
|
||||||
|
region: "NO1"
|
||||||
|
currency: "NOK"
|
||||||
|
low_price_cutoff: 0.95
|
||||||
|
# - platform: template
|
||||||
|
# sensors:
|
||||||
|
# # NORDPOOL PRICES
|
||||||
|
# nordpool_today_hr_00_01:
|
||||||
|
# friendly_name: "Today hour 0"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.today[0] }}"
|
||||||
|
# nordpool_today_hr_01_02:
|
||||||
|
# friendly_name: "Today hour 1"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.today[1] }}"
|
||||||
|
# nordpool_today_hr_02_03:
|
||||||
|
# friendly_name: "Today hour 2"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.today[2] }}"
|
||||||
|
# nordpool_today_hr_03_04:
|
||||||
|
# friendly_name: "Today hour 3"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.today[3] }}"
|
||||||
|
# nordpool_today_hr_04_05:
|
||||||
|
# friendly_name: "Today hour 4"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.today[4] }}"
|
||||||
|
# nordpool_today_hr_05_06:
|
||||||
|
# friendly_name: "Today hour 5"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.today[5] }}"
|
||||||
|
# nordpool_today_hr_06_07:
|
||||||
|
# friendly_name: "Today hour 6"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.today[6] }}"
|
||||||
|
# nordpool_today_hr_07_08:
|
||||||
|
# friendly_name: "Today hour 7"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.today[7] }}"
|
||||||
|
# nordpool_today_hr_08_09:
|
||||||
|
# friendly_name: "Today hour 8"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.today[8] }}"
|
||||||
|
# nordpool_today_hr_09_10:
|
||||||
|
# friendly_name: "Today hour 9"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.today[9] }}"
|
||||||
|
# nordpool_today_hr_10_11:
|
||||||
|
# friendly_name: "Today hour 10"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.today[10] }}"
|
||||||
|
# nordpool_today_hr_11_12:
|
||||||
|
# friendly_name: "Today hour 11"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.today[11] }}"
|
||||||
|
# nordpool_today_hr_12_13:
|
||||||
|
# friendly_name: "Today hour 12"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.today[12] }}"
|
||||||
|
# nordpool_today_hr_13_14:
|
||||||
|
# friendly_name: "Today hour 13"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.today[13] }}"
|
||||||
|
# nordpool_today_hr_14_15:
|
||||||
|
# friendly_name: "Today hour 14"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.today[14] }}"
|
||||||
|
# nordpool_today_hr_15_16:
|
||||||
|
# friendly_name: "Today hour 15"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.today[15] }}"
|
||||||
|
# nordpool_today_hr_16_17:
|
||||||
|
# friendly_name: "Today hour 16"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.today[16] }}"
|
||||||
|
# nordpool_today_hr_17_18:
|
||||||
|
# friendly_name: "Today hour 17"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.today[17] }}"
|
||||||
|
# nordpool_today_hr_18_19:
|
||||||
|
# friendly_name: "Today hour 18"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.today[18] }}"
|
||||||
|
# nordpool_today_hr_19_20:
|
||||||
|
# friendly_name: "Today hour 19"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.today[19] }}"
|
||||||
|
# nordpool_today_hr_20_21:
|
||||||
|
# friendly_name: "Today hour 20"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.today[20] }}"
|
||||||
|
# nordpool_today_hr_21_22:
|
||||||
|
# friendly_name: "Today hour 21"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.today[21] }}"
|
||||||
|
# nordpool_today_hr_22_23:
|
||||||
|
# friendly_name: "Today hour 22"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.today[22] }}"
|
||||||
|
# nordpool_today_hr_23_24:
|
||||||
|
# friendly_name: "Today hour 23"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.today[23] }}"
|
||||||
|
# nordpool_tomorrow_hr_00_01:
|
||||||
|
# friendly_name: "Tomorrow hour 0"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.tomorrow[0] }}"
|
||||||
|
# nordpool_tomorrow_hr_01_02:
|
||||||
|
# friendly_name: "Tomorrow hour 1"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.tomorrow[1] }}"
|
||||||
|
# nordpool_tomorrow_hr_02_03:
|
||||||
|
# friendly_name: "Tomorrow hour 2"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.tomorrow[2] }}"
|
||||||
|
# nordpool_tomorrow_hr_03_04:
|
||||||
|
# friendly_name: "Tomorrow hour 3"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.tomorrow[3] }}"
|
||||||
|
# nordpool_tomorrow_hr_04_05:
|
||||||
|
# friendly_name: "Tomorrow hour 4"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.tomorrow[4] }}"
|
||||||
|
# nordpool_tomorrow_hr_05_06:
|
||||||
|
# friendly_name: "Tomorrow hour 5"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.tomorrow[5] }}"
|
||||||
|
# nordpool_tomorrow_hr_06_07:
|
||||||
|
# friendly_name: "Tomorrow hour 6"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.tomorrow[6] }}"
|
||||||
|
# nordpool_tomorrow_hr_07_08:
|
||||||
|
# friendly_name: "Tomorrow hour 7"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.tomorrow[7] }}"
|
||||||
|
# nordpool_tomorrow_hr_08_09:
|
||||||
|
# friendly_name: "Tomorrow hour 8"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.tomorrow[8] }}"
|
||||||
|
# nordpool_tomorrow_hr_09_10:
|
||||||
|
# friendly_name: "Tomorrow hour 9"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.tomorrow[9] }}"
|
||||||
|
# nordpool_tomorrow_hr_10_11:
|
||||||
|
# friendly_name: "Tomorrow hour 10"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.tomorrow[10] }}"
|
||||||
|
# nordpool_tomorrow_hr_11_12:
|
||||||
|
# friendly_name: "Tomorrow hour 11"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.tomorrow[11] }}"
|
||||||
|
# nordpool_tomorrow_hr_12_13:
|
||||||
|
# friendly_name: "Tomorrow hour 12"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.tomorrow[12] }}"
|
||||||
|
# nordpool_tomorrow_hr_13_14:
|
||||||
|
# friendly_name: "Tomorrow hour 13"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.tomorrow[13] }}"
|
||||||
|
# nordpool_tomorrow_hr_14_15:
|
||||||
|
# friendly_name: "Tomorrow hour 14"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.tomorrow[14] }}"
|
||||||
|
# nordpool_tomorrow_hr_15_16:
|
||||||
|
# friendly_name: "Tomorrow hour 15"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.tomorrow[15] }}"
|
||||||
|
# nordpool_tomorrow_hr_16_17:
|
||||||
|
# friendly_name: "Tomorrow hour 16"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.tomorrow[16] }}"
|
||||||
|
# nordpool_tomorrow_hr_17_18:
|
||||||
|
# friendly_name: "Tomorrow hour 17"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.tomorrow[17] }}"
|
||||||
|
# nordpool_tomorrow_hr_18_19:
|
||||||
|
# friendly_name: "Tomorrow hour 18"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.tomorrow[18] }}"
|
||||||
|
# nordpool_tomorrow_hr_19_20:
|
||||||
|
# friendly_name: "Tomorrow hour 19"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.tomorrow[19] }}"
|
||||||
|
# nordpool_tomorrow_hr_20_21:
|
||||||
|
# friendly_name: "Tomorrow hour 20"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.tomorrow[20] }}"
|
||||||
|
# nordpool_tomorrow_hr_21_22:
|
||||||
|
# friendly_name: "Tomorrow hour 21"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.tomorrow[21] }}"
|
||||||
|
# nordpool_tomorrow_hr_22_23:
|
||||||
|
# friendly_name: "Tomorrow hour 22"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.tomorrow[22] }}"
|
||||||
|
# nordpool_tomorrow_hr_23_24:
|
||||||
|
# friendly_name: "Tomorrow hour 23"
|
||||||
|
# icon_template: mdi:cash
|
||||||
|
# unit_of_measurement: "øre"
|
||||||
|
# value_template: "{{ states.sensor.nordpool_kwh_oslo_nok_3_10_025.attributes.tomorrow[23] }}"
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
aliases:
|
||||||
|
dp: deployments
|
||||||
|
sec: v1/secrets
|
||||||
|
jo: jobs
|
||||||
|
cr: clusterroles
|
||||||
|
crb: clusterrolebindings
|
||||||
|
ro: roles
|
||||||
|
rb: rolebindings
|
||||||
|
np: networkpolicies
|
||||||
|
gr: gitrepo
|
||||||
@@ -0,0 +1,48 @@
|
|||||||
|
k9s:
|
||||||
|
liveViewAutoRefresh: false
|
||||||
|
gpuVendors: {}
|
||||||
|
screenDumpDir: /home/hjalmarlucius/.local/state/k9s/screen-dumps
|
||||||
|
refreshRate: 2
|
||||||
|
apiServerTimeout: 2m0s
|
||||||
|
maxConnRetry: 5
|
||||||
|
readOnly: false
|
||||||
|
noExitOnCtrlC: false
|
||||||
|
portForwardAddress: localhost
|
||||||
|
ui:
|
||||||
|
enableMouse: false
|
||||||
|
headless: false
|
||||||
|
logoless: false
|
||||||
|
crumbsless: false
|
||||||
|
splashless: false
|
||||||
|
reactive: false
|
||||||
|
noIcons: false
|
||||||
|
defaultsToFullScreen: false
|
||||||
|
useFullGVRTitle: false
|
||||||
|
skipLatestRevCheck: false
|
||||||
|
disablePodCounting: false
|
||||||
|
shellPod:
|
||||||
|
image: busybox:1.35.0
|
||||||
|
namespace: default
|
||||||
|
limits:
|
||||||
|
cpu: 100m
|
||||||
|
memory: 100Mi
|
||||||
|
imageScans:
|
||||||
|
enable: false
|
||||||
|
exclusions:
|
||||||
|
namespaces: []
|
||||||
|
labels: {}
|
||||||
|
logger:
|
||||||
|
tail: 100
|
||||||
|
buffer: 5000
|
||||||
|
sinceSeconds: -1
|
||||||
|
textWrap: false
|
||||||
|
disableAutoscroll: false
|
||||||
|
showTime: true
|
||||||
|
thresholds:
|
||||||
|
cpu:
|
||||||
|
critical: 90
|
||||||
|
warn: 70
|
||||||
|
memory:
|
||||||
|
critical: 90
|
||||||
|
warn: 70
|
||||||
|
defaultView: ""
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
[default]
|
[default]
|
||||||
|
|
||||||
default_calendar = purelymail
|
default_calendar = henrik@hjarl.com
|
||||||
highlight_event_days = true
|
highlight_event_days = true
|
||||||
|
|
||||||
[view]
|
[view]
|
||||||
@@ -16,18 +16,18 @@ longdateformat = %d.%m.%Y
|
|||||||
|
|
||||||
[calendars]
|
[calendars]
|
||||||
|
|
||||||
[[purelymail]]
|
[[henrik@hjarl.com]]
|
||||||
path = ~/.config/vdirsyncer/calendars/purelymail/
|
path = ~/Calendars/henrik@hjarl.com/
|
||||||
color = yellow
|
color = yellow
|
||||||
priority = 10
|
priority = 10
|
||||||
|
|
||||||
[[google]]
|
[[bakken.henrik@gmail.com]]
|
||||||
path = ~/.config/vdirsyncer/calendars/google/bakken.henrik@gmail.com
|
path = ~/Calendars/google/bakken.henrik@gmail.com
|
||||||
color = light magenta
|
color = light magenta
|
||||||
priority = 5
|
priority = 5
|
||||||
|
|
||||||
[[holidays]]
|
[[holidays]]
|
||||||
path = ~/.config/vdirsyncer/calendars/holidays/
|
path = ~/Calendars/holidays/
|
||||||
color = dark cyan
|
color = dark cyan
|
||||||
readonly = True
|
readonly = True
|
||||||
priority = 0
|
priority = 0
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
[addressbooks]
|
[addressbooks]
|
||||||
[[bakken.henrik@gmail.com]]
|
[[henrik@hjarl.com]]
|
||||||
path = ~/.config/vdirsyncer/contacts/google/default/
|
path = ~/Contacts/henrik@hjarl.com/default/
|
||||||
|
|
||||||
[general]
|
[general]
|
||||||
debug = no
|
debug = no
|
||||||
@@ -40,9 +40,9 @@ preferred_email_address_type = pref, work, home
|
|||||||
# example:
|
# example:
|
||||||
# private_objects = Jabber, Skype, Twitter
|
# private_objects = Jabber, Skype, Twitter
|
||||||
# default: , (the empty list)
|
# default: , (the empty list)
|
||||||
private_objects = Jabber, Skype, Twitter
|
private_objects = ,
|
||||||
# preferred vcard version: 3.0 / 4.0
|
# preferred vcard version: 3.0 / 4.0
|
||||||
preferred_version = 3.0
|
preferred_version = 4.0
|
||||||
# Look into source vcf files to speed up search queries: yes / no
|
# Look into source vcf files to speed up search queries: yes / no
|
||||||
search_in_source_files = no
|
search_in_source_files = no
|
||||||
# skip unparsable vcard files: yes / no
|
# skip unparsable vcard files: yes / no
|
||||||
@@ -28,6 +28,18 @@ application/x-bittorrent=org.qbittorrent.qBittorrent.desktop;
|
|||||||
inode/directory=yazi.desktop;
|
inode/directory=yazi.desktop;
|
||||||
x-scheme-handler/msteams=teams.desktop;
|
x-scheme-handler/msteams=teams.desktop;
|
||||||
text/calendar=userapp-khalimport.desktop;
|
text/calendar=userapp-khalimport.desktop;
|
||||||
x-scheme-handler/discord=vesktop.desktop:
|
x-scheme-handler/discord=discord.desktop
|
||||||
|
application/vnd.openxmlformats-officedocument.wordprocessingml.document=org.kde.okular.desktop;
|
||||||
|
text/markdown=org.kde.okular.desktop;
|
||||||
|
application/zip=userapp-file-roller.desktop;
|
||||||
|
x-scheme-handler/rdp=org.remmina.Remmina.desktop;
|
||||||
|
x-scheme-handler/spice=org.remmina.Remmina.desktop;
|
||||||
|
x-scheme-handler/vnc=org.remmina.Remmina.desktop;
|
||||||
|
x-scheme-handler/remmina=org.remmina.Remmina.desktop;
|
||||||
|
application/x-remmina=org.remmina.Remmina.desktop;
|
||||||
|
application/vnd.openxmlformats-officedocument.wordprocessingml.document=libreoffice-writer.desktop;
|
||||||
|
image/heif=qimgv.desktop
|
||||||
|
|
||||||
[Added Associations]
|
[Added Associations]
|
||||||
|
|
||||||
|
[Removed Associations]
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
vim.opt_local.number = true
|
||||||
|
vim.opt_local.relativenumber = true
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
local bufname = vim.api.nvim_buf_get_name(0)
|
||||||
|
local filename_arg = bufname ~= "" and (" --stdin-filepath " .. vim.fn.shellescape(bufname)) or ""
|
||||||
|
|
||||||
|
-- Indentation & Layout
|
||||||
|
vim.opt_local.colorcolumn = "100"
|
||||||
|
vim.opt_local.textwidth = 100
|
||||||
|
vim.opt_local.tabstop = 4
|
||||||
|
vim.opt_local.shiftwidth = 4
|
||||||
|
vim.opt_local.softtabstop = 4
|
||||||
|
vim.opt_local.expandtab = true
|
||||||
|
|
||||||
|
-- Formatting Behavior
|
||||||
|
vim.opt_local.formatoptions:remove("t") -- Don't autowrap while typing
|
||||||
|
vim.opt_local.formatoptions:append("j") -- Remove comment markers when joining lines
|
||||||
|
|
||||||
|
-- gq Formatters (Prettier fallback, LSP primary)
|
||||||
|
-- Prefers local/global binary first to avoid slow npx invocation overhead
|
||||||
|
local prettier_bin = vim.fn.executable("prettier") == 1 and "prettier" or "npx prettier"
|
||||||
|
vim.bo.formatprg = prettier_bin .. filename_arg
|
||||||
|
vim.bo.formatexpr = "v:lua.vim.lsp.formatexpr()"
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
local bufname = vim.api.nvim_buf_get_name(0)
|
||||||
|
local filename_arg = bufname ~= "" and ("--stdin-filepath " .. vim.fn.shellescape(bufname) .. " ") or ""
|
||||||
|
|
||||||
|
-- Indentation & Layout
|
||||||
|
vim.opt_local.colorcolumn = "120"
|
||||||
|
vim.opt_local.textwidth = 120
|
||||||
|
vim.opt_local.tabstop = 4
|
||||||
|
vim.opt_local.shiftwidth = 4
|
||||||
|
vim.opt_local.softtabstop = 4
|
||||||
|
vim.opt_local.expandtab = true
|
||||||
|
|
||||||
|
-- Formatting Behavior
|
||||||
|
vim.opt_local.formatoptions:remove("t")
|
||||||
|
vim.opt_local.formatoptions:append("j")
|
||||||
|
|
||||||
|
-- gq Formatters (StyLua fallback, LSP primary)
|
||||||
|
vim.bo.formatprg = "stylua " .. filename_arg .. "-"
|
||||||
|
vim.bo.formatexpr = "v:lua.vim.lsp.formatexpr()"
|
||||||
@@ -0,0 +1,21 @@
|
|||||||
|
local bufname = vim.api.nvim_buf_get_name(0)
|
||||||
|
local filename_arg = bufname ~= "" and (" --stdin-filepath " .. vim.fn.shellescape(bufname)) or ""
|
||||||
|
|
||||||
|
-- Indentation & Layout
|
||||||
|
vim.opt_local.colorcolumn = ""
|
||||||
|
vim.opt_local.wrap = true
|
||||||
|
vim.opt_local.textwidth = 80
|
||||||
|
vim.opt_local.tabstop = 2
|
||||||
|
vim.opt_local.shiftwidth = 2
|
||||||
|
vim.opt_local.softtabstop = 2
|
||||||
|
vim.opt_local.expandtab = true
|
||||||
|
|
||||||
|
-- Formatting Behavior: wrap text, keep comment/quote headers, parse lists
|
||||||
|
vim.opt_local.formatoptions:append("tqn")
|
||||||
|
|
||||||
|
-- gq Formatter: Prettier handles links/parentheses cleanly; par as fallback
|
||||||
|
if vim.fn.executable("prettier") == 1 then
|
||||||
|
vim.bo.formatprg = "prettier --parser markdown" .. filename_arg
|
||||||
|
elseif vim.fn.executable("par") == 1 then
|
||||||
|
vim.bo.formatprg = "par -w80req"
|
||||||
|
end
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
local bufname = vim.api.nvim_buf_get_name(0)
|
||||||
|
local filename_arg = bufname ~= "" and ("--stdin-filename " .. vim.fn.shellescape(bufname) .. " ") or ""
|
||||||
|
|
||||||
|
-- Indentation & Layout
|
||||||
|
vim.opt_local.colorcolumn = "100"
|
||||||
|
vim.opt_local.textwidth = 100
|
||||||
|
vim.opt_local.tabstop = 4
|
||||||
|
vim.opt_local.shiftwidth = 4
|
||||||
|
vim.opt_local.softtabstop = 4
|
||||||
|
vim.opt_local.expandtab = true
|
||||||
|
|
||||||
|
-- Formatting Behavior
|
||||||
|
vim.opt_local.formatoptions:remove("t") -- Don't autowrap while typing
|
||||||
|
vim.opt_local.formatoptions:append("j") -- Remove comment markers when joining lines
|
||||||
|
|
||||||
|
-- gq Formatters (Ruff fallback, LSP primary)
|
||||||
|
-- The trailing '-' is required for Ruff to read from stdin
|
||||||
|
vim.bo.formatprg = "ruff format " .. filename_arg .. "-"
|
||||||
|
vim.bo.formatexpr = "v:lua.vim.lsp.formatexpr()"
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,43 @@
|
|||||||
|
window {
|
||||||
|
background-color: rgba(10, 10, 10, 0.95);
|
||||||
|
color: #ffffff;
|
||||||
|
border-radius: 0px;
|
||||||
|
border-right: 2px solid #00e5ff;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* search entry */
|
||||||
|
entry {
|
||||||
|
box-shadow: none;
|
||||||
|
border: 1px solid #00e5ff;
|
||||||
|
background-color: #000000;
|
||||||
|
color: #00e5ff;
|
||||||
|
padding: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
button,
|
||||||
|
image {
|
||||||
|
background-color: transparent;
|
||||||
|
background: none;
|
||||||
|
border: 1px solid transparent;
|
||||||
|
margin: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
button:hover {
|
||||||
|
background-color: #111111;
|
||||||
|
border: 1px solid #00e5ff;
|
||||||
|
box-shadow: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#category-button {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pinned-box {
|
||||||
|
padding-bottom: 5px;
|
||||||
|
border-bottom: 2px solid #333333;
|
||||||
|
}
|
||||||
|
|
||||||
|
#files-box {
|
||||||
|
padding: 5px;
|
||||||
|
border: 1px solid #333333;
|
||||||
|
}
|
||||||
@@ -6,10 +6,6 @@
|
|||||||
|
|
||||||
config_version: 2
|
config_version: 2
|
||||||
settings:
|
settings:
|
||||||
colors.webpage.darkmode.enabled:
|
|
||||||
global: false
|
|
||||||
content.fullscreen.window:
|
|
||||||
global: true
|
|
||||||
downloads.location.directory:
|
downloads.location.directory:
|
||||||
global: /home/hjalmarlucius/Downloads
|
global: /home/hjalmarlucius/Downloads
|
||||||
session.default_name:
|
session.default_name:
|
||||||
@@ -1,22 +1,26 @@
|
|||||||
from typing import TYPE_CHECKING
|
from typing import TYPE_CHECKING
|
||||||
|
|
||||||
if TYPE_CHECKING:
|
if TYPE_CHECKING:
|
||||||
from typing import Any
|
from qutebrowser.config.config import ConfigContainer
|
||||||
|
from qutebrowser.config.configfiles import ConfigAPI
|
||||||
|
|
||||||
config: Any = None
|
c: "ConfigContainer" = c # type: ignore # noqa: F821
|
||||||
c: Any = None
|
config: "ConfigAPI" = config # type: ignore # noqa: F821
|
||||||
|
|
||||||
config.load_autoconfig(True)
|
config.load_autoconfig(True)
|
||||||
config.bind("<", "tab-move -")
|
config.bind("<", "tab-move -")
|
||||||
config.bind("<Ctrl+Shift+Tab>", "tab-prev")
|
config.bind("<Ctrl+Shift+Tab>", "tab-prev")
|
||||||
config.bind("<Ctrl+Tab>", "tab-next")
|
config.bind("<Ctrl+Tab>", "tab-next")
|
||||||
config.bind("<Ctrl+l>", "cmd-set-text :open {url:pretty}")
|
config.bind("<Ctrl+l>", "cmd-set-text :open {url:pretty}")
|
||||||
config.bind("<Ctrl+r>", "reload")
|
config.unbind("r", mode="normal")
|
||||||
|
config.bind("<Ctrl+r>", "reload -f")
|
||||||
|
config.bind("R", "reload", mode="normal")
|
||||||
config.bind("<Ctrl+n>", "tab-clone -w")
|
config.bind("<Ctrl+n>", "tab-clone -w")
|
||||||
config.bind("<Ctrl+t>", "tab-clone -t")
|
config.bind("<Ctrl+t>", "tab-clone -t")
|
||||||
config.bind("<Ctrl+Shift+r>", "restart", mode="normal")
|
config.bind("<Ctrl+Shift+r>", "restart", mode="normal")
|
||||||
config.bind("<Ctrl+h>", "history")
|
config.bind("<Ctrl+h>", "history")
|
||||||
config.bind("<F8>", "config-cycle colors.webpage.darkmode.enabled true false")
|
config.bind("<F2>", "edit-url")
|
||||||
|
config.bind("<F10>", "config-cycle colors.webpage.darkmode.enabled true false")
|
||||||
config.bind("<F11>", "config-cycle tabs.position top left")
|
config.bind("<F11>", "config-cycle tabs.position top left")
|
||||||
config.bind("<F12>", "devtools")
|
config.bind("<F12>", "devtools")
|
||||||
config.bind("<Shift+F12>", "view-source")
|
config.bind("<Shift+F12>", "view-source")
|
||||||
@@ -25,10 +29,11 @@ config.bind("<Shift+Escape>", "mode-enter passthrough", mode="insert")
|
|||||||
config.bind(">", "tab-move +")
|
config.bind(">", "tab-move +")
|
||||||
config.bind("K", "tab-prev")
|
config.bind("K", "tab-prev")
|
||||||
config.bind("J", "tab-next")
|
config.bind("J", "tab-next")
|
||||||
config.bind("pww", "spawn --userscript qute-bitwarden")
|
fuzzelargs = """--dmenu-invocation 'fuzzel --dmenu -p "Bitwarden"' --password-prompt-invocation 'fuzzel --dmenu -p "Master Password: " --password --lines 0'"""
|
||||||
config.bind("pwu", "spawn --userscript qute-bitwarden --username-only")
|
config.bind("pww", f"spawn --userscript qute-bitwarden {fuzzelargs}")
|
||||||
config.bind("pwp", "spawn --userscript qute-bitwarden --password-only")
|
config.bind("pwu", f"spawn --userscript qute-bitwarden {fuzzelargs} --username-only")
|
||||||
config.bind("pwo", "spawn --userscript qute-bitwarden --totp-only")
|
config.bind("pwp", f"spawn --userscript qute-bitwarden {fuzzelargs} --password-only")
|
||||||
|
config.bind("pwo", f"spawn --userscript qute-bitwarden {fuzzelargs} --totp-only")
|
||||||
config.bind("do", "download-open")
|
config.bind("do", "download-open")
|
||||||
config.bind("dx", "download-cancel")
|
config.bind("dx", "download-cancel")
|
||||||
config.bind("dD", "download-delete")
|
config.bind("dD", "download-delete")
|
||||||
@@ -41,11 +46,10 @@ config.bind("tj", "back -t", mode="normal")
|
|||||||
config.bind("wj", "back -w", mode="normal")
|
config.bind("wj", "back -w", mode="normal")
|
||||||
config.bind("tk", "forward -t", mode="normal")
|
config.bind("tk", "forward -t", mode="normal")
|
||||||
config.bind("wk", "forward -w", mode="normal")
|
config.bind("wk", "forward -w", mode="normal")
|
||||||
config.bind("ø", "cmd-set-text :")
|
|
||||||
config.bind("m", 'cmd-set-text :quickmark-add {url:pretty} "', mode="normal")
|
config.bind("m", 'cmd-set-text :quickmark-add {url:pretty} "', mode="normal")
|
||||||
config.bind("D", "tab-close")
|
config.bind("D", "tab-close")
|
||||||
config.bind(",m", "hint links spawn mpv {hint-url}", mode="normal")
|
config.bind(",m", "hint links spawn -d mpv {hint-url}", mode="normal")
|
||||||
config.bind(",M", "spawn mpv {url}", mode="normal")
|
config.bind(",M", "spawn -d mpv {url}", mode="normal")
|
||||||
config.unbind("co") # close all tabs except this one
|
config.unbind("co") # close all tabs except this one
|
||||||
config.unbind("<Ctrl+x>") # navigate decrement
|
config.unbind("<Ctrl+x>") # navigate decrement
|
||||||
config.unbind("<Ctrl+a>") # navigate increment
|
config.unbind("<Ctrl+a>") # navigate increment
|
||||||
@@ -64,8 +68,10 @@ c.completion.open_categories = [
|
|||||||
"history",
|
"history",
|
||||||
"filesystem",
|
"filesystem",
|
||||||
]
|
]
|
||||||
|
c.content.register_protocol_handler = False
|
||||||
c.content.blocking.enabled = True
|
c.content.blocking.enabled = True
|
||||||
c.content.blocking.method = "both"
|
c.content.fullscreen.window = True
|
||||||
|
c.content.blocking.method = "adblock"
|
||||||
c.content.blocking.adblock.lists = [
|
c.content.blocking.adblock.lists = [
|
||||||
"https://raw.githubusercontent.com/uBlockOrigin/uAssets/master/filters/filters.txt",
|
"https://raw.githubusercontent.com/uBlockOrigin/uAssets/master/filters/filters.txt",
|
||||||
"https://raw.githubusercontent.com/uBlockOrigin/uAssets/master/filters/badware.txt",
|
"https://raw.githubusercontent.com/uBlockOrigin/uAssets/master/filters/badware.txt",
|
||||||
@@ -76,6 +82,12 @@ c.content.blocking.adblock.lists = [
|
|||||||
"https://easylist.to/easylist/easyprivacy.txt",
|
"https://easylist.to/easylist/easyprivacy.txt",
|
||||||
"https://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts&showintro=1&mimetype=plaintext",
|
"https://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts&showintro=1&mimetype=plaintext",
|
||||||
]
|
]
|
||||||
|
c.content.javascript.log_message.excludes = {
|
||||||
|
"userscript:_qute_js": ["*TrustedHTML*"],
|
||||||
|
"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%"
|
||||||
c.confirm_quit = ["multiple-tabs", "downloads"]
|
c.confirm_quit = ["multiple-tabs", "downloads"]
|
||||||
@@ -103,12 +115,14 @@ urlconfigs: dict[str, list[tuple[str, bool | str | dict[str, str]]]] = {
|
|||||||
{"X-YouTube-Client-Name": "85", "X-YouTube-Client-Version": "2.0"},
|
{"X-YouTube-Client-Name": "85", "X-YouTube-Client-Version": "2.0"},
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
# "https://mail.google.com?extsrc=mailto&url=%25s": [
|
"https://*.altinn.no": [
|
||||||
# ("content.register_protocol_handler", True)
|
("content.cookies.accept", "all"),
|
||||||
# ],
|
("content.javascript.can_open_tabs_automatically", True),
|
||||||
# "https://calendar.google.com?cid=%25s": [
|
],
|
||||||
# ("content.register_protocol_handler", True)
|
"https://*.bankid.no": [
|
||||||
# ],
|
("content.cookies.accept", "all"),
|
||||||
|
("content.javascript.can_open_tabs_automatically", True),
|
||||||
|
],
|
||||||
}
|
}
|
||||||
for url, urlconfig in urlconfigs.items():
|
for url, urlconfig in urlconfigs.items():
|
||||||
for setting, value in urlconfig:
|
for setting, value in urlconfig:
|
||||||
@@ -117,12 +131,11 @@ for url, urlconfig in urlconfigs.items():
|
|||||||
c.downloads.position = "bottom"
|
c.downloads.position = "bottom"
|
||||||
c.downloads.prevent_mixed_content = False
|
c.downloads.prevent_mixed_content = False
|
||||||
c.editor.command = [
|
c.editor.command = [
|
||||||
"foot",
|
"footclient",
|
||||||
"-title",
|
"--app-id",
|
||||||
"scratchpad",
|
"floating_shell",
|
||||||
"-geometry",
|
"--window-size-chars",
|
||||||
"86x24+40+60",
|
"80x45",
|
||||||
"-e",
|
|
||||||
"nvim",
|
"nvim",
|
||||||
"-f",
|
"-f",
|
||||||
"{}",
|
"{}",
|
||||||
@@ -133,16 +146,15 @@ c.input.insert_mode.auto_load = True
|
|||||||
c.input.insert_mode.auto_leave = False
|
c.input.insert_mode.auto_leave = False
|
||||||
c.input.insert_mode.plugins = True
|
c.input.insert_mode.plugins = True
|
||||||
c.messages.timeout = 5000
|
c.messages.timeout = 5000
|
||||||
c.qt.args = [
|
c.qt.force_platform = "wayland"
|
||||||
"disable-features=PermissionElement",
|
|
||||||
"ozone-platform-hint=wayland",
|
|
||||||
"ignore-gpu-blocklist",
|
|
||||||
"enable-gpu-rasterization",
|
|
||||||
"enable-accelerated-video-decode",
|
|
||||||
"enable-quic",
|
|
||||||
"enable-zero-copy",
|
|
||||||
]
|
|
||||||
c.qt.highdpi = True
|
c.qt.highdpi = True
|
||||||
|
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
|
||||||
@@ -174,13 +186,13 @@ c.tabs.tabs_are_windows = False
|
|||||||
c.tabs.title.format = "{index}.{current_title}"
|
c.tabs.title.format = "{index}.{current_title}"
|
||||||
c.tabs.undo_stack_size = 1000
|
c.tabs.undo_stack_size = 1000
|
||||||
c.tabs.width = "15%"
|
c.tabs.width = "15%"
|
||||||
c.url.start_pages = "http://www.google.com/search?hl=en&source=hp&ie=ISO-8859-l"
|
c.url.start_pages = "https://www.google.com/search?hl=en&source=hp"
|
||||||
c.url.default_page = "http://www.google.com/search?hl=en&source=hp&ie=ISO-8859-l"
|
c.url.default_page = "https://www.google.com/search?hl=en&source=hp"
|
||||||
c.url.searchengines = dict(
|
c.url.searchengines = dict(
|
||||||
DEFAULT="http://www.google.com/search?hl=en&source=hp&ie=ISO-8859-l&q={}",
|
DEFAULT="https://www.google.com/search?hl=en&source=hp&q={}",
|
||||||
aw="https://wiki.archlinux.org/?search={}",
|
aw="https://wiki.archlinux.org/?search={}",
|
||||||
ap="https://www.archlinux.org/packages/?sort=&q={}",
|
ap="https://www.archlinux.org/packages/?q={}",
|
||||||
gh="https://github.com/search?q={}&type=Code",
|
gh="https://github.com/search?q={}&type=repositories",
|
||||||
ip="https://iplocation.io/ip/{}",
|
ip="https://iplocation.io/ip/{}",
|
||||||
sh="https://explainshell.com/explain?cmd={}",
|
sh="https://explainshell.com/explain?cmd={}",
|
||||||
wi="https://en.wikipedia.org/w/index.php?search={}",
|
wi="https://en.wikipedia.org/w/index.php?search={}",
|
||||||
@@ -198,20 +210,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"
|
||||||
@@ -245,9 +257,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
|
||||||
@@ -305,9 +317,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
|
||||||
Binary file not shown.
@@ -0,0 +1,69 @@
|
|||||||
|
# required in Wayland/Sway:
|
||||||
|
# env QT_QPA_PLATFORM=xcb
|
||||||
|
# should_launch_new_instance 1
|
||||||
|
should_launch_new_window 1
|
||||||
|
should_launch_new_instance 1
|
||||||
|
startup_commands toggle_visual_scroll;toggle_custom_color
|
||||||
|
|
||||||
|
# Document Colors (Deep Black bg, Pure White text)
|
||||||
|
custom_background_color #0A0A0A
|
||||||
|
custom_text_color #FFFFFF
|
||||||
|
custom_color_mode_empty_background_color #000000
|
||||||
|
page_separator_color #333333
|
||||||
|
|
||||||
|
# UI & Status Bar (Electric Cyan & Black)
|
||||||
|
ui_background_color #111111
|
||||||
|
ui_text_color #FFFFFF
|
||||||
|
ui_selected_background_color #333333
|
||||||
|
ui_selected_text_color #00E5FF
|
||||||
|
|
||||||
|
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_separator_color #1d2021
|
||||||
|
page_separator_width 10
|
||||||
|
|
||||||
|
# dark mode
|
||||||
|
dark_mode_background_color #1e1e2e
|
||||||
|
dark_mode_contrast 0.9
|
||||||
|
|
||||||
|
# UI
|
||||||
|
ui_font Noto Sans Mono
|
||||||
|
font_size 12
|
||||||
|
status_bar_font_size 16
|
||||||
|
status_bar_color #427b58
|
||||||
|
status_bar_text_color #fbf1c7
|
||||||
|
ui_text_color #cad3f5
|
||||||
|
ui_background_color #363a4f
|
||||||
|
ui_selected_text_color #cad3f5
|
||||||
|
ui_selected_background_color #5b6078
|
||||||
|
|
||||||
|
# brighten blue links
|
||||||
|
custom_color_contrast 1
|
||||||
|
|
||||||
|
custom_color_mode_empty_background_color #1d2021
|
||||||
|
|
||||||
|
# search
|
||||||
|
should_highlight_unselected_search 1
|
||||||
|
unselected_search_highlight_color #FF5733
|
||||||
|
|
||||||
|
# gruvbox
|
||||||
|
custom_background_color #282828
|
||||||
|
custom_text_color #fbf1c7
|
||||||
|
|
||||||
|
# text_highlight_color #eed49f
|
||||||
|
# visual_mark_color #8087a2
|
||||||
|
|
||||||
|
# search_highlight_color #eed49f
|
||||||
|
# link_highlight_color #8aadf4
|
||||||
|
# synctex_highlight_color #a6da95
|
||||||
@@ -0,0 +1,32 @@
|
|||||||
|
add_newline = true
|
||||||
|
right_format = """$cmd_duration\n"""
|
||||||
|
|
||||||
|
[line_break]
|
||||||
|
disabled = false
|
||||||
|
|
||||||
|
[time]
|
||||||
|
disabled = false
|
||||||
|
|
||||||
|
[cmd_duration]
|
||||||
|
disabled = true
|
||||||
|
|
||||||
|
[directory]
|
||||||
|
truncation_length = 5
|
||||||
|
truncate_to_repo = false
|
||||||
|
truncation_symbol = "…/"
|
||||||
|
repo_root_style = "red"
|
||||||
|
before_repo_root_style = "cyan"
|
||||||
|
repo_root_format = """\
|
||||||
|
[$before_root_path]\
|
||||||
|
($before_repo_root_style)\
|
||||||
|
[$repo_root]\
|
||||||
|
($repo_root_style)\
|
||||||
|
[$path]\
|
||||||
|
($style)\
|
||||||
|
[$read_only]\
|
||||||
|
($read_only_style)\
|
||||||
|
\
|
||||||
|
"""
|
||||||
|
|
||||||
|
[git_status]
|
||||||
|
disabled = true
|
||||||
@@ -0,0 +1,395 @@
|
|||||||
|
# ------------------------------------------
|
||||||
|
# THEME
|
||||||
|
# ------------------------------------------
|
||||||
|
# Apply gtk theming
|
||||||
|
exec_always ~/.config/sway/scripts/import-gsettings
|
||||||
|
|
||||||
|
# mouse settings: don't refocus, don't move with output
|
||||||
|
focus_follows_mouse no
|
||||||
|
mouse_warping none
|
||||||
|
|
||||||
|
# Set inner/outer gaps
|
||||||
|
smart_gaps on
|
||||||
|
gaps inner 4
|
||||||
|
gaps outer 0
|
||||||
|
|
||||||
|
# Hide titlebar on windows:
|
||||||
|
default_border pixel 2
|
||||||
|
smart_borders on
|
||||||
|
|
||||||
|
# Default Font
|
||||||
|
font pango:Noto Sans Regular 10
|
||||||
|
|
||||||
|
# Cursor
|
||||||
|
seat seat0 xcursor_theme Adwaita 0
|
||||||
|
|
||||||
|
# Title format for windows
|
||||||
|
set $focus #00E5FF
|
||||||
|
set $unfocused #333333
|
||||||
|
set $urgent #FF0033
|
||||||
|
set $bg #0A0A0A
|
||||||
|
set $text_dark #000000
|
||||||
|
set $text_dim #888888
|
||||||
|
|
||||||
|
# class border bground text indicator child_border
|
||||||
|
client.focused $focus $focus $text_dark $focus $focus
|
||||||
|
client.focused_inactive $unfocused $unfocused $text_dim $unfocused $unfocused
|
||||||
|
client.unfocused $unfocused $unfocused $text_dim $unfocused $unfocused
|
||||||
|
client.urgent $urgent $urgent #FFFFFF $urgent $urgent
|
||||||
|
client.placeholder #000000 #000000 #FFFFFF #000000 #000000
|
||||||
|
client.background $bg
|
||||||
|
|
||||||
|
# Status Bar:
|
||||||
|
bar {
|
||||||
|
swaybar_command waybar
|
||||||
|
}
|
||||||
|
# ------------------------------------------
|
||||||
|
# DEFINITIONS
|
||||||
|
# ------------------------------------------
|
||||||
|
# Logo key. Use Mod1 for Alt.
|
||||||
|
set $mod Mod4
|
||||||
|
|
||||||
|
# Add Vim key support
|
||||||
|
set $left h
|
||||||
|
set $down j
|
||||||
|
set $up k
|
||||||
|
set $right l
|
||||||
|
|
||||||
|
# Set default terminal emulator
|
||||||
|
set $term footclient
|
||||||
|
|
||||||
|
# Application launcher
|
||||||
|
set $launcher fuzzel
|
||||||
|
|
||||||
|
# Application menu
|
||||||
|
set $menu nwg-drawer
|
||||||
|
|
||||||
|
# Power Menu
|
||||||
|
set $powermenu ~/.config/sway/scripts/power_menu.sh
|
||||||
|
|
||||||
|
# ------------------------------------------
|
||||||
|
# BINDINGS
|
||||||
|
# ------------------------------------------
|
||||||
|
# Launch the terminal
|
||||||
|
bindsym $mod+Return exec $term
|
||||||
|
bindsym $mod+Shift+Return exec foot bash
|
||||||
|
# Kill focused window
|
||||||
|
bindsym $mod+Shift+q kill
|
||||||
|
# Lock screen
|
||||||
|
bindsym $mod+f1 exec gtklock
|
||||||
|
# Reload the configuration file
|
||||||
|
bindsym $mod+Shift+c reload
|
||||||
|
|
||||||
|
# menus
|
||||||
|
bindsym {
|
||||||
|
# Open the power menu
|
||||||
|
$mod+Shift+e exec $powermenu
|
||||||
|
# Start your launcher
|
||||||
|
$mod+d exec $launcher
|
||||||
|
# Menu
|
||||||
|
$mod+Shift+d exec $menu
|
||||||
|
# Activities
|
||||||
|
$mod+p exec ~/.config/sway/scripts/window_switcher.sh
|
||||||
|
}
|
||||||
|
|
||||||
|
# move around
|
||||||
|
bindsym {
|
||||||
|
# Change window focus
|
||||||
|
$mod+Left focus left
|
||||||
|
$mod+Down focus down
|
||||||
|
$mod+Up focus up
|
||||||
|
$mod+Right focus right
|
||||||
|
# Vim key support
|
||||||
|
$mod+$left focus left
|
||||||
|
$mod+$down focus down
|
||||||
|
$mod+$up focus up
|
||||||
|
$mod+$right focus right
|
||||||
|
|
||||||
|
# Move the focused window
|
||||||
|
$mod+Shift+Left move left
|
||||||
|
$mod+Shift+Down move down
|
||||||
|
$mod+Shift+Up move up
|
||||||
|
$mod+Shift+Right move right
|
||||||
|
# Vim key support
|
||||||
|
$mod+Shift+$left move left
|
||||||
|
$mod+Shift+$down move down
|
||||||
|
$mod+Shift+$up move up
|
||||||
|
$mod+Shift+$right move right
|
||||||
|
}
|
||||||
|
|
||||||
|
# layout
|
||||||
|
bindsym {
|
||||||
|
# Set how the current window will be split
|
||||||
|
$mod+s splitv
|
||||||
|
$mod+v splith
|
||||||
|
$mod+q split toggle
|
||||||
|
|
||||||
|
# Switch the current container between different layout styles
|
||||||
|
$mod+w layout stacking
|
||||||
|
$mod+t layout tabbed
|
||||||
|
$mod+e layout toggle split
|
||||||
|
|
||||||
|
# Make the current focus fullscreen
|
||||||
|
$mod+f fullscreen
|
||||||
|
|
||||||
|
# Toggle between tiling and floating mode
|
||||||
|
$mod+Shift+space floating toggle
|
||||||
|
$mod+Ctrl+space sticky toggle
|
||||||
|
|
||||||
|
# Swap focus between the tiling area and the floating area
|
||||||
|
$mod+space focus mode_toggle
|
||||||
|
|
||||||
|
# Move focus to the parent container
|
||||||
|
$mod+a focus parent
|
||||||
|
# Move focus to the child container
|
||||||
|
$mod+Shift+a focus child
|
||||||
|
}
|
||||||
|
|
||||||
|
# scratchpad
|
||||||
|
bindsym {
|
||||||
|
# Move the currently focused window to the scratchpad
|
||||||
|
$mod+Shift+minus move scratchpad
|
||||||
|
|
||||||
|
# Show the next scratchpad window or hide the focused scratchpad window.
|
||||||
|
# If there are multiple scratchpad windows, this command cycles through them.
|
||||||
|
$mod+minus scratchpad show
|
||||||
|
}
|
||||||
|
|
||||||
|
# resize
|
||||||
|
# Move windows by holding down $mod and left mouse button.
|
||||||
|
# Resize them with right mouse button + $mod.
|
||||||
|
# Change "normal" to "inverse" to switch left and right
|
||||||
|
floating_modifier $mod normal
|
||||||
|
bindsym {
|
||||||
|
# Resize with arrow keys
|
||||||
|
$mod+ctrl+Right resize shrink width 100 px
|
||||||
|
$mod+ctrl+Up resize grow height 100 px
|
||||||
|
$mod+ctrl+Down resize shrink height 100 px
|
||||||
|
$mod+ctrl+Left resize grow width 100 px
|
||||||
|
# Resize with Vim keys
|
||||||
|
$mod+ctrl+$right resize shrink width 100 px
|
||||||
|
$mod+ctrl+$up resize grow height 100 px
|
||||||
|
$mod+ctrl+$down resize shrink height 100 px
|
||||||
|
$mod+ctrl+$left resize grow width 100 px
|
||||||
|
}
|
||||||
|
# Resize floating windows with mouse scroll
|
||||||
|
bindsym --whole-window --border {
|
||||||
|
# Resize vertically
|
||||||
|
$mod+button4 resize shrink height 5 px or 5 ppt
|
||||||
|
$mod+button5 resize grow height 5 px or 5 ppt
|
||||||
|
# Resize horizontally
|
||||||
|
$mod+Shift+button4 resize shrink width 5 px or 5 ppt
|
||||||
|
$mod+Shift+button5 resize grow width 5 px or 5 ppt
|
||||||
|
}
|
||||||
|
|
||||||
|
# media keys
|
||||||
|
bindsym {
|
||||||
|
# Volume
|
||||||
|
XF86AudioRaiseVolume exec pamixer -ui 2
|
||||||
|
XF86AudioLowerVolume exec pamixer -ud 2
|
||||||
|
XF86AudioMute exec pamixer --toggle-mute
|
||||||
|
Pause exec pamixer -ui 2
|
||||||
|
Print exec pamixer -ud 2
|
||||||
|
Scroll_Lock exec pamixer --toggle-mute
|
||||||
|
|
||||||
|
# Player
|
||||||
|
XF86AudioPlay exec playerctl play-pause
|
||||||
|
XF86AudioNext exec playerctl next
|
||||||
|
XF86AudioPrev exec playerctl previous
|
||||||
|
|
||||||
|
# Backlight
|
||||||
|
XF86MonBrightnessUp exec brightnessctl -c backlight set +5%
|
||||||
|
XF86MonBrightnessDown exec brightnessctl -c backlight set 5%-
|
||||||
|
}
|
||||||
|
|
||||||
|
# workspaces
|
||||||
|
bindsym {
|
||||||
|
# Switch to workspace
|
||||||
|
$mod+1 workspace 1
|
||||||
|
$mod+2 workspace 2
|
||||||
|
$mod+3 workspace 3
|
||||||
|
$mod+4 workspace 4
|
||||||
|
$mod+5 workspace 5
|
||||||
|
$mod+6 workspace 6
|
||||||
|
$mod+7 workspace 7
|
||||||
|
$mod+8 workspace 8
|
||||||
|
$mod+9 workspace 9
|
||||||
|
$mod+0 workspace 10
|
||||||
|
$mod+Insert workspace INS
|
||||||
|
$mod+Delete workspace DEL
|
||||||
|
$mod+Home workspace HOM
|
||||||
|
$mod+End workspace END
|
||||||
|
$mod+Prior workspace PUp
|
||||||
|
$mod+Next workspace Pdn
|
||||||
|
|
||||||
|
# Move focused container to workspace
|
||||||
|
$mod+Shift+1 move container to workspace 1
|
||||||
|
$mod+Shift+2 move container to workspace 2
|
||||||
|
$mod+Shift+3 move container to workspace 3
|
||||||
|
$mod+Shift+4 move container to workspace 4
|
||||||
|
$mod+Shift+5 move container to workspace 5
|
||||||
|
$mod+Shift+6 move container to workspace 6
|
||||||
|
$mod+Shift+7 move container to workspace 7
|
||||||
|
$mod+Shift+8 move container to workspace 8
|
||||||
|
$mod+Shift+9 move container to workspace 9
|
||||||
|
$mod+Shift+0 move container to workspace 10
|
||||||
|
$mod+Shift+Insert move container to workspace INS
|
||||||
|
$mod+Shift+Delete move container to workspace DEL
|
||||||
|
$mod+Shift+Home move container to workspace HOM
|
||||||
|
$mod+Shift+End move container to workspace END
|
||||||
|
$mod+Shift+Prior move container to workspace PUp
|
||||||
|
$mod+Shift+Next move container to workspace Pdn
|
||||||
|
}
|
||||||
|
|
||||||
|
# local config
|
||||||
|
include $HOME/.config/sway/local_config
|
||||||
|
|
||||||
|
# apps
|
||||||
|
bindsym {
|
||||||
|
# Snip a selection and pipe to swappy
|
||||||
|
$mod+Shift+s exec grim -g "$(slurp)" - | swappy -f -
|
||||||
|
|
||||||
|
# unicode picker
|
||||||
|
$mod+u exec unipicker --command "fuzzel --dmenu | wl-copy"
|
||||||
|
|
||||||
|
# Launch the browser
|
||||||
|
$mod+i exec qutebrowser
|
||||||
|
|
||||||
|
# Launch the file explorer
|
||||||
|
$mod+o exec pcmanfm
|
||||||
|
|
||||||
|
# Notifications
|
||||||
|
$mod+n exec swaync-client --hide-latest
|
||||||
|
$mod+Shift+n exec swaync-client --close-latest
|
||||||
|
$mod+m exec swaync-client -t -sw
|
||||||
|
}
|
||||||
|
|
||||||
|
# config tools
|
||||||
|
set $mode_monitor (b) btop, (h) htop, (s) isd, (j) journal, (n) nvtop
|
||||||
|
mode "$mode_monitor" {
|
||||||
|
bindsym b exec footclient --app-id floating_shell --window-size-chars 140x50 btop, mode "default"
|
||||||
|
bindsym h exec footclient --app-id floating_shell --window-size-chars 140x50 htop, mode "default"
|
||||||
|
bindsym s exec footclient --app-id floating_shell --window-size-chars 140x50 isd, mode "default"
|
||||||
|
bindsym j exec footclient --app-id floating_shell --window-size-chars 140x50 lazyjournal, mode "default"
|
||||||
|
bindsym n exec footclient --app-id floating_shell --window-size-chars 140x50 nvtop, mode "default"
|
||||||
|
|
||||||
|
bindsym Return mode "default"
|
||||||
|
bindsym Escape mode "default"
|
||||||
|
}
|
||||||
|
bindsym $mod+Shift+m mode "$mode_monitor"
|
||||||
|
|
||||||
|
# ------------------------------------------
|
||||||
|
# AUTOSTART
|
||||||
|
# ------------------------------------------
|
||||||
|
# Auth with polkit-gnome
|
||||||
|
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
|
||||||
|
exec systemctl --user import-environment DISPLAY WAYLAND_DISPLAY SWAYSOCK XDG_CURRENT_DESKTOP
|
||||||
|
|
||||||
|
# Update dbus environments with display variables
|
||||||
|
exec hash dbus-update-activation-environment 2>/dev/null && \
|
||||||
|
dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK XDG_CURRENT_DESKTOP
|
||||||
|
|
||||||
|
# Start foot server
|
||||||
|
exec systemctl --user enable --now foot-server.service
|
||||||
|
|
||||||
|
exec {
|
||||||
|
# Set wallpaper
|
||||||
|
~/.azotebg
|
||||||
|
|
||||||
|
# Network Applet
|
||||||
|
nm-applet --indicator
|
||||||
|
|
||||||
|
# automount usb
|
||||||
|
pcmanfm --daemon-mode
|
||||||
|
|
||||||
|
# Bluetooth Applet
|
||||||
|
blueman-applet
|
||||||
|
|
||||||
|
# night-time color shift
|
||||||
|
wlsunset -l 59.91:10.76
|
||||||
|
}
|
||||||
|
|
||||||
|
exec_always {
|
||||||
|
# Idle configuration
|
||||||
|
pkill -x swayidle; exec swayidle -w \
|
||||||
|
timeout 1200 'gtklock' \
|
||||||
|
timeout 2400 'swaymsg "output * dpms off"' \
|
||||||
|
resume 'swaymsg "output * dpms on"' \
|
||||||
|
before-sleep 'gtklock'
|
||||||
|
lock 'gtklock'
|
||||||
|
|
||||||
|
# nwg-drawer
|
||||||
|
nwg-drawer -r -c 7 -is 90 -mb 10 -ml 50 -mr 50 -mt 10
|
||||||
|
|
||||||
|
# persist clipboard after close
|
||||||
|
pkill -x wl-clip-persist
|
||||||
|
wl-clip-persist --clipboard regular --all-mime-type-regex '(?i)^(?!image/x-inkscape-svg).+'
|
||||||
|
|
||||||
|
# enable noisetorch
|
||||||
|
noisetorch -u
|
||||||
|
noisetorch -i
|
||||||
|
}
|
||||||
|
|
||||||
|
# ------------------------------------------
|
||||||
|
# WINDOWS
|
||||||
|
# ------------------------------------------
|
||||||
|
# Custom windowing rules
|
||||||
|
for_window [class="Yad" instance="yad"] floating enable
|
||||||
|
for_window [app_id="yad"] floating enable
|
||||||
|
for_window [app_id="blueman-manager"] floating enable, resize set width 40 ppt height 30 ppt
|
||||||
|
for_window [app_id="pavucontrol" ] floating enable, resize set width 40 ppt height 30 ppt
|
||||||
|
for_window [window_role="pop-up"] floating enable
|
||||||
|
for_window [window_role="bubble"] floating enable
|
||||||
|
for_window [window_role="task_dialog"] floating enable
|
||||||
|
for_window [window_role="Preferences"] floating enable
|
||||||
|
for_window [window_type="dialog"] floating enable
|
||||||
|
for_window [window_type="menu"] floating enable
|
||||||
|
for_window [window_role="About"] floating enable
|
||||||
|
for_window [title="File Operation Progress"] floating enable, border pixel 1, sticky enable, resize set width 40 ppt height 30 ppt
|
||||||
|
for_window [app_id="floating_shell"] floating enable, border pixel 1, sticky enable
|
||||||
|
for_window [title="Picture in picture"] floating enable, sticky enable
|
||||||
|
for_window [title="Save File"] floating enable
|
||||||
|
for_window [instance="matplotlib"] floating enable
|
||||||
|
for_window [app_id="qalculate-gtk"] floating enable
|
||||||
|
for_window [app_id="firefox" title="Firefox — Sharing Indicator"] kill
|
||||||
|
# only thunderbird main window as float
|
||||||
|
for_window [app_id="org.mozilla.Thunderbird" title="^((?!Mozilla Thunderbird).)*$"] floating enable
|
||||||
|
|
||||||
|
# steam
|
||||||
|
# https://github.com/ValveSoftware/steam-for-linux/issues/1040
|
||||||
|
for_window [app_id="^steam$"] floating enable
|
||||||
|
for_window [app_id="^Steam$"] floating enable
|
||||||
|
for_window [app_id="^steam$" title="^Steam$"] floating disable
|
||||||
|
|
||||||
|
# Inhibit idle
|
||||||
|
for_window [app_id="firefox"] inhibit_idle fullscreen
|
||||||
|
for_window [app_id="Chromium"] inhibit_idle fullscreen
|
||||||
|
|
||||||
|
# Don't allow applications to inhibit shortcuts, i.e. grab total control of the
|
||||||
|
# keyboard. Chrome currently abuses this by enabling it for all "--app=..." shortcuts.
|
||||||
|
seat * shortcuts_inhibitor disable
|
||||||
|
|
||||||
|
# ------------------------------------------
|
||||||
|
# IO
|
||||||
|
# ------------------------------------------
|
||||||
|
input type:touchpad {
|
||||||
|
dwt enabled
|
||||||
|
tap disabled
|
||||||
|
natural_scroll enabled
|
||||||
|
accel_profile "adaptive"
|
||||||
|
}
|
||||||
|
|
||||||
|
input type:keyboard {
|
||||||
|
xkb_layout "us_custom,us_norwegian"
|
||||||
|
xkb_options "grp:shifts_toggle,caps:escape"
|
||||||
|
}
|
||||||
|
|
||||||
|
input type:mouse {
|
||||||
|
accel_profile "flat"
|
||||||
|
pointer_accel 0.5
|
||||||
|
}
|
||||||
Executable
+14
@@ -0,0 +1,14 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
config="${XDG_CONFIG_HOME:-$HOME/.config}/gtk-3.0/settings.ini"
|
||||||
|
if [ ! -f "$config" ]; then exit 1; fi
|
||||||
|
|
||||||
|
gnome_schema="org.gnome.desktop.interface"
|
||||||
|
gtk_theme="$(grep 'gtk-theme-name' "$config" | cut -d'=' -f2)"
|
||||||
|
icon_theme="$(grep 'gtk-icon-theme-name' "$config" | cut -d'=' -f2)"
|
||||||
|
cursor_theme="$(grep 'gtk-cursor-theme-name' "$config" | cut -d'=' -f2)"
|
||||||
|
font_name="$(grep 'gtk-font-name' "$config" | cut -d'=' -f2)"
|
||||||
|
gsettings set "$gnome_schema" gtk-theme "$gtk_theme"
|
||||||
|
gsettings set "$gnome_schema" icon-theme "$icon_theme"
|
||||||
|
gsettings set "$gnome_schema" cursor-theme "$cursor_theme"
|
||||||
|
gsettings set "$gnome_schema" font-name "$font_name"
|
||||||
|
gsettings set "$gnome_schema" color-scheme 'prefer-dark'
|
||||||
Executable
+41
@@ -0,0 +1,41 @@
|
|||||||
|
#!/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: ")"
|
||||||
|
[[ -z "$SELECTION" ]] && exit 0
|
||||||
|
|
||||||
|
confirm_action() {
|
||||||
|
local action="$1"
|
||||||
|
CONFIRMATION="$(printf "No\nYes" | fuzzel --dmenu -a top-right -l 2 -w 18 -p "$action?")"
|
||||||
|
[[ "$CONFIRMATION" == *"Yes"* ]]
|
||||||
|
}
|
||||||
|
|
||||||
|
case $SELECTION in
|
||||||
|
*" Lock"*)
|
||||||
|
gtklock
|
||||||
|
;;
|
||||||
|
*" Suspend"*)
|
||||||
|
if confirm_action "Suspend"; then
|
||||||
|
systemctl suspend-then-hibernate
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
*" Log out"*)
|
||||||
|
if confirm_action "Log out"; then
|
||||||
|
swaymsg exit
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
*" Reboot"*)
|
||||||
|
if confirm_action "Reboot"; then
|
||||||
|
systemctl reboot
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
*" Reboot to UEFI"*)
|
||||||
|
if confirm_action "Reboot to UEFI"; then
|
||||||
|
systemctl reboot --firmware-setup
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
*" Shutdown"*)
|
||||||
|
if confirm_action "Shutdown"; then
|
||||||
|
systemctl poweroff
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac
|
||||||
Executable
+32
@@ -0,0 +1,32 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Define the lengths for each column
|
||||||
|
ws_length=2
|
||||||
|
app_id_length=14
|
||||||
|
name_length=50
|
||||||
|
|
||||||
|
# Fetch the data from swaymsg and format it
|
||||||
|
formatted_output=$(swaymsg -t get_tree | jq -r --arg ws_length "$ws_length" --arg app_id_length "$app_id_length" --arg name_length "$name_length" '
|
||||||
|
def lpad($len; $char):
|
||||||
|
if (.|length) > $len then $char * ($len - (.|length)) +.[:$len-1] + "\u2026" else $char * ($len - (.|length)) +. end;
|
||||||
|
def rpad($len; $char):
|
||||||
|
if (.|length) > $len then.[:$len-1] + "\u2026" else. + $char * ($len - (.|length)) end;
|
||||||
|
..
|
||||||
|
| objects
|
||||||
|
| select(.type == "workspace") as $ws
|
||||||
|
|..
|
||||||
|
| objects
|
||||||
|
| select(has("app_id"))
|
||||||
|
| (if.focused then "*" else " " end) as $asterisk
|
||||||
|
| "\($asterisk)[\($ws.name | lpad($ws_length | tonumber; " "))]\((.app_id // "xwayland") | lpad($app_id_length | tonumber; " ")): \(.name | rpad($name_length | tonumber; " ")) (\(.id))"
|
||||||
|
')
|
||||||
|
|
||||||
|
# Launch fuzzel with the formatted output
|
||||||
|
row=$(echo "$formatted_output" | fuzzel --dmenu --width=80 --lines=12)
|
||||||
|
|
||||||
|
# Get the container ID from the selection and focus the container
|
||||||
|
if [ -n "$row" ]; then
|
||||||
|
winid="${row##*(}"
|
||||||
|
winid="${winid%%)*}"
|
||||||
|
swaymsg "[con_id=$winid] focus"
|
||||||
|
fi
|
||||||
@@ -0,0 +1,62 @@
|
|||||||
|
{
|
||||||
|
"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",
|
||||||
|
"backlight",
|
||||||
|
"buttons-grid",
|
||||||
|
"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
|
||||||
|
},
|
||||||
|
"volume": {
|
||||||
|
"label": "Volume",
|
||||||
|
"show-percentage": true
|
||||||
|
},
|
||||||
|
"backlight": {
|
||||||
|
"label": "Brightness"
|
||||||
|
},
|
||||||
|
"buttons-grid": {
|
||||||
|
"actions": [
|
||||||
|
{
|
||||||
|
"label": "WiFi",
|
||||||
|
"command": "nm-connection-editor"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "Bluetooth",
|
||||||
|
"command": "blueman-manager"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,63 @@
|
|||||||
|
@define-color bg rgba(10, 10, 10, 0.85);
|
||||||
|
@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;
|
||||||
|
}
|
||||||
|
|
||||||
|
.close-button {
|
||||||
|
background: transparent;
|
||||||
|
border: none;
|
||||||
|
color: @text;
|
||||||
|
}
|
||||||
|
|
||||||
|
.close-button:hover {
|
||||||
|
background: @urgent;
|
||||||
|
}
|
||||||
|
.widget-dnd,
|
||||||
|
.widget-mpris,
|
||||||
|
.widget-volume,
|
||||||
|
.widget-backlight,
|
||||||
|
.widget-buttons-grid {
|
||||||
|
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
|
||||||
@@ -12,9 +12,13 @@ set -g allow-passthrough
|
|||||||
set -g history-limit 100000
|
set -g history-limit 100000
|
||||||
set -g focus-events on
|
set -g focus-events on
|
||||||
|
|
||||||
# screen colors
|
# Advertise tmux correctly to programs running inside it.
|
||||||
set -g default-terminal "tmux-256color"
|
set -g default-terminal "tmux-256color"
|
||||||
set -sa terminal-features ",xterm-256color:RGB"
|
set -as terminal-features ',*:RGB'
|
||||||
|
set -as terminal-features ',*:clipboard'
|
||||||
|
|
||||||
|
# Allow image passthrough
|
||||||
|
set -gq allow-passthrough on
|
||||||
|
|
||||||
# Start with index 1
|
# Start with index 1
|
||||||
set -g base-index 1
|
set -g base-index 1
|
||||||
@@ -28,11 +32,8 @@ bg_active_window="color252"
|
|||||||
bg_highlight="red"
|
bg_highlight="red"
|
||||||
|
|
||||||
# pane title
|
# pane title
|
||||||
ps_pid='#(pgrep -P "#{pane_pid}" | tr "\n" " ")'
|
|
||||||
cmd='#(ps --no-headers -o args $(pgrep -P "#{pane_pid}"))'
|
|
||||||
# cmd='#(ps --no-headers -t #{pane_tty} -o args -O-c | tr "\n" " ")'
|
|
||||||
setw -g pane-border-status top
|
setw -g pane-border-status top
|
||||||
setw -g pane-border-format " #{pane_current_path} #{=/-20/…:pane_current_command} ${ps_pid}[${cmd}] #{?alternate_on,<Alt Mode> ,}"
|
setw -g pane-border-format " #{pane_current_path} #{=/-40/…:pane_current_command} #{?alternate_on,<Alt Mode> ,}"
|
||||||
set -g pane-border-style "fg=${fg_inactive_pane}"
|
set -g pane-border-style "fg=${fg_inactive_pane}"
|
||||||
set -g pane-active-border-style "fg=${fg_active_pane}"
|
set -g pane-active-border-style "fg=${fg_active_pane}"
|
||||||
|
|
||||||
@@ -59,17 +60,13 @@ set -g set-titles on
|
|||||||
######################
|
######################
|
||||||
### KEYBINDS ###
|
### KEYBINDS ###
|
||||||
######################
|
######################
|
||||||
# Config that is very close to a i3 window manager's keybinding.
|
|
||||||
|
|
||||||
# Set new prefix
|
|
||||||
# Note : you can press super key by set M.
|
|
||||||
# (tested with tty only)
|
|
||||||
set -g prefix M-a
|
set -g prefix M-a
|
||||||
bind M-a send-prefix
|
|
||||||
|
|
||||||
# First remove *all* keybindings
|
# First remove *all* keybindings
|
||||||
unbind -a
|
unbind -a
|
||||||
|
|
||||||
|
bind M-a send-prefix
|
||||||
|
|
||||||
# Basic bindings
|
# Basic bindings
|
||||||
bind ? list-keys
|
bind ? list-keys
|
||||||
bind d detach-client
|
bind d detach-client
|
||||||
@@ -77,18 +74,21 @@ bind D choose-client
|
|||||||
bind : command-prompt
|
bind : command-prompt
|
||||||
bind '~' show-messages
|
bind '~' show-messages
|
||||||
|
|
||||||
|
# Fix Home and End keys
|
||||||
|
bind-key -n Home send-keys "\033[H"
|
||||||
|
bind-key -n End send-keys "\033[F"
|
||||||
|
|
||||||
# Copy mode
|
# Copy mode
|
||||||
bind c copy-mode
|
bind c copy-mode
|
||||||
|
|
||||||
# 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 "xclip -i -f -selection primary | xclip -i -selection clipboard"
|
bind -T copy-mode-vi y send-keys -X copy-selection
|
||||||
|
bind -T copy-mode-vi Enter send-keys -X copy-selection-and-cancel
|
||||||
|
bind -T copy-mode-vi V send-keys -X select-line
|
||||||
|
bind -T copy-mode-vi Escape send-keys -X clear-selection
|
||||||
|
bind -T copy-mode-vi q send-keys -X cancel
|
||||||
|
bind -T copy-mode-vi Y send-keys -X copy-end-of-line
|
||||||
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 q send-keys -X clear-selection
|
|
||||||
bind -T copy-mode MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "xclip -selection primary -filter | xclip -selection clipboard"
|
|
||||||
bind -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "xclip -selection primary -filter | xclip -selection clipboard"
|
|
||||||
|
|
||||||
# Rename window
|
# Rename window
|
||||||
bind , command-prompt "rename-window %%"
|
bind , command-prompt "rename-window %%"
|
||||||
@@ -99,6 +99,10 @@ bind t clock-mode
|
|||||||
|
|
||||||
# Show pane numbers
|
# Show pane numbers
|
||||||
bind i display-panes
|
bind i display-panes
|
||||||
|
ps_pid='#(pgrep -P "#{pane_pid}" | tr "\n" " ")'
|
||||||
|
cmd='#(ps --no-headers -o args $(pgrep -P "#{pane_pid}"))'
|
||||||
|
bind P display-message -d 100000 "${cmd} FOLDER:#{pane_current_path} CMD:#{=/-20/…:pane_current_command} PID:${ps_pid}"
|
||||||
|
|
||||||
|
|
||||||
# Config Reloads
|
# Config Reloads
|
||||||
bind r source-file ~/.config/tmux/tmux.conf \; refresh-client \; display-message "Config reloaded"
|
bind r source-file ~/.config/tmux/tmux.conf \; refresh-client \; display-message "Config reloaded"
|
||||||
@@ -114,6 +118,8 @@ bind v split-window -h -c "#{pane_current_path}"
|
|||||||
bind s split-window -v -c "#{pane_current_path}"
|
bind s split-window -v -c "#{pane_current_path}"
|
||||||
bind V split-window -fh -c "#{pane_current_path}"
|
bind V split-window -fh -c "#{pane_current_path}"
|
||||||
bind S split-window -fv -c "#{pane_current_path}"
|
bind S split-window -fv -c "#{pane_current_path}"
|
||||||
|
bind x split-window -fh bash
|
||||||
|
|
||||||
|
|
||||||
# Change layouts
|
# Change layouts
|
||||||
bind o rotate-window
|
bind o rotate-window
|
||||||
@@ -133,16 +139,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 '%%'"
|
||||||
@@ -182,28 +189,26 @@ bind b send-keys -R \; clear-history \; send-keys Enter
|
|||||||
# various plugins
|
# various plugins
|
||||||
set -g @plugin 'tmux-plugins/tpm'
|
set -g @plugin 'tmux-plugins/tpm'
|
||||||
set -g @plugin 'tmux-plugins/tmux-sensible'
|
set -g @plugin 'tmux-plugins/tmux-sensible'
|
||||||
set -g @plugin 'tmux-plugins/tmux-yank'
|
|
||||||
|
|
||||||
|
|
||||||
######################
|
######################
|
||||||
### PANE CONTROL ###
|
### PANE CONTROL ###
|
||||||
######################
|
######################
|
||||||
|
|
||||||
set -g @plugin 'mrjones2014/smart-splits.nvim'
|
set -g @plugin 'smart-splits-nvim/backend-tmux'
|
||||||
|
|
||||||
# Optional configurations with their default values if omitted:
|
set -g @smart-splits_at_edge 'wrap'
|
||||||
|
set -g @smart-splits_resize_step_size '3'
|
||||||
|
|
||||||
set -g @smart-splits_no_wrap '' # to disable wrapping. (any value disables wrapping)
|
set -g @smart-splits_move_left_key 'M-h'
|
||||||
|
set -g @smart-splits_move_down_key 'M-j'
|
||||||
|
set -g @smart-splits_move_up_key 'M-k'
|
||||||
|
set -g @smart-splits_move_right_key 'M-l'
|
||||||
|
|
||||||
set -g @smart-splits_move_left_key 'M-h' # key-mapping for navigation.
|
set -g @smart-splits_resize_left_key 'C-h'
|
||||||
set -g @smart-splits_move_down_key 'M-j' # --"--
|
set -g @smart-splits_resize_down_key 'C-j'
|
||||||
set -g @smart-splits_move_up_key 'M-k' # --"--
|
set -g @smart-splits_resize_up_key 'C-k'
|
||||||
set -g @smart-splits_move_right_key 'M-l' # --"--
|
set -g @smart-splits_resize_right_key 'C-l'
|
||||||
|
|
||||||
set -g @smart-splits_resize_left_key 'C-h' # key-mapping for resizing.
|
|
||||||
set -g @smart-splits_resize_down_key 'C-j' # --"--
|
|
||||||
set -g @smart-splits_resize_up_key 'C-k' # --"--
|
|
||||||
set -g @smart-splits_resize_right_key 'C-l' # --"--
|
|
||||||
|
|
||||||
set -g @smart-splits_resize_step_size '3' # change the step-size for resizing.
|
set -g @smart-splits_resize_step_size '3' # change the step-size for resizing.
|
||||||
|
|
||||||
Binary file not shown.
@@ -0,0 +1,204 @@
|
|||||||
|
{
|
||||||
|
"layer": "top", // Waybar at top layer
|
||||||
|
"position": "top", // Waybar position (top|bottom|left|right)
|
||||||
|
// "height": 30, // Auto-height is used when commented
|
||||||
|
// "width": 1280, // Full screen width when commented
|
||||||
|
"spacing": 16, // Gaps between modules (in px)
|
||||||
|
// See `man waybar` for more configuration options
|
||||||
|
|
||||||
|
// Configuration - modules-left
|
||||||
|
|
||||||
|
"modules-left": [
|
||||||
|
"custom/launcher",
|
||||||
|
"sway/workspaces",
|
||||||
|
"sway/mode",
|
||||||
|
"sway/window"
|
||||||
|
],
|
||||||
|
|
||||||
|
"custom/launcher": {
|
||||||
|
"format":"<span size='x-large'></span>",
|
||||||
|
"on-click": "exec nwg-drawer",
|
||||||
|
"tooltip": false
|
||||||
|
},
|
||||||
|
|
||||||
|
"sway/workspaces": {
|
||||||
|
"disable-scroll": true,
|
||||||
|
"all-outputs": true,
|
||||||
|
"format": "{icon}",
|
||||||
|
"format-icons": {
|
||||||
|
"3": "3",
|
||||||
|
"4": "4",
|
||||||
|
"5": "5",
|
||||||
|
"6": "6",
|
||||||
|
"7": "7",
|
||||||
|
"8": "8",
|
||||||
|
"9": "9",
|
||||||
|
"10": "10"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"sway/mode": {
|
||||||
|
"format": "<span style=\"italic\">{}</span>",
|
||||||
|
"tooltip": false
|
||||||
|
},
|
||||||
|
|
||||||
|
"sway/window": {
|
||||||
|
"format": "{}",
|
||||||
|
//"all-outputs": true, // Active window shows only on active display when commented
|
||||||
|
"max-length": 120
|
||||||
|
},
|
||||||
|
|
||||||
|
// Configuration - modules-center
|
||||||
|
|
||||||
|
"modules-center": [
|
||||||
|
"systemd-failed-units", "network"
|
||||||
|
],
|
||||||
|
|
||||||
|
"systemd-failed-units": {
|
||||||
|
"hide-on-ok": false, // Do not hide if there is zero failed units.
|
||||||
|
"format": "Systemd ✗ {nr_failed}",
|
||||||
|
"format-ok": "Systemd ✓",
|
||||||
|
"system": true, // Monitor failed systemwide units.
|
||||||
|
"user": true, // Ignore failed user units.
|
||||||
|
"on-click": "swaymsg exec 'footclient --app-id floating_shell --window-size-chars 250x45 systemctl-tui'"
|
||||||
|
},
|
||||||
|
|
||||||
|
// Configuration - modules-right
|
||||||
|
|
||||||
|
"idle_inhibitor": {
|
||||||
|
"format": "{icon}",
|
||||||
|
"format-icons": {
|
||||||
|
"activated": "",
|
||||||
|
"deactivated": ""
|
||||||
|
},
|
||||||
|
"tooltip-format-activated": "Idle Inhibitor Activated",
|
||||||
|
"tooltip-format-deactivated": "Idle Inhibitor Deactivated"
|
||||||
|
},
|
||||||
|
|
||||||
|
"cpu": {
|
||||||
|
"interval": 5,
|
||||||
|
"format": "{usage:>3}%",
|
||||||
|
"states": {
|
||||||
|
"warning": 70,
|
||||||
|
"critical": 90,
|
||||||
|
},
|
||||||
|
"on-click": "footclient --app-id floating_shell --window-size-chars 250x150 -e btop"
|
||||||
|
},
|
||||||
|
|
||||||
|
"temperature": {
|
||||||
|
"critical-threshold": 80,
|
||||||
|
"format": " {temperatureC}°C",
|
||||||
|
"on-click": "swaymsg exec 'footclient --app-id floating_shell --window-size-chars 120x100 -e watch sensors'"
|
||||||
|
},
|
||||||
|
|
||||||
|
"memory": {
|
||||||
|
"interval": 5,
|
||||||
|
"format": "{:>3}%",
|
||||||
|
"on-click": "footclient --app-id floating_shell --window-size-chars 250x150 -e btop",
|
||||||
|
"states": {
|
||||||
|
"warning": 70,
|
||||||
|
"critical": 90
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"disk#root": {
|
||||||
|
"path": "/",
|
||||||
|
"interval": 30,
|
||||||
|
"format": " / {specific_free:0.0f} of {specific_total:0.0f} GB free",
|
||||||
|
"unit": "GB",
|
||||||
|
"on-click": "swaymsg exec 'footclient --app-id floating_shell --window-size-chars 250x45 gdu -d'"
|
||||||
|
},
|
||||||
|
|
||||||
|
"backlight": {
|
||||||
|
"format": "{icon} {percent}%",
|
||||||
|
"format-icons": ["", "", "", "", "", "", "", "", ""],
|
||||||
|
"tooltip-format": "Backlight (Scroll): {percent:}%",
|
||||||
|
"on-scroll-down": "brightnessctl -c backlight set 5%-",
|
||||||
|
"on-scroll-up": "brightnessctl -c backlight set +5%"
|
||||||
|
},
|
||||||
|
|
||||||
|
"pulseaudio": {
|
||||||
|
"scroll-step": 2,
|
||||||
|
"format": "{icon} {volume}%",
|
||||||
|
"format-muted":" muted",
|
||||||
|
"format-icons": {
|
||||||
|
"headphones": "",
|
||||||
|
"handsfree": "",
|
||||||
|
"headset": "",
|
||||||
|
"phone": "",
|
||||||
|
"portable": "",
|
||||||
|
"car": "",
|
||||||
|
"default": ["", "", ""]
|
||||||
|
},
|
||||||
|
"on-click": "pavucontrol",
|
||||||
|
"tooltip-format": "{icon} {volume}% {format_source}",
|
||||||
|
"on-click-middle": "pactl set-sink-mute @DEFAULT_SINK@ toggle",
|
||||||
|
"on-scroll-up": "pactl set-sink-volume @DEFAULT_SINK@ +5%",
|
||||||
|
"on-scroll-down": "pactl set-sink-volume @DEFAULT_SINK@ -5%"
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
"include": "~/.config/waybar/local_config.jsonc",
|
||||||
|
|
||||||
|
"battery": {
|
||||||
|
"states": {
|
||||||
|
"warning": 30,
|
||||||
|
"critical": 15
|
||||||
|
},
|
||||||
|
"format": "{icon} {capacity}%",
|
||||||
|
"format-icons": ["", "", "", "", ""]
|
||||||
|
},
|
||||||
|
|
||||||
|
"custom/notification": {
|
||||||
|
"tooltip": true,
|
||||||
|
"format": "<span size='16pt'>{icon}</span>",
|
||||||
|
"format-icons": {
|
||||||
|
"notification": "",
|
||||||
|
"none": "",
|
||||||
|
"dnd-notification": "",
|
||||||
|
"dnd-none": "",
|
||||||
|
"inhibited-notification": "",
|
||||||
|
"inhibited-none": "",
|
||||||
|
"dnd-inhibited-notification": "",
|
||||||
|
"dnd-inhibited-none": ""
|
||||||
|
},
|
||||||
|
"return-type": "json",
|
||||||
|
"exec-if": "which swaync-client",
|
||||||
|
"exec": "swaync-client -swb",
|
||||||
|
"on-click": "swaync-client -t -sw",
|
||||||
|
"on-click-right": "swaync-client -d -sw",
|
||||||
|
"escape": true
|
||||||
|
},
|
||||||
|
|
||||||
|
"clock": {
|
||||||
|
"format": " {:%H:%M}",
|
||||||
|
"format-alt": " {:%OI:%M %p}",
|
||||||
|
"tooltip-format": " {:%A %m/%d}\n\n<tt><small>{calendar}</small></tt>",
|
||||||
|
"calendar": {
|
||||||
|
"on-scroll": 1,
|
||||||
|
"format": {
|
||||||
|
"months": "<span color='#ffead3'><b>{}</b></span>",
|
||||||
|
"days": "<span color='#ecc6d9'><b>{}</b></span>",
|
||||||
|
"weeks": "<span color='#99ffdd'><b>W{}</b></span>",
|
||||||
|
"weekdays": "<span color='#ffcc66'><b>{}</b></span>",
|
||||||
|
"today": "<span color='#ff6699'><b><u>{}</u></b></span>"
|
||||||
|
},
|
||||||
|
},
|
||||||
|
"actions": {
|
||||||
|
"on-scroll-up": "shift_up",
|
||||||
|
"on-scroll-down": "shift_down"
|
||||||
|
},
|
||||||
|
"on-click": "swaymsg exec 'footclient --app-id floating_shell --window-size-chars 120x45 khal interactive'"
|
||||||
|
},
|
||||||
|
|
||||||
|
"tray": {
|
||||||
|
"icon-size": 16,
|
||||||
|
"spacing":10
|
||||||
|
},
|
||||||
|
|
||||||
|
"custom/power": {
|
||||||
|
"format":"⏻",
|
||||||
|
"on-click": "exec ~/.config/sway/scripts/power_menu.sh",
|
||||||
|
"tooltip": false
|
||||||
|
},
|
||||||
|
}
|
||||||
@@ -0,0 +1,168 @@
|
|||||||
|
/* -----------------------------------------------------------------------------
|
||||||
|
* Keyframes & Colors
|
||||||
|
* -------------------------------------------------------------------------- */
|
||||||
|
@define-color highlight #00E5FF;
|
||||||
|
@define-color base1 #0A0A0A;
|
||||||
|
@define-color text #FFFFFF;
|
||||||
|
@define-color urgent #FF0033;
|
||||||
|
@define-color dim #333333;
|
||||||
|
|
||||||
|
@keyframes blink-warning {
|
||||||
|
70% {
|
||||||
|
color: @text;
|
||||||
|
}
|
||||||
|
to {
|
||||||
|
color: @text;
|
||||||
|
background-color: orange;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes blink-critical {
|
||||||
|
70% {
|
||||||
|
color: @text;
|
||||||
|
}
|
||||||
|
to {
|
||||||
|
color: @text;
|
||||||
|
background-color: @urgent;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -----------------------------------------------------------------------------
|
||||||
|
* Base styles
|
||||||
|
* -------------------------------------------------------------------------- */
|
||||||
|
* {
|
||||||
|
border: none;
|
||||||
|
border-radius: 0;
|
||||||
|
min-height: 0;
|
||||||
|
margin: 1px;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#waybar {
|
||||||
|
background: transparent;
|
||||||
|
color: @text;
|
||||||
|
background-color: @base1;
|
||||||
|
font-family: JetBrainsMono;
|
||||||
|
font-size: 13px;
|
||||||
|
border-bottom: 2px solid @dim;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Every modules */
|
||||||
|
#mode,
|
||||||
|
#network,
|
||||||
|
#custom-keyboard-layout,
|
||||||
|
#idle_inhibitor,
|
||||||
|
#cpu,
|
||||||
|
#memory,
|
||||||
|
#backlight,
|
||||||
|
#pulseaudio,
|
||||||
|
#battery,
|
||||||
|
#clock,
|
||||||
|
#tray {
|
||||||
|
padding: 0.5rem 0.6rem;
|
||||||
|
margin: 1px 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -----------------------------------------------------------------------------
|
||||||
|
* Module styles
|
||||||
|
* -------------------------------------------------------------------------- */
|
||||||
|
#workspaces button {
|
||||||
|
border-radius: 0px;
|
||||||
|
color: @text;
|
||||||
|
padding: 1px 6px;
|
||||||
|
margin-right: 2px;
|
||||||
|
margin-left: 2px;
|
||||||
|
border-bottom: 2px solid transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.focused {
|
||||||
|
border-bottom: 2px solid @highlight;
|
||||||
|
color: @highlight;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.urgent {
|
||||||
|
border-color: @urgent;
|
||||||
|
color: @urgent;
|
||||||
|
}
|
||||||
|
|
||||||
|
#mode {
|
||||||
|
background: @highlight;
|
||||||
|
color: #000000;
|
||||||
|
font-weight: bold;
|
||||||
|
margin-left: 5px;
|
||||||
|
padding: 7px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#window {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
#network.disconnected {
|
||||||
|
color: orange;
|
||||||
|
}
|
||||||
|
|
||||||
|
#cpu.warning {
|
||||||
|
color: orange;
|
||||||
|
}
|
||||||
|
|
||||||
|
#cpu.critical {
|
||||||
|
color: red;
|
||||||
|
}
|
||||||
|
|
||||||
|
#memory {
|
||||||
|
animation-timing-function: linear;
|
||||||
|
animation-iteration-count: infinite;
|
||||||
|
animation-direction: alternate;
|
||||||
|
}
|
||||||
|
|
||||||
|
#memory.warning {
|
||||||
|
color: orange;
|
||||||
|
}
|
||||||
|
|
||||||
|
#memory.critical {
|
||||||
|
color: red;
|
||||||
|
animation-name: blink-critical;
|
||||||
|
animation-duration: 2s;
|
||||||
|
padding-left: 5px;
|
||||||
|
padding-right: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#backlight.icon {
|
||||||
|
}
|
||||||
|
|
||||||
|
#pulseaudio {
|
||||||
|
}
|
||||||
|
|
||||||
|
#pulseaudio.muted {
|
||||||
|
color: @highlight;
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery {
|
||||||
|
animation-timing-function: linear;
|
||||||
|
animation-iteration-count: infinite;
|
||||||
|
animation-direction: alternate;
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery.warning {
|
||||||
|
color: orange;
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery.critical {
|
||||||
|
color: red;
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery.warning.discharging {
|
||||||
|
animation-name: blink-warning;
|
||||||
|
animation-duration: 3s;
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery.critical.discharging {
|
||||||
|
animation-name: blink-critical;
|
||||||
|
animation-duration: 2s;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-power {
|
||||||
|
margin-left: 15px;
|
||||||
|
margin-right: 15px;
|
||||||
|
font-size: 15px;
|
||||||
|
}
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
[screencast]
|
||||||
|
chooser_type = dmenu
|
||||||
|
chooser_cmd = fuzzel --dmenu
|
||||||
|
max_fps=30
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
foot.desktop
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
partial alphanumeric_keys
|
||||||
|
xkb_symbols "basic" {
|
||||||
|
include "us(basic)"
|
||||||
|
name[Group1]= "US Custom";
|
||||||
|
key <MENU> { [ Super_L ] };
|
||||||
|
};
|
||||||
@@ -0,0 +1,16 @@
|
|||||||
|
partial alphanumeric_keys
|
||||||
|
xkb_symbols "basic" {
|
||||||
|
include "us(basic)"
|
||||||
|
name[Group1]= "US Custom Norwegian";
|
||||||
|
|
||||||
|
key <MENU> { [ Super_L ] };
|
||||||
|
key <AD01> { [ q, Q, aring, Aring ] };
|
||||||
|
key <AD11> { [ bracketleft, braceleft, aring, Aring ] };
|
||||||
|
key <AD02> { [ w, W, ae, AE ] };
|
||||||
|
key <AC11> { [apostrophe, quotedbl, ae, AE ] };
|
||||||
|
key <AD05> { [ t, T, oslash, Oslash ] };
|
||||||
|
key <AC10> { [ semicolon, colon, oslash, Oslash ] };
|
||||||
|
key <AC03> { [ d, D, eacute, Eacute ] };
|
||||||
|
|
||||||
|
include "level3(ralt_switch)"
|
||||||
|
};
|
||||||
@@ -0,0 +1,314 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!--The Xournal++ settings file. Do not edit this file! Most settings are available in the Settings dialog, the others are commented in this file, but handle with care!-->
|
||||||
|
<settings>
|
||||||
|
<property name="pressureSensitivity" value="true"/>
|
||||||
|
<property name="minimumPressure" value="0.05"/>
|
||||||
|
<property name="pressureMultiplier" value="1"/>
|
||||||
|
<property name="zoomGesturesEnabled" value="true"/>
|
||||||
|
<property name="selectedToolbar" value="Portrait"/>
|
||||||
|
<property name="lastSavePath" value="/home/hjalmarlucius/Downloads"/>
|
||||||
|
<property name="lastOpenPath" value=""/>
|
||||||
|
<property name="lastImagePath" value=""/>
|
||||||
|
<property name="edgePanSpeed" value="20"/>
|
||||||
|
<property name="edgePanMaxMult" value="5"/>
|
||||||
|
<property name="zoomStep" value="10"/>
|
||||||
|
<property name="zoomStepScroll" value="2"/>
|
||||||
|
<property name="displayDpi" value="72"/>
|
||||||
|
<property name="mainWndWidth" value="1702"/>
|
||||||
|
<property name="mainWndHeight" value="1398"/>
|
||||||
|
<property name="maximized" value="false"/>
|
||||||
|
<property name="showToolbar" value="true"/>
|
||||||
|
<property name="showSidebar" value="true"/>
|
||||||
|
<property name="sidebarWidth" value="159"/>
|
||||||
|
<property name="sidebarNumberingStyle" value="1"/>
|
||||||
|
<property name="sidebarOnRight" value="false"/>
|
||||||
|
<property name="scrollbarOnLeft" value="false"/>
|
||||||
|
<property name="menubarVisible" value="false"/>
|
||||||
|
<property name="filepathShownInTitlebar" value="false"/>
|
||||||
|
<property name="pageNumberShownInTitlebar" value="false"/>
|
||||||
|
<property name="numColumns" value="1"/>
|
||||||
|
<property name="numRows" value="1"/>
|
||||||
|
<property name="viewFixedRows" value="false"/>
|
||||||
|
<property name="showPairedPages" value="false"/>
|
||||||
|
<property name="layoutVertical" value="false"/>
|
||||||
|
<property name="layoutRightToLeft" value="false"/>
|
||||||
|
<property name="layoutBottomToTop" value="false"/>
|
||||||
|
<property name="numPairsOffset" value="1"/>
|
||||||
|
<!--The icon theme, allowed values are "disabled", "onDrawOfLastPage", and "onScrollOfLastPage"-->
|
||||||
|
<property name="emptyLastPageAppend" value="onScrollOfLastPage"/>
|
||||||
|
<property name="presentationMode" value="false"/>
|
||||||
|
<!--Which GUI elements are shown in default view mode, separated by a colon (,)-->
|
||||||
|
<property name="defaultViewModeAttributes" value="showMenubar,showToolbar"/>
|
||||||
|
<!--Which GUI elements are shown in fullscreen view mode, separated by a colon (,)-->
|
||||||
|
<property name="fullscreenViewModeAttributes" value="goFullscren,showToolbar,showSidebar"/>
|
||||||
|
<!--Which GUI elements are shown in presentation view mode, separated by a colon (,)-->
|
||||||
|
<property name="presentationViewModeAttributes" value="goFullscren,showToolbar"/>
|
||||||
|
<!--The cursor icon used with a stylus, allowed values are "none", "dot", "big", "arrow"-->
|
||||||
|
<property name="stylusCursorType" value="dot"/>
|
||||||
|
<!--The eraser cursor visibility used with a stylus, allowed values are "never", "always", "hover", "touch"-->
|
||||||
|
<property name="eraserVisibility" value="always"/>
|
||||||
|
<!--The icon theme, allowed values are "iconsColor", "iconsLucide"-->
|
||||||
|
<property name="iconTheme" value="iconsColor"/>
|
||||||
|
<!--Dark/light mode, allowed values are "useSystem", "forceLight", "forceDark"-->
|
||||||
|
<property name="themeVariant" value="useSystem"/>
|
||||||
|
<property name="highlightPosition" value="true"/>
|
||||||
|
<property name="cursorHighlightColor" value="2164260608"/>
|
||||||
|
<property name="cursorHighlightBorderColor" value="2147483903"/>
|
||||||
|
<property name="cursorHighlightRadius" value="30"/>
|
||||||
|
<property name="cursorHighlightBorderWidth" value="0"/>
|
||||||
|
<property name="useStockIcons" value="false"/>
|
||||||
|
<property name="disableScrollbarFadeout" value="false"/>
|
||||||
|
<property name="disableAudio" value="false"/>
|
||||||
|
<!--Hides scroolbars in the main window, allowed values: "none", "horizontal", "vertical", "both"-->
|
||||||
|
<property name="scrollbarHideType" value="none"/>
|
||||||
|
<property name="autoloadMostRecent" value="false"/>
|
||||||
|
<property name="autoloadPdfXoj" value="true"/>
|
||||||
|
<property name="defaultSaveName" value="%F-Note-%H-%M"/>
|
||||||
|
<property name="defaultPdfExportName" value="%{name}_annotated"/>
|
||||||
|
<property name="autosaveEnabled" value="true"/>
|
||||||
|
<property name="autosaveTimeout" value="3"/>
|
||||||
|
<property name="addHorizontalSpace" value="false"/>
|
||||||
|
<property name="addHorizontalSpaceAmountRight" value="150"/>
|
||||||
|
<property name="addHorizontalSpaceAmountLeft" value="150"/>
|
||||||
|
<property name="addVerticalSpace" value="false"/>
|
||||||
|
<property name="addVerticalSpaceAmountAbove" value="150"/>
|
||||||
|
<property name="addVerticalSpaceAmountBelow" value="150"/>
|
||||||
|
<property name="unlimitedScrolling" value="false"/>
|
||||||
|
<property name="drawDirModsEnabled" value="false"/>
|
||||||
|
<property name="drawDirModsRadius" value="50"/>
|
||||||
|
<property name="snapRotation" value="true"/>
|
||||||
|
<property name="snapRotationTolerance" value="0.3"/>
|
||||||
|
<property name="snapGrid" value="false"/>
|
||||||
|
<property name="snapGridTolerance" value="0.5"/>
|
||||||
|
<property name="snapGridSize" value="14.17"/>
|
||||||
|
<property name="strokeRecognizerMinSize" value="40"/>
|
||||||
|
<property name="touchDrawing" value="false"/>
|
||||||
|
<property name="gtkTouchInertialScrolling" value="true"/>
|
||||||
|
<property name="pressureGuessing" value="false"/>
|
||||||
|
<property name="recolor.enabled" value="false"/>
|
||||||
|
<property name="recolor.sidebar" value="false"/>
|
||||||
|
<property name="recolor.dark" value="4281349190"/>
|
||||||
|
<property name="recolor.light" value="4291219701"/>
|
||||||
|
<property name="selectionBorderColor" value="4294901760"/>
|
||||||
|
<property name="backgroundColor" value="4292664021"/>
|
||||||
|
<property name="selectionMarkerColor" value="4285702095"/>
|
||||||
|
<property name="activeSelectionColor" value="4286381056"/>
|
||||||
|
<property name="touchZoomStartThreshold" value="0"/>
|
||||||
|
<property name="pageRerenderThreshold" value="5"/>
|
||||||
|
<!--The count of rendered PDF pages which will be cached.-->
|
||||||
|
<property name="pdfPageCacheSize" value="10"/>
|
||||||
|
<property name="preloadPagesBefore" value="3"/>
|
||||||
|
<property name="preloadPagesAfter" value="5"/>
|
||||||
|
<property name="eagerPageCleanup" value="true"/>
|
||||||
|
<!--Config for new pages-->
|
||||||
|
<property name="pageTemplate" value="xoj/template copyLastPageSettings=true size=595.275591x841.889764 backgroundType=lined backgroundColor=#ffffff "/>
|
||||||
|
<property name="sizeUnit" value=""/>
|
||||||
|
<property name="audioFolder" value=""/>
|
||||||
|
<property name="audioInputDevice" value="-1"/>
|
||||||
|
<property name="audioOutputDevice" value="-1"/>
|
||||||
|
<property name="audioSampleRate" value="44100"/>
|
||||||
|
<property name="audioGain" value="1"/>
|
||||||
|
<property name="defaultSeekTime" value="5"/>
|
||||||
|
<property name="pluginEnabled" value=""/>
|
||||||
|
<property name="pluginDisabled" value=""/>
|
||||||
|
<property name="strokeFilterIgnoreTime" value="150"/>
|
||||||
|
<property name="strokeFilterIgnoreLength" value="1"/>
|
||||||
|
<property name="strokeFilterSuccessiveTime" value="500"/>
|
||||||
|
<property name="strokeFilterEnabled" value="false"/>
|
||||||
|
<property name="doActionOnStrokeFiltered" value="false"/>
|
||||||
|
<property name="trySelectOnStrokeFiltered" value="false"/>
|
||||||
|
<property name="snapRecognizedShapesEnabled" value="false"/>
|
||||||
|
<property name="restoreLineWidthEnabled" value="false"/>
|
||||||
|
<property name="numIgnoredStylusEvents" value="0"/>
|
||||||
|
<property name="inputSystemTPCButton" value="false"/>
|
||||||
|
<property name="inputSystemDrawOutsideWindow" value="true"/>
|
||||||
|
<property name="preferredLocale" value=""/>
|
||||||
|
<property name="useSpacesForTab" value="false"/>
|
||||||
|
<property name="numberOfSpacesForTab" value="4"/>
|
||||||
|
<property name="laserPointerFadeOutTime" value="500"/>
|
||||||
|
<property name="stabilizerAveragingMethod" value="0"/>
|
||||||
|
<property name="stabilizerPreprocessor" value="0"/>
|
||||||
|
<property name="stabilizerBuffersize" value="20"/>
|
||||||
|
<property name="stabilizerSigma" value="0.5"/>
|
||||||
|
<property name="stabilizerDeadzoneRadius" value="1.3"/>
|
||||||
|
<property name="stabilizerDrag" value="0.4"/>
|
||||||
|
<property name="stabilizerMass" value="5"/>
|
||||||
|
<property name="stabilizerCuspDetection" value="true"/>
|
||||||
|
<property name="stabilizerFinalizeStroke" value="true"/>
|
||||||
|
<property name="colorPalette" value="/usr/share/xournalpp/palettes/xournal.gpl"/>
|
||||||
|
<property name="latexSettings.autoCheckDependencies" value="true"/>
|
||||||
|
<property name="latexSettings.defaultText" value="x^2"/>
|
||||||
|
<property name="latexSettings.globalTemplatePath" value="/usr/share/xournalpp/resources/default_template.tex"/>
|
||||||
|
<property name="latexSettings.genCmd" value="pdflatex -halt-on-error -interaction=nonstopmode '{}'"/>
|
||||||
|
<property name="latexSettings.sourceViewThemeId" value="classic"/>
|
||||||
|
<property name="latexSettings.editorFont" value="Monospace 12"/>
|
||||||
|
<property name="latexSettings.useCustomEditorFont" value="false"/>
|
||||||
|
<property name="latexSettings.editorWordWrap" value="true"/>
|
||||||
|
<property name="latexSettings.sourceViewAutoIndent" value="true"/>
|
||||||
|
<property name="latexSettings.sourceViewSyntaxHighlight" value="true"/>
|
||||||
|
<property name="latexSettings.sourceViewShowLineNumbers" value="false"/>
|
||||||
|
<property name="latexSettings.useExternalEditor" value="false"/>
|
||||||
|
<property name="latexSettings.externalEditorAutoConfirm" value="false"/>
|
||||||
|
<property name="latexSettings.externalEditorCmd" value=""/>
|
||||||
|
<property name="latexSettings.temporaryFileExt" value="tex"/>
|
||||||
|
<property name="font" font="Sans" size="12"/>
|
||||||
|
<data name="buttonConfig">
|
||||||
|
<data name="default">
|
||||||
|
<attribute name="color" type="hex" value="ff000000"/>
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
<attribute name="size" type="string" value="thin"/>
|
||||||
|
<attribute name="strokeType" type="string" value="none"/>
|
||||||
|
<attribute name="tool" type="string" value="pen"/>
|
||||||
|
</data>
|
||||||
|
<data name="eraser">
|
||||||
|
<attribute name="eraserMode" type="string" value="none"/>
|
||||||
|
<attribute name="size" type="string" value="none"/>
|
||||||
|
<attribute name="tool" type="string" value="eraser"/>
|
||||||
|
</data>
|
||||||
|
<data name="left">
|
||||||
|
<attribute name="tool" type="string" value="none"/>
|
||||||
|
</data>
|
||||||
|
<data name="middle">
|
||||||
|
<attribute name="tool" type="string" value="hand"/>
|
||||||
|
</data>
|
||||||
|
<data name="right">
|
||||||
|
<attribute name="tool" type="string" value="none"/>
|
||||||
|
</data>
|
||||||
|
<data name="stylus">
|
||||||
|
<attribute name="color" type="hex" value="ffffff00"/>
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
<attribute name="size" type="string" value="none"/>
|
||||||
|
<attribute name="tool" type="string" value="highlighter"/>
|
||||||
|
</data>
|
||||||
|
<data name="stylus2">
|
||||||
|
<attribute name="tool" type="string" value="none"/>
|
||||||
|
</data>
|
||||||
|
<data name="touch">
|
||||||
|
<attribute name="device" type="string" value=""/>
|
||||||
|
<attribute name="disableDrawing" type="boolean" value="false"/>
|
||||||
|
<attribute name="tool" type="string" value="none"/>
|
||||||
|
</data>
|
||||||
|
</data>
|
||||||
|
<data name="deviceClasses">
|
||||||
|
<data name="">
|
||||||
|
<attribute name="deviceClass" type="int" value="0"/>
|
||||||
|
<attribute name="deviceSource" type="int" value="0"/>
|
||||||
|
</data>
|
||||||
|
<data name="Wacom Co.,Ltd. Wacom One pen tablet small">
|
||||||
|
<attribute name="deviceClass" type="int" value="2"/>
|
||||||
|
<attribute name="deviceSource" type="int" value="1"/>
|
||||||
|
</data>
|
||||||
|
<data name="Wacom Co.,Ltd. Wacom One pen tablet small (Eraser)">
|
||||||
|
<attribute name="deviceClass" type="int" value="3"/>
|
||||||
|
<attribute name="deviceSource" type="int" value="2"/>
|
||||||
|
</data>
|
||||||
|
<data name="Wayland Pointer">
|
||||||
|
<attribute name="deviceClass" type="int" value="1"/>
|
||||||
|
<attribute name="deviceSource" type="int" value="0"/>
|
||||||
|
</data>
|
||||||
|
<data name="Wayland Wheel Scrolling">
|
||||||
|
<attribute name="deviceClass" type="int" value="1"/>
|
||||||
|
<attribute name="deviceSource" type="int" value="0"/>
|
||||||
|
</data>
|
||||||
|
</data>
|
||||||
|
<data name="tools">
|
||||||
|
<attribute name="current" type="string" value="pen"/>
|
||||||
|
<data name="drawArrow">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="drawCoordinateSystem">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="drawDoubleArrow">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="drawEllipse">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="drawRect">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="drawSpline">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="eraser">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
<attribute name="size" type="string" value="MEDIUM"/>
|
||||||
|
<attribute name="type" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="hand">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="highlighter">
|
||||||
|
<attribute name="color" type="hex" value="ffffff00"/>
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
<attribute name="fill" type="int" value="0"/>
|
||||||
|
<attribute name="fillAlpha" type="int" value="128"/>
|
||||||
|
<attribute name="size" type="string" value="MEDIUM"/>
|
||||||
|
</data>
|
||||||
|
<data name="image">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="laserPointerHighlighter">
|
||||||
|
<attribute name="color" type="hex" value="ffff0000"/>
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
<attribute name="size" type="string" value="MEDIUM"/>
|
||||||
|
</data>
|
||||||
|
<data name="laserPointerPen">
|
||||||
|
<attribute name="color" type="hex" value="ffff0000"/>
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
<attribute name="size" type="string" value="MEDIUM"/>
|
||||||
|
</data>
|
||||||
|
<data name="pen">
|
||||||
|
<attribute name="color" type="hex" value="ffff00ff"/>
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
<attribute name="fill" type="int" value="0"/>
|
||||||
|
<attribute name="fillAlpha" type="int" value="128"/>
|
||||||
|
<attribute name="size" type="string" value="THIN"/>
|
||||||
|
<attribute name="style" type="string" value="plain"/>
|
||||||
|
</data>
|
||||||
|
<data name="playObject">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="selectMultiLayerRect">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="selectMultiLayerRegion">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="selectObject">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="selectPdfTextLinear">
|
||||||
|
<attribute name="color" type="hex" value="ff000000"/>
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="selectPdfTextRect">
|
||||||
|
<attribute name="color" type="hex" value="ff000000"/>
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="selectRect">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="selectRegion">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="showFloatingToolbox">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="text">
|
||||||
|
<attribute name="color" type="hex" value="ff000000"/>
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
<data name="verticalSpace">
|
||||||
|
<attribute name="drawingType" type="string" value="default"/>
|
||||||
|
</data>
|
||||||
|
</data>
|
||||||
|
<data name="touch">
|
||||||
|
<attribute name="cmdDisable" type="string" value=""/>
|
||||||
|
<attribute name="cmdEnable" type="string" value=""/>
|
||||||
|
<attribute name="disableTouch" type="boolean" value="false"/>
|
||||||
|
<attribute name="method" type="string" value="auto"/>
|
||||||
|
<attribute name="timeout" type="int" value="1000"/>
|
||||||
|
</data>
|
||||||
|
</settings>
|
||||||
@@ -0,0 +1,38 @@
|
|||||||
|
[[mgr.prepend_keymap]]
|
||||||
|
on = "E"
|
||||||
|
run = "shell 'exiftool %s | less' --block --confirm"
|
||||||
|
desc = "View file metadata with Exiftool"
|
||||||
|
|
||||||
|
[[mgr.prepend_keymap]]
|
||||||
|
on = "q"
|
||||||
|
run = "close"
|
||||||
|
desc = "Close tab"
|
||||||
|
|
||||||
|
[[mgr.prepend_keymap]]
|
||||||
|
on = "l"
|
||||||
|
run = "plugin smart-enter"
|
||||||
|
desc = "Enter the child directory, or open the file"
|
||||||
|
|
||||||
|
[[mgr.prepend_keymap]]
|
||||||
|
on = [ "c", "m" ]
|
||||||
|
run = "plugin chmod"
|
||||||
|
desc = "Chmod on selected files"
|
||||||
|
|
||||||
|
[[mgr.prepend_keymap]]
|
||||||
|
on = "F"
|
||||||
|
run = "plugin smart-filter"
|
||||||
|
desc = "Smart filter"
|
||||||
|
|
||||||
|
[[mgr.prepend_keymap]]
|
||||||
|
on = "M"
|
||||||
|
run = "plugin mount"
|
||||||
|
|
||||||
|
[[mgr.prepend_keymap]]
|
||||||
|
on = "T"
|
||||||
|
run = "plugin toggle-pane max-preview"
|
||||||
|
desc = "Maximize or restore the preview pane"
|
||||||
|
|
||||||
|
[[mgr.prepend_keymap]]
|
||||||
|
on = "C"
|
||||||
|
run = "plugin ouch"
|
||||||
|
desc = "Compress with ouch"
|
||||||
@@ -0,0 +1,154 @@
|
|||||||
|
[mgr]
|
||||||
|
linemode = "mtime"
|
||||||
|
show_hidden = true
|
||||||
|
sort_by = "natural"
|
||||||
|
ratio = [ 1, 4, 5 ]
|
||||||
|
|
||||||
|
[preview]
|
||||||
|
wrap = "yes"
|
||||||
|
image_delay = 50
|
||||||
|
max_width = 1500
|
||||||
|
max_height = 1500
|
||||||
|
|
||||||
|
[open]
|
||||||
|
prepend_rules = [
|
||||||
|
# Directories
|
||||||
|
{ mime = "inode/directory", use = [ "thunar", "pcmanfm", "open" ] },
|
||||||
|
|
||||||
|
# Text & Code
|
||||||
|
{ url = "*.csv", use = "text" },
|
||||||
|
{ url = "*.md", use = [ "glow", "nvim", "bat", "open" ] },
|
||||||
|
{ url = "*.json", use = [ "jq", "nvim", "bat", "open" ] },
|
||||||
|
{ mime = "text/*", use = [ "nvim", "bat", "open" ] },
|
||||||
|
{ mime = "inode/x-empty", use = [ "nvim", "open" ] },
|
||||||
|
|
||||||
|
# PDF & Documents
|
||||||
|
{ mime = "application/pdf", use = [ "zathura", "sioyek", "okular", "xournalpp", "chrome", "firefox", "open" ] },
|
||||||
|
{ mime = "application/vnd.openxmlformats-officedocument.*", use = [ "libreoffice", "calligra", "open" ] },
|
||||||
|
{ mime = "application/vnd.oasis.opendocument.*", use = [ "libreoffice", "calligra", "open" ] },
|
||||||
|
|
||||||
|
# Images
|
||||||
|
{ mime = "image/heic", use = [ "swappy", "krita", "open" ] },
|
||||||
|
{ mime = "image/*", use = [ "qimgv", "swappy", "krita", "open" ] },
|
||||||
|
|
||||||
|
# Video & Audio
|
||||||
|
{ mime = "video/*", use = [ "mpv", "vlc", "open" ] },
|
||||||
|
{ mime = "audio/*", use = [ "quodlibet", "mpv", "vlc", "open" ] },
|
||||||
|
|
||||||
|
# Archives
|
||||||
|
{ mime = "application/zip", use = [ "ouch", "file-roller", "open" ] },
|
||||||
|
{ mime = "application/x-tar", use = [ "ouch", "file-roller", "open" ] },
|
||||||
|
{ mime = "application/gzip", use = [ "ouch", "file-roller", "open" ] },
|
||||||
|
{ mime = "application/x-bzip*", use = [ "ouch", "file-roller", "open" ] },
|
||||||
|
{ mime = "application/x-7z-compressed", use = [ "ouch", "file-roller", "open" ] },
|
||||||
|
{ mime = "application/x-rar", use = [ "ouch", "file-roller", "open" ] },
|
||||||
|
|
||||||
|
# Web pages
|
||||||
|
{ mime = "text/html", use = [ "qutebrowser", "firefox", "chrome", "w3m", "open" ] },
|
||||||
|
|
||||||
|
# JSON files
|
||||||
|
# Certificates
|
||||||
|
{ url = "*.{crt,pem,cer,der}", use = [ "cert", "nvim", "bat", "open" ] },
|
||||||
|
|
||||||
|
# Catch-all for any file (allows Exiftool on everything as a fallback)
|
||||||
|
{ url = "*", use = [ "exiftool", "open" ] },
|
||||||
|
]
|
||||||
|
|
||||||
|
[opener]
|
||||||
|
# --- Text / Code (Blocking Terminal Apps) ---
|
||||||
|
text = [
|
||||||
|
{ run = "bat %s", block = true, desc = "bat" },
|
||||||
|
{ run = "nvim %s", block = true, desc = "nvim" },
|
||||||
|
]
|
||||||
|
nvim = [ { run = "nvim %s", block = true, desc = "Neovim" } ]
|
||||||
|
bat = [ { run = "bat %s", block = true, desc = "Bat" } ]
|
||||||
|
glow = [ { run = "glow --pager %s", block = true, desc = "Glow" } ]
|
||||||
|
jq = [ { run = "jq -C . %s | less -R", block = true, desc = "jq viewer" } ]
|
||||||
|
cert = [ { run = "openssl x509 -text -noout -in %s | less", block = true, desc = "View Cert (openssl)" } ]
|
||||||
|
|
||||||
|
# --- PDFs (Orphaned GUI Apps) ---
|
||||||
|
zathura = [ { run = "zathura %s", orphan = true, desc = "Zathura" } ]
|
||||||
|
sioyek = [ { run = "sioyek %s", orphan = true, desc = "Sioyek" } ]
|
||||||
|
okular = [ { run = "okular %s", orphan = true, desc = "Okular" } ]
|
||||||
|
xournalpp = [ { run = "xournalpp %s", orphan = true, desc = "Xournal++" } ]
|
||||||
|
|
||||||
|
# --- Browsers (Orphaned GUI Apps) ---
|
||||||
|
chrome = [ { run = "google-chrome-stable %s", orphan = true, desc = "Chrome" } ]
|
||||||
|
firefox = [ { run = "firefox %s", orphan = true, desc = "Firefox" } ]
|
||||||
|
qutebrowser = [ { run = "qutebrowser %s", orphan = true, desc = "Qutebrowser" } ]
|
||||||
|
w3m = [ { run = "w3m %s", orphan = true, desc = "w3m" } ]
|
||||||
|
|
||||||
|
# --- Media: Video / Audio (Orphaned GUI Apps) ---
|
||||||
|
mpv = [ { run = "mpv %s", orphan = true, desc = "MPV" } ]
|
||||||
|
vlc = [ { run = "vlc %s", orphan = true, desc = "VLC" } ]
|
||||||
|
quodlibet = [ { run = "quodlibet %s", orphan = true, desc = "quod libet" } ]
|
||||||
|
|
||||||
|
# --- Images (Orphaned GUI Apps) ---
|
||||||
|
qimgv = [ { run = "qimgv %s", orphan = true, desc = "qimgv" } ]
|
||||||
|
swappy = [ { run = "swappy -f %s", orphan = true, desc = "swappy" } ]
|
||||||
|
krita = [ { run = "krita %s", orphan = true, desc = "krita" } ]
|
||||||
|
|
||||||
|
# --- Office Documents (Orphaned GUI Apps) ---
|
||||||
|
libreoffice = [ { run = "libreoffice %s", orphan = true, desc = "LibreOffice" } ]
|
||||||
|
calligra = [ { run = "calligrawords %s", orphan = true, desc = "Calligra" } ]
|
||||||
|
|
||||||
|
# --- Archives ---
|
||||||
|
ouch = [ { run = "ouch d -y %s", desc = "Extract here with ouch" } ]
|
||||||
|
file-roller = [ { run = "file-roller %s", orphan = true, desc = "File Roller" } ]
|
||||||
|
|
||||||
|
# --- Directories (Orphaned GUI Apps) ---
|
||||||
|
thunar = [ { run = "thunar %s", orphan = true, desc = "Thunar" } ]
|
||||||
|
pcmanfm = [ { run = "pcmanfm %s", orphan = true, desc = "PCManFM" } ]
|
||||||
|
|
||||||
|
[input]
|
||||||
|
cursor_blink = true
|
||||||
|
|
||||||
|
[[plugin.append_previewers]]
|
||||||
|
url = "*"
|
||||||
|
run = "file-extra-metadata"
|
||||||
|
|
||||||
|
[[plugin.prepend_fetchers]]
|
||||||
|
group = "git"
|
||||||
|
url = "*"
|
||||||
|
run = "git"
|
||||||
|
|
||||||
|
[[plugin.prepend_fetchers]]
|
||||||
|
group = "git"
|
||||||
|
url = "*/"
|
||||||
|
run = "git"
|
||||||
|
|
||||||
|
[[plugin.prepend_previewers]]
|
||||||
|
mime = "application/{*zip,tar,bzip2,7z*,rar,xz,zstd,java-archive}"
|
||||||
|
run = "ouch"
|
||||||
|
|
||||||
|
[[plugin.prepend_previewers]]
|
||||||
|
url = "*/"
|
||||||
|
run = "eza-preview"
|
||||||
|
|
||||||
|
[[plugin.prepend_previewers]]
|
||||||
|
url = "*.tar*"
|
||||||
|
run = 'piper --format=url -- tar tf "$1"'
|
||||||
|
|
||||||
|
[[plugin.prepend_previewers]]
|
||||||
|
url = "*.csv"
|
||||||
|
run = 'piper -- bat -p --color=always "$1"'
|
||||||
|
|
||||||
|
[[plugin.prepend_previewers]]
|
||||||
|
url = "*.md"
|
||||||
|
run = 'piper -- CLICOLOR_FORCE=1 glow -w=$w -s=dark "$1"'
|
||||||
|
|
||||||
|
[[plugin.prepend_previewers]]
|
||||||
|
url = "*.parquet"
|
||||||
|
run = "parquet-preview"
|
||||||
|
|
||||||
|
[[plugin.prepend_previewers]]
|
||||||
|
url = "*.parq"
|
||||||
|
run = "parquet-preview"
|
||||||
|
|
||||||
|
[[plugin.prepend_previewers]]
|
||||||
|
url = "*.pq"
|
||||||
|
run = "parquet-preview"
|
||||||
|
|
||||||
|
[[plugin.prepend_spotters]]
|
||||||
|
url = "*"
|
||||||
|
run = "file-extra-metadata"
|
||||||
@@ -0,0 +1,79 @@
|
|||||||
|
# --- env ---
|
||||||
|
export SYSTEMD_EDITOR=nvim
|
||||||
|
export EDITOR=nvim
|
||||||
|
export VISUAL=nvim
|
||||||
|
export PAGER="bat --style=header,rule,snip"
|
||||||
|
export PATH=~/.local/bin:${KREW_ROOT:-$HOME/.krew}/bin:$PATH
|
||||||
|
export BROWSER=/usr/bin/qutebrowser
|
||||||
|
export HISTFILE=~/.config/zsh/history
|
||||||
|
export HISTSIZE=200000
|
||||||
|
export SAVEHIST=200000
|
||||||
|
|
||||||
|
# --- aliases ---
|
||||||
|
alias ls='ls --color=auto -Ah'
|
||||||
|
alias ..='cd ..'
|
||||||
|
alias ...='cd ../..'
|
||||||
|
catai () {
|
||||||
|
rg -l --hidden --glob '!.git/*' --sort path '^' -- "$@" | while IFS= read -r f; do
|
||||||
|
printf "\n── %s ──\n" "$f"
|
||||||
|
echo '```'
|
||||||
|
cat "$f"
|
||||||
|
echo '```'
|
||||||
|
done
|
||||||
|
}
|
||||||
|
alias sioyek="QT_QPA_PLATFORM=xcb sioyek"
|
||||||
|
|
||||||
|
# --- basic keybinds ---
|
||||||
|
bindkey '^[[Z' reverse-menu-complete # shift-tab
|
||||||
|
bindkey '^[^M' self-insert-unmeta # alt+enter newline
|
||||||
|
bindkey "^[^?" backward-kill-word # alt+backspace
|
||||||
|
|
||||||
|
# --- options ---
|
||||||
|
setopt HIST_IGNORE_ALL_DUPS HIST_IGNORE_SPACE SHARE_HISTORY EXTENDED_HISTORY
|
||||||
|
setopt AUTO_CD AUTO_MENU
|
||||||
|
setopt AUTO_PUSHD PUSHD_SILENT PUSHD_TO_HOME
|
||||||
|
setopt NO_NOMATCH
|
||||||
|
WORDCHARS='_-*?.[]~=&;!#$%^(){}<>'
|
||||||
|
|
||||||
|
# --- command line to EDITOR ---
|
||||||
|
autoload -Uz edit-command-line
|
||||||
|
zle -N edit-command-line
|
||||||
|
bindkey '^X^E' edit-command-line
|
||||||
|
|
||||||
|
# --- autocompletion ---
|
||||||
|
autoload -Uz compinit
|
||||||
|
compinit -d "~/.config/zsh/zcompdump"
|
||||||
|
zstyle ':completion:*' menu select
|
||||||
|
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Za-z}' 'r:|[._-]=** r:|=**'
|
||||||
|
zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS}
|
||||||
|
if command -v kubectl >/dev/null 2>&1; then
|
||||||
|
source <(kubectl completion zsh)
|
||||||
|
fi
|
||||||
|
|
||||||
|
# --- div plugins ---
|
||||||
|
# autosuggestions must come before atuin
|
||||||
|
source /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh
|
||||||
|
eval "$(zoxide init zsh)"
|
||||||
|
eval "$(starship init zsh)"
|
||||||
|
|
||||||
|
# --- vi mode ---
|
||||||
|
bindkey -v
|
||||||
|
source /usr/share/zsh/plugins/zsh-vi-mode/zsh-vi-mode.plugin.zsh
|
||||||
|
|
||||||
|
# --- search ---
|
||||||
|
# fzf: Ctrl-T, Alt-C
|
||||||
|
FZF_DEFAULT_COMMAND='fd --type f --hidden --exclude .git' \
|
||||||
|
FZF_CTRL_R_COMMAND= \
|
||||||
|
FZF_CTRL_T_COMMAND="$FZF_DEFAULT_COMMAND" \
|
||||||
|
source <(fzf --zsh)
|
||||||
|
# atuin: Ctrl+R, /
|
||||||
|
eval "$(atuin init zsh)"
|
||||||
|
# handle collisions
|
||||||
|
function zvm_after_init() {
|
||||||
|
bindkey -M vicmd '^R' redo
|
||||||
|
bindkey -M viins '^R' atuin-search
|
||||||
|
}
|
||||||
|
|
||||||
|
# --- syntax hl ---
|
||||||
|
# must be the last plugins sourced
|
||||||
|
source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
|
||||||
+15
-25
@@ -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
|
||||||
|
|||||||
@@ -0,0 +1,7 @@
|
|||||||
|
[Desktop Entry]
|
||||||
|
Type=Application
|
||||||
|
Name=file-roller
|
||||||
|
Exec=file-roller %f
|
||||||
|
Categories=FileTools;FileManager;
|
||||||
|
MimeType=application/zip
|
||||||
|
Terminal=false
|
||||||
@@ -1,36 +0,0 @@
|
|||||||
import pdb
|
|
||||||
|
|
||||||
|
|
||||||
class Config(pdb.DefaultConfig):
|
|
||||||
editor = "e"
|
|
||||||
stdin_paste = "epaste"
|
|
||||||
filename_color = pdb.Color.lightgray
|
|
||||||
use_terminal256formatter = False
|
|
||||||
# exec_if_unfocused = "play ~/sounds/dialtone.wav 2> /dev/null &"
|
|
||||||
|
|
||||||
def __init__(self):
|
|
||||||
# import readline
|
|
||||||
# readline.parse_and_bind('set convert-meta on')
|
|
||||||
# readline.parse_and_bind('Meta-/: complete')
|
|
||||||
|
|
||||||
try:
|
|
||||||
from pygments.formatters import terminal
|
|
||||||
except ImportError:
|
|
||||||
pass
|
|
||||||
else:
|
|
||||||
self.colorscheme = terminal.TERMINAL_COLORS.copy()
|
|
||||||
self.colorscheme.update(
|
|
||||||
{
|
|
||||||
terminal.Keyword: ("darkred", "red"),
|
|
||||||
terminal.Number: ("darkyellow", "yellow"),
|
|
||||||
terminal.String: ("brown", "green"),
|
|
||||||
terminal.Name.Function: ("darkgreen", "blue"),
|
|
||||||
terminal.Name.Namespace: ("teal", "cyan"),
|
|
||||||
}
|
|
||||||
)
|
|
||||||
|
|
||||||
def setup(self, pdb):
|
|
||||||
# make 'l' an alias to 'longlist'
|
|
||||||
Pdb = pdb.__class__
|
|
||||||
Pdb.do_l = Pdb.do_longlist
|
|
||||||
Pdb.do_st = Pdb.do_sticky
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
# required for qt5ct to know QT_QPA_PLATFORMTHEME
|
|
||||||
export QT_QPA_PLATFORMTHEME=qt5ct
|
|
||||||
export SYSTEMD_EDITOR=/usr/bin/nvim
|
|
||||||
export EDITOR=/usr/bin/nvim
|
|
||||||
export VISUAL=/usr/bin/nvim
|
|
||||||
export TERMINAL=/usr/bin/footclient
|
|
||||||
export PAGER="bat --style=header,rule,snip"
|
|
||||||
export BROWSER=/usr/bin/qutebrowser
|
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export ZDOTDIR="$HOME/.config/zsh"
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
[terminal]
|
|
||||||
# The VT to run the greeter on. Can be "next", "current" or a number
|
|
||||||
# designating the VT.
|
|
||||||
vt = 1
|
|
||||||
|
|
||||||
# The default session, also known as the greeter.
|
|
||||||
[default_session]
|
|
||||||
|
|
||||||
# `agreety` is the bundled agetty/login-lookalike. You can replace `/bin/sh`
|
|
||||||
# with whatever you want started, such as `sway`.
|
|
||||||
command = "start-sway --unsupported-gpu --config /etc/greetd/sway-config 2> /etc/sway/sway.log"
|
|
||||||
|
|
||||||
# The user to run the command as. The privileges this user must have depends
|
|
||||||
# on the greeter. A graphical greeter may for example require the user to be
|
|
||||||
# in the `video` group.
|
|
||||||
user = "greeter"
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
sway
|
|
||||||
bash
|
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
br_netfilter
|
||||||
@@ -1,23 +0,0 @@
|
|||||||
[General]
|
|
||||||
Backend = GreetD
|
|
||||||
Theme = sidebar
|
|
||||||
BlurBackground = true
|
|
||||||
IconTheme = breeze
|
|
||||||
|
|
||||||
[Overrides]
|
|
||||||
Background = /usr/share/qtgreet/backgrounds/Water.svg
|
|
||||||
BaseColor = Theme
|
|
||||||
TextColor = Theme
|
|
||||||
FontFamily = Noto Sans
|
|
||||||
|
|
||||||
[videobg]
|
|
||||||
File =
|
|
||||||
Playlist =
|
|
||||||
|
|
||||||
[Environment]
|
|
||||||
|
|
||||||
[PowerCommands]
|
|
||||||
Suspend = dbus
|
|
||||||
Hibernate = dbus
|
|
||||||
Shutdown = dbus
|
|
||||||
Reboot = dbus
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
# Session
|
|
||||||
export XDG_SESSION_TYPE=wayland
|
|
||||||
export XDG_SESSION_DESKTOP=sway
|
|
||||||
export XDG_CURRENT_DESKTOP=sway
|
|
||||||
|
|
||||||
# Environment
|
|
||||||
# Source environmental variable from all files in PATH_ENVIRONMENT
|
|
||||||
# file should be named *.conf and have KEY=value format use # for comment
|
|
||||||
PATH_ENVIRONMENT=$HOME/.config/environment.d
|
|
||||||
if [ -d "$PATH_ENVIRONMENT" ]; then
|
|
||||||
for i in "$PATH_ENVIRONMENT"/*.conf ; do
|
|
||||||
if [ -f "$i" ]; then
|
|
||||||
set -a; . "$i"; set +a
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
|
|
||||||
exec sway "$@"
|
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
# output
|
||||||
|
set $out-left DP-1
|
||||||
|
set $out-right DP-2
|
||||||
|
output $out-left resolution 2560x1440 position 0 0
|
||||||
|
output $out-right resolution 3840x2160 position 2560 0
|
||||||
|
|
||||||
|
# switch to workspace
|
||||||
|
workspace 1 output $out-left
|
||||||
|
workspace 2 output $out-left
|
||||||
|
workspace 3 output $out-left
|
||||||
|
workspace 4 output $out-left
|
||||||
|
workspace 5 output $out-left
|
||||||
|
workspace 6 output $out-right
|
||||||
|
workspace 7 output $out-right
|
||||||
|
workspace 8 output $out-right
|
||||||
|
workspace 9 output $out-right
|
||||||
|
workspace 10 output $out-right
|
||||||
|
workspace INS output $out-left
|
||||||
|
workspace DEL output $out-right
|
||||||
|
workspace HOM output $out-left
|
||||||
|
workspace END output $out-right
|
||||||
|
workspace PUp output $out-left
|
||||||
|
workspace PDn output $out-right
|
||||||
@@ -0,0 +1,42 @@
|
|||||||
|
{
|
||||||
|
"network": {
|
||||||
|
"interface": "enp6s0",
|
||||||
|
"format-disabled": " Disabled",
|
||||||
|
"format-wifi": " {bandwidthDownBits:>} {bandwidthUpBits:>} ({signalStrength}%)",
|
||||||
|
"tooltip-format-wifi": "{essid}",
|
||||||
|
"format-ethernet": " {bandwidthDownBits:>} {bandwidthUpBits:>} ",
|
||||||
|
"tooltip-format-ethernet": "{ifname}: {ipaddr}/{cidr}",
|
||||||
|
"format-disconnected": " Disconnected",
|
||||||
|
"on-click": "footclient --app-id floating_shell --window-size-chars 60x45 -e nmtui",
|
||||||
|
"interval": 2
|
||||||
|
},
|
||||||
|
"disk#hdd1": {
|
||||||
|
"path": "/mnt/hdd1",
|
||||||
|
"interval": 30,
|
||||||
|
"format": " /mnt/hdd1 {specific_free:0.0f} of {specific_total:0.0f} GB free",
|
||||||
|
"unit": "GB",
|
||||||
|
"on-click": "swaymsg exec 'footclient --app-id floating_shell --window-size-chars 150x45 gdu -d'"
|
||||||
|
},
|
||||||
|
"custom/nvidia": {
|
||||||
|
"exec": "nvidia-smi --query-gpu=utilization.gpu,memory.used,temperature.gpu --format=csv,nounits,noheader | sed 's/\\([0-9]\\+\\), \\([0-9]\\+\\), \\([0-9]\\+\\)/\\1% \\2MB \\3°C/g'",
|
||||||
|
"format": " {}",
|
||||||
|
"on-click": "swaymsg exec 'footclient --app-id floating_shell --window-size-chars 150x45 watch nvidia-smi'",
|
||||||
|
"interval": 1
|
||||||
|
},
|
||||||
|
"modules-right": [
|
||||||
|
"idle_inhibitor",
|
||||||
|
"cpu",
|
||||||
|
"temperature",
|
||||||
|
"memory",
|
||||||
|
"custom/nvidia",
|
||||||
|
"disk#root",
|
||||||
|
"disk#hdd1",
|
||||||
|
"backlight",
|
||||||
|
"pulseaudio",
|
||||||
|
"battery",
|
||||||
|
"clock",
|
||||||
|
"tray",
|
||||||
|
"custom/notification",
|
||||||
|
"custom/power",
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
# `-l` activates layer-shell mode. Notice that `swaymsg exit` will run after gtkgreet.
|
|
||||||
exec "qtgreet; swaymsg exit"
|
|
||||||
|
|
||||||
bindsym Mod4+shift+e exec swaynag \
|
|
||||||
-t warning \
|
|
||||||
-m 'What do you want to do?' \
|
|
||||||
-b 'Poweroff' 'sudo poweroff' \
|
|
||||||
-b 'Reboot' 'sudo reboot'
|
|
||||||
|
|
||||||
output DP-1 resolution 2560x1440 position 0 0
|
|
||||||
|
|
||||||
# include /etc/sway/config.d/*
|
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
output DP-1 resolution 2560x1440 position 0 0
|
||||||
|
output DP-2 resolution 3840x2160 position 2560 0
|
||||||
|
exec "regreet; swaymsg exit"
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
[Login]
|
||||||
|
HandlePowerKey=ignore
|
||||||
|
HandlePowerKeyLongPress=poweroff
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
[Sleep]
|
||||||
|
AllowSuspend=no
|
||||||
|
AllowHibernation=no
|
||||||
|
AllowHybridSleep=no
|
||||||
|
AllowSuspendThenHibernate=no
|
||||||
@@ -1,70 +0,0 @@
|
|||||||
set $out-left DP-1
|
|
||||||
set $out-right DP-2
|
|
||||||
output $out-left resolution 2560x1440 position 0 0
|
|
||||||
output $out-right resolution 3840x2160 position 2560 0
|
|
||||||
|
|
||||||
# switch to workspace
|
|
||||||
workspace $ws1 output $out-left
|
|
||||||
workspace $ws2 output $out-right
|
|
||||||
workspace $ws3 output $out-left
|
|
||||||
workspace $ws4 output $out-right
|
|
||||||
workspace $ws5 output $out-left
|
|
||||||
workspace $ws6 output $out-right
|
|
||||||
workspace $ws7 output $out-left
|
|
||||||
workspace $ws8 output $out-right
|
|
||||||
workspace $ws9 output $out-left
|
|
||||||
workspace $ws10 output $out-right
|
|
||||||
|
|
||||||
# switch to workspace
|
|
||||||
bindsym $mod+1 workspace $ws1
|
|
||||||
bindsym $mod+2 workspace $ws2
|
|
||||||
bindsym $mod+3 workspace $ws3
|
|
||||||
bindsym $mod+4 workspace $ws4
|
|
||||||
bindsym $mod+5 workspace $ws5
|
|
||||||
bindsym $mod+6 workspace $ws6
|
|
||||||
bindsym $mod+7 workspace $ws7
|
|
||||||
bindsym $mod+8 workspace $ws8
|
|
||||||
bindsym $mod+9 workspace $ws9
|
|
||||||
bindsym $mod+0 workspace $ws10
|
|
||||||
bindsym $mod+Insert workspace $ws5
|
|
||||||
bindsym $mod+Delete workspace $ws6
|
|
||||||
bindsym $mod+Home workspace $ws7
|
|
||||||
bindsym $mod+End workspace $ws8
|
|
||||||
bindsym $mod+Prior workspace $ws9
|
|
||||||
bindsym $mod+Next workspace $ws10
|
|
||||||
|
|
||||||
# Move focused container to workspace
|
|
||||||
bindsym $mod+Ctrl+1 move container to workspace $ws1
|
|
||||||
bindsym $mod+Ctrl+2 move container to workspace $ws2
|
|
||||||
bindsym $mod+Ctrl+3 move container to workspace $ws3
|
|
||||||
bindsym $mod+Ctrl+4 move container to workspace $ws4
|
|
||||||
bindsym $mod+Ctrl+5 move container to workspace $ws5
|
|
||||||
bindsym $mod+Ctrl+6 move container to workspace $ws6
|
|
||||||
bindsym $mod+Ctrl+7 move container to workspace $ws7
|
|
||||||
bindsym $mod+Ctrl+8 move container to workspace $ws8
|
|
||||||
bindsym $mod+Ctrl+9 move container to workspace $ws9
|
|
||||||
bindsym $mod+Ctrl+0 move container to workspace $ws10
|
|
||||||
bindsym $mod+Ctrl+Insert move container to workspace $ws5
|
|
||||||
bindsym $mod+Ctrl+Delete move container to workspace $ws6
|
|
||||||
bindsym $mod+Ctrl+Home move container to workspace $ws7
|
|
||||||
bindsym $mod+Ctrl+End move container to workspace $ws8
|
|
||||||
bindsym $mod+Ctrl+Prior move container to workspace $ws9
|
|
||||||
bindsym $mod+Ctrl+Next move container to workspace $ws10
|
|
||||||
|
|
||||||
# Move to workspace with focused container
|
|
||||||
bindsym $mod+Shift+1 move container to workspace $ws1; workspace $ws1
|
|
||||||
bindsym $mod+Shift+2 move container to workspace $ws2; workspace $ws2
|
|
||||||
bindsym $mod+Shift+3 move container to workspace $ws3; workspace $ws3
|
|
||||||
bindsym $mod+Shift+4 move container to workspace $ws4; workspace $ws4
|
|
||||||
bindsym $mod+Shift+5 move container to workspace $ws5; workspace $ws5
|
|
||||||
bindsym $mod+Shift+6 move container to workspace $ws6; workspace $ws6
|
|
||||||
bindsym $mod+Shift+7 move container to workspace $ws7; workspace $ws7
|
|
||||||
bindsym $mod+Shift+8 move container to workspace $ws8; workspace $ws8
|
|
||||||
bindsym $mod+Shift+9 move container to workspace $ws9; workspace $ws9
|
|
||||||
bindsym $mod+Shift+0 move container to workspace $ws10; workspace $ws10
|
|
||||||
bindsym $mod+Shift+Insert move container to workspace $ws5; workspace $ws5
|
|
||||||
bindsym $mod+Shift+Delete move container to workspace $ws8; workspace $ws6
|
|
||||||
bindsym $mod+Shift+Home move container to workspace $ws6; workspace $ws7
|
|
||||||
bindsym $mod+Shift+End move container to workspace $ws9; workspace $ws8
|
|
||||||
bindsym $mod+Shift+Prior move container to workspace $ws7; workspace $ws9
|
|
||||||
bindsym $mod+Shift+Next move container to workspace $ws10; workspace $ws10
|
|
||||||
@@ -1,34 +0,0 @@
|
|||||||
{
|
|
||||||
"disk#disk1": {
|
|
||||||
"path": "/",
|
|
||||||
"interval": 30,
|
|
||||||
"format": " / {specific_free:0.0f} of {specific_total:0.0f} GB free",
|
|
||||||
"unit": "GB",
|
|
||||||
"on-click": "swaymsg exec 'footclient --app-id floating_shell --window-size-chars 80x45 ncdu -x /'"
|
|
||||||
},
|
|
||||||
"disk#disk2": {
|
|
||||||
"path": "/mnt/hdd1",
|
|
||||||
"interval": 30,
|
|
||||||
"format": " /mnt/hdd1 {specific_free:0.0f} of {specific_total:0.0f} GB free",
|
|
||||||
"unit": "GB",
|
|
||||||
"on-click": "swaymsg exec 'footclient --app-id floating_shell --window-size-chars 80x45 ncdu -x /mnt/hdd1/'"
|
|
||||||
},
|
|
||||||
"network": {
|
|
||||||
"interface": "enp6s0",
|
|
||||||
"interval": 5,
|
|
||||||
"format-wifi": "{icon}",
|
|
||||||
"format-ethernet": "",
|
|
||||||
"format-disconnected": "",
|
|
||||||
"format-disabled": "",
|
|
||||||
"format-icons": [ "", "", "", "", "" ],
|
|
||||||
"format-wifi": "{icon} {ipaddr} {essid} ({signalStrength}%)",
|
|
||||||
"format-ethernet": "{icon} {ipaddr}",
|
|
||||||
"format-disconnected": "", //An empty format will hide the module.
|
|
||||||
"tooltip-format": "{icon} {ifname}: {ipaddr}",
|
|
||||||
"tooltip-format-ethernet": "{icon} {ifname}: {ipaddr}",
|
|
||||||
"tooltip-format-wifi": "{icon} {ifname} ({essid}): {ipaddr} ({signalStrength}%)",
|
|
||||||
"tooltip-format-disconnected": "{icon} disconnected",
|
|
||||||
"tooltip-format-disabled": "{icon} disabled",
|
|
||||||
"on-click": "swaymsg exec 'footclient --app-id floating_shell --window-size-chars 60x45 nmtui connect'"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
# input
|
||||||
|
# input type:tablet_tool map_to_region 2560 0 2560 1440
|
||||||
|
|
||||||
|
# Monitor definition
|
||||||
|
set $main_monitor "BNQ BenQ RD280UG EM95T00073087"
|
||||||
|
|
||||||
|
# Output configuration
|
||||||
|
output $main_monitor mode 3840x2560@119.991Hz scale 1.25
|
||||||
|
|
||||||
|
# Workspace assignments
|
||||||
|
workspace 1 output $main_monitor
|
||||||
|
workspace 2 output $main_monitor
|
||||||
|
workspace 3 output $main_monitor
|
||||||
|
workspace 4 output $main_monitor
|
||||||
|
workspace 5 output $main_monitor
|
||||||
|
workspace 6 output $main_monitor
|
||||||
|
workspace 7 output $main_monitor
|
||||||
|
workspace 8 output $main_monitor
|
||||||
|
workspace 9 output $main_monitor
|
||||||
|
workspace 10 output $main_monitor
|
||||||
@@ -0,0 +1,42 @@
|
|||||||
|
{
|
||||||
|
"network": {
|
||||||
|
"interface": "wlan0",
|
||||||
|
"format-disabled": " Disabled",
|
||||||
|
"format-wifi": " {bandwidthDownBits:>} {bandwidthUpBits:>} ({signalStrength}%)",
|
||||||
|
"tooltip-format-wifi": "{essid}",
|
||||||
|
"format-ethernet": " {bandwidthDownBits:>} {bandwidthUpBits:>} ",
|
||||||
|
"tooltip-format-ethernet": "{ifname}: {ipaddr}/{cidr}",
|
||||||
|
"format-disconnected": " Disconnected",
|
||||||
|
"on-click": "footclient --app-id floating_shell --window-size-chars 60x45 -e nmtui",
|
||||||
|
"interval": 2
|
||||||
|
},
|
||||||
|
"disk#hdd1": {
|
||||||
|
"path": "/mnt/hdd1",
|
||||||
|
"interval": 30,
|
||||||
|
"format": " /mnt/hdd1 {specific_free:0.0f} of {specific_total:0.0f} GB free",
|
||||||
|
"unit": "GB",
|
||||||
|
"on-click": "swaymsg exec 'footclient --app-id floating_shell --window-size-chars 150x45 gdu -d'"
|
||||||
|
},
|
||||||
|
"custom/nvidia": {
|
||||||
|
"exec": "nvidia-smi --query-gpu=utilization.gpu,memory.used,temperature.gpu --format=csv,nounits,noheader | sed 's/\\([0-9]\\+\\), \\([0-9]\\+\\), \\([0-9]\\+\\)/\\1% \\2MB \\3°C/g'",
|
||||||
|
"format": " {}",
|
||||||
|
"on-click": "swaymsg exec 'footclient --app-id floating_shell --window-size-chars 150x45 watch nvidia-smi'",
|
||||||
|
"interval": 1
|
||||||
|
},
|
||||||
|
"modules-right": [
|
||||||
|
"idle_inhibitor",
|
||||||
|
"cpu",
|
||||||
|
"temperature",
|
||||||
|
"memory",
|
||||||
|
"custom/nvidia",
|
||||||
|
"disk#root",
|
||||||
|
"disk#hdd1",
|
||||||
|
"backlight",
|
||||||
|
"pulseaudio",
|
||||||
|
"battery",
|
||||||
|
"clock",
|
||||||
|
"tray",
|
||||||
|
"custom/notification",
|
||||||
|
"custom/power",
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
# `-l` activates layer-shell mode. Notice that `swaymsg exit` will run after gtkgreet.
|
|
||||||
exec "qtgreet; swaymsg exit"
|
|
||||||
|
|
||||||
bindsym Mod4+shift+e exec swaynag \
|
|
||||||
-t warning \
|
|
||||||
-m 'What do you want to do?' \
|
|
||||||
-b 'Poweroff' 'sudo poweroff' \
|
|
||||||
-b 'Reboot' 'sudo reboot'
|
|
||||||
|
|
||||||
output DP-1 resolution 5120x1440
|
|
||||||
|
|
||||||
# include /etc/sway/config.d/*
|
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
output * resolution 5120x1440
|
||||||
|
exec "regreet; swaymsg exit"
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
[Login]
|
||||||
|
HandlePowerKey=ignore
|
||||||
|
HandlePowerKeyLongPress=poweroff
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
[Sleep]
|
||||||
|
AllowSuspend=no
|
||||||
|
AllowHibernation=no
|
||||||
|
AllowHybridSleep=no
|
||||||
|
AllowSuspendThenHibernate=no
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user