34 Commits

Author SHA1 Message Date
Fabio Scotto di Santolo
4b28c3789f Add Emacs client alias on Zsh 2025-10-30 14:53:16 +01:00
Fabio Scotto di Santolo
2379bf9c11 Update Nvim config 2025-10-30 14:52:46 +01:00
Fabio Scotto di Santolo
42f8b57824 Update README.md 2025-09-17 09:09:55 +02:00
Fabio Scotto di Santolo
dd867f3814 Update Neovim plugin 2025-09-17 09:09:23 +02:00
Fabio Scotto di Santolo
3f72ebe50c Remove k9s tool 2025-09-03 10:02:28 +02:00
Fabio Scotto di Santolo
c9b708dfff Update Emacs config 2025-09-03 09:52:26 +02:00
Fabio Scotto di Santolo
c051dbfb99 Added packages to Emacs 2025-09-02 17:44:24 +02:00
Fabio Scotto di Santolo
a71ec3c2f0 Move Emacs configuration 2025-09-02 11:25:21 +02:00
Fabio Scotto di Santolo
4090aa6d06 Update Neovim and Emacs configurations 2025-09-02 09:40:17 +02:00
Fabio Scotto di Santolo
524fffffd5 Added Emacs configuration 2025-09-01 18:02:30 +02:00
Fabio Scotto di Santolo
13b2124148 Update Neovim plugins 2025-08-28 09:20:50 +02:00
Fabio Scotto di Santolo
3d76563c70 Fix ZSH alias for copy and paste on system clipboard from WSL 2025-08-25 09:04:56 +02:00
Fabio Scotto di Santolo
a1fdb6cb51 Fix Neovim colorscheme
- Update Neovim plugins
- Move colorscheme from catppuccin because the theme is broken
2025-08-22 08:29:02 +02:00
Fabio Scotto di Santolo
719a745aab Disable Tmux on ZSH startup 2025-08-21 14:17:15 +02:00
Fabio Scotto di Santolo
77d6198480 Remove Oh My ZSH dependency of my ZSH configuration 2025-08-18 12:40:41 +02:00
Fabio Scotto di Santolo
5e0d5ae0cf Align Lazygit configuration 2025-08-14 09:32:29 +02:00
Fabio Scotto di Santolo
23e8c63308 Added Yazi configuration 2025-08-14 08:37:15 +02:00
Fabio Scotto di Santolo
7da19f6bf6 Update Neovim plugins 2025-08-13 12:11:06 +02:00
Fabio Scotto di Santolo
16f2dbbe3d Fix keymaps and fold 2025-08-13 12:10:58 +02:00
Fabio Scotto di Santolo
b0d1bb1d73 Added DAP config 2025-08-11 17:01:53 +02:00
Fabio Scotto di Santolo
77d61cb334 Added Harpoon plugin to Neovim 2025-08-11 09:38:21 +02:00
Fabio Scotto di Santolo
25f915712f Update Neovim plugins 2025-08-11 09:37:00 +02:00
Fabio Scotto di Santolo
d7bf662116 Renaming format.lua in formatter.lua 2025-08-08 18:00:36 +02:00
Fabio Scotto di Santolo
1f276912e9 Update Neovim plugins 2025-08-08 08:48:13 +02:00
Fabio Scotto di Santolo
e3eb6bae2e Neovim auto-formatter for C, Go, Zig, Lua, Python and Shell 2025-08-07 16:53:33 +02:00
Fabio Scotto di Santolo
04fa2edff8 Neovim auto-formatter for C, Go, Zig, Lua, Python and Shell 2025-08-07 16:53:19 +02:00
Fabio Scotto di Santolo
6e737cdfb0 Integration WSL using Windows SSH agent 2025-08-07 14:55:00 +02:00
Fabio Scotto di Santolo
ea31c8d377 Update Neovim plugins 2025-08-07 11:03:26 +02:00
Fabio Scotto di Santolo
9e59635abd Remove extra packages useless in WSL environment 2025-08-05 15:36:14 +02:00
Fabio Scotto di Santolo
9bdf403c23 Remove Tmux autostart 2025-08-05 15:34:43 +02:00
Fabio Scotto di Santolo
766256f71a Better integration between fzf and zsh 2025-08-01 17:42:31 +02:00
Fabio Scotto di Santolo
26d2b146a1 Update Neovim plugins 2025-08-01 10:58:29 +02:00
Fabio Scotto di Santolo
68c631c7b8 Added HardTime plugin on Neovim 2025-07-31 17:45:24 +02:00
Fabio Scotto di Santolo
2326e2e92d Fix ZSH configuration for WSL 2025-07-31 10:47:20 +02:00
191 changed files with 3029 additions and 8828 deletions

View File

@@ -1,20 +0,0 @@
[*.sh]
indent_style = space
indent_size = 2
# --language-variant
shell_variant = posix
binary_next_line = true
# --case-indent
switch_case_indent = true
space_redirects = true
keep_padding = true
# --func-next-line
function_next_line = true
# Ignore the entire "third_party" directory when calling shfmt on directories,
# such as "shfmt -l -w .". When formatting files directly,
# like "shfmt -w third_party/foo.sh" or "shfmt --filename=third_party/foo.sh",
# the ignore logic is applied only when the --apply-ignore flag is given.
[third_party/**]
ignore = true

4
.gitignore vendored
View File

@@ -268,8 +268,4 @@ build-iPhoneSimulator/
# Used by RuboCop. Remote config files pulled in from inherit_from directive. # Used by RuboCop. Remote config files pulled in from inherit_from directive.
# .rubocop-https?--* # .rubocop-https?--*
mpv/shaders/
**/*.db.*
# End of https://www.toptal.com/developers/gitignore/api/perl,python,ruby # End of https://www.toptal.com/developers/gitignore/api/perl,python,ruby

32
.gitmodules vendored
View File

@@ -4,27 +4,27 @@
[submodule "tmux/.tmux/plugins/tmux-autoreload"] [submodule "tmux/.tmux/plugins/tmux-autoreload"]
path = tmux/.tmux/plugins/tmux-autoreload path = tmux/.tmux/plugins/tmux-autoreload
url = https://git::@github.com/b0o/tmux-autoreload url = https://git::@github.com/b0o/tmux-autoreload
[submodule "tmux/.tmux/plugins/tmux-open"]
path = tmux/.tmux/plugins/tmux-open
url = https://git::@github.com/tmux-plugins/tmux-open
[submodule "tmux/.tmux/plugins/tmux-powerline"]
path = tmux/.tmux/plugins/tmux-powerline
url = https://git::@github.com/erikw/tmux-powerline
[submodule "tmux/.tmux/plugins/tmux-sensible"] [submodule "tmux/.tmux/plugins/tmux-sensible"]
path = tmux/.tmux/plugins/tmux-sensible path = tmux/.tmux/plugins/tmux-sensible
url = https://git::@github.com/tmux-plugins/tmux-sensible url = https://git::@github.com/tmux-plugins/tmux-sensible
[submodule "tmux/.tmux/plugins/tmux-power"]
path = tmux/.tmux/plugins/tmux-power
url = https://git::@github.com/wfxr/tmux-power
[submodule "tmux/.tmux/plugins/tmux"] [submodule "tmux/.tmux/plugins/tmux"]
path = tmux/.tmux/plugins/tmux path = tmux/.tmux/plugins/tmux
url = https://github.com/catppuccin/tmux.git url = https://github.com/catppuccin/tmux.git
[submodule "tmux/.tmux/plugins/tmux-continuum"] [submodule "zsh/.oh-my-zsh/custom/plugins/zsh-autosuggestions"]
path = tmux/.tmux/plugins/tmux-continuum path = zsh/.oh-my-zsh/custom/plugins/zsh-autosuggestions
url = https://git::@github.com/tmux-plugins/tmux-continuum
[submodule "tmux/.tmux/plugins/tmux-resurrect"]
path = tmux/.tmux/plugins/tmux-resurrect
url = https://git::@github.com/tmux-plugins/tmux-resurrect
[submodule "zsh/.zsh/plugins/zsh-autosuggestions"]
path = zsh/.zsh/plugins/zsh-autosuggestions
url = https://github.com/zsh-users/zsh-autosuggestions.git url = https://github.com/zsh-users/zsh-autosuggestions.git
[submodule "zsh/.zsh/plugins/zsh-syntax-highlighting"] [submodule "zsh/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting"]
path = zsh/.zsh/plugins/zsh-syntax-highlighting path = zsh/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting
url = https://github.com/zsh-users/zsh-syntax-highlighting.git url = https://github.com/zsh-users/zsh-syntax-highlighting.git
[submodule "tmux/.tmux/plugins/tmux-project"] [submodule "zsh/.oh-my-zsh/custom/plugins/fzf"]
path = tmux/.tmux/plugins/tmux-project path = zsh/.oh-my-zsh/custom/plugins/fzf
url = https://git::@github.com/sei40kr/tmux-project url = https://github.com/junegunn/fzf.git
[submodule "tmux-bitwarden"]
path = tmux/.tmux/plugins/tmux-bitwarden
url = https://github.com/Alkindi42/tmux-bitwarden.git

View File

@@ -20,23 +20,19 @@ Each directory in this repository corresponds to a specific application or tool,
This repository contains my configuration files for the following tools: This repository contains my configuration files for the following tools:
- **Shells & Prompt** - **Shells & Prompt**
- `bash` (Oh My Bash) - `zsh` + `starship`
- **Terminal Emulators & Multiplexer** - **Terminal Emulator & Multiplexer**
- `foot`
- `tmux` - `tmux`
- **Editors & CLI Tools** - **Editors & CLI Tools**
- `emacs`
- `neovim` (with LazyVim) - `neovim` (with LazyVim)
- `emacs`
- `bat`
- `git` - `git`
- `lazygit` - `lazygit`
- **Wayland Environment**
- `rofi` (launcher)
- `waybar` (status bar)
- `dunst` (notification daemon)
- `sway` (window manager)
- **Utilities** - **Utilities**
- `fastfetch`
- `zoxide` - `zoxide`
- `flameshot` - `yt-dlp`
--- ---

View File

@@ -1,171 +0,0 @@
# Enable the subsequent settings only in interactive sessions
case $- in
*i*) ;;
*) return;;
esac
# Path to your oh-my-bash installation.
export OSH='/home/fscotto/.oh-my-bash'
# Set name of the theme to load. Optionally, if you set this to "random"
# it'll load a random theme each time that oh-my-bash is loaded.
OSH_THEME="robbyrussell"
# If you set OSH_THEME to "random", you can ignore themes you don't like.
# OMB_THEME_RANDOM_IGNORED=("powerbash10k" "wanelo")
# You can also specify the list from which a theme is randomly selected:
# OMB_THEME_RANDOM_CANDIDATES=("font" "powerline-light" "minimal")
# Uncomment the following line to use case-sensitive completion.
# OMB_CASE_SENSITIVE="true"
# Uncomment the following line to use hyphen-insensitive completion. Case
# sensitive completion must be off. _ and - will be interchangeable.
# OMB_HYPHEN_SENSITIVE="false"
# Uncomment the following line to disable bi-weekly auto-update checks.
# DISABLE_AUTO_UPDATE="true"
# Uncomment the following line to change how often to auto-update (in days).
# export UPDATE_OSH_DAYS=13
# Uncomment the following line to disable colors in ls.
# DISABLE_LS_COLORS="true"
# Uncomment the following line to disable auto-setting terminal title.
# DISABLE_AUTO_TITLE="true"
# Uncomment the following line to enable command auto-correction.
# ENABLE_CORRECTION="true"
# Uncomment the following line to display red dots whilst waiting for completion.
# COMPLETION_WAITING_DOTS="true"
# Uncomment the following line if you want to disable marking untracked files
# under VCS as dirty. This makes repository status check for large repositories
# much, much faster.
# DISABLE_UNTRACKED_FILES_DIRTY="true"
# Uncomment the following line if you don't want the repository to be considered dirty
# if there are untracked files.
# SCM_GIT_DISABLE_UNTRACKED_DIRTY="true"
# Uncomment the following line if you want to completely ignore the presence
# of untracked files in the repository.
# SCM_GIT_IGNORE_UNTRACKED="true"
# Uncomment the following line if you want to change the command execution time
# stamp shown in the history command output. One of the following values can
# be used to specify the timestamp format.
# * 'mm/dd/yyyy' # mm/dd/yyyy + time
# * 'dd.mm.yyyy' # dd.mm.yyyy + time
# * 'yyyy-mm-dd' # yyyy-mm-dd + time
# * '[mm/dd/yyyy]' # [mm/dd/yyyy] + [time] with colors
# * '[dd.mm.yyyy]' # [dd.mm.yyyy] + [time] with colors
# * '[yyyy-mm-dd]' # [yyyy-mm-dd] + [time] with colors
# If not set, the default value is 'yyyy-mm-dd'.
# HIST_STAMPS='yyyy-mm-dd'
# Uncomment the following line if you do not want OMB to overwrite the existing
# aliases by the default OMB aliases defined in lib/*.sh
# OMB_DEFAULT_ALIASES="check"
# Would you like to use another custom folder than $OSH/custom?
# OSH_CUSTOM=/path/to/new-custom-folder
# To disable the uses of "sudo" by oh-my-bash, please set "false" to
# this variable. The default behavior for the empty value is "true".
OMB_USE_SUDO=true
# To enable/disable display of Python virtualenv and condaenv
# OMB_PROMPT_SHOW_PYTHON_VENV=true # enable
# OMB_PROMPT_SHOW_PYTHON_VENV=false # disable
# To enable/disable Spack environment information
# OMB_PROMPT_SHOW_SPACK_ENV=true # enable
# OMB_PROMPT_SHOW_SPACK_ENV=false # disable
# Which completions would you like to load? (completions can be found in ~/.oh-my-bash/completions/*)
# Custom completions may be added to ~/.oh-my-bash/custom/completions/
# Example format: completions=(ssh git bundler gem pip pip3)
# Add wisely, as too many completions slow down shell startup.
completions=(
asdf
docker
docker-compose
gh
git
go
makefile
npm
pip3
system
tmux
composer
ssh
)
# Which aliases would you like to load? (aliases can be found in ~/.oh-my-bash/aliases/*)
# Custom aliases may be added to ~/.oh-my-bash/custom/aliases/
# Example format: aliases=(vagrant composer git-avh)
# Add wisely, as too many aliases slow down shell startup.
aliases=(
general
)
# Which plugins would you like to load? (plugins can be found in ~/.oh-my-bash/plugins/*)
# Custom plugins may be added to ~/.oh-my-bash/custom/plugins/
# Example format: plugins=(rails git textmate ruby lighthouse)
# Add wisely, as too many plugins slow down shell startup.
plugins=(
bashmarks
bash-preexec
cargo
colored-man-pages
git
zoxide
)
# Which plugins would you like to conditionally load? (plugins can be found in ~/.oh-my-bash/plugins/*)
# Custom plugins may be added to ~/.oh-my-bash/custom/plugins/
# Example format:
# if [ "$DISPLAY" ] || [ "$SSH" ]; then
# plugins+=(tmux-autoattach)
# fi
# If you want to reduce the initialization cost of the "tput" command to
# initialize color escape sequences, you can uncomment the following setting.
# This disables the use of the "tput" command, and the escape sequences are
# initialized to be the ANSI version:
#
#OMB_TERM_USE_TPUT=no
source "$OSH"/oh-my-bash.sh
# User configuration
# export MANPATH="/usr/local/man:$MANPATH"
# You may need to manually set your language environment
# export LANG=en_US.UTF-8
# Preferred editor for local and remote sessions
# if [[ -n $SSH_CONNECTION ]]; then
# export EDITOR='vim'
# else
# export EDITOR='mvim'
# fi
# Compilation flags
# export ARCHFLAGS="-arch x86_64"
# ssh
# export SSH_KEY_PATH="~/.ssh/rsa_id"
# Set personal aliases, overriding those provided by oh-my-bash libs,
# plugins, and themes. Aliases can be placed here, though oh-my-bash
# users are encouraged to define aliases within the OSH_CUSTOM folder.
# For a full list of active aliases, run `alias`.
#
# Example aliases
# alias bashconfig="mate ~/.bashrc"
# alias ohmybash="mate ~/.oh-my-bash"

View File

@@ -1,53 +0,0 @@
function appendpath() {
local location="${1}"
case ":$PATH:" in
*":$location:"*) ;;
*) export PATH="$PATH:$location" ;;
esac
}
appendpath "$HOME/.local/bin"
appendpath "$HOME/.config/emacs/bin"
unset appendpath
# XDG variables
export XDG_CONFIG_HOME=${HOME}/.config
export XDG_DATA_HOME=${HOME}/.local/share
export XDG_CACHE_HOME=${HOME}/.local/cache
export XDG_STATE_HOME=${HOME}/.local/state
# Enable GTK themes
export GTK2_RC_FILES=${XDG_CONFIG_HOME}/gtk-2.0/gtkrc-2.0
# Enable QT apps to have gtk theme
export QT_QPA_PLATFORMTHEME=qt5ct
# Make Qt apps honour DPI settings.
export QT_AUTO_SCREEN_SCALE_FACTOR=1
export ZSH_HOME="$HOME/.zsh"
export DOTFILES="$HOME/.dotfiles"
export EDITOR=nvim
export HELPDIR=/usr/share/zsh/"${ZSH_VERSION}"/help
# SSH socket
export SSH_AUTH_SOCK="$XDG_RUNTIME_DIR/gcr/ssh"
export FZF_DEFAULT_COMMAND="fd --hidden --type file --strip-cwd-prefix --exclude .git"
export FZF_CTRL_T_COMMAND="fd --hidden --type file --strip-cwd-prefix --exclude .git"
export FZF_ALT_C_COMMAND="fd --hidden --type directory --strip-cwd-prefix --exclude .git"
# Export Catppuccin Mocha theme for FZF
export FZF_DEFAULT_OPTS=" \
--height 60% --layout=reverse --border \
--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:#313244,label:#CDD6F4"
export FZF_TMUX_OPTS=" -p90%,70%"
export VIRTUAL_ENV_DISABLE_PROMPT=1
source "$HOME/.profile.d/mise.sh"
source "$HOME/.profile.d/golang.sh"
source "$HOME/.profile.d/java.sh"

View File

@@ -1,5 +0,0 @@
#!/usr/bin/env bash
if [ -e "$HOME/.cargo" ]; then
source "$HOME/.cargo/env"
fi

View File

@@ -1,6 +0,0 @@
#!/usr/bin/env bash
if command -v go > /dev/null 2>&1; then
export GOPATH="$HOME/.local/share/Go"
export GOBIN="$GOPATH/bin"
fi

View File

@@ -1,5 +0,0 @@
#!/usr/bin/env bash
if command -v java > /dev/null 2>&1; then
export JAVA_HOME="$(dirname $(mise bin-paths | grep -i java))"
fi

View File

@@ -1,5 +0,0 @@
#!/usr/bin/env bash
if command -v mise > /dev/null 2>&1; then
eval "$(mise activate zsh)"
fi

View File

@@ -1,5 +0,0 @@
#!/usr/bin/env zsh
if command -v tmux &> /dev/null && [ -z "$TMUX" ]; then
tmux attach-session -t default || tmux new-session -s default
fi

View File

@@ -1,17 +0,0 @@
[Settings]
gtk-theme-name=Catppuccin
gtk-icon-theme-name=Papirus-Dark
gtk-font-name=Noto Sans Regular 10
gtk-cursor-theme-name=Catppuccin-cursor
gtk-cursor-theme-size=0
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=1
gtk-enable-input-feedback-sounds=1
gtk-xft-antialias=1
gtk-xft-hinting=1
gtk-xft-hintstyle=hintmedium
gtk-modules=gail:atk-bridge
gtk-xft-rgba=none

View File

@@ -1 +0,0 @@
@import url("resource:///org/gnome/theme/gtk-dark.css");

View File

@@ -1 +0,0 @@
@import url("resource:///org/gnome/theme/gtk.css");

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -1 +0,0 @@
@import url("resource:///org/gnome/theme/gtk-dark.css");

View File

@@ -1 +0,0 @@
@import url("resource:///org/gnome/theme/gtk.css");

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -1,10 +0,0 @@
[Desktop Entry]
Type=X-GNOME-Metatheme
Name=Catppuccin
Comment=A Catppuccin like Gtk+ theme based on WhiteSur
Encoding=UTF-8
[X-GNOME-Metatheme]
GtkTheme=Catppuccin
MetacityTheme=catppuccin
ButtonLayout=close,minimize,maximize:menu

View File

@@ -1,66 +0,0 @@
#This theme written by Vince Liuice.
#Forked & edited by @sadrach for Catppuccin proyect
[PlankDrawingTheme]
#The roundness of the top corners.
TopRoundness=16
#The roundness of the bottom corners.
BottomRoundness=16
#The thickness (in pixels) of lines drawn.
LineWidth=1
#The color (RGBA) of the outer stroke.
OuterStrokeColor=0;;0;;0;;200
#The starting color (RGBA) of the fill gradient.
FillStartColor=15;;15;;15;;150
#The ending color (RGBA) of the fill gradient.
FillEndColor=15;;15;;15;;175
#The color (RGBA) of the inner stroke.
InnerStrokeColor=100;;100;;100;;100
[PlankDrawingDockTheme]
#The padding on the left/right dock edges, in tenths of a percent of IconSize.
HorizPadding=0
#The padding on the top dock edge, in tenths of a percent of IconSize.
TopPadding=2
#The padding on the bottom dock edge, in tenths of a percent of IconSize.
BottomPadding=2
#The padding between items on the dock, in tenths of a percent of IconSize.
ItemPadding=4
#The size of item indicators, in tenths of a percent of IconSize.
IndicatorSize=5
#The size of the icon-shadow behind every item, in tenths of a percent of IconSize.
IconShadowSize=2
#The height (in percent of IconSize) to bounce an icon when the application sets urgent.
UrgentBounceHeight=1.6666666666666667
#The height (in percent of IconSize) to bounce an icon when launching an application.
LaunchBounceHeight=0.625
#The opacity value (0 to 1) to fade the dock to when hiding it.
FadeOpacity=1
#The amount of time (in ms) for click animations.
ClickTime=300
#The amount of time (in ms) to bounce an urgent icon.
UrgentBounceTime=600
#The amount of time (in ms) to bounce an icon when launching an application.
LaunchBounceTime=600
#The amount of time (in ms) for active window indicator animations.
ActiveTime=300
#The amount of time (in ms) to slide icons into/out of the dock.
SlideTime=300
#The time (in ms) to fade the dock in/out on a hide (if FadeOpacity is < 1).
FadeTime=250
#The time (in ms) to slide the dock in/out on a hide (if FadeOpacity is 1).
HideTime=150
#The size of the urgent glow (shown when dock is hidden), in tenths of a percent of IconSize.
GlowSize=30
#The total time (in ms) to show the hidden-dock urgent glow.
GlowTime=10000
#The time (in ms) of each pulse of the hidden-dock urgent glow.
GlowPulseTime=2000
#The hue-shift (-180 to 180) of the urgent indicator color.
UrgentHueShift=150
#The time (in ms) to move an item to its new position or its addition/removal to/from the dock.
ItemMoveTime=450
#Whether background and icons will unhide/hide with different speeds. The top-border of both will leave/hit the screen-edge at the same time.
CascadeHide=true
#The color (RGBA) of the badge displaying urgent count
BadgeColor=0;;0;;0;;0

