mirror of
https://github.com/ForeverPyrite/dotfiles.git
synced 2025-12-10 01:08:06 +00:00
Compare commits
12 Commits
f33e6a77a3
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a9d2cb3e29 | ||
|
|
05d7845b60 | ||
|
|
afce2ca400 | ||
|
|
49dadf232b | ||
|
|
553218aa5f | ||
|
|
c17f441e5f | ||
|
|
3158e1d7de | ||
|
|
fcb41ff7b3 | ||
|
|
25d46ef432 | ||
|
|
a407e267b5 | ||
|
|
412a7fb813 | ||
|
|
0db4cb9fe6 |
2
.gitignore
vendored
2
.gitignore
vendored
@@ -7,3 +7,5 @@ foo.*
|
||||
*.log
|
||||
data
|
||||
.aider*
|
||||
lazy-lock.json
|
||||
**/.uuid
|
||||
|
||||
69
TODO.md
Normal file
69
TODO.md
Normal file
@@ -0,0 +1,69 @@
|
||||
|
||||
# Considerations
|
||||
|
||||
## Clipboard manager
|
||||
PLEASE :sob:
|
||||
|
||||
## Atuin
|
||||
Is this really worth the extra features or should I just use Ctrl+R with fzf?
|
||||
|
||||
## WezTerm
|
||||
Alacritty is putting in the work, and it's exactly what I wanted.
|
||||
However, as I'm living inside of the terminal, I'm considering taking
|
||||
advantage of TUIs that utilize features that TEs like kitty and WezTerm
|
||||
provide.
|
||||
|
||||
Most of the futures a terminal like WezTerm has built in are easily
|
||||
replaced by tmux and it's plugins, I feel
|
||||
|
||||
## Tmux
|
||||
|
||||
### A proper system
|
||||
|
||||
I still need to figure things out with stuff like tmux-ressurect, curating a good way for me to manage my workflows
|
||||
|
||||
### The infinite plugin grind.
|
||||
Of course, this never stops.
|
||||
|
||||
The only thing I want want is a way to manage sessions within tmux, as explained below.
|
||||
|
||||
tmux-browser seems cool and useful for productivity, since the web browser is where I end up getting distracted the most
|
||||
(it's why I'm here instead of finishing up Arch Linux stuff)
|
||||
|
||||
### `exec`ing off to `tmux` on `conifg.fish`
|
||||
|
||||
As it stands, when I enter a login shell, fish enters the "home" session
|
||||
This is weird though.
|
||||
|
||||
1. It attaches to the same session, which means it shares the active window.
|
||||
This means that if I open another terminal, it will attach to the home session.
|
||||
|
||||
This is good in the sense it is requiring me to be more thoughtful of creating new
|
||||
windows, instead of having 15 unnamed alacritty windows.
|
||||
However, it's very unexpected and confusing
|
||||
|
||||
### On-startup processes
|
||||
|
||||
Would be good for the above, have each session have a window and some panes
|
||||
when the system starts for services.
|
||||
These would be different than the tmux continum restorations.
|
||||
|
||||
An example would be like a "syncthing" session with a window running the
|
||||
`syncthing` command.
|
||||
This example is poor since it'd be more effective to run a system service,
|
||||
but the point remains.
|
||||
|
||||
There is surely some plugin or utility to help programmatically create sessions
|
||||
within tmux, after all
|
||||
|
||||
|
||||
# Things to do
|
||||
|
||||
## Customize prompt
|
||||
|
||||
### Starship
|
||||
- Change colors
|
||||
- Find better Git Status Symbols
|
||||
|
||||
### Fish
|
||||
- Typed things (since these aren't overwritten by Starship)
|
||||
@@ -1,14 +1,17 @@
|
||||
|
||||
[font]
|
||||
normal = { family = "Hack Nerd Font", style = "Regular" }
|
||||
bold = { family = "Hack Nerd Font", style = "Bold" }
|
||||
italic = { family = "Hack Nerd Font", style = "Italic" }
|
||||
size = 9.0
|
||||
normal = { family = "Hack Nerd Font Mono", style = "Regular" }
|
||||
bold = { family = "Hack Nerd Font Mono", style = "Bold" }
|
||||
italic = { family = "Hack Nerd Font Mono", style = "Italic" }
|
||||
# There is no winning with this stupid ass monitor...
|
||||
# Yeah I need some kind of size aware resizing low key.
|
||||
size = 10.0
|
||||
|
||||
[window]
|
||||
decorations = "None"
|
||||
opacity = 0.85
|
||||
startup_mode = "Fullscreen"
|
||||
# Doesn't make very much sense with niri as it stands
|
||||
# opacity = 0.85
|
||||
# startup_mode = "Fullscreen"
|
||||
|
||||
[terminal.shell]
|
||||
program = "/usr/bin/fish"
|
||||
|
||||
20
anyrun/.config/anyrun/applications.ron
Normal file
20
anyrun/.config/anyrun/applications.ron
Normal file
@@ -0,0 +1,20 @@
|
||||
Config(
|
||||
// Also show the Desktop Actions defined in the desktop files, e.g. "New Window" from LibreWolf
|
||||
desktop_actions: true,
|
||||
|
||||
max_entries: 5,
|
||||
|
||||
// A command to preprocess the command from the desktop file. The commands should take arguments in this order:
|
||||
// command_name <term|no-term> <command>
|
||||
// preprocess_exec_script: Some("/home/user/.local/share/anyrun/preprocess_application_command.sh")
|
||||
|
||||
// The terminal used for running terminal based desktop entries, if left as `None` a static list of terminals is used
|
||||
// to determine what terminal to use.
|
||||
terminal: Some(Terminal(
|
||||
// The main terminal command
|
||||
command: "alacritty",
|
||||
// What arguments should be passed to the terminal process to run the command correctly
|
||||
// {} is replaced with the command in the desktop entry
|
||||
args: "-e {}",
|
||||
)),
|
||||
)
|
||||
80
anyrun/.config/anyrun/config.ron
Normal file
80
anyrun/.config/anyrun/config.ron
Normal file
@@ -0,0 +1,80 @@
|
||||
Config(
|
||||
// Position/size fields use an enum for the value, it can be either:
|
||||
// Absolute(n): The absolute value in pixels
|
||||
// Fraction(n): A fraction of the width or height of the full screen (depends on exclusive zones and the settings related to them) window respectively
|
||||
|
||||
// The horizontal position, adjusted so that Relative(0.5) always centers the runner
|
||||
x: Fraction(0.5),
|
||||
|
||||
// The vertical position, works the same as `x`
|
||||
y: Absolute(0),
|
||||
|
||||
// The width of the runner
|
||||
width: Absolute(800),
|
||||
|
||||
// The minimum height of the runner, the runner will expand to fit all the entries
|
||||
// NOTE: If this is set to 0, the window will never shrink after being expanded
|
||||
height: Absolute(1),
|
||||
|
||||
// Hide match and plugin info icons
|
||||
hide_icons: false,
|
||||
|
||||
// ignore exclusive zones, f.e. Waybar
|
||||
ignore_exclusive_zones: false,
|
||||
|
||||
// Layer shell layer: Background, Bottom, Top, Overlay
|
||||
layer: Overlay,
|
||||
|
||||
// Hide the plugin info panel
|
||||
hide_plugin_info: false,
|
||||
|
||||
// Close window when a click outside the main box is received
|
||||
close_on_click: false,
|
||||
|
||||
// Show search results immediately when Anyrun starts
|
||||
show_results_immediately: false,
|
||||
|
||||
// Limit amount of entries shown in total
|
||||
max_entries: None,
|
||||
|
||||
// List of plugins to be loaded by default, can be specified with a relative path to be loaded from the
|
||||
// `<anyrun config dir>/plugins` directory or with an absolute path to just load the file the path points to.
|
||||
//
|
||||
// The order of plugins here specifies the order in which they appear
|
||||
// in the results. As in it works as a priority for the plugins.
|
||||
plugins: [
|
||||
"libapplications.so",
|
||||
"libkidex.so"
|
||||
"librink.so",
|
||||
"libniri_focus.so",
|
||||
"libshell.so",
|
||||
],
|
||||
|
||||
keybinds: [
|
||||
Keybind(
|
||||
key: "Return",
|
||||
action: Select,
|
||||
),
|
||||
Keybind(
|
||||
key: "Up",
|
||||
action: Up,
|
||||
),
|
||||
Keybind(
|
||||
key: "Down",
|
||||
action: Down,
|
||||
),
|
||||
Keybind(
|
||||
key: "ISO_Left_Tab",
|
||||
action: Up,
|
||||
shift: true,
|
||||
),
|
||||
Keybind(
|
||||
key: "Tab",
|
||||
action: Down,
|
||||
),
|
||||
Keybind(
|
||||
key: "Escape",
|
||||
action: Close,
|
||||
),
|
||||
],
|
||||
)
|
||||
3
anyrun/.config/anyrun/kidex.ron
Normal file
3
anyrun/.config/anyrun/kidex.ron
Normal file
@@ -0,0 +1,3 @@
|
||||
Config(
|
||||
max_entries: 3,
|
||||
)
|
||||
3
anyrun/.config/anyrun/niri-focus.ron
Normal file
3
anyrun/.config/anyrun/niri-focus.ron
Normal file
@@ -0,0 +1,3 @@
|
||||
Config(
|
||||
max_entries: 2,
|
||||
)
|
||||
64
anyrun/.config/anyrun/style.css
Normal file
64
anyrun/.config/anyrun/style.css
Normal file
@@ -0,0 +1,64 @@
|
||||
window {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
box.main {
|
||||
padding: 5px;
|
||||
margin: 10px;
|
||||
border-radius: 10px;
|
||||
border: 2px solid @theme_selected_bg_color;
|
||||
background-color: @theme_bg_color;
|
||||
box-shadow: 0 0 5px black;
|
||||
}
|
||||
|
||||
|
||||
text {
|
||||
min-height: 30px;
|
||||
padding: 5px;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.matches {
|
||||
background-color: rgba(0, 0, 0, 0);
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
box.plugin:first-child {
|
||||
margin-top: 5px;
|
||||
}
|
||||
|
||||
box.plugin.info {
|
||||
min-width: 200px;
|
||||
}
|
||||
|
||||
list.plugin {
|
||||
background-color: rgba(0, 0, 0, 0);
|
||||
}
|
||||
|
||||
label.match.description {
|
||||
font-size: 10px;
|
||||
}
|
||||
|
||||
label.plugin.info {
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.match {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
.match:selected {
|
||||
border-left: 4px solid @theme_selected_bg_color;
|
||||
background: transparent;
|
||||
animation: fade 0.1s linear;
|
||||
}
|
||||
|
||||
@keyframes fade {
|
||||
0% {
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
100% {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
13
anyrun/.config/anyrun/websearch.ron
Normal file
13
anyrun/.config/anyrun/websearch.ron
Normal file
@@ -0,0 +1,13 @@
|
||||
Config(
|
||||
prefix: "?",
|
||||
// Options: Google, Ecosia, Bing, DuckDuckGo, Custom
|
||||
//
|
||||
// Custom engines can be defined as such:
|
||||
// Custom(
|
||||
// name: "Searx",
|
||||
// url: "searx.be/?q={}",
|
||||
// )
|
||||
//
|
||||
// NOTE: `{}` is replaced by the search query and `https://` is automatically added in front.
|
||||
engines: [Google]
|
||||
)
|
||||
@@ -12,6 +12,7 @@ esac
|
||||
if ! command -v fish &>/dev/null; then
|
||||
# don't put duplicate lines or lines starting with space in the history.
|
||||
# See bash(1) for more options
|
||||
# actually I'll probably not wanna do any history at all with atuin
|
||||
HISTCONTROL=ignoreboth
|
||||
|
||||
# append to the history file, don't overwrite it
|
||||
@@ -119,7 +120,12 @@ if ! command -v fish &>/dev/null; then
|
||||
. "$HOME/.cargo/env"
|
||||
|
||||
# impl Bash for FZF
|
||||
export FZF_DEFAULT_OPTS='--tmux'
|
||||
export FZF_DEFAULT_OPTS=" \
|
||||
--color=bg+:#313244,bg:#1E1E2E,spinner:#F5E0DC,hl:#F38BA8 \
|
||||
--color=fg:#CDD6F4,header:#F38BA8,info:#CBA6F7,pointer:#F5E0DC \
|
||||
--color=marker:#B4BEFE,fg+:#CDD6F4,prompt:#CBA6F7,hl+:#F38BA8 \
|
||||
--color=selected-bg:#45475A \
|
||||
--color=border:#6C7086,label:#CDD6F4"
|
||||
eval "$(fzf --bash)"
|
||||
|
||||
# impl Bash for Autin
|
||||
|
||||
@@ -1,3 +1,7 @@
|
||||
# Because lowkey typing "exti" and then "exit" and having
|
||||
# nvim hang for a sec a lil annoying
|
||||
alias exit "exit 0"
|
||||
|
||||
# ------------------------------------------------------------------------------
|
||||
# Core "Rust-first" Command Replacements
|
||||
# ------------------------------------------------------------------------------
|
||||
@@ -23,7 +27,7 @@ alias la "eza -a --icons --group-directories-first"
|
||||
alias lt "eza --tree --level=2 --long --git --icons"
|
||||
|
||||
# tree: deadass replacing the tree command
|
||||
alias tree "eza -T"
|
||||
alias tree "eza -T --git --icons"
|
||||
|
||||
# ------------------------------------------------------------------------------
|
||||
# Context-Aware Aliases (Docker)
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
# ~/.config/fish/config.fish
|
||||
|
||||
# --- Environment Variables ---
|
||||
# Set a default editor (used by many command-line tools)
|
||||
set -x EDITOR nvim
|
||||
@@ -9,13 +7,11 @@ set -x EDITOR nvim
|
||||
fish_add_path "$HOME/.cargo/bin"
|
||||
# Add the local user bin to path as well
|
||||
fish_add_path "$HOME/.local/bin"
|
||||
# Add bob's nvim bin to path
|
||||
fish_add_path "$HOME/.local/share/bob/nvim-bin"
|
||||
|
||||
# --- Tool Initialization ---
|
||||
# Starship Prompt
|
||||
starship init fish | source
|
||||
|
||||
# Zoxide (replaces cd)
|
||||
set -x FZF_DEFAULT_OPTS --tmux
|
||||
zoxide init --cmd cd fish | source
|
||||
|
||||
# Autin (rip unencrypted .bash_history)
|
||||
@@ -27,9 +23,32 @@ if test -f "$HOME/.fzf.fish"
|
||||
source "$HOME/.fzf.fish"
|
||||
end
|
||||
|
||||
# --- Appearance ---
|
||||
# While the GitHub says to use `fish theme save`, I think it's either
|
||||
# outdated or slightly incorrect.
|
||||
fish_config theme choose "Catppuccin Mocha"
|
||||
# I also want to either swap some of the Catppuccin colors around,
|
||||
# or break the Catppuccin theme for my shell since it makes the most
|
||||
# sense to be the most personalized.
|
||||
# What I normally do is a lot of cyan and purple though, which isn't
|
||||
# the most appealing.
|
||||
# Perhaps when I get to that I'll customize Starship a little more too...
|
||||
|
||||
# # Hopefully fixes the length errors in nvim
|
||||
# set -gx XDG_CACHE_HOME "/tmp/.nv"
|
||||
# Starship Prompt
|
||||
starship init fish | source
|
||||
|
||||
# --- Forcing Tmux Upon Thyself ---
|
||||
# I keep doing all these things with tmux and looking at tpm plugins,
|
||||
# yet for some reason I'm not always using it
|
||||
#
|
||||
# Should only activate in a terminal emulator though, since it starting
|
||||
# with the env of the tty or neovim instead of the wayland session is
|
||||
# really annoying tbh
|
||||
|
||||
# Should I go ahead and `tmux start-server` in here?
|
||||
if not tty | string match --quiet --regex '^/dev/tty[0-9]+$' || set -q TMUX || set -q NVIM
|
||||
# Making it a varible just in case I wanna change it some day
|
||||
set DEFAULT_SESSION home
|
||||
if status is-interactive && not set -q TMUX
|
||||
tmux attach -t $DEFAULT_SESSION || tmux new-session -s $DEFAULT_SESSION
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,32 +1,44 @@
|
||||
# This file contains fish universal variable definitions.
|
||||
# VERSION: 3.0
|
||||
SETUVAR __fish_initialized:3400
|
||||
SETUVAR fish_color_autosuggestion:555\x1ebrblack
|
||||
SETUVAR fish_color_cancel:\x2dr
|
||||
SETUVAR fish_color_command:blue
|
||||
SETUVAR fish_color_comment:red
|
||||
SETUVAR fish_color_cwd:green
|
||||
SETUVAR --export FZF_DEFAULT_OPTS:\x2d\x2dcolor\x3dbg\x2b\x3a\x23313244\x2cbg\x3a\x231E1E2E\x2cspinner\x3a\x23F5E0DC\x2chl\x3a\x23F38BA8\x20\x2d\x2dcolor\x3dfg\x3a\x23CDD6F4\x2cheader\x3a\x23F38BA8\x2cinfo\x3a\x23CBA6F7\x2cpointer\x3a\x23F5E0DC\x20\x2d\x2dcolor\x3dmarker\x3a\x23B4BEFE\x2cfg\x2b\x3a\x23CDD6F4\x2cprompt\x3a\x23CBA6F7\x2chl\x2b\x3a\x23F38BA8\x20\x2d\x2dcolor\x3dselected\x2dbg\x3a\x2345475A\x20\x2d\x2dcolor\x3dborder\x3a\x236C7086\x2clabel\x3a\x23CDD6F4\x20\x2d\x2dtmux # Catppuccin and tmux
|
||||
SETUVAR __fish_initialized:3800
|
||||
SETUVAR fish_color_autosuggestion:6c7086
|
||||
SETUVAR fish_color_cancel:f38ba8
|
||||
SETUVAR fish_color_command:33fff3
|
||||
SETUVAR fish_color_comment:7f849c
|
||||
SETUVAR fish_color_cwd:f9e2af
|
||||
SETUVAR fish_color_cwd_root:red
|
||||
SETUVAR fish_color_end:green
|
||||
SETUVAR fish_color_error:brred
|
||||
SETUVAR fish_color_escape:brcyan
|
||||
SETUVAR fish_color_end:fab387
|
||||
SETUVAR fish_color_error:f38ba8
|
||||
SETUVAR fish_color_escape:eba0ac
|
||||
SETUVAR fish_color_gray:6c7086
|
||||
SETUVAR fish_color_history_current:\x2d\x2dbold
|
||||
SETUVAR fish_color_host:normal
|
||||
SETUVAR fish_color_host_remote:yellow
|
||||
SETUVAR fish_color_normal:normal
|
||||
SETUVAR fish_color_operator:brcyan
|
||||
SETUVAR fish_color_param:cyan
|
||||
SETUVAR fish_color_quote:yellow
|
||||
SETUVAR fish_color_redirection:cyan\x1e\x2d\x2dbold
|
||||
SETUVAR fish_color_search_match:white\x1e\x2d\x2dbackground\x3dbrblack
|
||||
SETUVAR fish_color_selection:white\x1e\x2d\x2dbold\x1e\x2d\x2dbackground\x3dbrblack
|
||||
SETUVAR fish_color_status:red
|
||||
SETUVAR fish_color_user:brgreen
|
||||
SETUVAR fish_color_host:89b4fa
|
||||
SETUVAR fish_color_host_remote:a6e3a1
|
||||
SETUVAR fish_color_keyword:f38ba8
|
||||
SETUVAR fish_color_normal:cdd6f4
|
||||
SETUVAR fish_color_operator:f5c2e7
|
||||
SETUVAR fish_color_option:a6e3a1
|
||||
SETUVAR fish_color_param:f2cdcd
|
||||
SETUVAR fish_color_quote:a6e3a1
|
||||
SETUVAR fish_color_redirection:f5c2e7
|
||||
SETUVAR fish_color_search_match:\x2d\x2dbackground\x3d313244
|
||||
SETUVAR fish_color_selection:\x2d\x2dbackground\x3d313244
|
||||
SETUVAR fish_color_status:f38ba8
|
||||
SETUVAR fish_color_user:94e2d5
|
||||
SETUVAR fish_color_valid_path:\x2d\x2dunderline
|
||||
SETUVAR fish_key_bindings:fish_default_key_bindings
|
||||
SETUVAR fish_pager_color_completion:normal
|
||||
SETUVAR fish_pager_color_description:B3A06D\x1eyellow\x1e\x2di
|
||||
SETUVAR fish_pager_color_prefix:normal\x1e\x2d\x2dbold\x1e\x2d\x2dunderline
|
||||
SETUVAR fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan
|
||||
SETUVAR fish_pager_color_selected_background:\x2dr
|
||||
SETUVAR fish_user_paths:/home/foreverpyrite/\x2elocal/bin\x1e/home/foreverpyrite/\x2ecargo/bin\x1e/root/\x2ecargo/bin\x1e/root/\x2efzf/bin\x1e/home/foreverpyrite/\x2efzf/bin
|
||||
SETUVAR fish_pager_color_background:\x1d
|
||||
SETUVAR fish_pager_color_completion:cdd6f4
|
||||
SETUVAR fish_pager_color_description:6c7086
|
||||
SETUVAR fish_pager_color_prefix:f5c2e7
|
||||
SETUVAR fish_pager_color_progress:6c7086
|
||||
SETUVAR fish_pager_color_secondary_background:\x1d
|
||||
SETUVAR fish_pager_color_secondary_completion:\x1d
|
||||
SETUVAR fish_pager_color_secondary_description:\x1d
|
||||
SETUVAR fish_pager_color_secondary_prefix:\x1d
|
||||
SETUVAR fish_pager_color_selected_background:\x1d
|
||||
SETUVAR fish_pager_color_selected_completion:\x1d
|
||||
SETUVAR fish_pager_color_selected_description:\x1d
|
||||
SETUVAR fish_pager_color_selected_prefix:\x1d
|
||||
SETUVAR fish_user_paths:/home/foreverpyrite/\x2elocal/share/bob/nvim\x2dbin\x1e/home/foreverpyrite/\x2elocal/bin\x1e/home/foreverpyrite/\x2ecargo/bin\x1e/root/\x2ecargo/bin\x1e/root/\x2efzf/bin\x1e/home/foreverpyrite/\x2efzf/bin
|
||||
|
||||
30
fish/.config/fish/themes/Catppuccin Mocha.theme
Normal file
30
fish/.config/fish/themes/Catppuccin Mocha.theme
Normal file
@@ -0,0 +1,30 @@
|
||||
# name: 'Catppuccin Mocha'
|
||||
# url: 'https://github.com/catppuccin/fish'
|
||||
# preferred_background: 1e1e2e
|
||||
|
||||
fish_color_normal cdd6f4
|
||||
fish_color_command 89b4fa
|
||||
fish_color_param f2cdcd
|
||||
fish_color_keyword f38ba8
|
||||
fish_color_quote a6e3a1
|
||||
fish_color_redirection f5c2e7
|
||||
fish_color_end fab387
|
||||
fish_color_comment 7f849c
|
||||
fish_color_error f38ba8
|
||||
fish_color_gray 6c7086
|
||||
fish_color_selection --background=313244
|
||||
fish_color_search_match --background=313244
|
||||
fish_color_option a6e3a1
|
||||
fish_color_operator f5c2e7
|
||||
fish_color_escape eba0ac
|
||||
fish_color_autosuggestion 6c7086
|
||||
fish_color_cancel f38ba8
|
||||
fish_color_cwd f9e2af
|
||||
fish_color_user 94e2d5
|
||||
fish_color_host 89b4fa
|
||||
fish_color_host_remote a6e3a1
|
||||
fish_color_status f38ba8
|
||||
fish_pager_color_progress 6c7086
|
||||
fish_pager_color_prefix f5c2e7
|
||||
fish_pager_color_completion cdd6f4
|
||||
fish_pager_color_description 6c7086
|
||||
1
fonts/.local/share/fonts/Hack/.uuid
Normal file
1
fonts/.local/share/fonts/Hack/.uuid
Normal file
@@ -0,0 +1 @@
|
||||
d80e1c2a-e7b0-45b9-8433-c1f999802859
|
||||
BIN
fonts/.local/share/fonts/Hack/HackNerdFont-Bold.ttf
Normal file
BIN
fonts/.local/share/fonts/Hack/HackNerdFont-Bold.ttf
Normal file
Binary file not shown.
BIN
fonts/.local/share/fonts/Hack/HackNerdFont-BoldItalic.ttf
Normal file
BIN
fonts/.local/share/fonts/Hack/HackNerdFont-BoldItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/.local/share/fonts/Hack/HackNerdFont-Italic.ttf
Normal file
BIN
fonts/.local/share/fonts/Hack/HackNerdFont-Italic.ttf
Normal file
Binary file not shown.
BIN
fonts/.local/share/fonts/Hack/HackNerdFont-Regular.ttf
Normal file
BIN
fonts/.local/share/fonts/Hack/HackNerdFont-Regular.ttf
Normal file
Binary file not shown.
BIN
fonts/.local/share/fonts/Hack/HackNerdFontMono-Bold.ttf
Normal file
BIN
fonts/.local/share/fonts/Hack/HackNerdFontMono-Bold.ttf
Normal file
Binary file not shown.
BIN
fonts/.local/share/fonts/Hack/HackNerdFontMono-BoldItalic.ttf
Normal file
BIN
fonts/.local/share/fonts/Hack/HackNerdFontMono-BoldItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/.local/share/fonts/Hack/HackNerdFontMono-Italic.ttf
Normal file
BIN
fonts/.local/share/fonts/Hack/HackNerdFontMono-Italic.ttf
Normal file
Binary file not shown.
BIN
fonts/.local/share/fonts/Hack/HackNerdFontMono-Regular.ttf
Normal file
BIN
fonts/.local/share/fonts/Hack/HackNerdFontMono-Regular.ttf
Normal file
Binary file not shown.
BIN
fonts/.local/share/fonts/Hack/HackNerdFontPropo-Bold.ttf
Normal file
BIN
fonts/.local/share/fonts/Hack/HackNerdFontPropo-Bold.ttf
Normal file
Binary file not shown.
BIN
fonts/.local/share/fonts/Hack/HackNerdFontPropo-BoldItalic.ttf
Normal file
BIN
fonts/.local/share/fonts/Hack/HackNerdFontPropo-BoldItalic.ttf
Normal file
Binary file not shown.
BIN
fonts/.local/share/fonts/Hack/HackNerdFontPropo-Italic.ttf
Normal file
BIN
fonts/.local/share/fonts/Hack/HackNerdFontPropo-Italic.ttf
Normal file
Binary file not shown.
BIN
fonts/.local/share/fonts/Hack/HackNerdFontPropo-Regular.ttf
Normal file
BIN
fonts/.local/share/fonts/Hack/HackNerdFontPropo-Regular.ttf
Normal file
Binary file not shown.
1
fonts/.local/share/fonts/Nimbus/.uuid
Normal file
1
fonts/.local/share/fonts/Nimbus/.uuid
Normal file
@@ -0,0 +1 @@
|
||||
a197d76c-13ad-4b17-abb0-dd4d5e05f983
|
||||
BIN
fonts/.local/share/fonts/Nimbus/NimbusSansDOTNerdFont-Bold.otf
Normal file
BIN
fonts/.local/share/fonts/Nimbus/NimbusSansDOTNerdFont-Bold.otf
Normal file
Binary file not shown.
BIN
fonts/.local/share/fonts/Nimbus/NimbusSansDOTNerdFont-Bold.woff2
Normal file
BIN
fonts/.local/share/fonts/Nimbus/NimbusSansDOTNerdFont-Bold.woff2
Normal file
Binary file not shown.
BIN
fonts/.local/share/fonts/Nimbus/NimbusSansDOTNerdFont-Light.otf
Normal file
BIN
fonts/.local/share/fonts/Nimbus/NimbusSansDOTNerdFont-Light.otf
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
10
kidex/.config/kidex.ron
Normal file
10
kidex/.config/kidex.ron
Normal file
@@ -0,0 +1,10 @@
|
||||
Config(
|
||||
ignored: [], // A list of patterns to be ignored in all directories
|
||||
directories: [
|
||||
WatchDir(
|
||||
path: "~", // The root folder to be indexed
|
||||
recurse: true, // Recursively index and watch all subfolders
|
||||
ignored: [], // Ignore patterns specifically for this directory
|
||||
),
|
||||
],
|
||||
)
|
||||
66
moxide/.config/moxide/settings.toml
Normal file
66
moxide/.config/moxide/settings.toml
Normal file
@@ -0,0 +1,66 @@
|
||||
# Leave blank to try to import from Obsidian Daily Notes
|
||||
dailynote = "%Y-%m-%d" # this is akin to YYYY-MM-DD from Obsidian
|
||||
|
||||
# Fuzzy match file headings in completions
|
||||
heading_completions = true
|
||||
|
||||
# Set true if you title your notes by the first heading
|
||||
# Right now, if true this will cause completing a file link in the markdown style
|
||||
# to insert the name of the first heading in the display text area
|
||||
# [](file) -> [first heading of file.md](file)
|
||||
# If false, [](file) -> [](file) (for example)
|
||||
title_headings = true
|
||||
|
||||
# Show diagnostics for unresolved links; note that even if this is turned off,
|
||||
# special semantic tokens will be sent for the unresolved links, allowing you
|
||||
# to visually identify unresolved links
|
||||
unresolved_diagnostics = true
|
||||
|
||||
semantic_tokens = true
|
||||
|
||||
# Resolve tags in code blocks
|
||||
tags_in_codeblocks = false
|
||||
# Resolve references in code blocks
|
||||
references_in_codeblocks = false
|
||||
|
||||
# The folder for new files to be created in; this is relevant for the code action that creates
|
||||
# from an unresolved link. If not specified, it will import from your obsidian config option titled
|
||||
# "Default Location for new notes" -- which is "" by default too.
|
||||
# new_file_folder_path = ""
|
||||
|
||||
|
||||
# The folder for new daily notes: this is applied for the create file for unresolved link code action
|
||||
# as well as the Today, Tomorrow, Yesterday, and Daily... lsp commands
|
||||
#
|
||||
# This is also imported from obsidian if not specified: specifically the option titled "New file location"
|
||||
# daily_notes_folder = ""
|
||||
|
||||
|
||||
# Whether markdown links should include an extension or not
|
||||
# for example [File](file.md) or [File](file)
|
||||
include_md_extension_md_link = false
|
||||
|
||||
# Whether wikilinks should include an extension or not (needed for Markor compatibility)
|
||||
# for example [[File]] or [[File.md]]
|
||||
include_md_extension_wikilink = false
|
||||
|
||||
# Enable hover; this is relevant for VSCode and Zed where hover could be triggered on mouse hover
|
||||
# and could be annoying
|
||||
hover = true
|
||||
|
||||
# Handle case in fuzzy matches: Ignore | Smart | Respect
|
||||
case_matching = "Smart"
|
||||
|
||||
# Enable inlay hints
|
||||
inlay_hints = true
|
||||
# Enable transclusion, in the form of inlay hints, for embedded block links: ![[link]]
|
||||
# Inlay hints must be enabled
|
||||
block_transclusion = true
|
||||
# Full or Partial, for Partial, block_transclusion_length = { partial = 10 }
|
||||
# block_transclusion must be enabled for this to take effect
|
||||
block_transclusion_length = "Full"
|
||||
|
||||
# Link file names only
|
||||
# Enables autocompleting by heading but inserting link to filename (instead of filename + heading)
|
||||
# Useful for unique notes / Zettelkasten users
|
||||
link_filenames_only = false
|
||||
655
niri/.config/niri/config.kdl
Normal file
655
niri/.config/niri/config.kdl
Normal file
@@ -0,0 +1,655 @@
|
||||
// This config is in the KDL format: https://kdl.dev
|
||||
// "/-" comments out the following node.
|
||||
// Check the wiki for a full description of the configuration:
|
||||
// https://yalter.github.io/niri/Configuration:-Introduction
|
||||
|
||||
// Input device configuration.
|
||||
// Find the full list of options on the wiki:
|
||||
// https://yalter.github.io/niri/Configuration:-Input
|
||||
input {
|
||||
keyboard {
|
||||
xkb {
|
||||
// You can set rules, model, layout, variant and options.
|
||||
// For more information, see xkeyboard-config(7).
|
||||
|
||||
// For example:
|
||||
// layout "us,ru"
|
||||
// options "grp:win_space_toggle,compose:ralt,ctrl:nocaps"
|
||||
|
||||
// If this section is empty, niri will fetch xkb settings
|
||||
// from org.freedesktop.locale1. You can control these using
|
||||
// localectl set-x11-keymap.
|
||||
|
||||
// I find it's more ergonomic to use caps as the Mod key
|
||||
// It also feels nice to finally give it a use <3
|
||||
options "caps:super"
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Enable numlock on startup, omitting this setting disables it.
|
||||
numlock
|
||||
}
|
||||
|
||||
// Next sections include libinput settings.
|
||||
// Omitting settings disables them, or leaves them at their default values.
|
||||
// All commented-out settings here are examples, not defaults.
|
||||
touchpad {
|
||||
// off
|
||||
tap
|
||||
// dwt
|
||||
// dwtp
|
||||
// drag false
|
||||
// drag-lock
|
||||
natural-scroll
|
||||
// accel-speed 0.2
|
||||
// accel-profile "flat"
|
||||
// scroll-method "two-finger"
|
||||
// disabled-on-external-mouse
|
||||
}
|
||||
|
||||
mouse {
|
||||
// off
|
||||
// natural-scroll
|
||||
// accel-speed 0.2
|
||||
// accel-profile "flat"
|
||||
// scroll-method "no-scroll"
|
||||
}
|
||||
|
||||
trackpoint {
|
||||
// off
|
||||
// natural-scroll
|
||||
// accel-speed 0.2
|
||||
// accel-profile "flat"
|
||||
// scroll-method "on-button-down"
|
||||
// scroll-button 273
|
||||
// scroll-button-lock
|
||||
// middle-emulation
|
||||
}
|
||||
|
||||
// Uncomment this to make the mouse warp to the center of newly focused windows.
|
||||
// warp-mouse-to-focus
|
||||
|
||||
// Focus windows and outputs automatically when moving the mouse into them.
|
||||
// Setting max-scroll-amount="0%" makes it work only on windows already fully on screen.
|
||||
// focus-follows-mouse max-scroll-amount="0%"
|
||||
}
|
||||
|
||||
// You can configure outputs by their name, which you can find
|
||||
// by running `niri msg outputs` while inside a niri instance.
|
||||
// The built-in laptop monitor is usually called "eDP-1".
|
||||
// Find more information on the wiki:
|
||||
// https://yalter.github.io/niri/Configuration:-Outputs
|
||||
// Remember to uncomment the node by removing "/-"!
|
||||
/-output "eDP-1" {
|
||||
// Uncomment this line to disable this output.
|
||||
// off
|
||||
|
||||
// Resolution and, optionally, refresh rate of the output.
|
||||
// The format is "<width>x<height>" or "<width>x<height>@<refresh rate>".
|
||||
// If the refresh rate is omitted, niri will pick the highest refresh rate
|
||||
// for the resolution.
|
||||
// If the mode is omitted altogether or is invalid, niri will pick one automatically.
|
||||
// Run `niri msg outputs` while inside a niri instance to list all outputs and their modes.
|
||||
mode "1920x1080@120.030"
|
||||
|
||||
// You can use integer or fractional scale, for example use 1.5 for 150% scale.
|
||||
scale 2
|
||||
|
||||
// Transform allows to rotate the output counter-clockwise, valid values are:
|
||||
// normal, 90, 180, 270, flipped, flipped-90, flipped-180 and flipped-270.
|
||||
transform "normal"
|
||||
|
||||
// Position of the output in the global coordinate space.
|
||||
// This affects directional monitor actions like "focus-monitor-left", and cursor movement.
|
||||
// The cursor can only move between directly adjacent outputs.
|
||||
// Output scale and rotation has to be taken into account for positioning:
|
||||
// outputs are sized in logical, or scaled, pixels.
|
||||
// For example, a 3840×2160 output with scale 2.0 will have a logical size of 1920×1080,
|
||||
// so to put another output directly adjacent to it on the right, set its x to 1920.
|
||||
// If the position is unset or results in an overlap, the output is instead placed
|
||||
// automatically.
|
||||
position x=1280 y=0
|
||||
}
|
||||
|
||||
// Settings that influence how windows are positioned and sized.
|
||||
// Find more information on the wiki:
|
||||
// https://yalter.github.io/niri/Configuration:-Layout
|
||||
layout {
|
||||
// Set gaps around windows in logical pixels.
|
||||
gaps 4
|
||||
|
||||
// When to center a column when changing focus, options are:
|
||||
// - "never", default behavior, focusing an off-screen column will keep at the left
|
||||
// or right edge of the screen.
|
||||
// - "always", the focused column will always be centered.
|
||||
// - "on-overflow", focusing a column will center it if it doesn't fit
|
||||
// together with the previously focused column.
|
||||
center-focused-column "never"
|
||||
|
||||
// You can customize the widths that "switch-preset-column-width" (Mod+R) toggles between.
|
||||
preset-column-widths {
|
||||
// Proportion sets the width as a fraction of the output width, taking gaps into account.
|
||||
// For example, you can perfectly fit four windows sized "proportion 0.25" on an output.
|
||||
// The default preset widths are 1/3, 1/2 and 2/3 of the output.
|
||||
proportion 0.33333
|
||||
proportion 0.5
|
||||
proportion 0.66667
|
||||
|
||||
// Fixed sets the width in logical pixels exactly.
|
||||
// fixed 1920
|
||||
}
|
||||
|
||||
// You can also customize the heights that "switch-preset-window-height" (Mod+Shift+R) toggles between.
|
||||
// preset-window-heights { }
|
||||
|
||||
// You can change the default width of the new windows.
|
||||
default-column-width { proportion 0.5; }
|
||||
// If you leave the brackets empty, the windows themselves will decide their initial width.
|
||||
// default-column-width {}
|
||||
|
||||
// By default focus ring and border are rendered as a solid background rectangle
|
||||
// behind windows. That is, they will show up through semitransparent windows.
|
||||
// This is because windows using client-side decorations can have an arbitrary shape.
|
||||
//
|
||||
// If you don't like that, you should uncomment `prefer-no-csd` below.
|
||||
// Niri will draw focus ring and border *around* windows that agree to omit their
|
||||
// client-side decorations.
|
||||
//
|
||||
// Alternatively, you can override it with a window rule called
|
||||
// `draw-border-with-background`.
|
||||
|
||||
// You can change how the focus ring looks.
|
||||
focus-ring {
|
||||
// Uncomment this line to disable the focus ring.
|
||||
// off
|
||||
|
||||
// How many logical pixels the ring extends out from the windows.
|
||||
width 2
|
||||
|
||||
// Colors can be set in a variety of ways:
|
||||
// - CSS named colors: "red"
|
||||
// - RGB hex: "#rgb", "#rgba", "#rrggbb", "#rrggbbaa"
|
||||
// - CSS-like notation: "rgb(255, 127, 0)", rgba(), hsl() and a few others.
|
||||
|
||||
// Color of the ring on the active monitor.
|
||||
active-color "#5c13b0"
|
||||
|
||||
// Color of the ring on inactive monitors.
|
||||
//
|
||||
// The focus ring only draws around the active window, so the only place
|
||||
// where you can see its inactive-color is on other monitors.
|
||||
inactive-color "#505050"
|
||||
|
||||
// You can also use gradients. They take precedence over solid colors.
|
||||
// Gradients are rendered the same as CSS linear-gradient(angle, from, to).
|
||||
// The angle is the same as in linear-gradient, and is optional,
|
||||
// defaulting to 180 (top-to-bottom gradient).
|
||||
// You can use any CSS linear-gradient tool on the web to set these up.
|
||||
// Changing the color space is also supported, check the wiki for more info.
|
||||
//
|
||||
// active-gradient from="#80c8ff" to="#c7ff7f" angle=45
|
||||
|
||||
// You can also color the gradient relative to the entire view
|
||||
// of the workspace, rather than relative to just the window itself.
|
||||
// To do that, set relative-to="workspace-view".
|
||||
//
|
||||
// inactive-gradient from="#505050" to="#808080" angle=45 relative-to="workspace-view"
|
||||
}
|
||||
|
||||
// You can also add a border. It's similar to the focus ring, but always visible.
|
||||
border {
|
||||
// The settings are the same as for the focus ring.
|
||||
// If you enable the border, you probably want to disable the focus ring.
|
||||
off
|
||||
|
||||
width 4
|
||||
active-color "#ffc87f"
|
||||
inactive-color "#505050"
|
||||
|
||||
// Color of the border around windows that request your attention.
|
||||
urgent-color "#9b0000"
|
||||
|
||||
// Gradients can use a few different interpolation color spaces.
|
||||
// For example, this is a pastel rainbow gradient via in="oklch longer hue".
|
||||
//
|
||||
// active-gradient from="#e5989b" to="#ffb4a2" angle=45 relative-to="workspace-view" in="oklch longer hue"
|
||||
|
||||
// inactive-gradient from="#505050" to="#808080" angle=45 relative-to="workspace-view"
|
||||
}
|
||||
|
||||
// You can enable drop shadows for windows.
|
||||
shadow {
|
||||
// Uncomment the next line to enable shadows.
|
||||
// on
|
||||
|
||||
// By default, the shadow draws only around its window, and not behind it.
|
||||
// Uncomment this setting to make the shadow draw behind its window.
|
||||
//
|
||||
// Note that niri has no way of knowing about the CSD window corner
|
||||
// radius. It has to assume that windows have square corners, leading to
|
||||
// shadow artifacts inside the CSD rounded corners. This setting fixes
|
||||
// those artifacts.
|
||||
//
|
||||
// However, instead you may want to set prefer-no-csd and/or
|
||||
// geometry-corner-radius. Then, niri will know the corner radius and
|
||||
// draw the shadow correctly, without having to draw it behind the
|
||||
// window. These will also remove client-side shadows if the window
|
||||
// draws any.
|
||||
//
|
||||
// draw-behind-window true
|
||||
|
||||
// You can change how shadows look. The values below are in logical
|
||||
// pixels and match the CSS box-shadow properties.
|
||||
|
||||
// Softness controls the shadow blur radius.
|
||||
softness 30
|
||||
|
||||
// Spread expands the shadow.
|
||||
spread 5
|
||||
|
||||
// Offset moves the shadow relative to the window.
|
||||
offset x=0 y=5
|
||||
|
||||
// You can also change the shadow color and opacity.
|
||||
color "#0007"
|
||||
}
|
||||
|
||||
// Struts shrink the area occupied by windows, similarly to layer-shell panels.
|
||||
// You can think of them as a kind of outer gaps. They are set in logical pixels.
|
||||
// Left and right struts will cause the next window to the side to always be visible.
|
||||
// Top and bottom struts will simply add outer gaps in addition to the area occupied by
|
||||
// layer-shell panels and regular gaps.
|
||||
struts {
|
||||
// left 64
|
||||
// right 64
|
||||
// top 64
|
||||
// bottom 64
|
||||
}
|
||||
}
|
||||
|
||||
// Add lines like this to spawn processes at startup.
|
||||
// Note that running niri as a session supports xdg-desktop-autostart,
|
||||
// which may be more convenient to use.
|
||||
// See the binds section below for more spawn examples.
|
||||
|
||||
// This line starts waybar, a commonly used bar for Wayland compositors.
|
||||
// spawn-at-startup "ironbar"
|
||||
// spawn-at-startup "swaync"
|
||||
|
||||
// Trying this noctalia thing and we will go from there
|
||||
spawn-at-startup "qs" "-c" "noctalia-shell"
|
||||
|
||||
// To run a shell command (with variables, pipes, etc.), use spawn-sh-at-startup:
|
||||
// spawn-sh-at-startup "qs -c ~/source/qs/MyAwesomeShell"
|
||||
|
||||
hotkey-overlay {
|
||||
// Uncomment this line to disable the "Important Hotkeys" pop-up at startup.
|
||||
skip-at-startup
|
||||
}
|
||||
|
||||
// Uncomment this line to ask the clients to omit their client-side decorations if possible.
|
||||
// If the client will specifically ask for CSD, the request will be honored.
|
||||
// Additionally, clients will be informed that they are tiled, removing some client-side rounded corners.
|
||||
// This option will also fix border/focus ring drawing behind some semitransparent windows.
|
||||
// After enabling or disabling this, you need to restart the apps for this to take effect.
|
||||
prefer-no-csd
|
||||
|
||||
// You can change the path where screenshots are saved.
|
||||
// A ~ at the front will be expanded to the home directory.
|
||||
// The path is formatted with strftime(3) to give you the screenshot date and time.
|
||||
screenshot-path "~/Pictures/Screenshots/Screenshot from %Y-%m-%d %H-%M-%S.png"
|
||||
|
||||
// You can also set this to null to disable saving screenshots to disk.
|
||||
// screenshot-path null
|
||||
|
||||
// Animation settings.
|
||||
// The wiki explains how to configure individual animations:
|
||||
// https://yalter.github.io/niri/Configuration:-Animations
|
||||
animations {
|
||||
// Uncomment to turn off all animations.
|
||||
// off
|
||||
|
||||
// Slow down all animations by this factor. Values below 1 speed them up instead.
|
||||
// slowdown 3.0
|
||||
}
|
||||
|
||||
// Window rules let you adjust behavior for individual windows.
|
||||
// Find more information on the wiki:
|
||||
// https://yalter.github.io/niri/Configuration:-Window-Rules
|
||||
|
||||
// Work around WezTerm's initial configure bug
|
||||
// by setting an empty default-column-width.
|
||||
window-rule {
|
||||
// This regular expression is intentionally made as specific as possible,
|
||||
// since this is the default config, and we want no false positives.
|
||||
// You can get away with just app-id="wezterm" if you want.
|
||||
match app-id=r#"^org\.wezfurlong\.wezterm$"#
|
||||
default-column-width {}
|
||||
}
|
||||
|
||||
// Open the Firefox picture-in-picture player as floating by default.
|
||||
window-rule {
|
||||
// This app-id regular expression will work for both:
|
||||
// - host Firefox (app-id is "firefox")
|
||||
// - Flatpak Firefox (app-id is "org.mozilla.firefox")
|
||||
match app-id=r#"firefox$"# title="^Picture-in-Picture$"
|
||||
open-floating true
|
||||
}
|
||||
|
||||
// Example: block out two password managers from screen capture.
|
||||
// (This example rule is commented out with a "/-" in front.)
|
||||
/-window-rule {
|
||||
match app-id=r#"^org\.keepassxc\.KeePassXC$"#
|
||||
match app-id=r#"^org\.gnome\.World\.Secrets$"#
|
||||
|
||||
block-out-from "screen-capture"
|
||||
|
||||
// Use this instead if you want them visible on third-party screenshot tools.
|
||||
// block-out-from "screencast"
|
||||
}
|
||||
|
||||
// Example: enable rounded corners for all windows.
|
||||
window-rule {
|
||||
geometry-corner-radius 20
|
||||
clip-to-geometry true
|
||||
}
|
||||
|
||||
// Suggested for Noctalia
|
||||
layer-rule {
|
||||
match namespace="^quickshell-overview$"
|
||||
place-within-backdrop true
|
||||
}
|
||||
|
||||
debug {
|
||||
honor-xdg-activation-with-invalid-serial
|
||||
}
|
||||
|
||||
binds {
|
||||
// Keys consist of modifiers separated by + signs, followed by an XKB key name
|
||||
// in the end. To find an XKB name for a particular key, you may use a program
|
||||
// like wev.
|
||||
//
|
||||
// "Mod" is a special modifier equal to Super when running on a TTY, and to Alt
|
||||
// when running as a winit window.
|
||||
//
|
||||
// Most actions that you can bind here can also be invoked programmatically with
|
||||
// `niri msg action do-something`.
|
||||
|
||||
// Mod-Shift-/, which is usually the same as Mod-?,
|
||||
// shows a list of important hotkeys.
|
||||
Mod+Shift+Slash { show-hotkey-overlay; }
|
||||
|
||||
// Core Noctalia binds
|
||||
Mod+D { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "launcher" "toggle"; }
|
||||
Mod+S { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "controlCenter" "toggle"; }
|
||||
Mod+Comma { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "settings" "toggle"; }
|
||||
|
||||
// Audio controls
|
||||
XF86AudioRaiseVolume { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "volume" "increase"; }
|
||||
XF86AudioLowerVolume { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "volume" "decrease"; }
|
||||
XF86AudioMute { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "volume" "muteOutput"; }
|
||||
|
||||
// Brightness controls
|
||||
XF86MonBrightnessUp { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "brightness" "increase"; }
|
||||
XF86MonBrightnessDown { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "brightness" "decrease"; }
|
||||
|
||||
// Utility shortcuts
|
||||
Mod+V { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "launcher" "clipboard"; }
|
||||
// Mod+C { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "launcher" "calculator"; }
|
||||
Mod+Alt+L { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "lockScreen" "toggle"; }
|
||||
|
||||
// Suggested binds for running programs: terminal, app launcher, screen locker.
|
||||
Mod+T hotkey-overlay-title="Open a Terminal: alacritty" { spawn "alacritty"; }
|
||||
Alt+Space hotkey-overlay-title="Run an Application: anyrun" { spawn "anyrun"; }
|
||||
// Super+Alt+L hotkey-overlay-title="Lock the Screen: swaylock" { spawn "swaylock"; }
|
||||
|
||||
// Use spawn-sh to run a shell command. Do this if you need pipes, multiple commands, etc.
|
||||
// Note: the entire command goes as a single argument. It's passed verbatim to `sh -c`.
|
||||
// For example, this is a standard bind to toggle the screen reader (orca).
|
||||
Super+Alt+S allow-when-locked=true hotkey-overlay-title=null { spawn-sh "pkill orca || exec orca"; }
|
||||
|
||||
// Example volume keys mappings for PipeWire & WirePlumber.
|
||||
// The allow-when-locked=true property makes them work even when the session is locked.
|
||||
// Using spawn-sh allows to pass multiple arguments together with the command.
|
||||
// XF86AudioRaiseVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1+"; }
|
||||
// XF86AudioLowerVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1-"; }
|
||||
// XF86AudioMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"; }
|
||||
XF86AudioMicMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"; }
|
||||
// On the topic of this, if you ever get a media (player) manager, the numpad keys
|
||||
// are KP_Divide, KP_Multiply, and KP_Subtract you weirdo
|
||||
|
||||
// Example brightness key mappings for brightnessctl.
|
||||
// You can use regular spawn with multiple arguments too (to avoid going through "sh"),
|
||||
// but you need to manually put each argument in separate "" quotes.
|
||||
// XF86MonBrightnessUp allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "+10%"; }
|
||||
// XF86MonBrightnessDown allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "10%-"; }
|
||||
|
||||
// Open/close the Overview: a zoomed-out view of workspaces and windows.
|
||||
// You can also move the mouse into the top-left hot corner,
|
||||
// or do a four-finger swipe up on a touchpad.
|
||||
Mod+O repeat=false { toggle-overview; }
|
||||
|
||||
Mod+Q repeat=false { close-window; }
|
||||
|
||||
Mod+Left { focus-column-left; }
|
||||
Mod+Down { focus-window-down; }
|
||||
Mod+Up { focus-window-up; }
|
||||
Mod+Right { focus-column-right; }
|
||||
Mod+H { focus-column-left; }
|
||||
Mod+J { focus-window-or-workspace-down; }
|
||||
Mod+K { focus-window-or-workspace-up; }
|
||||
Mod+L { focus-column-right; }
|
||||
|
||||
Mod+Ctrl+Left { move-column-left; }
|
||||
Mod+Ctrl+Down { move-window-down; }
|
||||
Mod+Ctrl+Up { move-window-up; }
|
||||
Mod+Ctrl+Right { move-column-right; }
|
||||
Mod+Ctrl+H { move-column-left; }
|
||||
Mod+Ctrl+J { move-window-down-or-to-workspace-down; }
|
||||
Mod+Ctrl+K { move-window-up-or-to-workspace-up; }
|
||||
Mod+Ctrl+L { move-column-right; }
|
||||
|
||||
// Alternative commands that move across workspaces when reaching
|
||||
// the first or last window in a column.
|
||||
//
|
||||
// Yeah they aren't here cause I'm using them cause they are AWESOME
|
||||
|
||||
Mod+Home { focus-column-first; }
|
||||
Mod+End { focus-column-last; }
|
||||
Mod+Ctrl+Home { move-column-to-first; }
|
||||
Mod+Ctrl+End { move-column-to-last; }
|
||||
|
||||
Mod+Shift+Left { focus-monitor-left; }
|
||||
Mod+Shift+Down { focus-monitor-down; }
|
||||
Mod+Shift+Up { focus-monitor-up; }
|
||||
Mod+Shift+Right { focus-monitor-right; }
|
||||
Mod+Shift+H { focus-monitor-left; }
|
||||
Mod+Shift+J { focus-monitor-down; }
|
||||
Mod+Shift+K { focus-monitor-up; }
|
||||
Mod+Shift+L { focus-monitor-right; }
|
||||
|
||||
Mod+Shift+Ctrl+Left { move-column-to-monitor-left; }
|
||||
Mod+Shift+Ctrl+Down { move-column-to-monitor-down; }
|
||||
Mod+Shift+Ctrl+Up { move-column-to-monitor-up; }
|
||||
Mod+Shift+Ctrl+Right { move-column-to-monitor-right; }
|
||||
Mod+Shift+Ctrl+H { move-column-to-monitor-left; }
|
||||
Mod+Shift+Ctrl+J { move-column-to-monitor-down; }
|
||||
Mod+Shift+Ctrl+K { move-column-to-monitor-up; }
|
||||
Mod+Shift+Ctrl+L { move-column-to-monitor-right; }
|
||||
|
||||
// Alternatively, there are commands to move just a single window:
|
||||
// Mod+Shift+Ctrl+Left { move-window-to-monitor-left; }
|
||||
// ...
|
||||
|
||||
// And you can also move a whole workspace to another monitor:
|
||||
// Mod+Shift+Ctrl+Left { move-workspace-to-monitor-left; }
|
||||
// ...
|
||||
|
||||
Mod+Page_Down { focus-workspace-down; }
|
||||
Mod+Page_Up { focus-workspace-up; }
|
||||
Mod+U { focus-workspace-down; }
|
||||
Mod+I { focus-workspace-up; }
|
||||
Mod+Ctrl+Page_Down { move-column-to-workspace-down; }
|
||||
Mod+Ctrl+Page_Up { move-column-to-workspace-up; }
|
||||
Mod+Ctrl+U { move-column-to-workspace-down; }
|
||||
Mod+Ctrl+I { move-column-to-workspace-up; }
|
||||
|
||||
// Alternatively, there are commands to move just a single window:
|
||||
// Mod+Ctrl+Page_Down { move-window-to-workspace-down; }
|
||||
// ...
|
||||
|
||||
Mod+Shift+Page_Down { move-workspace-down; }
|
||||
Mod+Shift+Page_Up { move-workspace-up; }
|
||||
Mod+Shift+U { move-workspace-down; }
|
||||
Mod+Shift+I { move-workspace-up; }
|
||||
|
||||
// You can bind mouse wheel scroll ticks using the following syntax.
|
||||
// These binds will change direction based on the natural-scroll setting.
|
||||
//
|
||||
// To avoid scrolling through workspaces really fast, you can use
|
||||
// the cooldown-ms property. The bind will be rate-limited to this value.
|
||||
// You can set a cooldown on any bind, but it's most useful for the wheel.
|
||||
Mod+WheelScrollDown cooldown-ms=150 { focus-workspace-down; }
|
||||
Mod+WheelScrollUp cooldown-ms=150 { focus-workspace-up; }
|
||||
Mod+Ctrl+WheelScrollDown cooldown-ms=150 { move-column-to-workspace-down; }
|
||||
Mod+Ctrl+WheelScrollUp cooldown-ms=150 { move-column-to-workspace-up; }
|
||||
|
||||
Mod+WheelScrollRight { focus-column-right; }
|
||||
Mod+WheelScrollLeft { focus-column-left; }
|
||||
Mod+Ctrl+WheelScrollRight { move-column-right; }
|
||||
Mod+Ctrl+WheelScrollLeft { move-column-left; }
|
||||
|
||||
// Usually scrolling up and down with Shift in applications results in
|
||||
// horizontal scrolling; these binds replicate that.
|
||||
Mod+Shift+WheelScrollDown { focus-column-right; }
|
||||
Mod+Shift+WheelScrollUp { focus-column-left; }
|
||||
Mod+Ctrl+Shift+WheelScrollDown { move-column-right; }
|
||||
Mod+Ctrl+Shift+WheelScrollUp { move-column-left; }
|
||||
|
||||
// Similarly, you can bind touchpad scroll "ticks".
|
||||
// Touchpad scrolling is continuous, so for these binds it is split into
|
||||
// discrete intervals.
|
||||
// These binds are also affected by touchpad's natural-scroll, so these
|
||||
// example binds are "inverted", since we have natural-scroll enabled for
|
||||
// touchpads by default.
|
||||
// Mod+TouchpadScrollDown { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.02+"; }
|
||||
// Mod+TouchpadScrollUp { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.02-"; }
|
||||
|
||||
// You can refer to workspaces by index. However, keep in mind that
|
||||
// niri is a dynamic workspace system, so these commands are kind of
|
||||
// "best effort". Trying to refer to a workspace index bigger than
|
||||
// the current workspace count will instead refer to the bottommost
|
||||
// (empty) workspace.
|
||||
//
|
||||
// For example, with 2 workspaces + 1 empty, indices 3, 4, 5 and so on
|
||||
// will all refer to the 3rd workspace.
|
||||
Mod+1 { focus-workspace 1; }
|
||||
Mod+2 { focus-workspace 2; }
|
||||
Mod+3 { focus-workspace 3; }
|
||||
Mod+4 { focus-workspace 4; }
|
||||
Mod+5 { focus-workspace 5; }
|
||||
Mod+6 { focus-workspace 6; }
|
||||
Mod+7 { focus-workspace 7; }
|
||||
Mod+8 { focus-workspace 8; }
|
||||
Mod+9 { focus-workspace 9; }
|
||||
Mod+Ctrl+1 { move-column-to-workspace 1; }
|
||||
Mod+Ctrl+2 { move-column-to-workspace 2; }
|
||||
Mod+Ctrl+3 { move-column-to-workspace 3; }
|
||||
Mod+Ctrl+4 { move-column-to-workspace 4; }
|
||||
Mod+Ctrl+5 { move-column-to-workspace 5; }
|
||||
Mod+Ctrl+6 { move-column-to-workspace 6; }
|
||||
Mod+Ctrl+7 { move-column-to-workspace 7; }
|
||||
Mod+Ctrl+8 { move-column-to-workspace 8; }
|
||||
Mod+Ctrl+9 { move-column-to-workspace 9; }
|
||||
|
||||
// Alternatively, there are commands to move just a single window:
|
||||
// Mod+Ctrl+1 { move-window-to-workspace 1; }
|
||||
|
||||
// Switches focus between the current and the previous workspace.
|
||||
// Mod+Tab { focus-workspace-previous; }
|
||||
|
||||
// The following binds move the focused window in and out of a column.
|
||||
// If the window is alone, they will consume it into the nearby column to the side.
|
||||
// If the window is already in a column, they will expel it out.
|
||||
Mod+BracketLeft { consume-or-expel-window-left; }
|
||||
Mod+BracketRight { consume-or-expel-window-right; }
|
||||
|
||||
// These have just messed with me lowkey
|
||||
// Consume one window from the right to the bottom of the focused column.
|
||||
// Mod+Comma { consume-window-into-column; }
|
||||
// Expel the bottom window from the focused column to the right.
|
||||
// Mod+Period { expel-window-from-column; }
|
||||
|
||||
Mod+R { switch-preset-column-width; }
|
||||
// Cycling through the presets in reverse order is also possible.
|
||||
// Mod+R { switch-preset-column-width-back; }
|
||||
Mod+Shift+R { switch-preset-window-height; }
|
||||
Mod+Ctrl+R { reset-window-height; }
|
||||
Mod+F { maximize-column; }
|
||||
Mod+Shift+F { fullscreen-window; }
|
||||
|
||||
// Expand the focused column to space not taken up by other fully visible columns.
|
||||
// Makes the column "fill the rest of the space".
|
||||
Mod+Ctrl+F { expand-column-to-available-width; }
|
||||
|
||||
Mod+C { center-column; }
|
||||
|
||||
// Center all fully visible columns on screen.
|
||||
Mod+Ctrl+C { center-visible-columns; }
|
||||
|
||||
// Finer width adjustments.
|
||||
// This command can also:
|
||||
// * set width in pixels: "1000"
|
||||
// * adjust width in pixels: "-5" or "+5"
|
||||
// * set width as a percentage of screen width: "25%"
|
||||
// * adjust width as a percentage of screen width: "-10%" or "+10%"
|
||||
// Pixel sizes use logical, or scaled, pixels. I.e. on an output with scale 2.0,
|
||||
// set-column-width "100" will make the column occupy 200 physical screen pixels.
|
||||
Mod+Minus { set-column-width "-10%"; }
|
||||
Mod+Equal { set-column-width "+10%"; }
|
||||
|
||||
// Finer height adjustments when in column with other windows.
|
||||
Mod+Shift+Minus { set-window-height "-10%"; }
|
||||
Mod+Shift+Equal { set-window-height "+10%"; }
|
||||
|
||||
// Move the focused window between the floating and the tiling layout.
|
||||
// These keybinds don't feel ergonomic in the slightest
|
||||
Mod+Alt+V { toggle-window-floating; }
|
||||
Mod+Shift+V { switch-focus-between-floating-and-tiling; }
|
||||
|
||||
// Toggle tabbed column display mode.
|
||||
// Windows in this column will appear as vertical tabs,
|
||||
// rather than stacked on top of each other.
|
||||
Mod+W { toggle-column-tabbed-display; }
|
||||
|
||||
// Actions to switch layouts.
|
||||
// Note: if you uncomment these, make sure you do NOT have
|
||||
// a matching layout switch hotkey configured in xkb options above.
|
||||
// Having both at once on the same hotkey will break the switching,
|
||||
// since it will switch twice upon pressing the hotkey (once by xkb, once by niri).
|
||||
// Mod+Space { switch-layout "next"; }
|
||||
// Mod+Shift+Space { switch-layout "prev"; }
|
||||
|
||||
Print { screenshot; }
|
||||
Ctrl+Print { screenshot-screen; }
|
||||
Alt+Print { screenshot-window; }
|
||||
|
||||
// Applications such as remote-desktop clients and software KVM switches may
|
||||
// request that niri stops processing the keyboard shortcuts defined here
|
||||
// so they may, for example, forward the key presses as-is to a remote machine.
|
||||
// It's a good idea to bind an escape hatch to toggle the inhibitor,
|
||||
// so a buggy application can't hold your session hostage.
|
||||
//
|
||||
// The allow-inhibiting=false property can be applied to other binds as well,
|
||||
// which ensures niri always processes them, even when an inhibitor is active.
|
||||
Mod+Escape allow-inhibiting=false { toggle-keyboard-shortcuts-inhibit; }
|
||||
|
||||
// The quit action will show a confirmation dialog to avoid accidental exits.
|
||||
Mod+Shift+E { quit; }
|
||||
Ctrl+Alt+Delete { quit; }
|
||||
|
||||
// Powers off the monitors. To turn them back on, do any input like
|
||||
// moving the mouse or pressing any other key.
|
||||
Mod+Shift+P { power-off-monitors; }
|
||||
}
|
||||
16
noctalia/.config/noctalia/colors.json
Normal file
16
noctalia/.config/noctalia/colors.json
Normal file
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"mError": "#f38ba8",
|
||||
"mOnError": "#11111b",
|
||||
"mOnPrimary": "#11111b",
|
||||
"mOnSecondary": "#11111b",
|
||||
"mOnSurface": "#cdd6f4",
|
||||
"mOnSurfaceVariant": "#a3b4eb",
|
||||
"mOnTertiary": "#11111b",
|
||||
"mOutline": "#4c4f69",
|
||||
"mPrimary": "#cba6f7",
|
||||
"mSecondary": "#fab387",
|
||||
"mShadow": "#11111b",
|
||||
"mSurface": "#1e1e2e",
|
||||
"mSurfaceVariant": "#313244",
|
||||
"mTertiary": "#94e2d5"
|
||||
}
|
||||
229
noctalia/.config/noctalia/settings.json
Normal file
229
noctalia/.config/noctalia/settings.json
Normal file
@@ -0,0 +1,229 @@
|
||||
{
|
||||
"appLauncher": {
|
||||
"backgroundOpacity": 1,
|
||||
"enableClipboardHistory": true,
|
||||
"pinnedExecs": [
|
||||
],
|
||||
"position": "center",
|
||||
"sortByMostUsed": true,
|
||||
"useApp2Unit": false
|
||||
},
|
||||
"audio": {
|
||||
"cavaFrameRate": 60,
|
||||
"mprisBlacklist": [
|
||||
],
|
||||
"preferredPlayer": "",
|
||||
"visualizerType": "linear",
|
||||
"volumeOverdrive": false,
|
||||
"volumeStep": 5
|
||||
},
|
||||
"bar": {
|
||||
"backgroundOpacity": 1,
|
||||
"density": "default",
|
||||
"floating": false,
|
||||
"marginHorizontal": 1.25,
|
||||
"marginVertical": 0.25,
|
||||
"monitors": [
|
||||
],
|
||||
"position": "top",
|
||||
"showCapsule": true,
|
||||
"widgets": {
|
||||
"center": [
|
||||
{
|
||||
"hideUnoccupied": false,
|
||||
"id": "Workspace",
|
||||
"labelMode": "index"
|
||||
}
|
||||
],
|
||||
"left": [
|
||||
{
|
||||
"id": "SystemMonitor",
|
||||
"showCpuTemp": true,
|
||||
"showCpuUsage": true,
|
||||
"showDiskUsage": false,
|
||||
"showMemoryAsPercent": false,
|
||||
"showMemoryUsage": true,
|
||||
"showNetworkStats": false
|
||||
},
|
||||
{
|
||||
"autoHide": true,
|
||||
"id": "ActiveWindow",
|
||||
"scrollingMode": "hover",
|
||||
"showIcon": true
|
||||
},
|
||||
{
|
||||
"autoHide": true,
|
||||
"id": "MediaMini",
|
||||
"scrollingMode": "hover",
|
||||
"showAlbumArt": false,
|
||||
"showVisualizer": false,
|
||||
"visualizerType": "linear"
|
||||
}
|
||||
],
|
||||
"right": [
|
||||
{
|
||||
"id": "ScreenRecorder"
|
||||
},
|
||||
{
|
||||
"id": "Tray"
|
||||
},
|
||||
{
|
||||
"hideWhenZero": true,
|
||||
"id": "NotificationHistory",
|
||||
"showUnreadBadge": true
|
||||
},
|
||||
{
|
||||
"id": "WiFi"
|
||||
},
|
||||
{
|
||||
"id": "Bluetooth"
|
||||
},
|
||||
{
|
||||
"displayMode": "onhover",
|
||||
"id": "Battery",
|
||||
"warningThreshold": 30
|
||||
},
|
||||
{
|
||||
"displayMode": "onhover",
|
||||
"id": "Volume"
|
||||
},
|
||||
{
|
||||
"displayMode": "onhover",
|
||||
"id": "Brightness"
|
||||
},
|
||||
{
|
||||
"formatHorizontal": "HH:mm ddd, MMM dd",
|
||||
"formatVertical": "HH mm - dd MM",
|
||||
"id": "Clock",
|
||||
"useMonospacedFont": true,
|
||||
"usePrimaryColor": true
|
||||
},
|
||||
{
|
||||
"customIconPath": "",
|
||||
"icon": "noctalia",
|
||||
"id": "ControlCenter",
|
||||
"useDistroLogo": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"brightness": {
|
||||
"brightnessStep": 5
|
||||
},
|
||||
"colorSchemes": {
|
||||
"darkMode": true,
|
||||
"matugenSchemeType": "scheme-rainbow",
|
||||
"predefinedScheme": "Catppuccin",
|
||||
"useWallpaperColors": false
|
||||
},
|
||||
"dock": {
|
||||
"autoHide": false,
|
||||
"backgroundOpacity": 1,
|
||||
"exclusive": false,
|
||||
"floatingRatio": 1,
|
||||
"monitors": [
|
||||
],
|
||||
"pinnedApps": [
|
||||
]
|
||||
},
|
||||
"general": {
|
||||
"animationDisabled": false,
|
||||
"animationSpeed": 1.1500000000000001,
|
||||
"avatarImage": "/home/foreverpyrite/Pictures/Pysprite/ForeverPyrite Head.png",
|
||||
"dimDesktop": true,
|
||||
"forceBlackScreenCorners": false,
|
||||
"radiusRatio": 1,
|
||||
"screenRadiusRatio": 1,
|
||||
"showScreenCorners": false
|
||||
},
|
||||
"hooks": {
|
||||
"darkModeChange": "",
|
||||
"enabled": false,
|
||||
"wallpaperChange": ""
|
||||
},
|
||||
"location": {
|
||||
"name": "New York",
|
||||
"showWeekNumberInCalendar": false,
|
||||
"use12hourFormat": false,
|
||||
"useFahrenheit": true
|
||||
},
|
||||
"matugen": {
|
||||
"enableUserTemplates": false,
|
||||
"foot": false,
|
||||
"fuzzel": false,
|
||||
"ghostty": false,
|
||||
"gtk3": false,
|
||||
"gtk4": false,
|
||||
"kitty": false,
|
||||
"pywalfox": false,
|
||||
"qt5": false,
|
||||
"qt6": false,
|
||||
"vesktop": false
|
||||
},
|
||||
"network": {
|
||||
"wifiEnabled": true
|
||||
},
|
||||
"nightLight": {
|
||||
"autoSchedule": true,
|
||||
"dayTemp": "6500",
|
||||
"enabled": true,
|
||||
"forced": true,
|
||||
"manualSunrise": "06:30",
|
||||
"manualSunset": "18:30",
|
||||
"nightTemp": "4000"
|
||||
},
|
||||
"notifications": {
|
||||
"alwaysOnTop": false,
|
||||
"criticalUrgencyDuration": 15,
|
||||
"doNotDisturb": false,
|
||||
"lastSeenTs": 1759199713000,
|
||||
"location": "top_right",
|
||||
"lowUrgencyDuration": 3,
|
||||
"monitors": [
|
||||
],
|
||||
"normalUrgencyDuration": 8,
|
||||
"respectExpireTimeout": false
|
||||
},
|
||||
"osd": {
|
||||
"autoHideMs": 2000,
|
||||
"enabled": true,
|
||||
"location": "top_right",
|
||||
"monitors": [
|
||||
]
|
||||
},
|
||||
"screenRecorder": {
|
||||
"audioCodec": "opus",
|
||||
"audioSource": "default_output",
|
||||
"colorRange": "limited",
|
||||
"directory": "/home/foreverpyrite/Videos",
|
||||
"frameRate": 60,
|
||||
"quality": "very_high",
|
||||
"showCursor": true,
|
||||
"videoCodec": "h264",
|
||||
"videoSource": "portal"
|
||||
},
|
||||
"settingsVersion": 12,
|
||||
"ui": {
|
||||
"fontBillboard": "Inter",
|
||||
"fontDefault": "NimbusSansDOT Nerd Font",
|
||||
"fontFixed": "Hack Nerd Font Mono",
|
||||
"idleInhibitorEnabled": false,
|
||||
"monitorsScaling": [
|
||||
]
|
||||
},
|
||||
"wallpaper": {
|
||||
"directory": "/home/foreverpyrite/Pictures/Wallpapers",
|
||||
"enableMultiMonitorDirectories": false,
|
||||
"enabled": false,
|
||||
"fillColor": "#000000",
|
||||
"fillMode": "crop",
|
||||
"monitors": [
|
||||
],
|
||||
"randomEnabled": false,
|
||||
"randomIntervalSec": 300,
|
||||
"setWallpaperOnAllMonitors": true,
|
||||
"transitionDuration": 1500,
|
||||
"transitionEdgeSmoothness": 0.05,
|
||||
"transitionType": "random"
|
||||
}
|
||||
}
|
||||
@@ -1,10 +1,30 @@
|
||||
-- bootstrap lazy.nvim, LazyVim and your plugins
|
||||
require("config.lazy")
|
||||
|
||||
-- Unfortunately, the file paths are too long and break things
|
||||
vim.loader.enable(false)
|
||||
|
||||
-- Clipboard (hopefully, right now my clipboard provider is tmux ig so...)
|
||||
vim.o.clipboard = "unnamedplus"
|
||||
vim.api.nvim_set_keymap("", "<D-v>", "+p<CR>", { noremap = true, silent = true })
|
||||
vim.api.nvim_set_keymap("!", "<D-v>", "<C-R>+", { noremap = true, silent = true })
|
||||
vim.api.nvim_set_keymap("t", "<D-v>", "<C-R>+", { noremap = true, silent = true })
|
||||
vim.api.nvim_set_keymap("v", "<D-v>", "<C-R>+", { noremap = true, silent = true })
|
||||
|
||||
-- Is there a way I can set these in neovide config?
|
||||
if vim.g.neovide then
|
||||
-- Neovide copy & pasting
|
||||
vim.keymap.set("n", "<D-s>", ":w<CR>") -- Save
|
||||
vim.keymap.set("v", "<D-c>", '"+y') -- Copy
|
||||
vim.keymap.set("n", "<D-v>", '"+P') -- Paste normal mode
|
||||
vim.keymap.set("v", "<D-v>", '"+P') -- Paste visual mode
|
||||
vim.keymap.set("c", "<D-v>", "<C-R>+") -- Paste command mode
|
||||
vim.keymap.set("i", "<D-v>", '<ESC>l"+Pli') -- Paste insert mode
|
||||
-- Neovide Scaling support
|
||||
vim.g.neovide_scale_factor = 1.0
|
||||
local set_scale_factor = function(value)
|
||||
vim.g.nevoide_scale_factor = value
|
||||
end
|
||||
local change_scale_factor = function(delta)
|
||||
vim.g.neovide_scale_factor = vim.g.neovide_scale_factor * delta
|
||||
end
|
||||
@@ -14,10 +34,10 @@ if vim.g.neovide then
|
||||
vim.keymap.set("n", "<C-->", function()
|
||||
change_scale_factor(1 / 1.25)
|
||||
end)
|
||||
-- Neovide
|
||||
vim.keymap.set("n", "<C-0>", function()
|
||||
set_scale_factor(1.0)
|
||||
end)
|
||||
-- General Neovide settings
|
||||
vim.g.neovide_detach_on_quit = "always_detach"
|
||||
vim.g.neovide_fullscreen = true
|
||||
end
|
||||
|
||||
-- Unfortunately, the file paths are too long and break things
|
||||
vim.loader.enable(false)
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
{
|
||||
"LazyVim": { "branch": "main", "commit": "bd1f523df58edd61eef10643ef9c42f9191ce617" },
|
||||
"LazyVim": { "branch": "main", "commit": "6e3a06306d72a7f7a401c007f56706023a6c00ea" },
|
||||
"blink.cmp": { "branch": "main", "commit": "327fff91fe6af358e990be7be1ec8b78037d2138" },
|
||||
"bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" },
|
||||
"catppuccin": { "branch": "main", "commit": "30fa4d122d9b22ad8b2e0ab1b533c8c26c4dde86" },
|
||||
"catppuccin": { "branch": "main", "commit": "f19cab18ec4dc86d415512c7a572863b2adbcc18" },
|
||||
"conform.nvim": { "branch": "master", "commit": "b4aab989db276993ea5dcb78872be494ce546521" },
|
||||
"crates.nvim": { "branch": "main", "commit": "ac9fa498a9edb96dc3056724ff69d5f40b898453" },
|
||||
"flash.nvim": { "branch": "main", "commit": "b68bda044d68e4026c4e1ec6df3c5afd7eb8e341" },
|
||||
@@ -12,28 +12,29 @@
|
||||
"lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
|
||||
"lazydev.nvim": { "branch": "main", "commit": "258d2a5ef4a3e3d6d9ba9da72c9725c53e9afcbd" },
|
||||
"lualine.nvim": { "branch": "master", "commit": "b8c23159c0161f4b89196f74ee3a6d02cdc3a955" },
|
||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "7f9a39fcd2ac6e979001f857727d606888f5909c" },
|
||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "a1067cf84b4ff81b66d2bf4d01f4cbdb5de40bd0" },
|
||||
"mason.nvim": { "branch": "main", "commit": "7dc4facca9702f95353d5a1f87daf23d78e31c2a" },
|
||||
"mini.ai": { "branch": "main", "commit": "45a26d032d8703f280c69c2ed9fb4e1bfc8f24f9" },
|
||||
"mini.ai": { "branch": "main", "commit": "dcd346a3eda9121e917950680e5eb59f59f78aae" },
|
||||
"mini.icons": { "branch": "main", "commit": "f9a177c11daa7829389b7b6eaaec8b8a5c47052d" },
|
||||
"mini.pairs": { "branch": "main", "commit": "3738ea30ff33e0cbf2983dc67319a5468d25b0a9" },
|
||||
"noice.nvim": { "branch": "main", "commit": "0427460c2d7f673ad60eb02b35f5e9926cf67c59" },
|
||||
"nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" },
|
||||
"nvim-aider": { "branch": "main", "commit": "aa5df1ac89f4417eae3567dbfed82962bfa580c0" },
|
||||
"nvim-lint": { "branch": "master", "commit": "0864f81c681e15d9bdc1156fe3a17bd07db5a3ed" },
|
||||
"nvim-lspconfig": { "branch": "master", "commit": "d9879110d0422a566fa01d732556f4d5515e1738" },
|
||||
"nvim-treesitter": { "branch": "main", "commit": "8ab64a37ea56762dc0d1a6da2bba2d4af88e3594" },
|
||||
"nvim-lint": { "branch": "master", "commit": "335a6044be16d7701001059cba9baa36fbeef422" },
|
||||
"nvim-lspconfig": { "branch": "master", "commit": "b3cce1419ca67871ae782b3e529652f8a016f0de" },
|
||||
"nvim-treesitter": { "branch": "main", "commit": "5a70b1eb8cbdf6c7f0a59dfb7356ad198421b620" },
|
||||
"nvim-treesitter-textobjects": { "branch": "main", "commit": "1b2d85d3de6114c4bcea89ffb2cd1ce9e3a19931" },
|
||||
"nvim-ts-autotag": { "branch": "main", "commit": "c4ca798ab95b316a768d51eaaaee48f64a4a46bc" },
|
||||
"obsidian.nvim": { "branch": "main", "commit": "ae1f76a75c7ce36866e1d9342a8f6f5b9c2caf9b" },
|
||||
"persistence.nvim": { "branch": "main", "commit": "166a79a55bfa7a4db3e26fc031b4d92af71d0b51" },
|
||||
"plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
|
||||
"rustaceanvim": { "branch": "master", "commit": "370b85298e5afdfd8b5d3da0c60c04e3873499a4" },
|
||||
"snacks.nvim": { "branch": "main", "commit": "d67a47739dfc652cfcf66c59e929c704a854b37a" },
|
||||
"rustaceanvim": { "branch": "master", "commit": "8947b1f941f63cb3d618ebe04e07278bf00714df" },
|
||||
"snacks.nvim": { "branch": "main", "commit": "68da653d206069007f71d4373049193248bf913b" },
|
||||
"suda.vim": { "branch": "master", "commit": "9adda7d195222d4e2854efb2a88005a120296c47" },
|
||||
"todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" },
|
||||
"tokyonight.nvim": { "branch": "main", "commit": "14fd5ff7f84027064724ec3157fe903199e77ded" },
|
||||
"trouble.nvim": { "branch": "main", "commit": "3fb3bd737be8866e5f3a170abc70b4da8b5dd45a" },
|
||||
"trouble.nvim": { "branch": "main", "commit": "f176232e7759c4f8abd923c21e3e5a5c76cd6837" },
|
||||
"ts-comments.nvim": { "branch": "main", "commit": "1bd9d0ba1d8b336c3db50692ffd0955fe1bb9f0c" },
|
||||
"venv-selector.nvim": { "branch": "main", "commit": "d6d03d9975630d3232201f227efd3682975742d9" },
|
||||
"which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" }
|
||||
"venv-selector.nvim": { "branch": "main", "commit": "2b49d1f8b8fcf5cfbd0913136f48f118225cca5d" },
|
||||
"which-key.nvim": { "branch": "main", "commit": "904308e6885bbb7b60714c80ab3daf0c071c1492" }
|
||||
}
|
||||
|
||||
@@ -2,7 +2,9 @@
|
||||
"extras": [
|
||||
"lazyvim.plugins.extras.lang.python",
|
||||
"lazyvim.plugins.extras.lang.rust",
|
||||
"lazyvim.plugins.extras.lang.toml"
|
||||
"lazyvim.plugins.extras.lang.tailwind",
|
||||
"lazyvim.plugins.extras.lang.toml",
|
||||
"lazyvim.plugins.extras.util.mini-hipatterns"
|
||||
],
|
||||
"install_version": 8,
|
||||
"news": {
|
||||
|
||||
@@ -1,3 +1,8 @@
|
||||
-- Options are automatically loaded before lazy.nvim startup
|
||||
-- Default options that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/options.lua
|
||||
-- Add any additional options here
|
||||
|
||||
-- LSP Server to use for Python.
|
||||
vim.g.lazyvim_python_lsp = "basedpyright"
|
||||
-- Set to "ruff_lsp" to use the old LSP implementation version.
|
||||
vim.g.lazyvim_python_ruff = "ruff"
|
||||
|
||||
@@ -22,7 +22,7 @@ return {
|
||||
dependencies = {
|
||||
"folke/snacks.nvim",
|
||||
--- The below dependencies are optional
|
||||
-- "catppuccin/nvim",
|
||||
"catppuccin/nvim",
|
||||
-- "nvim-tree/nvim-tree.lua", --- Neo-tree integration {
|
||||
-- "nvim-neo-tree/neo-tree.nvim",
|
||||
-- opts = function(_, opts)
|
||||
|
||||
16
nvim/.config/nvim/lua/plugins/lsp.lua
Normal file
16
nvim/.config/nvim/lua/plugins/lsp.lua
Normal file
@@ -0,0 +1,16 @@
|
||||
return {
|
||||
"neovim/nvim-lspconfig",
|
||||
opts = {
|
||||
servers = {
|
||||
basedpyright = {
|
||||
settings = {
|
||||
basedpyright = {
|
||||
analysis = {
|
||||
typeCheckingMode = "strict",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -1,7 +1,8 @@
|
||||
-- I don't know why I got rid of this lol, it's not like markdown-oxide was gonna replace it
|
||||
-- For configuration options: https://github.com/obsidian-nvim/obsidian.nvim/blob/main/lua/obsidian/config/default.lua
|
||||
return {
|
||||
"epwalsh/obsidian.nvim",
|
||||
"obsidian-nvim/obsidian.nvim",
|
||||
version = "*", -- recommended, use latest release instead of latest commit
|
||||
lazy = true,
|
||||
ft = "markdown",
|
||||
-- Replace the above line with this if you only want to load obsidian.nvim for markdown files in your vault:
|
||||
-- event = {
|
||||
@@ -11,18 +12,12 @@ return {
|
||||
-- "BufReadPre path/to/my-vault/*.md",
|
||||
-- "BufNewFile path/to/my-vault/*.md",
|
||||
-- },
|
||||
dependencies = {
|
||||
-- Required.
|
||||
"nvim-lua/plenary.nvim",
|
||||
|
||||
-- see below for full list of optional dependencies 👇
|
||||
},
|
||||
---@module 'obsidian'
|
||||
---@type obsidian.config
|
||||
opts = {
|
||||
workspaces = {
|
||||
{
|
||||
-- Yeah, everything is in one vault. So what?
|
||||
-- I'm an idiot.
|
||||
name = "vault",
|
||||
name = "Vault",
|
||||
path = "~/Obsidian/Vault/",
|
||||
},
|
||||
},
|
||||
|
||||
25
nvim/.config/nvim/lua/plugins/presence.lua
Normal file
25
nvim/.config/nvim/lua/plugins/presence.lua
Normal file
@@ -0,0 +1,25 @@
|
||||
return {
|
||||
"andweeb/presence.nvim",
|
||||
opts = {
|
||||
auto_update = true, -- Update activity based on autocmd events (if `false`, map or manually execute `:lua package.loaded.presence:update()`)
|
||||
neovim_image_text = "certifiably NOT getting laid", -- Text displayed when hovered over the Neovim image
|
||||
main_image = "neovim", -- Main image display (either "neovim" or "file")
|
||||
client_id = "793271441293967371", -- Use your own Discord application client id (not recommended)
|
||||
log_level = nil, -- Log messages at or above this level (one of the following: "debug", "info", "warn", "error")
|
||||
debounce_timeout = 10, -- Number of seconds to debounce events (or calls to `:lua package.loaded.presence:update(<filename>, true)`)
|
||||
enable_line_number = false, -- Displays the current line number instead of the current project
|
||||
blacklist = {}, -- A list of strings or Lua patterns that disable Rich Presence if the current file name, path, or workspace matches
|
||||
buttons = true, -- Configure Rich Presence button(s), either a boolean to enable/disable, a static table (`{{ label = "<label>", url = "<url>" }, ...}`, or a function(buffer: string, repo_url: string|nil): table)
|
||||
file_assets = {}, -- Custom file asset definitions keyed by file names and extensions (see default config at `lua/presence/file_assets.lua` for reference)
|
||||
show_time = true, -- Show the timer
|
||||
|
||||
-- Rich Presence text options
|
||||
editing_text = "Editing %s", -- Format string rendered when an editable file is loaded in the buffer (either string or function(filename: string): string)
|
||||
file_explorer_text = "Browsing %s", -- Format string rendered when browsing a file explorer (either string or function(file_explorer_name: string): string)
|
||||
git_commit_text = "Committing changes", -- Format string rendered when committing changes in git (either string or function(filename: string): string)
|
||||
plugin_manager_text = "Managing plugins", -- Format string rendered when managing plugins (either string or function(plugin_manager_name: string): string)
|
||||
reading_text = "Reading %s", -- Format string rendered when a read-only or unmodifiable file is loaded in the buffer (either string or function(filename: string): string)
|
||||
workspace_text = "Working on %s", -- Format string rendered when in a git repository (either string or function(project_name: string|nil, filename: string): string)
|
||||
line_number_text = "Line %s out of %s", -- Format string rendered when `enable_line_number` is set to true (either string or function(line_number: number, line_count: number): string)
|
||||
},
|
||||
}
|
||||
6
nvim/.config/nvim/lua/plugins/suda.lua
Normal file
6
nvim/.config/nvim/lua/plugins/suda.lua
Normal file
@@ -0,0 +1,6 @@
|
||||
return {
|
||||
"lambdalisue/suda.vim",
|
||||
config = function()
|
||||
vim.g.suda_smart_edit = 1
|
||||
end,
|
||||
}
|
||||
@@ -5,20 +5,6 @@
|
||||
# Palettes must be defined _after_ this line
|
||||
palette = "catppuccin_mocha"
|
||||
|
||||
# Starship modules
|
||||
[character]
|
||||
# I think I like mauve more than peach...might change it
|
||||
success_symbol = "[[](green) ❯](mauve)"
|
||||
error_symbol = "[[](red) ❯](mauve)"
|
||||
vimcmd_symbol = "[ ❮](subtext1)" # For use with zsh-vi-mode
|
||||
|
||||
[git_branch]
|
||||
style = "bold mauve"
|
||||
|
||||
[directory]
|
||||
truncation_length = 4
|
||||
style = "bold lavender"
|
||||
|
||||
# Palette definitions
|
||||
[palettes.catppuccin_mocha]
|
||||
rosewater = "#f5e0dc"
|
||||
@@ -48,3 +34,221 @@ base = "#1e1e2e"
|
||||
mantle = "#181825"
|
||||
crust = "#11111b"
|
||||
|
||||
# Starship modules
|
||||
[character]
|
||||
# I think I like mauve more than peach...might change it
|
||||
success_symbol = "[[](green) ❯](mauve)"
|
||||
error_symbol = "[[](red) ❯](mauve)"
|
||||
# For use with zsh-vi-mode (but I don't use zsh)
|
||||
vimcmd_symbol = "[ ❮](subtext1)"
|
||||
|
||||
[directory]
|
||||
truncation_length = 4
|
||||
style = "bold lavender"
|
||||
read_only = " "
|
||||
|
||||
[git_branch]
|
||||
symbol = " "
|
||||
style = "bold mauve"
|
||||
|
||||
[git_status]
|
||||
# See I lied the idea, but it wasn't executed all that well
|
||||
# Need to make sure the icons fit well together...
|
||||
# conflicted = ''
|
||||
# ahead = '⇡${count}'
|
||||
# behind = '⇣${count}'
|
||||
# diverged = '⇕⇡${ahead_count}⇣${behind_count}'
|
||||
# up_to_date = '✓'
|
||||
# untracked = ''
|
||||
# stashed = '📦'
|
||||
# modified = ''
|
||||
# staged = '[++\($count\)](green)'
|
||||
# renamed = ''
|
||||
# deleted = '🗑'
|
||||
|
||||
[aws]
|
||||
symbol = " "
|
||||
|
||||
[buf]
|
||||
symbol = " "
|
||||
|
||||
[bun]
|
||||
symbol = " "
|
||||
|
||||
[c]
|
||||
symbol = " "
|
||||
|
||||
[cpp]
|
||||
symbol = " "
|
||||
|
||||
[cmake]
|
||||
symbol = " "
|
||||
|
||||
[conda]
|
||||
symbol = " "
|
||||
|
||||
[crystal]
|
||||
symbol = " "
|
||||
|
||||
[dart]
|
||||
symbol = " "
|
||||
|
||||
[deno]
|
||||
symbol = " " # uh...nice?
|
||||
|
||||
[docker_context]
|
||||
symbol = " "
|
||||
|
||||
[elixir]
|
||||
symbol = " "
|
||||
|
||||
[elm]
|
||||
symbol = " "
|
||||
|
||||
[fennel]
|
||||
symbol = " "
|
||||
|
||||
[fossil_branch]
|
||||
symbol = " "
|
||||
|
||||
[gcloud]
|
||||
symbol = " "
|
||||
|
||||
[git_commit]
|
||||
tag_symbol = ' '
|
||||
|
||||
[golang]
|
||||
symbol = " "
|
||||
|
||||
[guix_shell]
|
||||
symbol = " "
|
||||
|
||||
[haskell]
|
||||
symbol = " "
|
||||
|
||||
[haxe]
|
||||
symbol = " "
|
||||
|
||||
[hg_branch]
|
||||
symbol = " "
|
||||
|
||||
[hostname]
|
||||
ssh_symbol = " "
|
||||
|
||||
[java]
|
||||
symbol = " "
|
||||
|
||||
[julia]
|
||||
symbol = " "
|
||||
|
||||
[kotlin]
|
||||
symbol = " "
|
||||
|
||||
[lua]
|
||||
symbol = " "
|
||||
|
||||
[memory_usage]
|
||||
symbol = " "
|
||||
|
||||
[meson]
|
||||
symbol = " "
|
||||
|
||||
[nim]
|
||||
symbol = " "
|
||||
|
||||
[nix_shell]
|
||||
symbol = " "
|
||||
|
||||
[nodejs]
|
||||
symbol = " "
|
||||
|
||||
[ocaml]
|
||||
symbol = " "
|
||||
|
||||
[os.symbols]
|
||||
Alpaquita = " "
|
||||
Alpine = " "
|
||||
AlmaLinux = " "
|
||||
Amazon = " "
|
||||
Android = " "
|
||||
Arch = " "
|
||||
Artix = " "
|
||||
CachyOS = " "
|
||||
CentOS = " "
|
||||
Debian = " "
|
||||
DragonFly = " "
|
||||
Emscripten = " "
|
||||
EndeavourOS = " "
|
||||
Fedora = " "
|
||||
FreeBSD = " "
|
||||
Garuda = " "
|
||||
Gentoo = " "
|
||||
HardenedBSD = " "
|
||||
Illumos = " "
|
||||
Kali = " "
|
||||
Linux = " "
|
||||
Mabox = " "
|
||||
Macos = " "
|
||||
Manjaro = " "
|
||||
Mariner = " "
|
||||
MidnightBSD = " "
|
||||
Mint = " "
|
||||
NetBSD = " "
|
||||
NixOS = " "
|
||||
Nobara = " "
|
||||
OpenBSD = " "
|
||||
openSUSE = " "
|
||||
OracleLinux = " "
|
||||
Pop = " "
|
||||
Raspbian = " "
|
||||
Redhat = " "
|
||||
RedHatEnterprise = " "
|
||||
RockyLinux = " "
|
||||
Redox = " "
|
||||
Solus = " "
|
||||
SUSE = " "
|
||||
Ubuntu = " "
|
||||
Unknown = " "
|
||||
Void = " "
|
||||
Windows = " "
|
||||
|
||||
[package]
|
||||
symbol = " "
|
||||
|
||||
[perl]
|
||||
symbol = " "
|
||||
|
||||
[php]
|
||||
symbol = " "
|
||||
|
||||
[pijul_channel]
|
||||
symbol = " "
|
||||
|
||||
[pixi]
|
||||
symbol = " "
|
||||
|
||||
[python]
|
||||
symbol = " "
|
||||
|
||||
[rlang]
|
||||
symbol = " "
|
||||
|
||||
[ruby]
|
||||
symbol = " "
|
||||
|
||||
[rust]
|
||||
# I think I like ferris more
|
||||
symbol = " "
|
||||
# symbol = " "
|
||||
|
||||
[scala]
|
||||
symbol = " "
|
||||
|
||||
[swift]
|
||||
symbol = " "
|
||||
|
||||
[zig]
|
||||
symbol = " "
|
||||
|
||||
[gradle]
|
||||
symbol = " "
|
||||
|
||||
1
themes/.themes/deepin-meets-arc
Submodule
1
themes/.themes/deepin-meets-arc
Submodule
Submodule themes/.themes/deepin-meets-arc added at 22e507b094
@@ -1,17 +1,19 @@
|
||||
# ~/.tmux.conf
|
||||
|
||||
# --- General Settings ---
|
||||
# Set the main prefix to C-a
|
||||
set-option -g prefix C-a
|
||||
|
||||
# Set a secondary, "legacy" prefix to C-b for an easier transition
|
||||
set-option -g prefix2 C-b
|
||||
# With the new changes forcing me to use tmux, we're gonna try C-a
|
||||
# set-option -g prefix2 C-b
|
||||
|
||||
# Still unbind the default C-b binding for the "send-prefix" command,
|
||||
# as we want our primary prefix (C-a) to handle that.
|
||||
unbind C-b
|
||||
bind-key C-a send-prefix
|
||||
|
||||
# Clipboard lol
|
||||
set -g allow-passthrough on
|
||||
|
||||
# Start windows and panes at 1, not 0
|
||||
set -g base-index 1
|
||||
setw -g pane-base-index 1
|
||||
@@ -46,6 +48,8 @@ set -g @plugin 'omerxx/tmux-sessionx' # Session manager
|
||||
set -g @plugin 'tmux-plugins/tmux-resurrect' # Allows tmux environments to be saved and restored via prefix Ctrl+s and Ctrl+r
|
||||
# I would also like to look into stuff like nvim session restoration: https://github.com/tmux-plugins/tmux-resurrect
|
||||
set -g @plugin 'tmux-plugins/tmux-continuum' # Automatically saves with ^ every 15 minutes, and restores on tmux server start.
|
||||
# Restore tmux environment on server start
|
||||
set -g @continuum-restore 'on'
|
||||
# Note:
|
||||
# > In order to be executed periodically, the plugin updates the status-right tmux variable.
|
||||
# > In case some plugin (usually themes) overwrites the status-right variable, the autosave feature stops working.
|
||||
|
||||
Reference in New Issue
Block a user