View File

@@ -1,18 +0,0 @@
#This file written by Daniel Fore to match eGTK tooltips.
#Forked & edited by @sadrach for Catppuccin proyect
[PlankDrawingTheme]
#The roundness of the top corners.
TopRoundness=6
#The roundness of the bottom corners.
BottomRoundness=6
#The thickness (in pixels) of lines drawn.
LineWidth=0
#The color (RGBA) of the outer stroke.
OuterStrokeColor=41;;41;;41;;255
#The starting color (RGBA) of the fill gradient.
FillStartColor=0;;0;;0;;217
#The ending color (RGBA) of the fill gradient.
FillEndColor=0;;0;;0;;217
#The color (RGBA) of the inner stroke.
InnerStrokeColor=255;;255;;255;;255

View File

@@ -1,505 +0,0 @@
# See dunst(5) for all configuration options
[global]
### Display ###
# Which monitor should the notifications be displayed on.
monitor = 0
# Display notification on focused monitor. Possible modes are:
# mouse: follow mouse pointer
# keyboard: follow window with keyboard focus
# none: don't follow anything
#
# "keyboard" needs a window manager that exports the
# _NET_ACTIVE_WINDOW property.
# This should be the case for almost all modern window managers.
#
# If this option is set to mouse or keyboard, the monitor option
# will be ignored.
follow = none
### Geometry ###
# dynamic width from 0 to 300
# width = (0, 300)
# constant width of 300
width = (0, 300)
# The maximum height of a single notification, excluding the frame.
height = 100
# Position the notification in the top right corner
origin = top-right
# Offset from the origin
# offset = 10x50
# Scale factor. It is auto-detected if value is 0.
scale = 0
# Maximum number of notification (0 means no limit)
notification_limit = 10
### Progress bar ###
# Turn on the progress bar. It appears when a progress hint is passed with
# for example dunstify -h int:value:12
progress_bar = true
# Set the progress bar height. This includes the frame, so make sure
# it's at least twice as big as the frame width.
progress_bar_height = 10
# Set the frame width of the progress bar
progress_bar_frame_width = 1
# Set the minimum width for the progress bar
progress_bar_min_width = 150
# Set the maximum width for the progress bar
progress_bar_max_width = 300
# Corner radius for the progress bar. 0 disables rounded corners.
progress_bar_corner_radius = 0
# Define which corners to round when drawing the progress bar. If progress_bar_corner_radius
# is set to 0 this option will be ignored.
progress_bar_corners = all
# Corner radius for the icon image.
icon_corner_radius = 0
# Define which corners to round when drawing the icon image. If icon_corner_radius
# is set to 0 this option will be ignored.
icon_corners = all
# Show how many messages are currently hidden (because of
# notification_limit).
indicate_hidden = yes
# The transparency of the window. Range: [0; 100].
# This option will only work if a compositing window manager is
# present (e.g. xcompmgr, compiz, etc.). (X11 only)
transparency = 0
# Draw a line of "separator_height" pixel height between two
# notifications.
# Set to 0 to disable.
# If gap_size is greater than 0, this setting will be ignored.
separator_height = 2
# Padding between text and separator.
padding = 12
# Horizontal padding.
# horizontal_padding = 8
# Padding between text and icon.
# text_icon_padding = 0
# Defines width in pixels of frame around the notification window.
# Set to 0 to disable.
frame_width = 3
# Defines color of the frame around the notification window.
# frame_color = "#aaaaaa"
# Size of gap to display between notifications - requires a compositor.
# If value is greater than 0, separator_height will be ignored and a border
# of size frame_width will be drawn around each notification instead.
# Click events on gaps do not currently propagate to applications below.
gap_size = 0
# Define a color for the separator.
# possible values are:
# * auto: dunst tries to find a color fitting to the background;
# * foreground: use the same color as the foreground;
# * frame: use the same color as the frame;
# * anything else will be interpreted as a X color.
separator_color = frame
# Sort type.
# possible values are:
# * id: sort by id
# * urgency_ascending: sort by urgency (low then normal then critical)
# * urgency_descending: sort by urgency (critical then normal then low)
# * update: sort by update (most recent always at the top)
sort = yes
# Don't remove messages, if the user is idle (no mouse or keyboard input)
# for longer than idle_threshold seconds.
# Set to 0 to disable.
# A client can set the 'transient' hint to bypass this. See the rules
# section for how to disable this if necessary
# idle_threshold = 120
### Text ###
font = Noto Sans Regular 12
# The spacing between lines. If the height is smaller than the
# font height, it will get raised to the font height.
line_height = 0
# Possible values are:
# full: Allow a small subset of html markup in notifications:
# <b>bold</b>
# <i>italic</i>
# <s>strikethrough</s>
# <u>underline</u>
#
# For a complete reference see
# <https://docs.gtk.org/Pango/pango_markup.html>.
#
# strip: This setting is provided for compatibility with some broken
# clients that send markup even though it's not enabled on the
# server. Dunst will try to strip the markup but the parsing is
# simplistic so using this option outside of matching rules for
# specific applications *IS GREATLY DISCOURAGED*.
#
# no: Disable markup parsing, incoming notifications will be treated as
# plain text. Dunst will not advertise that it has the body-markup
# capability if this is set as a global setting.
#
# It's important to note that markup inside the format option will be parsed
# regardless of what this is set to.
markup = full
# The format of the message. Possible variables are:
# %a appname
# %s summary
# %b body
# %i iconname (including its path)
# %I iconname (without its path)
# %p progress value if set ([ 0%] to [100%]) or nothing
# %n progress value if set without any extra characters
# %% Literal %
# Markup is allowed
format = "<b>%s</b>\n%b"
# Alignment of message text.
# Possible values are "left", "center" and "right".
alignment = left
# Vertical alignment of message text and icon.
# Possible values are "top", "center" and "bottom".
vertical_alignment = center
# Show age of message if message is older than show_age_threshold
# seconds.
# Set to -1 to disable.
show_age_threshold = 60
# Specify where to make an ellipsis in long lines.
# Possible values are "start", "middle" and "end".
ellipsize = middle
# Ignore newlines '\n' in notifications.
ignore_newline = no
# Stack together notifications with the same content
stack_duplicates = true
# Hide the count of stacked notifications with the same content
hide_duplicate_count = false
# Display indicators for URLs (U) and actions (A).
show_indicators = yes
### Icons ###
# Recursive icon lookup. You can set a single theme, instead of having to
# define all lookup paths.
enable_recursive_icon_lookup = true
# Set icon theme (only used for recursive icon lookup)
# icon_theme = Adwaita
# You can also set multiple icon themes, with the leftmost one being used first.
# icon_theme = "Adwaita, breeze"
# Align icons left/right/top/off
icon_position = left
# Scale small icons up to this size, set to 0 to disable. Helpful
# for e.g. small files or high-dpi screens. In case of conflict,
# max_icon_size takes precedence over this.
min_icon_size = 26
# Scale larger icons down to this size, set to 0 to disable
max_icon_size = 48
# Paths to default icons (only necessary when not using recursive icon lookup)
icon_path = /usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/16x16/devices/
### History ###
# Should a notification popped up from history be sticky or timeout
# as if it would normally do.
sticky_history = yes
# Maximum amount of notifications kept in history
history_length = 20
### Misc/Advanced ###
# dmenu path.
dmenu = /usr/bin/dmenu -p dunst:
# Browser for opening urls in context menu.
browser = /usr/bin/xdg-open
# Always run rule-defined scripts, even if the notification is suppressed
always_run_script = true
# Define the title of the windows spawned by dunst (X11 only)
title = Dunst
# Define the class of the windows spawned by dunst (X11 only)
class = Dunst
# Define the corner radius of the notification window
# in pixel size. If the radius is 0, you have no rounded
# corners.
# The radius will be automatically lowered if it exceeds half of the
# notification height to avoid clipping text and/or icons.
corner_radius = 0
# Define which corners to round when drawing the window. If the corner radius
# is set to 0 this option will be ignored.
#
# Comma-separated list of the corners. The accepted corner values are bottom-right,
# bottom-left, top-right, top-left, top, bottom, left, right or all.
corners = all
# Ignore the dbus closeNotification message.
# Useful to enforce the timeout set by dunst configuration. Without this
# parameter, an application may close the notification sent before the
# user defined timeout.
ignore_dbusclose = false
### Wayland ###
# These settings are Wayland-specific. They have no effect when using X11
# Uncomment this if you want to let notifications appear under fullscreen
# applications (default: overlay)
# layer = top
# Set this to true to use X11 output on Wayland.
force_xwayland = false
### Legacy
# Use the Xinerama extension instead of RandR for multi-monitor support.
# This setting is provided for compatibility with older nVidia drivers that
# do not support RandR and using it on systems that support RandR is highly
# discouraged.
#
# By enabling this setting dunst will not be able to detect when a monitor
# is connected or disconnected which might break follow mode if the screen
# layout changes.
force_xinerama = false
### mouse
# Defines list of actions for each mouse event
# Possible values are:
# * none: Don't do anything.
# * do_action: Invoke the action determined by the action_name rule. If there is no
# such action, open the context menu.
# * open_url: If the notification has exactly one url, open it. If there are multiple
# ones, open the context menu.
# * close_current: Close current notification.
# * close_all: Close all notifications.
# * context: Open context menu for the notification.
# * context_all: Open context menu for all notifications.
# These values can be strung together for each mouse event, and
# will be executed in sequence.
mouse_left_click = close_current
mouse_middle_click = do_action, close_current
mouse_right_click = close_all
# Experimental features that may or may not work correctly. Do not expect them
# to have a consistent behaviour across releases.
[experimental]
# Calculate the dpi to use on a per-monitor basis.
# If this setting is enabled the Xft.dpi value will be ignored and instead
# dunst will attempt to calculate an appropriate dpi value for each monitor
# using the resolution and physical size. This might be useful in setups
# where there are multiple screens with very different dpi values.
per_monitor_dpi = false
[urgency_low]
# IMPORTANT: colors have to be defined in quotation marks.
# Otherwise the "#" and following would be interpreted as a comment.
# background = "#222222"
# foreground = "#888888"
timeout = 10
# Icon for notifications with low urgency, uncomment to enable
#default_icon = /path/to/icon
[urgency_normal]
# background = "#285577"
# foreground = "#ffffff"
timeout = 10
override_pause_level = 30
# Icon for notifications with normal urgency, uncomment to enable
#default_icon = /path/to/icon
[urgency_critical]
# background = "#900000"
# foreground = "#ffffff"
# frame_color = "#ff0000"
timeout = 0
override_pause_level = 60
# Icon for notifications with critical urgency, uncomment to enable
#default_icon = /path/to/icon
# Every section that isn't one of the above is interpreted as a rules to
# override settings for certain messages.
#
# Messages can be matched by
# appname (discouraged, see desktop_entry)
# body
# category
# desktop_entry
# icon
# match_transient
# msg_urgency
# stack_tag
# summary
#
# and you can override the
# background
# foreground
# format
# frame_color
# fullscreen
# new_icon
# set_stack_tag
# set_transient
# set_category
# timeout
# urgency
# icon_position
# skip_display
# history_ignore
# action_name
# word_wrap
# ellipsize
# alignment
# hide_text
# override_pause_level
#
# Shell-like globbing will get expanded.
#
# Instead of the appname filter, it's recommended to use the desktop_entry filter.
# GLib based applications export their desktop-entry name. In comparison to the appname,
# the desktop-entry won't get localized.
#
# You can also allow a notification to appear even when paused. Notification will appear whenever notification's override_pause_level >= dunst's paused level.
# This can be used to set partial pause modes, where more urgent notifications get through, but less urgent stay paused. To do that, you can override the following in the rules:
# override_pause_level = X
# SCRIPTING
# You can specify a script that gets run when the rule matches by
# setting the "script" option.
# The script will be called as follows:
# script appname summary body icon urgency
# where urgency can be "LOW", "NORMAL" or "CRITICAL".
#
# NOTE: It might be helpful to run dunst -print in a terminal in order
# to find fitting options for rules.
# Disable the transient hint so that idle_threshold cannot be bypassed from the
# client
#[transient_disable]
# match_transient = yes
# set_transient = no
#
# Make the handling of transient notifications more strict by making them not
# be placed in history.
#[transient_history_ignore]
# match_transient = yes
# history_ignore = yes
# fullscreen values
# show: show the notifications, regardless if there is a fullscreen window opened
# delay: displays the new notification, if there is no fullscreen window active
# If the notification is already drawn, it won't get undrawn.
# pushback: same as delay, but when switching into fullscreen, the notification will get
# withdrawn from screen again and will get delayed like a new notification
#[fullscreen_delay_everything]
# fullscreen = delay
#[fullscreen_show_critical]
# msg_urgency = critical
# fullscreen = show
#[espeak]
# summary = "*"
# script = dunst_espeak.sh
#[script-test]
# summary = "*script*"
# script = dunst_test.sh
#[ignore]
# # This notification will not be displayed
# summary = "foobar"
# skip_display = true
#[history-ignore]
# # This notification will not be saved in history
# summary = "foobar"
# history_ignore = yes
#[skip-display]
# # This notification will not be displayed, but will be included in the history
# summary = "foobar"
# skip_display = yes
#[signed_on]
# appname = Pidgin
# summary = "*signed on*"
# urgency = low
#
#[signed_off]
# appname = Pidgin
# summary = *signed off*
# urgency = low
#
#[says]
# appname = Pidgin
# summary = *says*
# urgency = critical
#
#[twitter]
# appname = Pidgin
# summary = *twitter.com*
# urgency = normal
#
#[stack-volumes]
# appname = "some_volume_notifiers"
# set_stack_tag = "volume"
#
# vim: ft=cfg
# Catppuccin Mocha theme
[global]
frame_color = "#89b4fa"
separator_color= frame
highlight = "#89b4fa"
[urgency_low]
background = "#1e1e2e"
foreground = "#cdd6f4"
[urgency_normal]
background = "#1e1e2e"
foreground = "#cdd6f4"
[urgency_critical]
background = "#1e1e2e"
foreground = "#cdd6f4"
frame_color = "#fab387"

57
emacs/.config/emacs/.gitignore vendored Executable file
View File

@@ -0,0 +1,57 @@
# Created by https://www.toptal.com/developers/gitignore/api/emacs
# Edit at https://www.toptal.com/developers/gitignore?templates=emacs
### Emacs ###
# -*- mode: gitignore; -*-
*~
\#*\#
/.emacs.desktop
/.emacs.desktop.lock
*.elc
auto-save-list
tramp
.\#*
eln-cache
projects
# Org-mode
.org-id-locations
*_archive
# flymake-mode
*_flymake.*
# eshell files
/eshell/history
/eshell/lastdir
# elpa packages
/elpa/
# reftex files
*.rel
# AUCTeX auto folder
/auto/
# cask packages
.cask/
dist/
# Flycheck
flycheck_*.el
# server auth directory
/server/
# projectiles files
.projectile
# directory configuration
.dir-locals.el
# network security
/network-security.data
# End of https://www.toptal.com/developers/gitignore/api/emacs

131
emacs/.config/emacs/init.el Normal file
View File

@@ -0,0 +1,131 @@
;; Initial greeting for debugging
(message "Welcome to Emacs")
(message "Loading user configuration...")
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; LOOK AND FEEL ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Setting default theme
(load-theme 'catppuccin :no-confirm)
;; Setting default font
(set-frame-font "0xProto Nerd Font 13" nil t)
;; Remove toolbar
(tool-bar-mode -1)
;; Remove menu
(menu-bar-mode -1)
;; Disable startup screen
(setq inhibit-startup-screen t)
;; Disable splash screen
(setq inhibit-splash-screen t)
;; Remove scrollbar
(scroll-bar-mode -1)
;; Simple 'y' for 'yes' and 'n' for 'no'
(defalias 'yes-or-no-p 'y-or-n-p)
;; Set global value for paragraph witdh
(setq-default fill-column 120)
;; Stop Emacs from losing informations
(setq undo-limit 2000000)
(setq undo-strong-limit 4000000000)
;; Smooth scroll
(setq scroll-step 3)
(setq ring-bell-function 'ignore)
;; Add column number in the status line
(column-number-mode)
;; View clock in the status line
(display-time)
;; Enable line numbers in the programming mode only
(add-hook 'prog-mode-hook 'display-line-numbers-mode)
;; Enable line numbers in the configuration mode only
(add-hook 'conf-mode-hook 'display-line-numbers-mode)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; EDITOR OPTIONS ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(setq standard-indent 4)
(setq tab-stop-list nil)
(setq indent-tabs-mode nil)
;; Setting variables
(setq vc-follow-symlinks 't)
(prefer-coding-system 'utf-8-unix)
(setq custom-file (null-device))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; PACKAGES ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Initialize package system via use-package
(package-initialize)
(require 'use-package)
(use-package package
:config
;; Setting repo priorities
(setq package-archive-priorities
'(("melpa-stable" . 2)
("MELPA" . 1)
("gnu" . 0)))
;; Setting repo URL
(setq package-archives
'(("melpa-stable" . "https://stable.melpa.org/packages/")
("MELPA" . "https://melpa.org/packages/")
("gnu" . "https://elpa.gnu.org/packages/")))
)
(use-package catppuccin-theme
:ensure t)
;; FIXME autoload hl-todo
(use-package hl-todo
:ensure t
:init (hl-todo-mode 1))
(setq hl-todo-keyword-faces
'(("TODO" . "#94e2d5")
("FIXME" . "#f38ba8")
("DEBUG" . "#cba6f7")
("GOTCHA" . "#eba0ac")
("STUB" . "#89b4fa")))
(with-eval-after-load 'magit
(add-hook 'magit-log-wash-summary-hook
#'hl-todo-search-and-highlight t)
(add-hook 'magit-revision-wash-message-hook
#'hl-todo-search-and-highlighthl t))
;; Status line like Doom Emacs
(use-package doom-modeline
:ensure t
:init (doom-modeline-mode 1))
(use-package vterm
:ensure t)
(use-package i3wm-config-mode
:ensure t)
;; TODO adding lsp-mode, dap-mode, autocomplete and project handling for C, Go, Bash and Python
(use-package lsp-mode
:ensure t
:init
;; set prefix for lsp-command-keymap (few alternatives - "C-l", "C-c l")
(setq lsp-keymap-prefix "C-c l")
:hook ((c-mode . lsp))
:commands lsp)
(message "...user configuration loaded")

View File

@@ -1,9 +0,0 @@
[General]
contrastOpacity=188
copyPathAfterSave=true
saveAfterCopy=false
saveAsFileExtension=png
savePath=/home/fscotto/Pictures/Screenshots
savePathFixed=true
showStartupLaunchMessage=false
startupLaunch=false

View File

@@ -4,6 +4,7 @@
[core] [core]
excludesfile = ~/.gitignore_global excludesfile = ~/.gitignore_global
pager = delta pager = delta
sshcommand = ssh.exe
[user] [user]
name = Fabio Scotto di Santolo name = Fabio Scotto di Santolo
@@ -25,13 +26,6 @@
[merge] [merge]
conflictstyle = diff3 conflictstyle = diff3
tool = meld
[mergetool]
prompt = false
[diff]
tool = meld
[color] [color]
ui = always ui = always
@@ -82,3 +76,5 @@
colorMoved = default colorMoved = default
tabs = 4 tabs = 4
side-by-side = true side-by-side = true
[credential]
helper = manager-core

View File

@@ -1,4 +0,0 @@
[options]
background=1e1e2e
overlay_text_color=cdd6f4
overlay_background_color=11111b

View File

@@ -1,468 +1,468 @@
# Config relating to the Lazygit UI # Config relating to the Lazygit UI
gui: gui:
# The number of lines you scroll by when scrolling the main window # The number of lines you scroll by when scrolling the main window
scrollHeight: 2 scrollHeight: 2
# If true, allow scrolling past the bottom of the content in the main window # If true, allow scrolling past the bottom of the content in the main window
scrollPastBottom: true scrollPastBottom: true
# See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#scroll-off-margin # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#scroll-off-margin
scrollOffMargin: 2 scrollOffMargin: 2
# One of: 'margin' (default) | 'jump' # One of: 'margin' (default) | 'jump'
scrollOffBehavior: margin scrollOffBehavior: margin
# If true, capture mouse events. # If true, capture mouse events.
# When mouse events are captured, it's a little harder to select text: e.g. requiring you to hold the option key when on macOS. # When mouse events are captured, it's a little harder to select text: e.g. requiring you to hold the option key when on macOS.
mouseEvents: true mouseEvents: true
# If true, do not show a warning when discarding changes in the staging view. # If true, do not show a warning when discarding changes in the staging view.
skipDiscardChangeWarning: false skipDiscardChangeWarning: false
# If true, do not show warning when applying/popping the stash # If true, do not show warning when applying/popping the stash
skipStashWarning: false skipStashWarning: false
# If true, do not show a warning when attempting to commit without any staged files; instead stage all unstaged files. # If true, do not show a warning when attempting to commit without any staged files; instead stage all unstaged files.
skipNoStagedFilesWarning: false skipNoStagedFilesWarning: false
# If true, do not show a warning when rewording a commit via an external editor # If true, do not show a warning when rewording a commit via an external editor
skipRewordInEditorWarning: false skipRewordInEditorWarning: false
# Fraction of the total screen width to use for the left side section. You may want to pick a small number (e.g. 0.2) if you're using a narrow screen, so that you can see more of the main section. # Fraction of the total screen width to use for the left side section. You may want to pick a small number (e.g. 0.2) if you're using a narrow screen, so that you can see more of the main section.
# Number from 0 to 1.0. # Number from 0 to 1.0.
sidePanelWidth: 0.3333 sidePanelWidth: 0.3333
# If true, increase the height of the focused side window; creating an accordion effect. # If true, increase the height of the focused side window; creating an accordion effect.
expandFocusedSidePanel: false expandFocusedSidePanel: false
# The weight of the expanded side panel, relative to the other panels. 2 means # The weight of the expanded side panel, relative to the other panels. 2 means
# twice as tall as the other panels. Only relevant if `expandFocusedSidePanel` is true. # twice as tall as the other panels. Only relevant if `expandFocusedSidePanel` is true.
expandedSidePanelWeight: 2 expandedSidePanelWeight: 2
# Sometimes the main window is split in two (e.g. when the selected file has both staged and unstaged changes). This setting controls how the two sections are split. # Sometimes the main window is split in two (e.g. when the selected file has both staged and unstaged changes). This setting controls how the two sections are split.
# Options are: # Options are:
# - 'horizontal': split the window horizontally # - 'horizontal': split the window horizontally
# - 'vertical': split the window vertically # - 'vertical': split the window vertically
# - 'flexible': (default) split the window horizontally if the window is wide enough, otherwise split vertically # - 'flexible': (default) split the window horizontally if the window is wide enough, otherwise split vertically
mainPanelSplitMode: flexible mainPanelSplitMode: flexible
# How the window is split when in half screen mode (i.e. after hitting '+' once). # How the window is split when in half screen mode (i.e. after hitting '+' once).
# Possible values: # Possible values:
# - 'left': split the window horizontally (side panel on the left, main view on the right) # - 'left': split the window horizontally (side panel on the left, main view on the right)
# - 'top': split the window vertically (side panel on top, main view below) # - 'top': split the window vertically (side panel on top, main view below)
enlargedSideViewLocation: left enlargedSideViewLocation: left
# One of 'auto' (default) | 'en' | 'zh-CN' | 'zh-TW' | 'pl' | 'nl' | 'ja' | 'ko' | 'ru' # One of 'auto' (default) | 'en' | 'zh-CN' | 'zh-TW' | 'pl' | 'nl' | 'ja' | 'ko' | 'ru'
language: auto language: auto
# Format used when displaying time e.g. commit time. # Format used when displaying time e.g. commit time.
# Uses Go's time format syntax: https://pkg.go.dev/time#Time.Format # Uses Go's time format syntax: https://pkg.go.dev/time#Time.Format
timeFormat: 02 Jan 06 timeFormat: 02 Jan 06
# Format used when displaying time if the time is less than 24 hours ago. # Format used when displaying time if the time is less than 24 hours ago.
# Uses Go's time format syntax: https://pkg.go.dev/time#Time.Format # Uses Go's time format syntax: https://pkg.go.dev/time#Time.Format
shortTimeFormat: 3:04PM shortTimeFormat: 3:04PM
# Config relating to colors and styles. # Config relating to colors and styles.
# See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#color-attributes # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#color-attributes
theme: theme:
# Border color of focused window # Border color of focused window
activeBorderColor: activeBorderColor:
- "#8caaee" - "#8caaee"
- bold - bold
# Border color of non-focused windows # Border color of non-focused windows
inactiveBorderColor: inactiveBorderColor:
- "#a5adce" - "#a5adce"
# Border color of focused window when searching in that window # Border color of focused window when searching in that window
searchingActiveBorderColor: searchingActiveBorderColor:
- "#e5c890" - "#e5c890"
# Color of keybindings help text in the bottom line # Color of keybindings help text in the bottom line
optionsTextColor: optionsTextColor:
- "#8caaee" - "#8caaee"
# Background color of selected line. # Background color of selected line.
# See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#highlighting-the-selected-line # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#highlighting-the-selected-line
selectedLineBgColor: selectedLineBgColor:
- "#414559" - "#414559"
# Foreground color of copied commit # Foreground color of copied commit
cherryPickedCommitFgColor: cherryPickedCommitFgColor:
- "#8caaee" - "#8caaee"
# Background color of copied commit # Background color of copied commit
cherryPickedCommitBgColor: cherryPickedCommitBgColor:
- "#51576d" - "#51576d"
# Color for file with unstaged changes # Color for file with unstaged changes
unstagedChangesColor: unstagedChangesColor:
- "#e78284" - "#e78284"
# Default text color # Default text color
defaultFgColor: defaultFgColor:
- "#c6d0f5" - "#c6d0f5"
authorColors: authorColors:
"Fabio Scotto di Santolo": "#babbf1" "Fabio Scotto di Santolo": "#babbf1"
branchColors: branchColors:
develop: yellow develop: yellow
feature: blue feature: blue
fix: red fix: red
hotfix: red hotfix: red
# Config relating to the commit length indicator # Config relating to the commit length indicator
commitLength: commitLength:
# If true, show an indicator of commit message length # If true, show an indicator of commit message length
show: true show: true
# If true, show the '5 of 20' footer at the bottom of list views # If true, show the '5 of 20' footer at the bottom of list views
showListFooter: true showListFooter: true
# If true, display the files in the file views as a tree. If false, display the files as a flat list. # If true, display the files in the file views as a tree. If false, display the files as a flat list.
# This can be toggled from within Lazygit with the '~' key, but that will not change the default. # This can be toggled from within Lazygit with the '~' key, but that will not change the default.
showFileTree: true showFileTree: true
# If true, show a random tip in the command log when Lazygit starts # If true, show a random tip in the command log when Lazygit starts
showRandomTip: true showRandomTip: true
# If true, show the command log # If true, show the command log
showCommandLog: true showCommandLog: true
# If true, show the bottom line that contains keybinding info and useful buttons. If false, this line will be hidden except to display a loader for an in-progress action. # If true, show the bottom line that contains keybinding info and useful buttons. If false, this line will be hidden except to display a loader for an in-progress action.
showBottomLine: true showBottomLine: true
# If true, show jump-to-window keybindings in window titles. # If true, show jump-to-window keybindings in window titles.
showPanelJumps: true showPanelJumps: true
# Deprecated: use nerdFontsVersion instead # Deprecated: use nerdFontsVersion instead
showIcons: false showIcons: false
# Nerd fonts version to use. # Nerd fonts version to use.
# One of: '2' | '3' | empty string (default) # One of: '2' | '3' | empty string (default)
# If empty, do not show icons. # If empty, do not show icons.
nerdFontsVersion: "3" nerdFontsVersion: "3"
# If true (default), file icons are shown in the file views. Only relevant if NerdFontsVersion is not empty. # If true (default), file icons are shown in the file views. Only relevant if NerdFontsVersion is not empty.
showFileIcons: true showFileIcons: true
# Length of author name in (non-expanded) commits view. 2 means show initials only. # Length of author name in (non-expanded) commits view. 2 means show initials only.
commitAuthorShortLength: 2 commitAuthorShortLength: 2
# Length of author name in expanded commits view. 2 means show initials only. # Length of author name in expanded commits view. 2 means show initials only.
commitAuthorLongLength: 17 commitAuthorLongLength: 17
# Length of commit hash in commits view. 0 shows '*' if NF icons aren't on. # Length of commit hash in commits view. 0 shows '*' if NF icons aren't on.
commitHashLength: 8 commitHashLength: 8
# If true, show commit hashes alongside branch names in the branches view. # If true, show commit hashes alongside branch names in the branches view.
showBranchCommitHash: false showBranchCommitHash: false
# Whether to show the divergence from the base branch in the branches view. # Whether to show the divergence from the base branch in the branches view.
# One of: 'none' | 'onlyArrow' | 'arrowAndNumber' # One of: 'none' | 'onlyArrow' | 'arrowAndNumber'
showDivergenceFromBaseBranch: none showDivergenceFromBaseBranch: none
# Height of the command log view # Height of the command log view
commandLogSize: 8 commandLogSize: 8
# Whether to split the main window when viewing file changes. # Whether to split the main window when viewing file changes.
# One of: 'auto' | 'always' # One of: 'auto' | 'always'
# If 'auto', only split the main window when a file has both staged and unstaged changes # If 'auto', only split the main window when a file has both staged and unstaged changes
splitDiff: auto splitDiff: auto
# Default size for focused window. Window size can be changed from within Lazygit with '+' and '_' (but this won't change the default). # Default size for focused window. Window size can be changed from within Lazygit with '+' and '_' (but this won't change the default).
# One of: 'normal' (default) | 'half' | 'full' # One of: 'normal' (default) | 'half' | 'full'
screenMode: normal screenMode: normal
# Window border style. # Window border style.
# One of 'rounded' (default) | 'single' | 'double' | 'hidden' # One of 'rounded' (default) | 'single' | 'double' | 'hidden'
border: rounded border: rounded
# If true, show a seriously epic explosion animation when nuking the working tree. # If true, show a seriously epic explosion animation when nuking the working tree.
animateExplosion: true animateExplosion: true
# Whether to stack UI components on top of each other. # Whether to stack UI components on top of each other.
# One of 'auto' (default) | 'always' | 'never' # One of 'auto' (default) | 'always' | 'never'
portraitMode: auto portraitMode: auto
# How things are filtered when typing '/'. # How things are filtered when typing '/'.
# One of 'substring' (default) | 'fuzzy' # One of 'substring' (default) | 'fuzzy'
filterMode: substring filterMode: substring
# Config relating to the spinner. # Config relating to the spinner.
spinner: spinner:
# The frames of the spinner animation. # The frames of the spinner animation.
frames: frames:
- "|" - "|"
- / - /
- "-" - "-"
- \ - \
# The "speed" of the spinner in milliseconds. # The "speed" of the spinner in milliseconds.
rate: 50 rate: 50
# Status panel view. # Status panel view.
# One of 'dashboard' (default) | 'allBranchesLog' # One of 'dashboard' (default) | 'allBranchesLog'
statusPanelView: dashboard statusPanelView: dashboard
# Config relating to git # Config relating to git
git: git:
# See https://github.com/jesseduffield/lazygit/blob/master/docs/Custom_Pagers.md # See https://github.com/jesseduffield/lazygit/blob/master/docs/Custom_Pagers.md
paging: paging:
# Value of the --color arg in the git diff command. Some pagers want this to be set to 'always' and some want it set to 'never' # Value of the --color arg in the git diff command. Some pagers want this to be set to 'always' and some want it set to 'never'
colorArg: always colorArg: always
# e.g. # e.g.
# diff-so-fancy # diff-so-fancy
# delta --dark --paging=never # delta --dark --paging=never
# ydiff -p cat -s --wrap --width={{columnWidth}} # ydiff -p cat -s --wrap --width={{columnWidth}}
pager: "delta --paging=never" pager: "delta --paging=never"
# If true, Lazygit will use whatever pager is specified in `$GIT_PAGER`, `$PAGER`, or your *git config*. If the pager ends with something like ` | less` we will strip that part out, because less doesn't play nice with our rendering approach. If the custom pager uses less under the hood, that will also break rendering (hence the `--paging=never` flag for the `delta` pager). # If true, Lazygit will use whatever pager is specified in `$GIT_PAGER`, `$PAGER`, or your *git config*. If the pager ends with something like ` | less` we will strip that part out, because less doesn't play nice with our rendering approach. If the custom pager uses less under the hood, that will also break rendering (hence the `--paging=never` flag for the `delta` pager).
useConfig: false useConfig: false
# e.g. 'difft --color=always' # e.g. 'difft --color=always'
externalDiffCommand: "" externalDiffCommand: ""
# Config relating to committing # Config relating to committing
commit: commit:
# If true, pass '--signoff' flag when committing # If true, pass '--signoff' flag when committing
signOff: false signOff: false
# Automatic WYSIWYG wrapping of the commit message as you type # Automatic WYSIWYG wrapping of the commit message as you type
autoWrapCommitMessage: true autoWrapCommitMessage: true
# If autoWrapCommitMessage is true, the width to wrap to # If autoWrapCommitMessage is true, the width to wrap to
autoWrapWidth: 72 autoWrapWidth: 72
# Config relating to merging # Config relating to merging
merging: merging:
# If true, run merges in a subprocess so that if a commit message is required, Lazygit will not hang # If true, run merges in a subprocess so that if a commit message is required, Lazygit will not hang
# Only applicable to unix users. # Only applicable to unix users.
manualCommit: false manualCommit: false
# Extra args passed to `git merge`, e.g. --no-ff # Extra args passed to `git merge`, e.g. --no-ff
args: "--no-ff" args: "--no-ff"
# The commit message to use for a squash merge commit. Can contain "{{selectedRef}}" and "{{currentBranch}}" placeholders. # The commit message to use for a squash merge commit. Can contain "{{selectedRef}}" and "{{currentBranch}}" placeholders.
squashMergeMessage: Squash merge {{selectedRef}} into {{currentBranch}} squashMergeMessage: Squash merge {{selectedRef}} into {{currentBranch}}
# list of branches that are considered 'main' branches, used when displaying commits # list of branches that are considered 'main' branches, used when displaying commits
mainBranches: mainBranches:
- master - master
- main - main
# Prefix to use when skipping hooks. E.g. if set to 'WIP', then pre-commit hooks will be skipped when the commit message starts with 'WIP' # Prefix to use when skipping hooks. E.g. if set to 'WIP', then pre-commit hooks will be skipped when the commit message starts with 'WIP'
skipHookPrefix: WIP skipHookPrefix: WIP
# If true, periodically fetch from remote # If true, periodically fetch from remote
autoFetch: true autoFetch: true
# If true, periodically refresh files and submodules # If true, periodically refresh files and submodules
autoRefresh: true autoRefresh: true
# If true, pass the --all arg to git fetch # If true, pass the --all arg to git fetch
fetchAll: true fetchAll: true
# Command used when displaying the current branch git log in the main window # Command used when displaying the current branch git log in the main window
branchLogCmd: git log --graph --color=always --abbrev-commit --decorate --date=relative --pretty=medium {{branchName}} -- branchLogCmd: git log --graph --color=always --abbrev-commit --decorate --date=relative --pretty=medium {{branchName}} --
# If true, do not spawn a separate process when using GPG # If true, do not spawn a separate process when using GPG
overrideGpg: false overrideGpg: false
# If true, do not allow force pushes # If true, do not allow force pushes
disableForcePushing: false disableForcePushing: false
# See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#predefined-commit-message-prefix # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#predefined-commit-message-prefix
commitPrefix: commitPrefix:
- # pattern to match on. E.g. for 'feature/AB-123' to match on the AB-123 use "^\\w+\\/(\\w+-\\w+).*" - # pattern to match on. E.g. for 'feature/AB-123' to match on the AB-123 use "^\\w+\\/(\\w+-\\w+).*"
pattern: "" pattern: ""
# Replace directive. E.g. for 'feature/AB-123' to start the commit message with 'AB-123 ' use "[$1] " # Replace directive. E.g. for 'feature/AB-123' to start the commit message with 'AB-123 ' use "[$1] "
replace: "" replace: ""
# See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#predefined-branch-name-prefix # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#predefined-branch-name-prefix
branchPrefix: "" branchPrefix: ""
# If true, parse emoji strings in commit messages e.g. render :rocket: as 🚀 # If true, parse emoji strings in commit messages e.g. render :rocket: as 🚀
# (This should really be under 'gui', not 'git') # (This should really be under 'gui', not 'git')
parseEmoji: true parseEmoji: true
# Config for showing the log in the commits view # Config for showing the log in the commits view
log: log:
# One of: 'date-order' | 'author-date-order' | 'topo-order' | 'default' # One of: 'date-order' | 'author-date-order' | 'topo-order' | 'default'
# 'topo-order' makes it easier to read the git log graph, but commits may not # 'topo-order' makes it easier to read the git log graph, but commits may not
# appear chronologically. See https://git-scm.com/docs/ # appear chronologically. See https://git-scm.com/docs/
# #
# Deprecated: Configure this with `Log menu -> Commit sort order` (<c-l> in the commits window by default). # Deprecated: Configure this with `Log menu -> Commit sort order` (<c-l> in the commits window by default).
order: topo-order order: topo-order
# This determines whether the git graph is rendered in the commits panel # This determines whether the git graph is rendered in the commits panel
# One of 'always' | 'never' | 'when-maximised' # One of 'always' | 'never' | 'when-maximised'
# #
# Deprecated: Configure this with `Log menu -> Show git graph` (<c-l> in the commits window by default). # Deprecated: Configure this with `Log menu -> Show git graph` (<c-l> in the commits window by default).
showGraph: always showGraph: always
# displays the whole git graph by default in the commits view (equivalent to passing the `--all` argument to `git log`) # displays the whole git graph by default in the commits view (equivalent to passing the `--all` argument to `git log`)
showWholeGraph: false showWholeGraph: false
# When copying commit hashes to the clipboard, truncate them to this # When copying commit hashes to the clipboard, truncate them to this
# length. Set to 40 to disable truncation. # length. Set to 40 to disable truncation.
truncateCopiedCommitHashesTo: 12 truncateCopiedCommitHashesTo: 12
allBranchesLogCmds: allBranchesLogCmds:
- git log --graph --all --color=always --abbrev-commit --decorate --date=relative --pretty=medium - git log --graph --all --color=always --abbrev-commit --decorate --date=relative --pretty=medium
# Periodic update checks # Periodic update checks
update: update:
# One of: 'prompt' (default) | 'background' | 'never' # One of: 'prompt' (default) | 'background' | 'never'
method: prompt method: prompt
# Period in days between update checks # Period in days between update checks
days: 14 days: 14
# Background refreshes # Background refreshes
refresher: refresher:
# File/submodule refresh interval in seconds. # File/submodule refresh interval in seconds.
# Auto-refresh can be disabled via option 'git.autoRefresh'. # Auto-refresh can be disabled via option 'git.autoRefresh'.
refreshInterval: 10 refreshInterval: 10
# Re-fetch interval in seconds. # Re-fetch interval in seconds.
# Auto-fetch can be disabled via option 'git.autoFetch'. # Auto-fetch can be disabled via option 'git.autoFetch'.
fetchInterval: 60 fetchInterval: 60
# If true, show a confirmation popup before quitting Lazygit # If true, show a confirmation popup before quitting Lazygit
confirmOnQuit: false confirmOnQuit: false
# If true, exit Lazygit when the user presses escape in a context where there is nothing to cancel/close # If true, exit Lazygit when the user presses escape in a context where there is nothing to cancel/close
quitOnTopLevelReturn: false quitOnTopLevelReturn: false
# Config relating to things outside of Lazygit like how files are opened, copying to clipboard, etc # Config relating to things outside of Lazygit like how files are opened, copying to clipboard, etc
os: os:
# Command for editing a file. Should contain "{{filename}}". # Command for editing a file. Should contain "{{filename}}".
edit: "" edit: ""
# Command for editing a file at a given line number. Should contain # Command for editing a file at a given line number. Should contain
# "{{filename}}", and may optionally contain "{{line}}". # "{{filename}}", and may optionally contain "{{line}}".
editAtLine: "" editAtLine: ""
# Same as EditAtLine, except that the command needs to wait until the # Same as EditAtLine, except that the command needs to wait until the
# window is closed. # window is closed.
editAtLineAndWait: "" editAtLineAndWait: ""
# For opening a directory in an editor # For opening a directory in an editor
openDirInEditor: "" openDirInEditor: ""
# A built-in preset that sets all of the above settings. Supported presets # A built-in preset that sets all of the above settings. Supported presets
# are defined in the getPreset function in editor_presets.go. # are defined in the getPreset function in editor_presets.go.
editPreset: "" editPreset: ""
# Command for opening a file, as if the file is double-clicked. Should # Command for opening a file, as if the file is double-clicked. Should
# contain "{{filename}}", but doesn't support "{{line}}". # contain "{{filename}}", but doesn't support "{{line}}".
open: "" open: ""
# Command for opening a link. Should contain "{{link}}". # Command for opening a link. Should contain "{{link}}".
openLink: "" openLink: ""
# EditCommand is the command for editing a file. # EditCommand is the command for editing a file.
# Deprecated: use Edit instead. Note that semantics are different: # Deprecated: use Edit instead. Note that semantics are different:
# EditCommand is just the command itself, whereas Edit contains a # EditCommand is just the command itself, whereas Edit contains a
# "{{filename}}" variable. # "{{filename}}" variable.
editCommand: "" editCommand: ""
# EditCommandTemplate is the command template for editing a file # EditCommandTemplate is the command template for editing a file
# Deprecated: use EditAtLine instead. # Deprecated: use EditAtLine instead.
editCommandTemplate: "" editCommandTemplate: ""
# OpenCommand is the command for opening a file # OpenCommand is the command for opening a file
# Deprecated: use Open instead. # Deprecated: use Open instead.
openCommand: "" openCommand: ""
# OpenLinkCommand is the command for opening a link # OpenLinkCommand is the command for opening a link
# Deprecated: use OpenLink instead. # Deprecated: use OpenLink instead.
openLinkCommand: "" openLinkCommand: ""
# CopyToClipboardCmd is the command for copying to clipboard. # CopyToClipboardCmd is the command for copying to clipboard.
# See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#custom-command-for-copying-to-and-pasting-from-clipboard # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#custom-command-for-copying-to-and-pasting-from-clipboard
copyToClipboardCmd: "" copyToClipboardCmd: ""
# ReadFromClipboardCmd is the command for reading the clipboard. # ReadFromClipboardCmd is the command for reading the clipboard.
# See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#custom-command-for-copying-to-and-pasting-from-clipboard # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#custom-command-for-copying-to-and-pasting-from-clipboard
readFromClipboardCmd: "" readFromClipboardCmd: ""
# If true, don't display introductory popups upon opening Lazygit. # If true, don't display introductory popups upon opening Lazygit.
disableStartupPopups: true disableStartupPopups: true
# What to do when opening Lazygit outside of a git repo. # What to do when opening Lazygit outside of a git repo.
# - 'prompt': (default) ask whether to initialize a new repo or open in the most recent repo # - 'prompt': (default) ask whether to initialize a new repo or open in the most recent repo
# - 'create': initialize a new repo # - 'create': initialize a new repo
# - 'skip': open most recent repo # - 'skip': open most recent repo
# - 'quit': exit Lazygit # - 'quit': exit Lazygit
notARepository: prompt notARepository: prompt
# If true, display a confirmation when subprocess terminates. This allows you to view the output of the subprocess before returning to Lazygit. # If true, display a confirmation when subprocess terminates. This allows you to view the output of the subprocess before returning to Lazygit.
promptToReturnFromSubprocess: true promptToReturnFromSubprocess: true
# Keybindings # Keybindings
keybinding: keybinding:
universal: universal:
quit: q quit: q
quit-alt1: <c-c> quit-alt1: <c-c>
return: <esc> return: <esc>
quitWithoutChangingDirectory: Q quitWithoutChangingDirectory: Q
togglePanel: <tab> togglePanel: <tab>
prevItem: <up> prevItem: <up>
nextItem: <down> nextItem: <down>
prevItem-alt: k prevItem-alt: k
nextItem-alt: j nextItem-alt: j
prevPage: "," prevPage: ","
nextPage: . nextPage: .
scrollLeft: H scrollLeft: H
scrollRight: L scrollRight: L
gotoTop: < gotoTop: <
gotoBottom: ">" gotoBottom: ">"
toggleRangeSelect: v toggleRangeSelect: v
rangeSelectDown: <s-down> rangeSelectDown: <s-down>
rangeSelectUp: <s-up> rangeSelectUp: <s-up>
prevBlock: <left> prevBlock: <left>
nextBlock: <right> nextBlock: <right>
prevBlock-alt: h prevBlock-alt: h
nextBlock-alt: l nextBlock-alt: l
nextBlock-alt2: <tab> nextBlock-alt2: <tab>
prevBlock-alt2: <backtab> prevBlock-alt2: <backtab>
jumpToBlock: jumpToBlock:
- "1" - "1"
- "2" - "2"
- "3" - "3"
- "4" - "4"
- "5" - "5"
nextMatch: "n" nextMatch: "n"
prevMatch: "N" prevMatch: "N"
startSearch: / startSearch: /
optionMenu: <disabled> optionMenu: <disabled>
optionMenu-alt1: "?" optionMenu-alt1: "?"
select: <space> select: <space>
goInto: <enter> goInto: <enter>
confirm: <enter> confirm: <enter>
confirmInEditor: <a-enter> confirmInEditor: <a-enter>
remove: d remove: d
new: "n" new: "n"
edit: e edit: e
openFile: o openFile: o
scrollUpMain: <pgup> scrollUpMain: <pgup>
scrollDownMain: <pgdown> scrollDownMain: <pgdown>
scrollUpMain-alt1: K scrollUpMain-alt1: K
scrollDownMain-alt1: J scrollDownMain-alt1: J
scrollUpMain-alt2: <c-u> scrollUpMain-alt2: <c-u>
scrollDownMain-alt2: <c-d> scrollDownMain-alt2: <c-d>
executeShellCommand: ":" executeShellCommand: ":"
createRebaseOptionsMenu: m createRebaseOptionsMenu: m
# 'Files' appended for legacy reasons # 'Files' appended for legacy reasons
pushFiles: P pushFiles: P
# 'Files' appended for legacy reasons # 'Files' appended for legacy reasons
pullFiles: p pullFiles: p
refresh: R refresh: R
createPatchOptionsMenu: <c-p> createPatchOptionsMenu: <c-p>
nextTab: "]" nextTab: "]"
prevTab: "[" prevTab: "["
nextScreenMode: + nextScreenMode: +
prevScreenMode: _ prevScreenMode: _
undo: z undo: z
redo: <c-z> redo: <c-z>
filteringMenu: <c-s> filteringMenu: <c-s>
diffingMenu: W diffingMenu: W
diffingMenu-alt: <c-e> diffingMenu-alt: <c-e>
copyToClipboard: <c-o> copyToClipboard: <c-o>
openRecentRepos: <c-r> openRecentRepos: <c-r>
submitEditorText: <enter> submitEditorText: <enter>
extrasMenu: "@" extrasMenu: "@"
toggleWhitespaceInDiffView: <c-w> toggleWhitespaceInDiffView: <c-w>
increaseContextInDiffView: "}" increaseContextInDiffView: "}"
decreaseContextInDiffView: "{" decreaseContextInDiffView: "{"
increaseRenameSimilarityThreshold: ) increaseRenameSimilarityThreshold: )
decreaseRenameSimilarityThreshold: ( decreaseRenameSimilarityThreshold: (
openDiffTool: <c-t> openDiffTool: <c-t>
status: status:
checkForUpdate: u checkForUpdate: u
recentRepos: <enter> recentRepos: <enter>
allBranchesLogGraph: a allBranchesLogGraph: a
files: files:
commitChanges: c commitChanges: c
commitChangesWithoutHook: w commitChangesWithoutHook: w
amendLastCommit: A amendLastCommit: A
commitChangesWithEditor: C commitChangesWithEditor: C
findBaseCommitForFixup: <c-f> findBaseCommitForFixup: <c-f>
confirmDiscard: x confirmDiscard: x
ignoreFile: i ignoreFile: i
refreshFiles: r refreshFiles: r
stashAllChanges: s stashAllChanges: s
viewStashOptions: S viewStashOptions: S
toggleStagedAll: a toggleStagedAll: a
viewResetOptions: D viewResetOptions: D
fetch: f fetch: f
toggleTreeView: "`" toggleTreeView: "`"
openMergeTool: M openMergeTool: M
openStatusFilter: <c-b> openStatusFilter: <c-b>
copyFileInfoToClipboard: "y" copyFileInfoToClipboard: "y"
branches: branches:
createPullRequest: o createPullRequest: o
viewPullRequestOptions: O viewPullRequestOptions: O
copyPullRequestURL: <c-y> copyPullRequestURL: <c-y>
checkoutBranchByName: c checkoutBranchByName: c
forceCheckoutBranch: F forceCheckoutBranch: F
rebaseBranch: r rebaseBranch: r
renameBranch: R renameBranch: R
mergeIntoCurrentBranch: M mergeIntoCurrentBranch: M
viewGitFlowOptions: i viewGitFlowOptions: i
fastForward: f fastForward: f
createTag: T createTag: T
pushTag: P pushTag: P
setUpstream: u setUpstream: u
fetchRemote: f fetchRemote: f
sortOrder: s sortOrder: s
worktrees: worktrees:
viewWorktreeOptions: w viewWorktreeOptions: w
commits: commits:
squashDown: s squashDown: s
renameCommit: r renameCommit: r
renameCommitWithEditor: R renameCommitWithEditor: R
viewResetOptions: g viewResetOptions: g
markCommitAsFixup: f markCommitAsFixup: f
createFixupCommit: F createFixupCommit: F
squashAboveCommits: S squashAboveCommits: S
moveDownCommit: <c-j> moveDownCommit: <c-j>
moveUpCommit: <c-k> moveUpCommit: <c-k>
amendToCommit: A amendToCommit: A
resetCommitAuthor: a resetCommitAuthor: a
pickCommit: p pickCommit: p
revertCommit: t revertCommit: t
cherryPickCopy: C cherryPickCopy: C
pasteCommits: V pasteCommits: V
markCommitAsBaseForRebase: B markCommitAsBaseForRebase: B
tagCommit: T tagCommit: T
checkoutCommit: <space> checkoutCommit: <space>
resetCherryPick: <c-R> resetCherryPick: <c-R>
copyCommitAttributeToClipboard: "y" copyCommitAttributeToClipboard: "y"
openLogMenu: <c-l> openLogMenu: <c-l>
openInBrowser: o openInBrowser: o
viewBisectOptions: b viewBisectOptions: b
startInteractiveRebase: i startInteractiveRebase: i
amendAttribute: amendAttribute:
resetAuthor: a resetAuthor: a
setAuthor: A setAuthor: A
addCoAuthor: c addCoAuthor: c
stash: stash:
popStash: g popStash: g
renameStash: r renameStash: r
commitFiles: commitFiles:
checkoutCommitFile: c checkoutCommitFile: c
main: main:
toggleSelectHunk: a toggleSelectHunk: a
pickBothHunks: b pickBothHunks: b
editSelectHunk: E editSelectHunk: E
submodules: submodules:
init: i init: i
update: u update: u
bulkMenu: b bulkMenu: b
commitMessage: commitMessage:
commitMenu: <c-o> commitMenu: <c-o>

View File

@@ -1,8 +1,8 @@
tt.* tt.*
.tests .tests
doc/tags doc/tags
debug debug
.repro .repro
foo.* foo.*
*.log *.log
data data

View File

@@ -1,15 +1,15 @@
{ {
"neodev": { "neodev": {
"library": { "library": {
"enabled": true, "enabled": true,
"plugins": true "plugins": true
} }
}, },
"neoconf": { "neoconf": {
"plugins": { "plugins": {
"lua_ls": { "lua_ls": {
"enabled": true "enabled": true
} }
} }
} }
} }

View File

@@ -1,201 +1,201 @@
Apache License Apache License
Version 2.0, January 2004 Version 2.0, January 2004
http://www.apache.org/licenses/ http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions. 1. Definitions.
"License" shall mean the terms and conditions for use, reproduction, "License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document. and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by "Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License. the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all "Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition, control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the "control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity. outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity "You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License. exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications, "Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation including but not limited to software source code, documentation
source, and configuration files. source, and configuration files.
"Object" form shall mean any form resulting from mechanical "Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation, not limited to compiled object code, generated documentation,
and conversions to other media types. and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or "Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work copyright notice that is included in or attached to the work
(an example is provided in the Appendix below). (an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object "Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of, separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof. the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including "Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted" the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems, communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution." designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity "Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work. subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of 2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual, this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of, copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form. Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of 3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual, this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made, (except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work, use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s) Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate granted to You under this License for that Work shall terminate
as of the date such litigation is filed. as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the 4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You modifications, and in Source or Object form, provided that You
meet the following conditions: meet the following conditions:
(a) You must give any other recipients of the Work or (a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices (b) You must cause any modified files to carry prominent notices
stating that You changed the files; and stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works (c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work, attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of excluding those notices that do not pertain to any part of
the Derivative Works; and the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its (d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or, documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed that such additional attribution notices cannot be construed
as modifying the License. as modifying the License.
You may add Your own copyright statement to Your modifications and You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use, for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License. the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise, 5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions. this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions. with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade 6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor, names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file. origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or 7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS, Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License. risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory, 8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise, whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special, liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill, Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages. has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing 9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer, the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity, and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify, of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability. of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work. APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]" boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier same "printed page" as the copyright notice for easier
identification within third-party archives. identification within third-party archives.
Copyright [yyyy] [name of copyright owner] Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
You may obtain a copy of the License at You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0 http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS, distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and See the License for the specific language governing permissions and
limitations under the License. limitations under the License.

View File

@@ -1,3 +1,3 @@
-- bootstrap lazy.nvim, LazyVim and your plugins -- bootstrap lazy.nvim, LazyVim and your plugins
require("config.lazy") require("config.lazy")
require("user.utils") require("user.utils")

View File

@@ -1,60 +1,60 @@
{ {
"LazyVim": { "branch": "main", "commit": "25abbf546d564dc484cf903804661ba12de45507" }, "LazyVim": { "branch": "main", "commit": "b4606f9df3395a261bb6a09acc837993da5d8bfc" },
"SchemaStore.nvim": { "branch": "main", "commit": "8e74c08998fd786239caba373344f4e4601e21fe" }, "SchemaStore.nvim": { "branch": "main", "commit": "22f0c2f7c727a15b45b7bfcbbab533720223b840" },
"alpha-nvim": { "branch": "main", "commit": "2b3cbcdd980cae1e022409289245053f62fb50f6" }, "alpha-nvim": { "branch": "main", "commit": "2b3cbcdd980cae1e022409289245053f62fb50f6" },
"blink.cmp": { "branch": "main", "commit": "bae4bae0eedd1fa55f34b685862e94a222d5c6f8" }, "blink.cmp": { "branch": "main", "commit": "327fff91fe6af358e990be7be1ec8b78037d2138" },
"bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" }, "bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" },
"catppuccin": { "branch": "main", "commit": "30fa4d122d9b22ad8b2e0ab1b533c8c26c4dde86" }, "catppuccin": { "branch": "main", "commit": "f19cab18ec4dc86d415512c7a572863b2adbcc18" },
"clangd_extensions.nvim": { "branch": "main", "commit": "b67cc417d9020fb4b83d46662351b4d16894905e" }, "clangd_extensions.nvim": { "branch": "main", "commit": "b67cc417d9020fb4b83d46662351b4d16894905e" },
"conform.nvim": { "branch": "master", "commit": "b4aab989db276993ea5dcb78872be494ce546521" }, "conform.nvim": { "branch": "master", "commit": "b4aab989db276993ea5dcb78872be494ce546521" },
"dial.nvim": { "branch": "master", "commit": "7c8baea9f058c6ab25381b731baba7f7d8a34cef" }, "dial.nvim": { "branch": "master", "commit": "f0404ec1f83a03f2c3457e60087c6331d1cbb83f" },
"flash.nvim": { "branch": "main", "commit": "3c942666f115e2811e959eabbdd361a025db8b63" }, "flash.nvim": { "branch": "main", "commit": "b68bda044d68e4026c4e1ec6df3c5afd7eb8e341" },
"friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" }, "friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" },
"fzf-lua": { "branch": "main", "commit": "c045825f99a2618ee7453d46dd6e84a61ee53a56" }, "fzf-lua": { "branch": "main", "commit": "3776d03a4afa967bd6c4b7f78e9e90bc21425236" },
"gitsigns.nvim": { "branch": "main", "commit": "6e3c66548035e50db7bd8e360a29aec6620c3641" }, "gitsigns.nvim": { "branch": "main", "commit": "f780609807eca1f783a36a8a31c30a48fbe150c5" },
"grug-far.nvim": { "branch": "main", "commit": "385d1949dc21d0c39e7a74b4f4a25da18817bc86" }, "grug-far.nvim": { "branch": "main", "commit": "50d9ee2b5a19634670441948e7e4afaa042f1059" },
"hardtime.nvim": { "branch": "main", "commit": "6d7664d5bdfaea44c5f50b29f5239fab7b00c273" }, "hardtime.nvim": { "branch": "main", "commit": "6d7664d5bdfaea44c5f50b29f5239fab7b00c273" },
"harpoon": { "branch": "harpoon2", "commit": "ed1f853847ffd04b2b61c314865665e1dadf22c7" }, "harpoon": { "branch": "harpoon2", "commit": "ed1f853847ffd04b2b61c314865665e1dadf22c7" },
"hydra.nvim": { "branch": "main", "commit": "8c4a9f621ec7cdc30411a1f3b6d5eebb12b469dc" }, "hydra.nvim": { "branch": "main", "commit": "8c4a9f621ec7cdc30411a1f3b6d5eebb12b469dc" },
"lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
"lazydev.nvim": { "branch": "main", "commit": "2367a6c0a01eb9edb0464731cc0fb61ed9ab9d2c" }, "lazydev.nvim": { "branch": "main", "commit": "258d2a5ef4a3e3d6d9ba9da72c9725c53e9afcbd" },
"lualine.nvim": { "branch": "master", "commit": "b8c23159c0161f4b89196f74ee3a6d02cdc3a955" }, "lualine.nvim": { "branch": "master", "commit": "b8c23159c0161f4b89196f74ee3a6d02cdc3a955" },
"markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" }, "markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "1a31f824b9cd5bc6f342fc29e9a53b60d74af245" }, "mason-lspconfig.nvim": { "branch": "main", "commit": "a1067cf84b4ff81b66d2bf4d01f4cbdb5de40bd0" },
"mason-nvim-dap.nvim": { "branch": "main", "commit": "86389a3dd687cfaa647b6f44731e492970034baa" }, "mason-nvim-dap.nvim": { "branch": "main", "commit": "86389a3dd687cfaa647b6f44731e492970034baa" },
"mason.nvim": { "branch": "main", "commit": "fc98833b6da5de5a9c5b1446ac541577059555be" }, "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.icons": { "branch": "main", "commit": "f9a177c11daa7829389b7b6eaaec8b8a5c47052d" },
"mini.nvim": { "branch": "main", "commit": "ddb70da6ec6aa896cfde87350d1e8dffb57ddef0" }, "mini.nvim": { "branch": "main", "commit": "bc34736e5b1d5561bc628f1cedd7c01f5ce5ee9f" },
"mini.pairs": { "branch": "main", "commit": "6e1cc569130f25b2c6fa16d8b21b31ddb1420a4a" }, "mini.pairs": { "branch": "main", "commit": "3738ea30ff33e0cbf2983dc67319a5468d25b0a9" },
"multicursors.nvim": { "branch": "main", "commit": "72225ea9e4443c3f4b9df91d0193e07c4ee8d382" }, "multicursors.nvim": { "branch": "main", "commit": "72225ea9e4443c3f4b9df91d0193e07c4ee8d382" },
"neo-tree.nvim": { "branch": "main", "commit": "46fa0c22ca39e05fe15744102d21feb07fe9a94a" }, "neo-tree.nvim": { "branch": "main", "commit": "46fa0c22ca39e05fe15744102d21feb07fe9a94a" },
"noice.nvim": { "branch": "main", "commit": "0427460c2d7f673ad60eb02b35f5e9926cf67c59" }, "noice.nvim": { "branch": "main", "commit": "0427460c2d7f673ad60eb02b35f5e9926cf67c59" },
"none-ls.nvim": { "branch": "main", "commit": "53ec77181d96494b9dc9457110dd62dc623cc78d" }, "none-ls.nvim": { "branch": "main", "commit": "78111a97cebed3dfda8157af8141bf1915cfc327" },
"nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" }, "nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" },
"nvim-dap": { "branch": "master", "commit": "7891b01beedc37cef4eaf2e92563bd0a5b6e9c58" }, "nvim-dap": { "branch": "master", "commit": "7367cec8e8f7a0b1e4566af9a7ef5959d11206a7" },
"nvim-dap-go": { "branch": "main", "commit": "b4421153ead5d726603b02743ea40cf26a51ed5f" }, "nvim-dap-go": { "branch": "main", "commit": "b4421153ead5d726603b02743ea40cf26a51ed5f" },
"nvim-dap-python": { "branch": "master", "commit": "030385d03363988370adaa5cf21fa465daddb088" }, "nvim-dap-python": { "branch": "master", "commit": "bfe572e4458e0ac876b9539a1e9f301c72db8ea0" },
"nvim-dap-ui": { "branch": "master", "commit": "cf91d5e2d07c72903d052f5207511bf7ecdb7122" }, "nvim-dap-ui": { "branch": "master", "commit": "cf91d5e2d07c72903d052f5207511bf7ecdb7122" },
"nvim-dap-virtual-text": { "branch": "master", "commit": "fbdb48c2ed45f4a8293d0d483f7730d24467ccb6" }, "nvim-dap-virtual-text": { "branch": "master", "commit": "fbdb48c2ed45f4a8293d0d483f7730d24467ccb6" },
"nvim-lint": { "branch": "master", "commit": "f126af5345c7472e9a0cdbe1d1a29209be72c4c4" }, "nvim-lint": { "branch": "master", "commit": "0864f81c681e15d9bdc1156fe3a17bd07db5a3ed" },
"nvim-lspconfig": { "branch": "master", "commit": "408cf07b97535825cca6f1afa908d98348712ba6" }, "nvim-lspconfig": { "branch": "master", "commit": "ef73a4f2a1ddf0439eb97b46de2aab265ddba1cd" },
"nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" }, "nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" },
"nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" }, "nvim-treesitter": { "branch": "main", "commit": "53819acac287632ee2b62e0f7b63057904984906" },
"nvim-treesitter-textobjects": { "branch": "master", "commit": "71385f191ec06ffc60e80e6b0c9a9d5daed4824c" }, "nvim-treesitter-textobjects": { "branch": "main", "commit": "1b2d85d3de6114c4bcea89ffb2cd1ce9e3a19931" },
"nvim-ts-autotag": { "branch": "main", "commit": "a1d526af391f6aebb25a8795cbc05351ed3620b5" }, "nvim-ts-autotag": { "branch": "main", "commit": "c4ca798ab95b316a768d51eaaaee48f64a4a46bc" },
"nvim-web-devicons": { "branch": "master", "commit": "f66cdfef5e84112045b9ebc3119fee9bddb3c687" }, "nvim-web-devicons": { "branch": "master", "commit": "6e51ca170563330e063720449c21f43e27ca0bc1" },
"persistence.nvim": { "branch": "main", "commit": "166a79a55bfa7a4db3e26fc031b4d92af71d0b51" }, "persistence.nvim": { "branch": "main", "commit": "166a79a55bfa7a4db3e26fc031b4d92af71d0b51" },
"plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" }, "plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
"refactoring.nvim": { "branch": "master", "commit": "74b608dfee827c2372250519d433cc21cb083407" }, "refactoring.nvim": { "branch": "master", "commit": "74b608dfee827c2372250519d433cc21cb083407" },
"render-markdown.nvim": { "branch": "main", "commit": "e76eb2e4262f0f0a1a7bd7a454dd7d44f1299afd" }, "render-markdown.nvim": { "branch": "main", "commit": "67f2c7c8850bb11eefa6b22054a6f4cef1146de2" },
"snacks.nvim": { "branch": "main", "commit": "bc0630e43be5699bb94dadc302c0d21615421d93" }, "snacks.nvim": { "branch": "main", "commit": "d67a47739dfc652cfcf66c59e929c704a854b37a" },
"telescope.nvim": { "branch": "master", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" }, "telescope.nvim": { "branch": "master", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" },
"todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" }, "todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" },
"tokyonight.nvim": { "branch": "main", "commit": "057ef5d260c1931f1dffd0f052c685dcd14100a3" }, "tokyonight.nvim": { "branch": "main", "commit": "14fd5ff7f84027064724ec3157fe903199e77ded" },
"trouble.nvim": { "branch": "main", "commit": "85bedb7eb7fa331a2ccbecb9202d8abba64d37b3" }, "trouble.nvim": { "branch": "main", "commit": "f176232e7759c4f8abd923c21e3e5a5c76cd6837" },
"ts-comments.nvim": { "branch": "main", "commit": "1bd9d0ba1d8b336c3db50692ffd0955fe1bb9f0c" }, "ts-comments.nvim": { "branch": "main", "commit": "1bd9d0ba1d8b336c3db50692ffd0955fe1bb9f0c" },
"venv-selector.nvim": { "branch": "regexp", "commit": "d2326e7433fdeb10f7d0d1237c18b91b353f9f8b" }, "venv-selector.nvim": { "branch": "main", "commit": "2b49d1f8b8fcf5cfbd0913136f48f118225cca5d" },
"which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" }, "which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" },
"yazi.nvim": { "branch": "main", "commit": "8ce0abb50c30fdc486c465ddfab28510346e6bd7" } "yazi.nvim": { "branch": "main", "commit": "acaa305ce150d426a7fa8aa3064213d17f8af69f" }
} }

View File

@@ -19,7 +19,7 @@
], ],
"install_version": 7, "install_version": 7,
"news": { "news": {
"NEWS.md": "10960" "NEWS.md": "11866"
}, },
"version": 8 "version": 8
} }

View File

@@ -1,33 +1,33 @@
-- Autocmds are automatically loaded on the VeryLazy event -- Autocmds are automatically loaded on the VeryLazy event
-- Default autocmds that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/autocmds.lua -- Default autocmds that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/autocmds.lua
-- Add any additional autocmds here -- Add any additional autocmds here
local augroup = vim.api.nvim_create_augroup local augroup = vim.api.nvim_create_augroup
local autocmd = vim.api.nvim_create_autocmd local autocmd = vim.api.nvim_create_autocmd
local view_group = augroup("auto_view", { clear = true }) local view_group = augroup("auto_view", { clear = true })
autocmd({ "BufWinLeave", "BufWritePost", "WinLeave" }, { autocmd({ "BufWinLeave", "BufWritePost", "WinLeave" }, {
desc = "Save view with mkview for real files", desc = "Save view with mkview for real files",
group = view_group, group = view_group,
callback = function(args) callback = function(args)
if vim.b[args.buf].view_activated then if vim.b[args.buf].view_activated then
vim.cmd.mkview({ mods = { emsg_silent = true } }) vim.cmd.mkview({ mods = { emsg_silent = true } })
end end
end, end,
}) })
autocmd("BufWinEnter", { autocmd("BufWinEnter", {
desc = "Try to load file view if available and enable view saving for real files", desc = "Try to load file view if available and enable view saving for real files",
group = view_group, group = view_group,
callback = function(args) callback = function(args)
if not vim.b[args.buf].view_activated then if not vim.b[args.buf].view_activated then
local filetype = vim.api.nvim_get_option_value("filetype", { buf = args.buf }) local filetype = vim.api.nvim_get_option_value("filetype", { buf = args.buf })
local buftype = vim.api.nvim_get_option_value("buftype", { buf = args.buf }) local buftype = vim.api.nvim_get_option_value("buftype", { buf = args.buf })
local ignore_filetypes = { "gitcommit", "gitrebase", "svg", "hgcommit" } local ignore_filetypes = { "gitcommit", "gitrebase", "svg", "hgcommit" }
if buftype == "" and filetype and filetype ~= "" and not vim.tbl_contains(ignore_filetypes, filetype) then if buftype == "" and filetype and filetype ~= "" and not vim.tbl_contains(ignore_filetypes, filetype) then
vim.b[args.buf].view_activated = true vim.b[args.buf].view_activated = true
vim.cmd.loadview({ mods = { emsg_silent = true } }) vim.cmd.loadview({ mods = { emsg_silent = true } })
end end
end end
end, end,
}) })

View File

@@ -1,42 +1,42 @@
-- Keymaps are automatically loaded on the VeryLazy event -- Keymaps are automatically loaded on the VeryLazy event
-- Default keymaps that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/keymaps.lua -- Default keymaps that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/keymaps.lua
-- Add any additional keymaps here -- Add any additional keymaps here
local map = vim.keymap.set local map = vim.keymap.set
-- Buffer management -- Buffer management
map("n", "<leader>bn", ":bnext<CR>", { noremap = true, silent = true, desc = "Next buffer" }) map("n", "<leader>bn", ":bnext<CR>", { noremap = true, silent = true, desc = "Next buffer" })
map("n", "<leader>bp", ":bprevious<CR>", { noremap = true, silent = true, desc = "Previous buffer" }) map("n", "<leader>bp", ":bprevious<CR>", { noremap = true, silent = true, desc = "Previous buffer" })
map("n", "<leader>bd", ":bdelete<CR>", { noremap = true, silent = true, desc = "Delete buffer" }) map("n", "<leader>bd", ":bdelete<CR>", { noremap = true, silent = true, desc = "Delete buffer" })
-- Copy to system clipboard (if not already mapped) -- Copy to system clipboard (if not already mapped)
map({ "n", "v" }, "<leader>y", [["+y]], { noremap = true, silent = true, desc = "Copy to system clipboard" }) map({ "n", "v" }, "<leader>y", [["+y]], { noremap = true, silent = true, desc = "Copy to system clipboard" })
-- Paste from system clipboard -- Paste from system clipboard
map("n", "<leader>p", [["+p]], { noremap = true, silent = true, desc = "Paste from system clipboard" }) map("n", "<leader>p", [["+p]], { noremap = true, silent = true, desc = "Paste from system clipboard" })
vim.keymap.set("n", "<leader>cc", function() vim.keymap.set("n", "<leader>cc", function()
local file1 = vim.fn.expand("%") local file1 = vim.fn.expand("%")
local project_root = vim.fn.systemlist("git rev-parse --show-toplevel")[1] local project_root = vim.fn.systemlist("git rev-parse --show-toplevel")[1]
if project_root == "" then if project_root == "" then
project_root = vim.fn.getcwd() project_root = vim.fn.getcwd()
end end
require("telescope.builtin").find_files({ require("telescope.builtin").find_files({
prompt_title = "Compare with...", prompt_title = "Compare with...",
cwd = project_root, cwd = project_root,
hidden = true, hidden = true,
follow = true, follow = true,
attach_mappings = function(_, map) attach_mappings = function(_, map)
map("i", "<CR>", function(prompt_bufnr) map("i", "<CR>", function(prompt_bufnr)
local actions = require("telescope.actions") local actions = require("telescope.actions")
local action_state = require("telescope.actions.state") local action_state = require("telescope.actions.state")
local file2 = action_state.get_selected_entry().path local file2 = action_state.get_selected_entry().path
actions.close(prompt_bufnr) actions.close(prompt_bufnr)
require("user.utils").meld_diff(file1, file2) require("user.utils").meld_diff(file1, file2)
end) end)
return true return true
end, end,
}) })
end, { desc = "Compare with" }) end, { desc = "Compare with" })

View File

@@ -1,170 +1,170 @@
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not (vim.uv or vim.loop).fs_stat(lazypath) then if not (vim.uv or vim.loop).fs_stat(lazypath) then
local lazyrepo = "https://github.com/folke/lazy.nvim.git" local lazyrepo = "https://github.com/folke/lazy.nvim.git"
local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath }) local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath })
if vim.v.shell_error ~= 0 then if vim.v.shell_error ~= 0 then
vim.api.nvim_echo({ vim.api.nvim_echo({
{ "Failed to clone lazy.nvim:\n", "ErrorMsg" }, { "Failed to clone lazy.nvim:\n", "ErrorMsg" },
{ out, "WarningMsg" }, { out, "WarningMsg" },
{ "\nPress any key to exit..." }, { "\nPress any key to exit..." },
}, true, {}) }, true, {})
vim.fn.getchar() vim.fn.getchar()
os.exit(1) os.exit(1)
end end
end end
vim.opt.rtp:prepend(lazypath) vim.opt.rtp:prepend(lazypath)
-- Start LazyVim plugins -- Start LazyVim plugins
require("lazy").setup({ require("lazy").setup({
spec = { spec = {
-- add LazyVim and import its plugins -- add LazyVim and import its plugins
{ "LazyVim/LazyVim", import = "lazyvim.plugins" }, { "LazyVim/LazyVim", import = "lazyvim.plugins" },
-- import/override with your plugins -- import/override with your plugins
{ import = "plugins" }, { import = "plugins" },
}, },
defaults = { defaults = {
-- By default, only LazyVim plugins will be lazy-loaded. Your custom plugins will load during startup. -- By default, only LazyVim plugins will be lazy-loaded. Your custom plugins will load during startup.
-- If you know what you're doing, you can set this to `true` to have all your custom plugins lazy-loaded by default. -- If you know what you're doing, you can set this to `true` to have all your custom plugins lazy-loaded by default.
lazy = false, lazy = false,
-- It's recommended to leave version=false for now, since a lot the plugin that support versioning, -- It's recommended to leave version=false for now, since a lot the plugin that support versioning,
-- have outdated releases, which may break your Neovim install. -- have outdated releases, which may break your Neovim install.
version = false, -- always use the latest git commit version = false, -- always use the latest git commit
-- version = "*", -- try installing the latest stable version for plugins that support semver -- version = "*", -- try installing the latest stable version for plugins that support semver
}, },
checker = { enabled = true }, -- automatically check for plugin updates checker = { enabled = true }, -- automatically check for plugin updates
performance = { performance = {
rtp = { rtp = {
-- disable some rtp plugins -- disable some rtp plugins
disabled_plugins = { disabled_plugins = {
"gzip", "gzip",
"matchit", "matchit",
"matchparen", "matchparen",
"netrwPlugin", "netrwPlugin",
"tarPlugin", "tarPlugin",
"tohtml", "tohtml",
"tutor", "tutor",
"zipPlugin", "zipPlugin",
}, },
}, },
}, },
cache = true, cache = true,
}) })
-- Configure status bar -- Configure status bar
require("config.statusline") require("config.statusline")
-- Configure Markdown rendering rules -- Configure Markdown rendering rules
require("render-markdown").setup({ require("render-markdown").setup({
heading = { position = "inline" }, heading = { position = "inline" },
quote = { repeat_linebreak = true }, quote = { repeat_linebreak = true },
win_options = { win_options = {
showbreak = { showbreak = {
default = "", default = "",
rendered = " ", rendered = " ",
}, },
breakindent = { breakindent = {
default = false, default = false,
rendered = true, rendered = true,
}, },
breakindentopt = { breakindentopt = {
default = "", default = "",
rendered = "", rendered = "",
}, },
}, },
checkbox = { checkbox = {
unchecked = { icon = "" }, unchecked = { icon = "" },
checked = { icon = "" }, checked = { icon = "" },
}, },
code = { code = {
position = "right", position = "right",
width = "block", width = "block",
right_pad = 10, right_pad = 10,
}, },
latex = { latex = {
enabled = false, enabled = false,
}, },
link = { link = {
custom = { custom = {
c = { c = {
pattern = "%.[ch]$", pattern = "%.[ch]$",
icon = "", icon = "",
}, },
golang = { golang = {
pattern = "%.go$", pattern = "%.go$",
icon = "", icon = "",
}, },
python = { python = {
pattern = "%.py$", pattern = "%.py$",
icon = "󰌠 ", icon = "󰌠 ",
}, },
lua = { lua = {
pattern = "%.lua$", pattern = "%.lua$",
icon = "", icon = "",
}, },
-- shell = { -- shell = {
-- pattern = "%.[sh|zsh]$", -- pattern = "%.[sh|zsh]$",
-- icon = " ", -- icon = " ",
-- }, -- },
}, },
}, },
}) })
-- Configure TreeSitter syntax parsers -- Configure TreeSitter syntax parsers
require("nvim-treesitter.configs").setup({ require("nvim-treesitter.configs").setup({
-- A list of parser names, or "all" (the listed parsers MUST always be installed) -- A list of parser names, or "all" (the listed parsers MUST always be installed)
ensure_installed = { ensure_installed = {
"c", "c",
"lua", "lua",
"bash", "bash",
"go", "go",
"gomod", "gomod",
"gowork", "gowork",
"gosum", "gosum",
"json", "json",
"markdown", "markdown",
"markdown_inline", "markdown_inline",
"python", "python",
"zig", "zig",
}, },
-- Install parsers synchronously (only applied to `ensure_installed`) -- Install parsers synchronously (only applied to `ensure_installed`)
sync_install = false, sync_install = false,
-- Automatically install missing parsers when entering buffer -- Automatically install missing parsers when entering buffer
-- Recommendation: set to false if you don't have `tree-sitter` CLI installed locally -- Recommendation: set to false if you don't have `tree-sitter` CLI installed locally
auto_install = true, auto_install = true,
-- List of parsers to ignore installing (or "all") -- List of parsers to ignore installing (or "all")
ignore_install = { "javascript" }, ignore_install = { "javascript" },
---- If you need to change the installation directory of the parsers (see -> Advanced Setup) ---- If you need to change the installation directory of the parsers (see -> Advanced Setup)
-- parser_install_dir = "/some/path/to/store/parsers", -- Remember to run vim.opt.runtimepath:append("/some/path/to/store/parsers")! -- parser_install_dir = "/some/path/to/store/parsers", -- Remember to run vim.opt.runtimepath:append("/some/path/to/store/parsers")!
highlight = { highlight = {
enable = true, enable = true,
-- NOTE: these are the names of the parsers and not the filetype. (for example if you want to -- NOTE: these are the names of the parsers and not the filetype. (for example if you want to
-- disable highlighting for the `tex` filetype, you need to include `latex` in this list as this is -- disable highlighting for the `tex` filetype, you need to include `latex` in this list as this is
-- the name of the parser) -- the name of the parser)
-- list of language that will be disabled -- list of language that will be disabled
disable = {}, disable = {},
-- Or use a function for more flexibility, e.g. to disable slow treesitter highlight for large files -- Or use a function for more flexibility, e.g. to disable slow treesitter highlight for large files
disable = function(lang, buf) disable = function(lang, buf)
local max_filesize = 100 * 1024 -- 100 KB local max_filesize = 100 * 1024 -- 100 KB
local ok, stats = pcall(vim.loop.fs_stat, vim.api.nvim_buf_get_name(buf)) local ok, stats = pcall(vim.loop.fs_stat, vim.api.nvim_buf_get_name(buf))
if ok and stats and stats.size > max_filesize then if ok and stats and stats.size > max_filesize then
return true return true
end end
end, end,
-- Setting this to true will run `:h syntax` and tree-sitter at the same time. -- Setting this to true will run `:h syntax` and tree-sitter at the same time.
-- Set this to `true` if you depend on 'syntax' being enabled (like for indentation). -- Set this to `true` if you depend on 'syntax' being enabled (like for indentation).
-- Using this option may slow down your editor, and you may see some duplicate highlights. -- Using this option may slow down your editor, and you may see some duplicate highlights.
-- Instead of true it can also be a list of languages -- Instead of true it can also be a list of languages
additional_vim_regex_highlighting = false, additional_vim_regex_highlighting = false,
}, },
}) })
-- Configure Mini.AI for textobjects command -- Configure Mini.AI for textobjects command
require("mini.ai").setup() require("mini.ai").setup()

View File

@@ -1,57 +1,57 @@
-- Options are automatically loaded before lazy.nvim startup -- 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 -- Default options that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/options.lua
-- Add any additional options here -- Add any additional options here
local opt = vim.opt local opt = vim.opt
-- Encoding -- Encoding
opt.encoding = "utf-8" opt.encoding = "utf-8"
opt.fileencoding = "utf-8" opt.fileencoding = "utf-8"
-- Line numbers -- Line numbers
opt.number = true opt.number = true
opt.relativenumber = true opt.relativenumber = true
-- Enable mouse in all modes -- Enable mouse in all modes
opt.mouse = "a" opt.mouse = "a"
-- Better searching -- Better searching
opt.ignorecase = true opt.ignorecase = true
opt.smartcase = true opt.smartcase = true
-- Highlight current line -- Highlight current line
opt.cursorline = true opt.cursorline = true
opt.cursorlineopt = "number" opt.cursorlineopt = "number"
-- Enable true color support -- Enable true color support
opt.termguicolors = true opt.termguicolors = true
-- Enable system clipboard -- Enable system clipboard
opt.clipboard = "unnamedplus" opt.clipboard = "unnamedplus"
-- Indentation -- Indentation
-- opt.softtabstop = 8 -- opt.softtabstop = 8
-- opt.shiftwidth = 8 -- opt.shiftwidth = 8
-- opt.tabstop = 8 -- opt.tabstop = 8
opt.expandtab = true opt.expandtab = true
opt.smartindent = true opt.smartindent = true
-- Split behavior -- Split behavior
opt.splitright = true opt.splitright = true
opt.splitbelow = true opt.splitbelow = true
-- Enable undo file to persist undo history -- Enable undo file to persist undo history
opt.undofile = true opt.undofile = true
-- Set upbar similar to statusline (optional) -- Set upbar similar to statusline (optional)
opt.statusline = "%f %m %r %=%-14.(%l,%c%V%) %P" opt.statusline = "%f %m %r %=%-14.(%l,%c%V%) %P"
-- Persistent signcolumn to avoid text shifting -- Persistent signcolumn to avoid text shifting
opt.signcolumn = "yes" opt.signcolumn = "yes"
-- Show file name and modified flag in the window bar -- Show file name and modified flag in the window bar
opt.winbar = "%=%m %f" opt.winbar = "%=%m %f"
-- Backup files -- Backup files
opt.swapfile = false opt.swapfile = false
opt.backup = false opt.backup = false

438
lazyvim/.config/nvim/lua/config/statusline.lua Normal file → Executable file
View File

@@ -1,219 +1,219 @@
-- Eviline config for lualine -- Eviline config for lualine
-- Author: shadmansaleh -- Author: shadmansaleh
-- Credit: glepnir -- Credit: glepnir
local lualine = require("lualine") local lualine = require("lualine")
-- Color table for highlights -- Color table for highlights
-- stylua: ignore -- stylua: ignore
local colors = { local colors = {
bg = '#202328', bg = '#202328',
fg = '#bbc2cf', fg = '#bbc2cf',
yellow = '#ECBE7B', yellow = '#ECBE7B',
cyan = '#008080', cyan = '#008080',
darkblue = '#081633', darkblue = '#081633',
green = '#98be65', green = '#98be65',
orange = '#FF8800', orange = '#FF8800',
violet = '#a9a1e1', violet = '#a9a1e1',
magenta = '#c678dd', magenta = '#c678dd',
blue = '#51afef', blue = '#51afef',
red = '#ec5f67', red = '#ec5f67',
} }
local conditions = { local conditions = {
buffer_not_empty = function() buffer_not_empty = function()
return vim.fn.empty(vim.fn.expand("%:t")) ~= 1 return vim.fn.empty(vim.fn.expand("%:t")) ~= 1
end, end,
hide_in_width = function() hide_in_width = function()
return vim.fn.winwidth(0) > 80 return vim.fn.winwidth(0) > 80
end, end,
check_git_workspace = function() check_git_workspace = function()
local filepath = vim.fn.expand("%:p:h") local filepath = vim.fn.expand("%:p:h")
local gitdir = vim.fn.finddir(".git", filepath .. ";") local gitdir = vim.fn.finddir(".git", filepath .. ";")
return gitdir and #gitdir > 0 and #gitdir < #filepath return gitdir and #gitdir > 0 and #gitdir < #filepath
end, end,
} }
-- Config -- Config
local config = { local config = {
options = { options = {
-- Disable sections and component separators -- Disable sections and component separators
component_separators = "", component_separators = "",
section_separators = "", section_separators = "",
theme = "catppuccin", theme = "catppuccin",
}, },
sections = { sections = {
-- these are to remove the defaults -- these are to remove the defaults
lualine_a = {}, lualine_a = {},
lualine_b = {}, lualine_b = {},
lualine_y = {}, lualine_y = {},
lualine_z = {}, lualine_z = {},
-- These will be filled later -- These will be filled later
lualine_c = {}, lualine_c = {},
lualine_x = {}, lualine_x = {},
}, },
inactive_sections = { inactive_sections = {
-- these are to remove the defaults -- these are to remove the defaults
lualine_a = {}, lualine_a = {},
lualine_b = {}, lualine_b = {},
lualine_y = {}, lualine_y = {},
lualine_z = {}, lualine_z = {},
lualine_c = {}, lualine_c = {},
lualine_x = {}, lualine_x = {},
}, },
} }
-- Inserts a component in lualine_c at left section -- Inserts a component in lualine_c at left section
local function ins_left(component) local function ins_left(component)
table.insert(config.sections.lualine_c, component) table.insert(config.sections.lualine_c, component)
end end
-- Inserts a component in lualine_x at right section -- Inserts a component in lualine_x at right section
local function ins_right(component) local function ins_right(component)
table.insert(config.sections.lualine_x, component) table.insert(config.sections.lualine_x, component)
end end
ins_left({ ins_left({
function() function()
return "" return ""
end, end,
color = { fg = colors.blue }, -- Sets highlighting of component color = { fg = colors.blue }, -- Sets highlighting of component
padding = { left = 0, right = 1 }, -- We don't need space before this padding = { left = 0, right = 1 }, -- We don't need space before this
}) })
-- -- Function to get the current mode indicator as a single character -- -- Function to get the current mode indicator as a single character
local function mode() local function mode()
-- Map of modes to their respective shorthand indicators -- Map of modes to their respective shorthand indicators
local mode_map = { local mode_map = {
n = "NORMAL", -- Normal mode n = "NORMAL", -- Normal mode
v = "VISUAL", -- Visual mode v = "VISUAL", -- Visual mode
[""] = "VISUAL BLOCK", -- Visual block mode [""] = "VISUAL BLOCK", -- Visual block mode
V = "VISUAL LINE", -- Visual line mode V = "VISUAL LINE", -- Visual line mode
c = "COMMAND", -- Command-line mode c = "COMMAND", -- Command-line mode
no = "N-INSERT", -- NInsert mode no = "N-INSERT", -- NInsert mode
s = "SELECT", -- Select mode s = "SELECT", -- Select mode
S = "SELECT-LINE", -- Select line mode S = "SELECT-LINE", -- Select line mode
ic = "INSERT", -- Insert mode (completion) ic = "INSERT", -- Insert mode (completion)
R = "REPLACE", -- Replace mode R = "REPLACE", -- Replace mode
Rv = "VISUAL REPLACE", -- Virtual Replace mode Rv = "VISUAL REPLACE", -- Virtual Replace mode
cv = "COMMAND-LINE", -- Command-line mode cv = "COMMAND-LINE", -- Command-line mode
ce = "C", -- Ex mode ce = "C", -- Ex mode
r = "R", -- Prompt mode r = "R", -- Prompt mode
rm = "M", -- More mode rm = "M", -- More mode
["r?"] = "?", -- Confirm mode ["r?"] = "?", -- Confirm mode
["!"] = "!", -- Shell mode ["!"] = "!", -- Shell mode
t = "TERMINAL", -- Terminal mode t = "TERMINAL", -- Terminal mode
} }
-- Return the mode shorthand or [UNKNOWN] if no match -- Return the mode shorthand or [UNKNOWN] if no match
return mode_map[vim.fn.mode()] or "[UNKNOWN]" return mode_map[vim.fn.mode()] or "[UNKNOWN]"
end end
ins_left({ ins_left({
-- mode component -- mode component
mode, mode,
color = function() color = function()
-- auto change color according to neovims mode -- auto change color according to neovims mode
local mode_color = { local mode_color = {
n = colors.red, n = colors.red,
i = colors.green, i = colors.green,
v = colors.blue, v = colors.blue,
[""] = colors.blue, [""] = colors.blue,
V = colors.blue, V = colors.blue,
c = colors.magenta, c = colors.magenta,
no = colors.red, no = colors.red,
s = colors.orange, s = colors.orange,
S = colors.orange, S = colors.orange,
[""] = colors.orange, [""] = colors.orange,
ic = colors.yellow, ic = colors.yellow,
R = colors.violet, R = colors.violet,
Rv = colors.violet, Rv = colors.violet,
cv = colors.red, cv = colors.red,
ce = colors.red, ce = colors.red,
r = colors.cyan, r = colors.cyan,
rm = colors.cyan, rm = colors.cyan,
["r?"] = colors.cyan, ["r?"] = colors.cyan,
["!"] = colors.red, ["!"] = colors.red,
t = colors.red, t = colors.red,
} }
return { fg = mode_color[vim.fn.mode()] } return { fg = mode_color[vim.fn.mode()] }
end, end,
padding = { right = 1 }, padding = { right = 1 },
}) })
ins_left({ ins_left({
-- filesize component -- filesize component
"filesize", "filesize",
cond = conditions.buffer_not_empty, cond = conditions.buffer_not_empty,
}) })
ins_left({ ins_left({
"filename", "filename",
cond = conditions.buffer_not_empty, cond = conditions.buffer_not_empty,
color = { fg = colors.magenta, gui = "bold" }, color = { fg = colors.magenta, gui = "bold" },
}) })
ins_left({ "location" }) ins_left({ "location" })
ins_left({ "progress", color = { fg = colors.fg, gui = "bold" } }) ins_left({ "progress", color = { fg = colors.fg, gui = "bold" } })
ins_left({ ins_left({
"diagnostics", "diagnostics",
sources = { "nvim_diagnostic" }, sources = { "nvim_diagnostic" },
symbols = { error = "", warn = "", info = "" }, symbols = { error = "", warn = "", info = "" },
diagnostics_color = { diagnostics_color = {
error = { fg = colors.red }, error = { fg = colors.red },
warn = { fg = colors.yellow }, warn = { fg = colors.yellow },
info = { fg = colors.cyan }, info = { fg = colors.cyan },
}, },
}) })
-- Insert mid section. You can make any number of sections in neovim :) -- Insert mid section. You can make any number of sections in neovim :)
-- for lualine it's any number greater then 2 -- for lualine it's any number greater then 2
ins_left({ ins_left({
function() function()
return "%=" return "%="
end, end,
}) })
-- Add components to right sections -- Add components to right sections
ins_right({ ins_right({
"o:encoding", -- option component same as &encoding in viml "o:encoding", -- option component same as &encoding in viml
fmt = string.upper, -- I'm not sure why it's upper case either ;) fmt = string.upper, -- I'm not sure why it's upper case either ;)
cond = conditions.hide_in_width, cond = conditions.hide_in_width,
color = { fg = colors.green, gui = "bold" }, color = { fg = colors.green, gui = "bold" },
}) })
ins_right({ ins_right({
"fileformat", "fileformat",
fmt = string.upper, fmt = string.upper,
icons_enabled = false, -- I think icons are cool but Eviline doesn't have them. sigh icons_enabled = false, -- I think icons are cool but Eviline doesn't have them. sigh
color = { fg = colors.green, gui = "bold" }, color = { fg = colors.green, gui = "bold" },
}) })
ins_right({ ins_right({
"branch", "branch",
icon = "", icon = "",
color = { fg = colors.violet, gui = "bold" }, color = { fg = colors.violet, gui = "bold" },
}) })
ins_right({ ins_right({
"diff", "diff",
-- Is it me or the symbol for modified us really weird -- Is it me or the symbol for modified us really weird
symbols = { added = "", modified = "󰝤 ", removed = "" }, symbols = { added = "", modified = "󰝤 ", removed = "" },
diff_color = { diff_color = {
added = { fg = colors.green }, added = { fg = colors.green },
modified = { fg = colors.orange }, modified = { fg = colors.orange },
removed = { fg = colors.red }, removed = { fg = colors.red },
}, },
cond = conditions.hide_in_width, cond = conditions.hide_in_width,
}) })
ins_right({ ins_right({
function() function()
return "" return ""
end, end,
color = { fg = colors.blue }, color = { fg = colors.blue },
padding = { left = 1 }, padding = { left = 1 },
}) })
-- Now don't forget to initialize lualine -- Now don't forget to initialize lualine
lualine.setup(config) lualine.setup(config)

View File

@@ -0,0 +1,28 @@
require("nvim-treesitter.configs").setup({
ensure_installed = {
"bash",
"c",
"go",
"gomod",
"gowork",
"gosum",
"json",
"lua",
"markdown",
"python",
"org",
"zig",
},
highlight = {
enabled = true,
},
incremental_selection = {
enabled = true,
keymaps = {
init_selection = "gnn",
node_incremental = "grn",
scope_incremental = "grc",
node_decremental = "grm",
},
},
})

View File

@@ -1,16 +1,16 @@
return { return {
"goolord/alpha-nvim", "goolord/alpha-nvim",
opts = function(_, opts) opts = function(_, opts)
local logo = [[ local logo = [[
███╗ ██╗███████╗ ██████╗ ██╗ ██╗██╗███╗ ███╗ ███╗ ██╗███████╗ ██████╗ ██╗ ██╗██╗███╗ ███╗
████╗ ██║██╔════╝██╔═══██╗██║ ██║██║████╗ ████║ ████╗ ██║██╔════╝██╔═══██╗██║ ██║██║████╗ ████║
██╔██╗ ██║█████╗ ██║ ██║██║ ██║██║██╔████╔██║ ██╔██╗ ██║█████╗ ██║ ██║██║ ██║██║██╔████╔██║
██║╚██╗██║██╔══╝ ██║ ██║╚██╗ ██╔╝██║██║╚██╔╝██║ ██║╚██╗██║██╔══╝ ██║ ██║╚██╗ ██╔╝██║██║╚██╔╝██║
██║ ╚████║███████╗╚██████╔╝ ╚████╔╝ ██║██║ ╚═╝ ██║ ██║ ╚████║███████╗╚██████╔╝ ╚████╔╝ ██║██║ ╚═╝ ██║
╚═╝ ╚═══╝╚══════╝ ╚═════╝ ╚═══╝ ╚═╝╚═╝ ╚═╝ ╚═╝ ╚═══╝╚══════╝ ╚═════╝ ╚═══╝ ╚═╝╚═╝ ╚═╝
[ @elijahmanor ] [ @elijahmanor ]
]] ]]
opts.section.header.val = vim.split(logo, "\n", { trimempty = true }) opts.section.header.val = vim.split(logo, "\n", { trimempty = true })
end, end,
} }

View File

@@ -1,96 +1,96 @@
return { return {
{ {
"mason-org/mason.nvim", "mason-org/mason.nvim",
opts = { opts = {
ui = { ui = {
icons = { icons = {
package_installed = "", package_installed = "",
package_pending = "", package_pending = "",
package_uninstalled = "", package_uninstalled = "",
}, },
}, },
ensure_installed = { ensure_installed = {
-- LSP servers -- LSP servers
"clangd", -- C / C++ "clangd", -- C / C++
"gopls", -- Go "gopls", -- Go
"python-lsp-server", -- Python "python-lsp-server", -- Python
"bash-language-server", -- Bash "bash-language-server", -- Bash
"zls", -- Zig "zls", -- Zig
"lua-language-server", -- Lua "lua-language-server", -- Lua
-- Formatters / Linters -- Formatters / Linters
"stylua", -- Lua formatter "stylua", -- Lua formatter
"shfmt", -- Shell formatter "shfmt", -- Shell formatter
"black", -- Python formatter "black", -- Python formatter
"clang-format", -- C/C++ formatter "clang-format", -- C/C++ formatter
"goimports", -- Go formatter "goimports", -- Go formatter
}, },
}, },
}, },
{ {
"hrsh7th/nvim-cmp", "hrsh7th/nvim-cmp",
dependencies = { dependencies = {
"hrsh7th/cmp-nvim-lsp", "hrsh7th/cmp-nvim-lsp",
"hrsh7th/cmp-buffer", "hrsh7th/cmp-buffer",
"hrsh7th/cmp-path", "hrsh7th/cmp-path",
"hrsh7th/cmp-nvim-lua", "hrsh7th/cmp-nvim-lua",
"saadparwaiz1/cmp_luasnip", "saadparwaiz1/cmp_luasnip",
"L3MON4D3/LuaSnip", "L3MON4D3/LuaSnip",
"onsails/lspkind.nvim", -- icone carine nel completamento "onsails/lspkind.nvim", -- icone carine nel completamento
}, },
opts = function(_, opts) opts = function(_, opts)
local cmp = require("cmp") local cmp = require("cmp")
local luasnip = require("luasnip") local luasnip = require("luasnip")
local lspkind = require("lspkind") local lspkind = require("lspkind")
-- Carica snippet -- Carica snippet
require("luasnip.loaders.from_vscode").lazy_load() require("luasnip.loaders.from_vscode").lazy_load()
opts.snippet = { opts.snippet = {
expand = function(args) expand = function(args)
luasnip.lsp_expand(args.body) luasnip.lsp_expand(args.body)
end, end,
} }
opts.mapping = vim.tbl_extend("force", opts.mapping, { opts.mapping = vim.tbl_extend("force", opts.mapping, {
["<C-Space>"] = cmp.mapping.complete(), ["<C-Space>"] = cmp.mapping.complete(),
["<CR>"] = cmp.mapping.confirm({ select = true }), ["<CR>"] = cmp.mapping.confirm({ select = true }),
["<Tab>"] = cmp.mapping(function(fallback) ["<Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then if cmp.visible() then
cmp.select_next_item() cmp.select_next_item()
elseif luasnip.expand_or_jumpable() then elseif luasnip.expand_or_jumpable() then
luasnip.expand_or_jump() luasnip.expand_or_jump()
else else
fallback() fallback()
end end
end, { "i", "s" }), end, { "i", "s" }),
["<S-Tab>"] = cmp.mapping(function(fallback) ["<S-Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then if cmp.visible() then
cmp.select_prev_item() cmp.select_prev_item()
elseif luasnip.jumpable(-1) then elseif luasnip.jumpable(-1) then
luasnip.jump(-1) luasnip.jump(-1)
else else
fallback() fallback()
end end
end, { "i", "s" }), end, { "i", "s" }),
}) })
opts.sources = cmp.config.sources({ opts.sources = cmp.config.sources({
{ name = "nvim_lsp" }, { name = "nvim_lsp" },
{ name = "luasnip" }, { name = "luasnip" },
{ name = "nvim_lua" }, { name = "nvim_lua" },
{ name = "buffer" }, { name = "buffer" },
{ name = "path" }, { name = "path" },
}) })
opts.formatting = { opts.formatting = {
format = lspkind.cmp_format({ format = lspkind.cmp_format({
mode = "symbol_text", mode = "symbol_text",
maxwidth = 50, maxwidth = 50,
ellipsis_char = "...", ellipsis_char = "...",
}), }),
} }
return opts return opts
end, end,
}, },
} }

View File

@@ -1,15 +1,15 @@
return { return {
"catppuccin/nvim", "catppuccin/nvim",
name = "catppuccin", name = "catppuccin",
lazy = false, lazy = false,
priority = 1000, priority = 1000,
opts = { opts = {
flavour = "mocha", flavour = "mocha",
transparent_background = false, transparent_background = false,
}, },
config = function(_, opts) config = function(_, opts)
require("catppuccin").setup(opts) require("catppuccin").setup(opts)
-- vim.cmd.colorscheme("catppuccin-mocha") -- vim.cmd.colorscheme("catppuccin-mocha")
vim.cmd.colorscheme("tokyonight-night") vim.cmd.colorscheme("tokyonight-night")
end, end,
} }

View File

@@ -1,108 +1,108 @@
return { return {
{ {
"mfussenegger/nvim-dap", "mfussenegger/nvim-dap",
dependencies = { dependencies = {
"leoluz/nvim-dap-go", "leoluz/nvim-dap-go",
"rcarriga/nvim-dap-ui", "rcarriga/nvim-dap-ui",
"theHamsta/nvim-dap-virtual-text", "theHamsta/nvim-dap-virtual-text",
"nvim-neotest/nvim-nio", "nvim-neotest/nvim-nio",
"williamboman/mason.nvim", "williamboman/mason.nvim",
"jay-babu/mason-nvim-dap.nvim", -- Dependency for managing DAP adapters with Mason "jay-babu/mason-nvim-dap.nvim", -- Dependency for managing DAP adapters with Mason
"mfussenegger/nvim-dap-python", -- Dependency for Python debugging "mfussenegger/nvim-dap-python", -- Dependency for Python debugging
}, },
config = function() config = function()
local dap = require("dap") local dap = require("dap")
local dapui = require("dapui") local dapui = require("dapui")
local mason_dap = require("mason-nvim-dap") local mason_dap = require("mason-nvim-dap")
-- Configure mason-nvim-dap to automatically install DAP adapters -- Configure mason-nvim-dap to automatically install DAP adapters
mason_dap.setup({ mason_dap.setup({
ensure_installed = { ensure_installed = {
"delve", -- Go Debugger Adapter "delve", -- Go Debugger Adapter
"codelldb", -- C/C++ Debugger Adapter "codelldb", -- C/C++ Debugger Adapter
"debugpy", -- Python Debugger Adapter "debugpy", -- Python Debugger Adapter
}, },
handlers = {}, handlers = {},
}) })
-- Set up the DAP UI -- Set up the DAP UI
dapui.setup() dapui.setup()
-- Set up the Go debugging configurations -- Set up the Go debugging configurations
require("dap-go").setup() require("dap-go").setup()
-- Set up the Python debugging configurations -- Set up the Python debugging configurations
require("dap-python").setup() require("dap-python").setup()
-- Configure nvim-dap-virtual-text -- Configure nvim-dap-virtual-text
require("nvim-dap-virtual-text").setup({ require("nvim-dap-virtual-text").setup({
display_callback = function(variable) display_callback = function(variable)
local name = string.lower(variable.name) local name = string.lower(variable.name)
local value = string.lower(variable.value) local value = string.lower(variable.value)
if name:match("secret") or name:match("api") or value:match("secret") or value:match("api") then if name:match("secret") or name:match("api") or value:match("secret") or value:match("api") then
return "*****" return "*****"
end end
if #variable.value > 15 then if #variable.value > 15 then
return " " .. string.sub(variable.value, 1, 15) .. "... " return " " .. string.sub(variable.value, 1, 15) .. "... "
end end
return " " .. variable.value return " " .. variable.value
end, end,
}) })
-- Configure the CodeLLDB adapter for C/C++ -- Configure the CodeLLDB adapter for C/C++
dap.adapters.codelldb = { dap.adapters.codelldb = {
type = "server", type = "server",
port = "${port}", port = "${port}",
executable = { executable = {
command = vim.fn.stdpath("data") .. "/mason/bin/codelldb", command = vim.fn.stdpath("data") .. "/mason/bin/codelldb",
args = { "--port", "${port}" }, args = { "--port", "${port}" },
}, },
} }
-- Define launch configurations for C/C++ -- Define launch configurations for C/C++
dap.configurations.c = { dap.configurations.c = {
{ {
name = "Launch C", name = "Launch C",
type = "codelldb", type = "codelldb",
request = "launch", request = "launch",
program = function() program = function()
return vim.fn.input("Path to executable: ", vim.fn.getcwd() .. "/", "file") return vim.fn.input("Path to executable: ", vim.fn.getcwd() .. "/", "file")
end, end,
cwd = "${workspaceFolder}", cwd = "${workspaceFolder}",
stopOnEntry = false, stopOnEntry = false,
}, },
} }
dap.configurations.cpp = dap.configurations.c dap.configurations.cpp = dap.configurations.c
-- Your keyboard shortcuts for debugging -- Your keyboard shortcuts for debugging
vim.keymap.set("n", "<space>b", dap.toggle_breakpoint) vim.keymap.set("n", "<space>b", dap.toggle_breakpoint)
vim.keymap.set("n", "<space>gb", dap.run_to_cursor) vim.keymap.set("n", "<space>gb", dap.run_to_cursor)
vim.keymap.set("n", "<space>?", function() vim.keymap.set("n", "<space>?", function()
dapui.eval(nil, { enter = true }) dapui.eval(nil, { enter = true })
end) end)
vim.keymap.set("n", "<F9>", dap.continue) vim.keymap.set("n", "<F9>", dap.continue)
vim.keymap.set("n", "<F7>", dap.step_into) vim.keymap.set("n", "<F7>", dap.step_into)
vim.keymap.set("n", "<F8>", dap.step_over) vim.keymap.set("n", "<F8>", dap.step_over)
vim.keymap.set("n", "<F6>", dap.step_out) vim.keymap.set("n", "<F6>", dap.step_out)
vim.keymap.set("n", "<F5>", dap.step_back) vim.keymap.set("n", "<F5>", dap.step_back)
vim.keymap.set("n", "<F12>", dap.restart) vim.keymap.set("n", "<F12>", dap.restart)
-- Listeners to open and close the DAP UI automatically -- Listeners to open and close the DAP UI automatically
dap.listeners.before.attach.dapui_config = function() dap.listeners.before.attach.dapui_config = function()
dapui.open() dapui.open()
end end
dap.listeners.before.launch.dapui_config = function() dap.listeners.before.launch.dapui_config = function()
dapui.open() dapui.open()
end end
dap.listeners.before.event_terminated.dapui_config = function() dap.listeners.before.event_terminated.dapui_config = function()
dapui.close() dapui.close()
end end
dap.listeners.before.event_exited.dapui_config = function() dap.listeners.before.event_exited.dapui_config = function()
dapui.close() dapui.close()
end end
end, end,
}, },
} }

View File

@@ -1,3 +1,3 @@
return { return {
{ "windwp/nvim-spectre", enabled = false }, { "windwp/nvim-spectre", enabled = false },
} }

View File

@@ -1,57 +1,57 @@
return { return {
"nvimtools/none-ls.nvim", "nvimtools/none-ls.nvim",
config = function() config = function()
local null_ls = require("null-ls") local null_ls = require("null-ls")
null_ls.setup({ null_ls.setup({
sources = { sources = {
-- C -- C
null_ls.builtins.formatting.clang_format.with({ null_ls.builtins.formatting.clang_format.with({
extra_args = { extra_args = {
"--style={BasedOnStyle: LLVM, IndentWidth: 8, TabWith: 8, UseTab: Always, BreakBeforeBraces: Linux, AllowShortIfStatementsOnASingleLine: false, AllowShortLoopsOnASingleLine: false, AllowShortFunctionsOnASingleLine: InlineOnly, ColumnLimit: 80, AlignConsecutiveDeclarations: false, AlignConsecutiveAssignments: false, AlignEscapedNewlines: Left, AlignOperands: false, IndentCaseLabels: false, SpaceBeforeParens: ControlStatements }", "--style={BasedOnStyle: LLVM, IndentWidth: 8, TabWith: 8, UseTab: Always, BreakBeforeBraces: Linux, AllowShortIfStatementsOnASingleLine: false, AllowShortLoopsOnASingleLine: false, AllowShortFunctionsOnASingleLine: InlineOnly, ColumnLimit: 80, AlignConsecutiveDeclarations: false, AlignConsecutiveAssignments: false, AlignEscapedNewlines: Left, AlignOperands: false, IndentCaseLabels: false, SpaceBeforeParens: ControlStatements }",
}, },
}), }),
-- Go -- Go
null_ls.builtins.formatting.goimports, null_ls.builtins.formatting.goimports,
-- Zig -- Zig
-- null_ls.builtins.formatting.zigfmt, -- null_ls.builtins.formatting.zigfmt,
-- Lua -- Lua
null_ls.builtins.formatting.stylua.with({ null_ls.builtins.formatting.stylua.with({
extra_args = { extra_args = {
"--indent-type", "--indent-type",
"Spaces", "Spaces",
"--indent-width", "--indent-width",
"2", "2",
"--column-width", "--column-width",
"120", "120",
}, },
}), }),
-- Python -- Python
null_ls.builtins.formatting.black.with({ null_ls.builtins.formatting.black.with({
extra_args = { "--line-length", "79" }, extra_args = { "--line-length", "79" },
}), }),
-- Shell -- Shell
null_ls.builtins.formatting.shfmt.with({ null_ls.builtins.formatting.shfmt.with({
extra_args = { "-i", "2", "-ci", "-bn", "-sr", "-p" }, extra_args = { "-i", "2", "-ci", "-bn", "-sr", "-p" },
}), }),
}, },
-- Auto-format on save -- Auto-format on save
on_attach = function(client, bufnr) on_attach = function(client, bufnr)
if client.supports_method("textDocument/formatting") then if client.supports_method("textDocument/formatting") then
vim.api.nvim_create_autocmd("BufWritePre", { vim.api.nvim_create_autocmd("BufWritePre", {
buffer = bufnr, buffer = bufnr,
callback = function() callback = function()
vim.lsp.buf.format({ async = false }) vim.lsp.buf.format({ async = false })
end, end,
}) })
end end
end, end,
}) })
end, end,
} }

View File

@@ -1,7 +1,7 @@
return { return {
"m4xshen/hardtime.nvim", "m4xshen/hardtime.nvim",
lazy = false, lazy = false,
dependencies = { "MunifTanjim/nui.nvim" }, dependencies = { "MunifTanjim/nui.nvim" },
enabled = false, enabled = false,
opts = {}, opts = {},
} }

View File

@@ -1,5 +1,5 @@
return { return {
"ThePrimeagen/harpoon", "ThePrimeagen/harpoon",
branch = "harpoon2", branch = "harpoon2",
dependencies = { "nvim-lua/plenary.nvim" }, dependencies = { "nvim-lua/plenary.nvim" },
} }

View File

@@ -1,58 +1,58 @@
return { return {
"neovim/nvim-lspconfig", "neovim/nvim-lspconfig",
-- How to add an LSP for a specific programming language? -- How to add an LSP for a specific programming language?
-- 1. Use `:Mason` to install the corresponding LSP. -- 1. Use `:Mason` to install the corresponding LSP.
-- 2. Add the configuration below. The syntax is `lspconfig.<name>.setup(...)` -- 2. Add the configuration below. The syntax is `lspconfig.<name>.setup(...)`
-- Hint (find <name> here): https://github.com/neovim/nvim-lspconfig/blob/master/doc/configs.md -- Hint (find <name> here): https://github.com/neovim/nvim-lspconfig/blob/master/doc/configs.md
config = function() config = function()
-- Set different settings for different languages' LSP. -- Set different settings for different languages' LSP.
-- Support List: https://github.com/neovim/nvim-lspconfig/blob/master/doc/configs.md -- Support List: https://github.com/neovim/nvim-lspconfig/blob/master/doc/configs.md
local lspconfig = require("lspconfig") local lspconfig = require("lspconfig")
-- Case 1. For CMake Users -- Case 1. For CMake Users
-- $ cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON . -- $ cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON .
-- Case 2. For Bazel Users, use https://github.com/hedronvision/bazel-compile-commands-extractor -- Case 2. For Bazel Users, use https://github.com/hedronvision/bazel-compile-commands-extractor
-- Case 3. If you don't use any build tool and all files in a project use the same build flags -- Case 3. If you don't use any build tool and all files in a project use the same build flags
-- Place your compiler flags in the compile_flags.txt file, located in the root directory -- Place your compiler flags in the compile_flags.txt file, located in the root directory
-- of your project. Each line in the file should contain a single compiler flag. -- of your project. Each line in the file should contain a single compiler flag.
-- src: https://clangd.llvm.org/installation#compile_commandsjson -- src: https://clangd.llvm.org/installation#compile_commandsjson
lspconfig.clangd.setup({}) lspconfig.clangd.setup({})
lspconfig.gopls.setup({}) lspconfig.gopls.setup({})
lspconfig.bashls.setup({}) lspconfig.bashls.setup({})
lspconfig.zls.setup({}) lspconfig.zls.setup({})
lspconfig.pylsp.setup({ lspconfig.pylsp.setup({
settings = { settings = {
-- configure plugins in pylsp -- configure plugins in pylsp
pylsp = { pylsp = {
plugins = { plugins = {
pyflakes = { enabled = false }, pyflakes = { enabled = false },
pycodestyle = { enabled = false }, pycodestyle = { enabled = false },
}, },
}, },
}, },
}) })
lspconfig.lua_ls.setup({ lspconfig.lua_ls.setup({
settings = { settings = {
Lua = { Lua = {
runtime = { runtime = {
-- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim). -- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim).
version = "LuaJIT", version = "LuaJIT",
}, },
diagnostics = { diagnostics = {
-- Get the language server to recognize the `vim` global. -- Get the language server to recognize the `vim` global.
globals = { "vim" }, globals = { "vim" },
}, },
workspace = { workspace = {
-- Make the server aware of Neovim runtime files. -- Make the server aware of Neovim runtime files.
library = vim.api.nvim_get_runtime_file("", true), library = vim.api.nvim_get_runtime_file("", true),
}, },
-- Do not send telemetry data containing a randomized but unique identifier. -- Do not send telemetry data containing a randomized but unique identifier.
telemetry = { telemetry = {
enable = false, enable = false,
}, },
}, },
}, },
}) })
end, end,
} }

8
lazyvim/.config/nvim/lua/plugins/lualine.lua Normal file → Executable file
View File

@@ -1,4 +1,4 @@
return { return {
"nvim-lualine/lualine.nvim", "nvim-lualine/lualine.nvim",
dependencies = { "nvim-tree/nvim-web-devicons" }, dependencies = { "nvim-tree/nvim-web-devicons" },
} }

View File

@@ -1,9 +1,9 @@
return { return {
"MeanderingProgrammer/render-markdown.nvim", "MeanderingProgrammer/render-markdown.nvim",
dependencies = { "nvim-treesitter/nvim-treesitter", "echasnovski/mini.nvim" }, -- if you use the mini.nvim suite dependencies = { "nvim-treesitter/nvim-treesitter", "echasnovski/mini.nvim" }, -- if you use the mini.nvim suite
-- dependencies = { 'nvim-treesitter/nvim-treesitter', 'echasnovski/mini.icons' }, -- if you use standalone mini plugins -- dependencies = { 'nvim-treesitter/nvim-treesitter', 'echasnovski/mini.icons' }, -- if you use standalone mini plugins
-- dependencies = { 'nvim-treesitter/nvim-treesitter', 'nvim-tree/nvim-web-devicons' }, -- if you prefer nvim-web-devicons -- dependencies = { 'nvim-treesitter/nvim-treesitter', 'nvim-tree/nvim-web-devicons' }, -- if you prefer nvim-web-devicons
---@module 'render-markdown' ---@module 'render-markdown'
---@type render.md.UserConfig ---@type render.md.UserConfig
opts = {}, opts = {},
} }

View File

@@ -1,17 +1,17 @@
return { return {
"smoka7/multicursors.nvim", "smoka7/multicursors.nvim",
event = "VeryLazy", event = "VeryLazy",
dependencies = { dependencies = {
"nvimtools/hydra.nvim", "nvimtools/hydra.nvim",
}, },
opts = {}, opts = {},
cmd = { "MCstart", "MCvisual", "MCclear", "MCpattern", "MCvisualPattern", "MCunderCursor" }, cmd = { "MCstart", "MCvisual", "MCclear", "MCpattern", "MCvisualPattern", "MCunderCursor" },
keys = { keys = {
{ {
mode = { "v", "n" }, mode = { "v", "n" },
"<Leader>m", "<Leader>m",
"<cmd>MCstart<cr>", "<cmd>MCstart<cr>",
desc = "Create a selection for selected text or word under the cursor", desc = "Create a selection for selected text or word under the cursor",
}, },
}, },
} }

View File

@@ -1,4 +1,4 @@
return { return {
"nvim-neo-tree/neo-tree.nvim", "nvim-neo-tree/neo-tree.nvim",
enabled = false, enabled = false,
} }

1044
lazyvim/.config/nvim/lua/plugins/snacks.lua Normal file → Executable file

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +1,5 @@
return { return {
"nvim-telescope/telescope.nvim", "nvim-telescope/telescope.nvim",
tag = "0.1.8", tag = "0.1.8",
dependencies = { "nvim-lua/plenary.nvim" }, dependencies = { "nvim-lua/plenary.nvim" },
} }

View File

@@ -1,8 +1,8 @@
return { return {
"mikavilpas/yazi.nvim", "mikavilpas/yazi.nvim",
dependencies = { "nvim-lua/plenary.nvim" }, dependencies = { "nvim-lua/plenary.nvim" },
opts = {}, opts = {},
keys = { keys = {
{ "<leader>e", "<cmd>Yazi<cr>", desc = "Open Yazi" }, { "<leader>e", "<cmd>Yazi<cr>", desc = "Open Yazi" },
}, },
} }

View File

@@ -1,13 +1,13 @@
#!/bin/sh #!/bin/sh
file1=$(fzf --prompt="Select first file: " < <(find . -type f)) file1=$(fzf --prompt="Select first file: " < <(find . -type f))
[ -z "$file1" ] && echo "Aborted." && exit 1 [ -z "$file1" ] && echo "Aborted." && exit 1
file2=$(fzf --prompt="Select second file: " < <(find . -type f)) file2=$(fzf --prompt="Select second file: " < <(find . -type f))
[ -z "$file2" ] && echo "Aborted." && exit 1 [ -z "$file2" ] && echo "Aborted." && exit 1
echo "🔍 Comparing:" echo "🔍 Comparing:"
echo " 1: $file1" echo " 1: $file1"
echo " 2: $file2" echo " 2: $file2"
meld "$file1" "$file2" & meld "$file1" "$file2" &

View File

@@ -1,15 +1,15 @@
-- This file contains all custom functions for integrate external tools. -- This file contains all custom functions for integrate external tools.
-- Meld for comparing and merging files -- Meld for comparing and merging files
local M = {} local M = {}
function M.meld_diff(file1, file2) function M.meld_diff(file1, file2)
if not file1 or not file2 then if not file1 or not file2 then
print("Usage: :lua require'user.utils'.meld_diff('file1', 'file2')") print("Usage: :lua require'user.utils'.meld_diff('file1', 'file2')")
return return
end end
local cmd = string.format("meld '%s' '%s' &", file1, file2) local cmd = string.format("meld '%s' '%s' &", file1, file2)
os.execute(cmd) os.execute(cmd)
end end
return M return M

View File

@@ -1,4 +1,4 @@
indent_type = "Spaces" indent_type = "Spaces"
indent_width = 2 indent_width = 2
column_width = 120 column_width = 120

Binary file not shown.

View File

@@ -1,435 +0,0 @@
# An example configuration file for MPD.
# Read the user manual for documentation: http://www.musicpd.org/doc/user/
# Files and directories #######################################################
#
# This setting controls the top directory which MPD will search to discover the
# available audio files and add them to the daemon's online database. This
# setting defaults to the XDG directory, otherwise the music directory will be
# be disabled and audio files will only be accepted over ipc socket (using
# file:// protocol) or streaming files over an accepted protocol.
#
#music_directory "~/music"
music_directory "~/Music"
#
# This setting sets the MPD internal playlist directory. The purpose of this
# directory is storage for playlists created by MPD. The server will use
# playlist files not created by the server but only if they are in the MPD
# format. This setting defaults to playlist saving being disabled.
#
#playlist_directory "~/.mpd/playlists"
playlist_directory "~/.config/mpd/playlists"
#
# This setting sets the location of the MPD database. This file is used to
# load the database at server start up and store the database while the
# server is not up. This setting defaults to disabled which will allow
# MPD to accept files over ipc socket (using file:// protocol) or streaming
# files over an accepted protocol.
#
db_file "~/.config/mpd/database"
#db_file "~/.mpd/database"
# These settings are the locations for the daemon log files for the daemon.
#
# The special value "syslog" makes MPD use the local syslog daemon. This
# setting defaults to logging to syslog.
#
# If you use systemd, do not configure a log_file. With systemd, MPD
# defaults to the systemd journal, which is fine.
#
#log_file "~/.mpd/log"
# This setting sets the location of the file which stores the process ID
# for use of mpd --kill and some init scripts. This setting is disabled by
# default and the pid file will not be stored.
#
# If you use systemd, do not configure a pid_file.
#
#pid_file "~/.mpd/pid"
pid_file "~/.config/mpd/pid"
# This setting sets the location of the file which contains information about
# most variables to get MPD back into the same general shape it was in before
# it was brought down. This setting is disabled by default and the server
# state will be reset on server start up.
#
#state_file "~/.mpd/state"
state_file "~/.config/mpd/state"
#
# The location of the sticker database. This is a database which
# manages dynamic information attached to songs.
#
#sticker_file "~/.mpd/sticker.sql"
sticker_file "~/.config/mpd/sticker.sql"
#
###############################################################################
# General music daemon options ################################################
#
# This setting specifies the user that MPD will run as. MPD should never run as
# root and you may use this setting to make MPD change its user ID after
# initialization. This setting is disabled by default and MPD is run as the
# current user.
#
#user "nobody"
#
# This setting specifies the group that MPD will run as. If not specified
# primary group of user specified with "user" setting will be used (if set).
# This is useful if MPD needs to be a member of group such as "audio" to
# have permission to use sound card.
#
#group "nogroup"
#
# This setting sets the address for the daemon to listen on. Careful attention
# should be paid if this is assigned to anything other than the default, any.
# This setting can deny access to control of the daemon. Not effective if
# systemd socket activation is in use.
#
# For network
#bind_to_address "any"
#
# And for Unix Socket
#bind_to_address "~/.mpd/socket"
#
# This setting is the TCP port that is desired for the daemon to get assigned
# to.
#
#port "6600"
#
# Suppress all messages below the given threshold. Use "verbose" for
# troubleshooting. Available setting arguments are "notice", "info", "verbose",
# "warning" and "error".
#
#log_level "notice"
#
# Setting "restore_paused" to "yes" puts MPD into pause mode instead
# of starting playback after startup.
#
#restore_paused "no"
#
# This setting enables MPD to create playlists in a format usable by other
# music players.
#
#save_absolute_paths_in_playlists "no"
#
# This setting defines a list of tag types that will be extracted during the
# audio file discovery process. The complete list of possible values can be
# found in the user manual.
#metadata_to_use "artist,album,title,track,name,genre,date,composer,performer,disc"
#
# This example just enables the "comment" tag without disabling all
# the other supported tags:
#metadata_to_use "+comment"
#
# This setting enables automatic update of MPD's database when files in
# music_directory are changed.
#
auto_update "yes"
#
# Limit the depth of the directories being watched, 0 means only watch
# the music directory itself. There is no limit by default.
#
#auto_update_depth "3"
#
###############################################################################
# Symbolic link behavior ######################################################
#
# If this setting is set to "yes", MPD will discover audio files by following
# symbolic links outside of the configured music_directory.
#
#follow_outside_symlinks "yes"
#
# If this setting is set to "yes", MPD will discover audio files by following
# symbolic links inside of the configured music_directory.
#
#follow_inside_symlinks "yes"
#
###############################################################################
# Zeroconf / Avahi Service Discovery ##########################################
#
# If this setting is set to "yes", service information will be published with
# Zeroconf / Avahi.
#
#zeroconf_enabled "yes"
#
# The argument to this setting will be the Zeroconf / Avahi unique name for
# this MPD server on the network. %h will be replaced with the hostname.
#
#zeroconf_name "Music Player @ %h"
#
###############################################################################
# Permissions #################################################################
#
# If this setting is set, MPD will require password authorization. The password
# setting can be specified multiple times for different password profiles.
#
#password "password@read,add,control,admin"
#
# This setting specifies the permissions a user has who has not yet logged in.
#
#default_permissions "read,add,control,admin"
#
###############################################################################
# Database #######################################################################
#
# An example of a database section instead of the old 'db_file' setting.
# It enables mounting other storages into the music directory.
#
#database {
# plugin "simple"
# path "~/.local/share/mpd/db
# cache_directory "~/.local/share/mpd/cache"
#}
#
# An example of database config for a satellite setup
#
#music_directory "nfs://fileserver.local/srv/mp3"
#database {
# plugin "proxy"
# host "other.mpd.host"
# port "6600"
#}
# Input #######################################################################
#
input {
plugin "curl"
# proxy "proxy.isp.com:8080"
# proxy_user "user"
# proxy_password "password"
}
#
###############################################################################
# Audio Output ################################################################
#
# MPD supports various audio output types, as well as playing through multiple
# audio outputs at the same time, through multiple audio_output settings
# blocks. Setting this block is optional, though the server will only attempt
# autodetection for one sound card.
#
# An example of an ALSA output:
#
audio_output {
type "pulse"
name "pulse audio"
}
# audio_output {
# type "pipewire"
# name "PipeWire Sound Server"
# }
#audio_output {
# type "alsa"
# name "My ALSA Device"
## device "hw:0,0" # optional
## mixer_type "hardware" # optional
## mixer_device "default" # optional
## mixer_control "PCM" # optional
## mixer_index "0" # optional
#}
#
# An example of an OSS output:
#
#audio_output {
# type "oss"
# name "My OSS Device"
## device "/dev/dsp" # optional
## mixer_type "hardware" # optional
## mixer_device "/dev/mixer" # optional
## mixer_control "PCM" # optional
#}
#
# An example of a shout output (for streaming to Icecast):
#
#audio_output {
# type "shout"
# encoder "vorbis" # optional
# name "My Shout Stream"
# host "localhost"
# port "8000"
# mount "/mpd.ogg"
# password "hackme"
# quality "5.0"
# bitrate "128"
# format "44100:16:1"
## protocol "icecast2" # optional
## user "source" # optional
## description "My Stream Description" # optional
## url "http://example.com" # optional
## genre "jazz" # optional
## public "no" # optional
## timeout "2" # optional
## mixer_type "software" # optional
#}
#
# An example of a recorder output:
#
#audio_output {
# type "recorder"
# name "My recorder"
# encoder "vorbis" # optional, vorbis or lame
# path "/var/lib/mpd/recorder/mpd.ogg"
## quality "5.0" # do not define if bitrate is defined
# bitrate "128" # do not define if quality is defined
# format "44100:16:1"
#}
#
# An example of a httpd output (built-in HTTP streaming server):
#
#audio_output {
# type "httpd"
# name "My HTTP Stream"
# encoder "vorbis" # optional, vorbis or lame
# port "8000"
# bind_to_address "0.0.0.0" # optional, IPv4 or IPv6
## quality "5.0" # do not define if bitrate is defined
# bitrate "128" # do not define if quality is defined
# format "44100:16:1"
# max_clients "0" # optional 0=no limit
#}
#
# An example of a pulseaudio output (streaming to a remote pulseaudio server)
#
#audio_output {
# type "pulse"
# name "My Pulse Output"
## server "remote_server" # optional
## sink "remote_server_sink" # optional
## media_role "media_role" #optional
#}
#
# An example of a winmm output (Windows multimedia API).
#
#audio_output {
# type "winmm"
# name "My WinMM output"
## device "Digital Audio (S/PDIF) (High Definition Audio Device)" # optional
# or
## device "0" # optional
## mixer_type "hardware" # optional
#}
#
# An example of a wasapi output (Windows multimedia API).
#
#audio_output {
# type "wasapi"
# name "My WASAPI output"
## device "Digital Audio (S/PDIF) (High Definition Audio Device)" # optional
# or
## device "0" # optional
## Exclusive mode blocks all other audio source, and get best audio quality without resampling.
## exclusive "no" # optional
## Enumerate all devices in log.
## enumerate "no" # optional
#}
#
# An example of an openal output.
#
#audio_output {
# type "openal"
# name "My OpenAL output"
## device "Digital Audio (S/PDIF) (High Definition Audio Device)" # optional
#}
#
# An example of an sndio output.
#
#audio_output {
# type "sndio"
# name "sndio output"
# mixer_type "hardware"
#}
#
# An example of an OS X output:
#
#audio_output {
# type "osx"
# name "My OS X Device"
## device "Built-in Output" # optional
## channel_map "-1,-1,0,1" # optional
#}
#
## Example "pipe" output:
#
#audio_output {
# type "pipe"
# name "my pipe"
# command "aplay -f cd 2>/dev/null"
## Or if you're want to use AudioCompress
# command "AudioCompress -m | aplay -f cd 2>/dev/null"
## Or to send raw PCM stream through PCM:
# command "nc example.org 8765"
# format "44100:16:2"
#}
#
## An example of a null output (for no audio output):
#
#audio_output {
# type "null"
# name "My Null Output"
# mixer_type "none" # optional
#}
#
###############################################################################
# Normalization automatic volume adjustments ##################################
#
# This setting specifies the type of ReplayGain to use. This setting can have
# the argument "off", "album", "track" or "auto". "auto" is a special mode that
# chooses between "track" and "album" depending on the current state of
# random playback. If random playback is enabled then "track" mode is used.
# See <https://wiki.hydrogenaud.io/index.php?title=Replaygain> for
# more details about ReplayGain.
# This setting is off by default.
#
#replaygain "album"
#
# This setting sets the pre-amp used for files that have ReplayGain tags. By
# default this setting is disabled.
#
#replaygain_preamp "0"
#
# This setting sets the pre-amp used for files that do NOT have ReplayGain tags.
# By default this setting is disabled.
#
#replaygain_missing_preamp "0"
#
# This setting enables or disables ReplayGain limiting.
# MPD calculates actual amplification based on the ReplayGain tags
# and replaygain_preamp / replaygain_missing_preamp setting.
# If replaygain_limit is enabled MPD will never amplify audio signal
# above its original level. If replaygain_limit is disabled such amplification
# might occur. By default this setting is enabled.
#
#replaygain_limit "yes"
#
# This setting enables on-the-fly normalization volume adjustment. This will
# result in the volume of all playing audio to be adjusted so the output has
# equal "loudness". This setting is disabled by default.
#
#volume_normalization "no"
#
###############################################################################
# Character Encoding ##########################################################
#
# If file or directory names do not display correctly for your locale then you
# may need to modify this setting.
#
#filesystem_charset "UTF-8"
#
###############################################################################

View File

@@ -1,27 +0,0 @@
sw_volume: 100
audio_device_state:1:pulse audio
state: play
current: 11
time: 15.469000
random: 1
repeat: 0
single: 0
consume: 0
crossfade: 0
mixrampdb: 0.000000
mixrampdelay: -1.000000
playlist_begin
0:佐々木恵梨 - Ring of Fortune.mp3
1:放課後ティータイム - わたしの恋はホッチキス.mp3
2:早見沙織 - ここから、ここから -白石結月 ソロver.-.mp3
3:瀬戸麻沙美,黒沢ともよ,小澤亜李 - さよなら。ありがとう。.mp3
4:コアラモード. - 七色シンフォニー.mp3
5:泠鸢yousa - 前前前世Slow Ver..mp3
6:放課後ティータイム - わたしの恋はホッチキス.mp3
7:佐々木恵梨 - Ring of Fortune.mp3
8:放課後ティータイム - わたしの恋はホッチキス.mp3
9:早見沙織 - ここから、ここから -白石結月 ソロver.-.mp3
10:瀬戸麻沙美,黒沢ともよ,小澤亜李 - さよなら。ありがとう。.mp3
11:コアラモード. - 七色シンフォニー.mp3
12:泠鸢yousa - 前前前世Slow Ver..mp3
playlist_end

View File

@@ -1,8 +0,0 @@
CTRL+1 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl:~~/shaders/Anime4K_Restore_CNN_VL.glsl:~~/shaders/Anime4K_Upscale_CNN_x2_VL.glsl:~~/shaders/Anime4K_AutoDownscalePre_x2.glsl:~~/shaders/Anime4K_AutoDownscalePre_x4.glsl:~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode A (HQ)"
CTRL+2 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl:~~/shaders/Anime4K_Restore_CNN_Soft_VL.glsl:~~/shaders/Anime4K_Upscale_CNN_x2_VL.glsl:~~/shaders/Anime4K_AutoDownscalePre_x2.glsl:~~/shaders/Anime4K_AutoDownscalePre_x4.glsl:~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode B (HQ)"
CTRL+3 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl:~~/shaders/Anime4K_Upscale_Denoise_CNN_x2_VL.glsl:~~/shaders/Anime4K_AutoDownscalePre_x2.glsl:~~/shaders/Anime4K_AutoDownscalePre_x4.glsl:~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode C (HQ)"
CTRL+4 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl:~~/shaders/Anime4K_Restore_CNN_VL.glsl:~~/shaders/Anime4K_Upscale_CNN_x2_VL.glsl:~~/shaders/Anime4K_Restore_CNN_M.glsl:~~/shaders/Anime4K_AutoDownscalePre_x2.glsl:~~/shaders/Anime4K_AutoDownscalePre_x4.glsl:~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode A+A (HQ)"
CTRL+5 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl:~~/shaders/Anime4K_Restore_CNN_Soft_VL.glsl:~~/shaders/Anime4K_Upscale_CNN_x2_VL.glsl:~~/shaders/Anime4K_AutoDownscalePre_x2.glsl:~~/shaders/Anime4K_AutoDownscalePre_x4.glsl:~~/shaders/Anime4K_Restore_CNN_Soft_M.glsl:~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode B+B (HQ)"
CTRL+6 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl:~~/shaders/Anime4K_Upscale_Denoise_CNN_x2_VL.glsl:~~/shaders/Anime4K_AutoDownscalePre_x2.glsl:~~/shaders/Anime4K_AutoDownscalePre_x4.glsl:~~/shaders/Anime4K_Restore_CNN_M.glsl:~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode C+A (HQ)"
CTRL+0 no-osd change-list glsl-shaders clr ""; show-text "GLSL shaders cleared"

View File

@@ -1,26 +0,0 @@
hwdec=auto
# vo=gpu-next #This will break Anime4K
gpu-api=opengl
script-opts=ytdl_hook-ytdl_path=yt-dlp
# Main mpv options
background-color='#1e1e2e'
osd-back-color='#11111b'
osd-border-color='#11111b'
osd-color='#cdd6f4'
osd-shadow-color='#1e1e2e'
# Stats script options
# Options are on separate lines for clarity
# Colors are in #BBGGRR format
script-opts-append=stats-border_color=251818
script-opts-append=stats-font_color=f4d6cd
script-opts-append=stats-plot_bg_border_color=afe2f9
script-opts-append=stats-plot_bg_color=251818
script-opts-append=stats-plot_color=afe2f9
# External script options
# It is fine to leave these here even if one does not use these scripts because they are just ignored unless a script uses them
# UOSC options
script-opts-append=uosc-color=foreground=f9e2af,foreground_text=313244,background=1e1e2e,background_text=cdd6f4,curtain=181825,success=a6e3a1,error=f38ba8

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@@ -1 +0,0 @@
249598

View File

@@ -1,7 +0,0 @@
include ~/.newsboat/dark
auto-reload yes # fetch new content when starting program
reload-time 10 # fetch new content every 10 minutes
notify-always yes # update tmux counters after every fetch
notify-format "%d %n %f"
notify-program "~/.tmux/plugins/tmux-newsboat/bin/tmux-newsboat"

View File

@@ -1,18 +0,0 @@
color listnormal color15 default
color listnormal_unread color2 default
color listfocus_unread color2 color0
color listfocus default color0
color background default default
color article default default
color end-of-text-marker color8 default
color info color4 color8
color hint-separator default color8
color hint-description default color8
color title color14 color8
highlight article "^(Feed|Title|Author|Link|Date): .+" color4 default bold
highlight article "^(Feed|Title|Author|Link|Date):" color14 default bold
highlight article "\\((link|image|video)\\)" color8 default
highlight article "https?://[^ ]+" color4 default
highlight article "\[[0-9]+\]" color6 default bold

View File

@@ -1,8 +0,0 @@
######################################################################
######################################################################
####### FEEDS RSS ######
######################################################################
######################################################################
# Archlinux updates
https://archlinux.org/feeds/packages/

View File

@@ -1,20 +0,0 @@
@theme "catppuccin"
configuration {
modi: "drun,window,filebrowser,ssh";
icon-theme: "Papirus";
show-icons: true;
terminal: "alacritty";
drun-display-format: "{icon} {name}";
location: 0;
disable-history: false;
hide-scrollbar: false;
sidebar-mode: true;
display-ssh: "󰣀 ssh:";
display-run: "󱓞 run:";
display-drun: "󰣖 drun:";
display-window: "󱂬 window:";
display-combi: "󰕘 combi:";
display-filebrowser: "󰉋 filebrowser:";
}

View File

@@ -1,29 +0,0 @@
* {
rosewater: #f2d5cf;
flamingo: #eebebe;
pink: #f4b8e4;
mauve: #ca9ee6;
red: #e78284;
maroon: #ea999c;
peach: #ef9f76;
yellow: #e5c890;
green: #a6d189;
teal: #81c8be;
sky: #99d1db;
sapphire: #85c1dc;
blue: #8caaee;
lavender: #babbf1;
text: #c6d0f5;
subtext1: #b5bfe2;
subtext0: #a5adce;
overlay2: #949cbb;
overlay1: #838ba7;
overlay0: #737994;
surface2: #626880;
surface1: #51576d;
surface0: #414559;
base: #303446;
mantle: #292c3c;
crust: #232634;
}

View File

@@ -1,29 +0,0 @@
* {
rosewater: #dc8a78;
flamingo: #dd7878;
pink: #ea76cb;
mauve: #8839ef;
red: #d20f39;
maroon: #e64553;
peach: #fe640b;
yellow: #df8e1d;
green: #40a02b;
teal: #179299;
sky: #04a5e5;
sapphire: #209fb5;
blue: #1e66f5;
lavender: #7287fd;
text: #4c4f69;
subtext1: #5c5f77;
subtext0: #6c6f85;
overlay2: #7c7f93;
overlay1: #8c8fa1;
overlay0: #9ca0b0;
surface2: #acb0be;
surface1: #bcc0cc;
surface0: #ccd0da;
base: #eff1f5;
mantle: #e6e9ef;
crust: #dce0e8;
}

View File

@@ -1,114 +0,0 @@
/**
* Catppuccin Mocha theme
* Color palette copied from https://catppuccin.com/palette
* https://github.com/hiimsergey/rofi-catppuccin
*/
* {
base: #1e1e2e;
surface0: #313244;
overlay0: #6c7086;
text: #cdd6f4;
mauve: #cba6f7;
red: #f38ba8;
peach: #fab387;
green: #a6e3a1;
lavender: #b4befe;
background-color: @base;
}
window {
height: 600;
width: 600;
border: 3;
border-radius: 10;
border-color: @lavender;
}
mainbox {
spacing: 0;
children: [inputbar, message, listview];
}
inputbar {
color: @text;
padding: 14;
background-color: @base;
}
message {
padding: 10;
background-color: @overlay0;
}
listview {
padding: 8;
border-radius: 0 0 10 10;
border: 2 2 2 2;
border-color: @base;
background-color: @base;
dynamic: false;
}
textbox {
text-color: @text;
background-color: inherit;
}
error-message {
border: 20 20 20 20;
}
entry, prompt, case-indicator {
text-color: inherit;
}
prompt {
margin: 0 10 0 0;
}
element {
padding: 5;
vertical-align: 0.5;
border-radius: 10;
background-color: @surface0;
}
element.selected.normal {
background-color: @overlay0;
}
element.alternate.normal {
background-color: inherit;
}
element.normal.active, element.alternate.active {
background-color: @peach;
}
element.selected.active {
background-color: @green;
}
element.normal.urgent, element.alternate.urgent {
background-color: @red;
}
element.selected.urgent {
background-color: @mauve;
}
element-text, element-icon {
size: 40;
margin: 0 10 0 0;
vertical-align: 0.5;
background-color: inherit;
text-color: @text;
}
element-text .active, element-text .urgent {
text-color: @base;
}

View File

@@ -1,29 +0,0 @@
* {
rosewater: #f4dbd6;
flamingo: #f0c6c6;
pink: #f5bde6;
mauve: #c6a0f6;
red: #ed8796;
maroon: #ee99a0;
peach: #f5a97f;
yellow: #eed49f;
green: #a6da95;
teal: #8bd5ca;
sky: #91d7e3;
sapphire: #7dc4e4;
blue: #8aadf4;
lavender: #b7bdf8;
text: #cad3f5;
subtext1: #b8c0e0;
subtext0: #a5adcb;
overlay2: #939ab7;
overlay1: #8087a2;
overlay0: #6e738d;
surface2: #5b6078;
surface1: #494d64;
surface0: #363a4f;
base: #24273a;
mantle: #1e2030;
crust: #181926;
}

View File

@@ -1,29 +0,0 @@
* {
rosewater: #f5e0dc;
flamingo: #f2cdcd;
pink: #f5c2e7;
mauve: #cba6f7;
red: #f38ba8;
maroon: #eba0ac;
peach: #fab387;
yellow: #f9e2af;
green: #a6e3a1;
teal: #94e2d5;
sky: #89dceb;
sapphire: #74c7ec;
blue: #89b4fa;
lavender: #b4befe;
text: #cdd6f4;
subtext1: #bac2de;
subtext0: #a6adc8;
overlay2: #9399b2;
overlay1: #7f849c;
overlay0: #6c7086;
surface2: #585b70;
surface1: #45475a;
surface0: #313244;
base: #1e1e2e;
mantle: #181825;
crust: #11111b;
}

View File

@@ -1,169 +0,0 @@
* {
red: #E38C8Fff;
selected-active-foreground: var(background);
lightfg: #E5B4E2ff;
separatorcolor: var(foreground);
urgent-foreground: var(red);
alternate-urgent-background: var(lightbg);
lightbg: #575268ff;
background-color: transparent;
border-color: var(foreground);
normal-background: var(background);
selected-urgent-background: var(red);
alternate-active-background: var(lightbg);
spacing: 2;
blue: #A4B9EFff;
alternate-normal-foreground: var(foreground);
urgent-background: var(background);
selected-normal-foreground: var(lightbg);
active-foreground: var(blue);
background: #1e1e28ff;
selected-active-background: var(blue);
active-background: var(background);
selected-normal-background: var(lightfg);
alternate-normal-background: var(lightbg);
foreground: #DADAE8ff;
selected-urgent-foreground: var(background);
normal-foreground: var(foreground);
alternate-urgent-foreground: var(red);
alternate-active-foreground: var(blue);
}
element {
padding: 1px ;
cursor: pointer;
spacing: 5px ;
border: 0;
}
element normal.normal {
background-color: var(normal-background);
text-color: var(normal-foreground);
}
element normal.urgent {
background-color: var(urgent-background);
text-color: var(urgent-foreground);
}
element normal.active {
background-color: var(active-background);
text-color: var(active-foreground);
}
element selected.normal {
background-color: var(selected-normal-background);
text-color: var(selected-normal-foreground);
}
element selected.urgent {
background-color: var(selected-urgent-background);
text-color: var(selected-urgent-foreground);
}
element selected.active {
background-color: var(selected-active-background);
text-color: var(selected-active-foreground);
}
element alternate.normal {
background-color: var(alternate-normal-background);
text-color: var(alternate-normal-foreground);
}
element alternate.urgent {
background-color: var(alternate-urgent-background);
text-color: var(alternate-urgent-foreground);
}
element alternate.active {
background-color: var(alternate-active-background);
text-color: var(alternate-active-foreground);
}
element-text {
background-color: transparent;
cursor: inherit;
highlight: inherit;
text-color: inherit;
}
element-icon {
background-color: transparent;
size: 1.0000em ;
cursor: inherit;
text-color: inherit;
}
window {
padding: 5;
background-color: var(background);
border: 1;
}
mainbox {
padding: 0;
border: 0;
}
message {
padding: 1px ;
border-color: var(separatorcolor);
border: 2px dash 0px 0px ;
}
textbox {
text-color: var(foreground);
}
listview {
padding: 2px 0px 0px ;
scrollbar: true;
border-color: var(separatorcolor);
spacing: 2px ;
fixed-height: 0;
border: 2px dash 0px 0px ;
}
scrollbar {
width: 4px ;
padding: 0;
handle-width: 8px ;
border: 0;
handle-color: var(normal-foreground);
}
sidebar {
border-color: var(separatorcolor);
border: 2px dash 0px 0px ;
}
button {
cursor: pointer;
spacing: 0;
text-color: var(normal-foreground);
}
button selected {
background-color: var(selected-normal-background);
text-color: var(selected-normal-foreground);
}
num-filtered-rows {
expand: false;
text-color: Gray;
}
num-rows {
expand: false;
text-color: Gray;
}
textbox-num-sep {
expand: false;
str: "/";
text-color: Gray;
}
inputbar {
padding: 1px ;
spacing: 0px ;
text-color: var(normal-foreground);
children: [ prompt,textbox-prompt-colon,entry,num-filtered-rows,textbox-num-sep,num-rows,case-indicator ];
}
case-indicator {
spacing: 0;
text-color: var(normal-foreground);
}
entry {
text-color: var(normal-foreground);
cursor: text;
spacing: 0;
placeholder-color: Gray;
placeholder: "Type to filter";
}
prompt {
spacing: 0;
text-color: var(normal-foreground);
}
textbox-prompt-colon {
margin: 0px 0.3000em 0.0000em 0.0000em ;
expand: false;
str: ":";
text-color: inherit;
}

View File

@@ -1,69 +0,0 @@
# === General settings ===
[main]
shell=/bin/zsh -c "exec ~/.profile.d/tmux.sh" # Default shell to launch in the terminal
font=0xProto Nerd Font:size=14 # Font family and size used in the terminal
initial-window-size-chars=160x45 # Initial size in character columns x rows
selection-target=clipboard # Copy selected text directly to system clipboard
term=foot # Terminal type identifier (useful for compatibility)
pad=8x8 # Adds 8-pixel padding around the content (horizontal x vertical)
# === Mouse settings ===
[mouse]
hide-when-typing=yes # Automatically hide the mouse cursor while typing
alternate-scroll-mode=no # Preserves scrollback history when applications exit (does not use alternate screen buffer)
# === Scrollback bar indicator settings ===
[scrollback]
lines=10000 # Number of scrollback lines to keep in history
indicator-format=percentage # Format of scroll indicator (e.g., "50%")
# === Key bindings ===
[key-bindings]
scrollback-up-page=Shift+Page_Up # Scroll up one page
scrollback-down-page=Shift+Page_Down # Scroll down one page
clipboard-copy=Control+Shift+c # Copy selected text to clipboard
clipboard-paste=Control+Shift+v # Paste from clipboard
show-urls-launch=Control+Shift+o # Detects and allows launching URLs found in the terminal output
# === Cursor appearance ===
[cursor]
style=beam # Beam-style (vertical bar) cursor
blink=true # Cursor should blink
beam-thickness=3 # Thickness of the beam cursor
# === Catppuccin Mocha color scheme ===
[colors]
alpha=0.9
cursor=11111b f5e0dc # Cursor color (background and foreground)
foreground=cdd6f4 # Default text color
background=1e1e2e # Main terminal background color
regular0=45475a # ANSI Black/Grey
regular1=f38ba8 # ANSI Red
regular2=a6e3a1 # ANSI Green
regular3=f9e2af # ANSI Yellow
regular4=89b4fa # ANSI Blue
regular5=f5c2e7 # ANSI Magenta
regular6=94e2d5 # ANSI Cyan
regular7=bac2de # ANSI White/Light Grey
bright0=585b70 # Bright ANSI Black/Grey
bright1=f38ba8 # Bright ANSI Red
bright2=a6e3a1 # Bright ANSI Green
bright3=f9e2af # Bright ANSI Yellow
bright4=89b4fa # Bright ANSI Blue
bright5=f5c2e7 # Bright ANSI Magenta
bright6=94e2d5 # Bright ANSI Cyan
bright7=a6adc8 # Bright ANSI White/Light Grey
16=fab387 # Extended color 16 (Orange-like)
17=f5e0dc # Extended color 17 (Pink/Cream-like)
selection-foreground=cdd6f4 # Color of selected text
selection-background=414356 # Background color of selected text
search-box-no-match=11111b f38ba8 # Colors for search box when no match is found
search-box-match=cdd6f0 313244 # Colors for search box when a match is found
jump-labels=11111b fab387 # Colors for jump labels (e.g., in URL launcher)
urls=89b4fa # Color for detected URLs

View File

@@ -1,21 +0,0 @@
[main]
font=Noto Sans Regular:size=10
icon-theme=Papirus
include=~/.config/fuzzel/themes/catppuccin-mocha/blue.ini
hide-before-typing=no
fields=filename,name,generic
match-mode=fzf
sort-result=yes
match-counter=yes
show-actions=no
anchor = center
x-margin=0
y-margin=0
lines=10
width=70
tabs=4
horizontal-pad=40
vertical-pad=8
inner-pad=0
layer=overlay # values (top, overlay)

View File

@@ -1,12 +0,0 @@
[colors]
background=303446dd
text=c6d0f5ff
prompt=b5bfe2ff
placeholder=838ba7ff
input=c6d0f5ff
match=8caaeeff
selection=626880ff
selection-text=c6d0f5ff
selection-match=8caaeeff
counter=838ba7ff
border=8caaeeff

View File

@@ -1,12 +0,0 @@
[colors]
background=303446dd
text=c6d0f5ff
prompt=b5bfe2ff
placeholder=838ba7ff
input=c6d0f5ff
match=eebebeff
selection=626880ff
selection-text=c6d0f5ff
selection-match=eebebeff
counter=838ba7ff
border=eebebeff

View File

@@ -1,12 +0,0 @@
[colors]
background=303446dd
text=c6d0f5ff
prompt=b5bfe2ff
placeholder=838ba7ff
input=c6d0f5ff
match=a6d189ff
selection=626880ff
selection-text=c6d0f5ff
selection-match=a6d189ff
counter=838ba7ff
border=a6d189ff

View File

@@ -1,12 +0,0 @@
[colors]
background=303446dd
text=c6d0f5ff
prompt=b5bfe2ff
placeholder=838ba7ff
input=c6d0f5ff
match=babbf1ff
selection=626880ff
selection-text=c6d0f5ff
selection-match=babbf1ff
counter=838ba7ff
border=babbf1ff

View File

@@ -1,12 +0,0 @@
[colors]
background=303446dd
text=c6d0f5ff
prompt=b5bfe2ff
placeholder=838ba7ff
input=c6d0f5ff
match=ea999cff
selection=626880ff
selection-text=c6d0f5ff
selection-match=ea999cff
counter=838ba7ff
border=ea999cff

View File

@@ -1,12 +0,0 @@
[colors]
background=303446dd
text=c6d0f5ff
prompt=b5bfe2ff
placeholder=838ba7ff
input=c6d0f5ff
match=ca9ee6ff
selection=626880ff
selection-text=c6d0f5ff
selection-match=ca9ee6ff
counter=838ba7ff
border=ca9ee6ff

View File

@@ -1,12 +0,0 @@
[colors]
background=303446dd
text=c6d0f5ff
prompt=b5bfe2ff
placeholder=838ba7ff
input=c6d0f5ff
match=ef9f76ff
selection=626880ff
selection-text=c6d0f5ff
selection-match=ef9f76ff
counter=838ba7ff
border=ef9f76ff

View File

@@ -1,12 +0,0 @@
[colors]
background=303446dd
text=c6d0f5ff
prompt=b5bfe2ff
placeholder=838ba7ff
input=c6d0f5ff
match=f4b8e4ff
selection=626880ff
selection-text=c6d0f5ff
selection-match=f4b8e4ff
counter=838ba7ff
border=f4b8e4ff

View File

@@ -1,12 +0,0 @@
[colors]
background=303446dd
text=c6d0f5ff
prompt=b5bfe2ff
placeholder=838ba7ff
input=c6d0f5ff
match=e78284ff
selection=626880ff
selection-text=c6d0f5ff
selection-match=e78284ff
counter=838ba7ff
border=e78284ff

View File

@@ -1,12 +0,0 @@
[colors]
background=303446dd
text=c6d0f5ff
prompt=b5bfe2ff
placeholder=838ba7ff
input=c6d0f5ff
match=f2d5cfff
selection=626880ff
selection-text=c6d0f5ff
selection-match=f2d5cfff
counter=838ba7ff
border=f2d5cfff

View File

@@ -1,12 +0,0 @@
[colors]
background=303446dd
text=c6d0f5ff
prompt=b5bfe2ff
placeholder=838ba7ff
input=c6d0f5ff
match=85c1dcff
selection=626880ff
selection-text=c6d0f5ff
selection-match=85c1dcff
counter=838ba7ff
border=85c1dcff

View File

@@ -1,12 +0,0 @@
[colors]
background=303446dd
text=c6d0f5ff
prompt=b5bfe2ff
placeholder=838ba7ff
input=c6d0f5ff
match=99d1dbff
selection=626880ff
selection-text=c6d0f5ff
selection-match=99d1dbff
counter=838ba7ff
border=99d1dbff

View File

@@ -1,12 +0,0 @@
[colors]
background=303446dd
text=c6d0f5ff
prompt=b5bfe2ff
placeholder=838ba7ff
input=c6d0f5ff
match=81c8beff
selection=626880ff
selection-text=c6d0f5ff
selection-match=81c8beff
counter=838ba7ff
border=81c8beff

View File

@@ -1,12 +0,0 @@
[colors]
background=303446dd
text=c6d0f5ff
prompt=b5bfe2ff
placeholder=838ba7ff
input=c6d0f5ff
match=e5c890ff
selection=626880ff
selection-text=c6d0f5ff
selection-match=e5c890ff
counter=838ba7ff
border=e5c890ff

View File

@@ -1,12 +0,0 @@
[colors]
background=eff1f5dd
text=4c4f69ff
prompt=5c5f77ff
placeholder=8c8fa1ff
input=4c4f69ff
match=1e66f5ff
selection=acb0beff
selection-text=4c4f69ff
selection-match=1e66f5ff
counter=8c8fa1ff
border=1e66f5ff

View File

@@ -1,12 +0,0 @@
[colors]
background=eff1f5dd
text=4c4f69ff
prompt=5c5f77ff
placeholder=8c8fa1ff
input=4c4f69ff
match=dd7878ff
selection=acb0beff
selection-text=4c4f69ff
selection-match=dd7878ff
counter=8c8fa1ff
border=dd7878ff

View File

@@ -1,12 +0,0 @@
[colors]
background=eff1f5dd
text=4c4f69ff
prompt=5c5f77ff
placeholder=8c8fa1ff
input=4c4f69ff
match=40a02bff
selection=acb0beff
selection-text=4c4f69ff
selection-match=40a02bff
counter=8c8fa1ff
border=40a02bff

View File

@@ -1,12 +0,0 @@
[colors]
background=eff1f5dd
text=4c4f69ff
prompt=5c5f77ff
placeholder=8c8fa1ff
input=4c4f69ff
match=7287fdff
selection=acb0beff
selection-text=4c4f69ff
selection-match=7287fdff
counter=8c8fa1ff
border=7287fdff

View File

@@ -1,12 +0,0 @@
[colors]
background=eff1f5dd
text=4c4f69ff
prompt=5c5f77ff
placeholder=8c8fa1ff
input=4c4f69ff
match=e64553ff
selection=acb0beff
selection-text=4c4f69ff
selection-match=e64553ff
counter=8c8fa1ff
border=e64553ff

Some files were not shown because too many files have changed in this diff Show More