Compare commits
10 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| cdffbd834b | |||
| 30bd0d4eb5 | |||
| 47d171af7d | |||
| 4f42ec21cd | |||
| ebf03ef705 | |||
| 2d8591826c | |||
| 35d86ee20c | |||
| bf16093554 | |||
| e14e1f99e6 | |||
| 366cc08f4a |
@@ -0,0 +1,25 @@
|
|||||||
|
alias open=xdg-open
|
||||||
|
alias aliases="$EDITOR $ZSH/custom/aliases.zsh"
|
||||||
|
alias vimrc="$EDITOR ~/.vimrc"
|
||||||
|
alias venv="source .venv/bin/activate"
|
||||||
|
alias mkvenv="python3 -m venv .venv && source .venv/bin/activate"
|
||||||
|
alias gcd='git checkout development'
|
||||||
|
alias here=gnome-terminal
|
||||||
|
alias sgrep='grep -R -n -H -C 5 --exclude-dir={.git,.svn,CVS,.venv} '
|
||||||
|
alias save='gca && gp'
|
||||||
|
alias beep='paplay /usr/share/sounds/gnome/default/alerts/bark.ogg'
|
||||||
|
|
||||||
|
function _commands() {
|
||||||
|
awk '{a[$2]++}END{for(i in a){print a[i] " " i}}'
|
||||||
|
}
|
||||||
|
alias topten="history | _commands | sort -rn | head"
|
||||||
|
|
||||||
|
function _show_answers() {
|
||||||
|
for f in *; do
|
||||||
|
echo '-------------------- ' $f ' ----------------------'
|
||||||
|
cat $f
|
||||||
|
done
|
||||||
|
echo '------------------------------------------'
|
||||||
|
}
|
||||||
|
|
||||||
|
alias show_answers="_show_answers | less"
|
||||||
@@ -0,0 +1,228 @@
|
|||||||
|
# vim:ft=zsh ts=2 sw=2 sts=2
|
||||||
|
#
|
||||||
|
# agnoster's Theme - https://gist.github.com/3712874
|
||||||
|
# A Powerline-inspired theme for ZSH
|
||||||
|
#
|
||||||
|
# # README
|
||||||
|
#
|
||||||
|
# In order for this theme to render correctly, you will need a
|
||||||
|
# [Powerline-patched font](https://github.com/Lokaltog/powerline-fonts).
|
||||||
|
# Make sure you have a recent version: the code points that Powerline
|
||||||
|
# uses changed in 2012, and older versions will display incorrectly,
|
||||||
|
# in confusing ways.
|
||||||
|
#
|
||||||
|
# In addition, I recommend the
|
||||||
|
# [Solarized theme](https://github.com/altercation/solarized/) and, if you're
|
||||||
|
# using it on Mac OS X, [iTerm 2](http://www.iterm2.com/) over Terminal.app -
|
||||||
|
# it has significantly better color fidelity.
|
||||||
|
#
|
||||||
|
# # Goals
|
||||||
|
#
|
||||||
|
# The aim of this theme is to only show you *relevant* information. Like most
|
||||||
|
# prompts, it will only show git information when in a git working directory.
|
||||||
|
# However, it goes a step further: everything from the current user and
|
||||||
|
# hostname to whether the last call exited with an error to whether background
|
||||||
|
# jobs are running in this shell will all be displayed automatically when
|
||||||
|
# appropriate.
|
||||||
|
|
||||||
|
### Segment drawing
|
||||||
|
# A few utility functions to make it easy and re-usable to draw segmented prompts
|
||||||
|
|
||||||
|
CURRENT_BG='NONE'
|
||||||
|
|
||||||
|
# Special Powerline characters
|
||||||
|
|
||||||
|
() {
|
||||||
|
local LC_ALL="" LC_CTYPE="en_US.UTF-8"
|
||||||
|
# NOTE: This segment separator character is correct. In 2012, Powerline changed
|
||||||
|
# the code points they use for their special characters. This is the new code point.
|
||||||
|
# If this is not working for you, you probably have an old version of the
|
||||||
|
# Powerline-patched fonts installed. Download and install the new version.
|
||||||
|
# Do not submit PRs to change this unless you have reviewed the Powerline code point
|
||||||
|
# history and have new information.
|
||||||
|
# This is defined using a Unicode escape sequence so it is unambiguously readable, regardless of
|
||||||
|
# what font the user is viewing this source code in. Do not replace the
|
||||||
|
# escape sequence with a single literal character.
|
||||||
|
# Do not change this! Do not make it '\u2b80'; that is the old, wrong code point.
|
||||||
|
SEGMENT_SEPARATOR=$'\ue0b0'
|
||||||
|
}
|
||||||
|
|
||||||
|
# Begin a segment
|
||||||
|
# Takes two arguments, background and foreground. Both can be omitted,
|
||||||
|
# rendering default background/foreground.
|
||||||
|
prompt_segment() {
|
||||||
|
local bg fg
|
||||||
|
[[ -n $1 ]] && bg="%K{$1}" || bg="%k"
|
||||||
|
[[ -n $2 ]] && fg="%F{$2}" || fg="%f"
|
||||||
|
if [[ $CURRENT_BG != 'NONE' && $1 != $CURRENT_BG ]]; then
|
||||||
|
echo -n " %{$bg%F{$CURRENT_BG}%}$SEGMENT_SEPARATOR%{$fg%} "
|
||||||
|
else
|
||||||
|
echo -n "%{$bg%}%{$fg%} "
|
||||||
|
fi
|
||||||
|
CURRENT_BG=$1
|
||||||
|
[[ -n $3 ]] && echo -n $3
|
||||||
|
}
|
||||||
|
|
||||||
|
# End the prompt, closing any open segments
|
||||||
|
prompt_end() {
|
||||||
|
if [[ -n $CURRENT_BG ]]; then
|
||||||
|
echo -n " %{%k%F{$CURRENT_BG}%}$SEGMENT_SEPARATOR"
|
||||||
|
else
|
||||||
|
echo -n "%{%k%}"
|
||||||
|
fi
|
||||||
|
echo -n "%{%f%}"
|
||||||
|
CURRENT_BG=''
|
||||||
|
}
|
||||||
|
|
||||||
|
### Prompt components
|
||||||
|
# Each component will draw itself, and hide itself if no information needs to be shown
|
||||||
|
|
||||||
|
# Context: user@hostname (who am I and where am I)
|
||||||
|
prompt_context() {
|
||||||
|
if [[ "$USER" != "$DEFAULT_USER" || -n "$SSH_CLIENT" ]]; then
|
||||||
|
prompt_segment black default "%(!.%{%F{yellow}%}.)$USER@%m"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# Git: branch/detached head, dirty status
|
||||||
|
prompt_git() {
|
||||||
|
(( $+commands[git] )) || return
|
||||||
|
local PL_BRANCH_CHAR
|
||||||
|
() {
|
||||||
|
local LC_ALL="" LC_CTYPE="en_US.UTF-8"
|
||||||
|
PL_BRANCH_CHAR=$'\ue0a0' #
|
||||||
|
}
|
||||||
|
local ref dirty mode repo_path
|
||||||
|
repo_path=$(git rev-parse --git-dir 2>/dev/null)
|
||||||
|
|
||||||
|
if $(git rev-parse --is-inside-work-tree >/dev/null 2>&1); then
|
||||||
|
dirty=$(parse_git_dirty)
|
||||||
|
ref=$(git symbolic-ref HEAD 2> /dev/null) || ref="➦ $(git rev-parse --short HEAD 2> /dev/null)"
|
||||||
|
if [[ -n $dirty ]]; then
|
||||||
|
prompt_segment yellow black
|
||||||
|
else
|
||||||
|
prompt_segment green black
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -e "${repo_path}/BISECT_LOG" ]]; then
|
||||||
|
mode=" <B>"
|
||||||
|
elif [[ -e "${repo_path}/MERGE_HEAD" ]]; then
|
||||||
|
mode=" >M<"
|
||||||
|
elif [[ -e "${repo_path}/rebase" || -e "${repo_path}/rebase-apply" || -e "${repo_path}/rebase-merge" || -e "${repo_path}/../.dotest" ]]; then
|
||||||
|
mode=" >R>"
|
||||||
|
fi
|
||||||
|
|
||||||
|
setopt promptsubst
|
||||||
|
autoload -Uz vcs_info
|
||||||
|
|
||||||
|
zstyle ':vcs_info:*' enable git
|
||||||
|
zstyle ':vcs_info:*' get-revision true
|
||||||
|
zstyle ':vcs_info:*' check-for-changes true
|
||||||
|
zstyle ':vcs_info:*' stagedstr '✚'
|
||||||
|
zstyle ':vcs_info:*' unstagedstr '●'
|
||||||
|
zstyle ':vcs_info:*' formats ' %u%c'
|
||||||
|
zstyle ':vcs_info:*' actionformats ' %u%c'
|
||||||
|
vcs_info
|
||||||
|
echo -n "${ref/refs\/heads\//$PL_BRANCH_CHAR }${vcs_info_msg_0_%% }${mode}"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
prompt_bzr() {
|
||||||
|
(( $+commands[bzr] )) || return
|
||||||
|
if (bzr status >/dev/null 2>&1); then
|
||||||
|
status_mod=`bzr status | head -n1 | grep "modified" | wc -m`
|
||||||
|
status_all=`bzr status | head -n1 | wc -m`
|
||||||
|
revision=`bzr log | head -n2 | tail -n1 | sed 's/^revno: //'`
|
||||||
|
if [[ $status_mod -gt 0 ]] ; then
|
||||||
|
prompt_segment yellow black
|
||||||
|
echo -n "bzr@"$revision "✚ "
|
||||||
|
else
|
||||||
|
if [[ $status_all -gt 0 ]] ; then
|
||||||
|
prompt_segment yellow black
|
||||||
|
echo -n "bzr@"$revision
|
||||||
|
|
||||||
|
else
|
||||||
|
prompt_segment green black
|
||||||
|
echo -n "bzr@"$revision
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
prompt_hg() {
|
||||||
|
(( $+commands[hg] )) || return
|
||||||
|
local rev status
|
||||||
|
if $(hg id >/dev/null 2>&1); then
|
||||||
|
if $(hg prompt >/dev/null 2>&1); then
|
||||||
|
if [[ $(hg prompt "{status|unknown}") = "?" ]]; then
|
||||||
|
# if files are not added
|
||||||
|
prompt_segment red white
|
||||||
|
st='±'
|
||||||
|
elif [[ -n $(hg prompt "{status|modified}") ]]; then
|
||||||
|
# if any modification
|
||||||
|
prompt_segment yellow black
|
||||||
|
st='±'
|
||||||
|
else
|
||||||
|
# if working copy is clean
|
||||||
|
prompt_segment green black
|
||||||
|
fi
|
||||||
|
echo -n $(hg prompt "☿ {rev}@{branch}") $st
|
||||||
|
else
|
||||||
|
st=""
|
||||||
|
rev=$(hg id -n 2>/dev/null | sed 's/[^-0-9]//g')
|
||||||
|
branch=$(hg id -b 2>/dev/null)
|
||||||
|
if `hg st | grep -q "^\?"`; then
|
||||||
|
prompt_segment red black
|
||||||
|
st='±'
|
||||||
|
elif `hg st | grep -q "^[MA]"`; then
|
||||||
|
prompt_segment yellow black
|
||||||
|
st='±'
|
||||||
|
else
|
||||||
|
prompt_segment green black
|
||||||
|
fi
|
||||||
|
echo -n "☿ $rev@$branch" $st
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# Dir: current working directory
|
||||||
|
prompt_dir() {
|
||||||
|
prompt_segment blue black '%.'
|
||||||
|
}
|
||||||
|
|
||||||
|
# Virtualenv: current working virtualenv
|
||||||
|
prompt_virtualenv() {
|
||||||
|
local virtualenv_path="$VIRTUAL_ENV"
|
||||||
|
if [[ -n $virtualenv_path && -n $VIRTUAL_ENV_DISABLE_PROMPT ]]; then
|
||||||
|
prompt_segment blue black "(`basename $virtualenv_path`)"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# Status:
|
||||||
|
# - was there an error
|
||||||
|
# - am I root
|
||||||
|
# - are there background jobs?
|
||||||
|
prompt_status() {
|
||||||
|
local symbols
|
||||||
|
symbols=()
|
||||||
|
[[ $RETVAL -ne 0 ]] && symbols+="%{%F{red}%}✘"
|
||||||
|
[[ $UID -eq 0 ]] && symbols+="%{%F{yellow}%}⚡"
|
||||||
|
[[ $(jobs -l | wc -l) -gt 0 ]] && symbols+="%{%F{cyan}%}⚙"
|
||||||
|
|
||||||
|
[[ -n "$symbols" ]] && prompt_segment black default "$symbols"
|
||||||
|
}
|
||||||
|
|
||||||
|
## Main prompt
|
||||||
|
build_prompt() {
|
||||||
|
RETVAL=$?
|
||||||
|
prompt_status
|
||||||
|
prompt_virtualenv
|
||||||
|
prompt_context
|
||||||
|
prompt_dir
|
||||||
|
prompt_git
|
||||||
|
prompt_bzr
|
||||||
|
prompt_hg
|
||||||
|
prompt_end
|
||||||
|
}
|
||||||
|
|
||||||
|
PROMPT='%{%f%b%k%}$(build_prompt) '
|
||||||
@@ -0,0 +1,47 @@
|
|||||||
|
set nocompatible
|
||||||
|
filetype off
|
||||||
|
|
||||||
|
set rtp+=~/.vim/bundle/Vundle.vim
|
||||||
|
call vundle#begin()
|
||||||
|
|
||||||
|
Plugin 'VundleVim/Vundle.vim'
|
||||||
|
Plugin 'altercation/vim-colors-solarized'
|
||||||
|
Plugin 'scrooloose/nerdtree'
|
||||||
|
Plugin 'majutsushi/tagbar'
|
||||||
|
Plugin 'tpope/vim-surround'
|
||||||
|
" Plugin 'klen/python-mode'
|
||||||
|
" Plugin 'rosenfeld/conque-term'
|
||||||
|
Plugin 'mitsuhiko/vim-jinja'
|
||||||
|
Plugin 'davidhalter/jedi-vim'
|
||||||
|
Plugin 'Vimjas/vim-python-pep8-indent'
|
||||||
|
" Plugin 'mitsuhiko/vim-python-combined'
|
||||||
|
Plugin 'bling/vim-airline'
|
||||||
|
|
||||||
|
call vundle#end()
|
||||||
|
|
||||||
|
filetype plugin indent on
|
||||||
|
|
||||||
|
syntax on
|
||||||
|
set background=dark
|
||||||
|
colorscheme solarized
|
||||||
|
let g:jedi#popup_on_dot = 0
|
||||||
|
|
||||||
|
set number
|
||||||
|
set incsearch
|
||||||
|
set hlsearch
|
||||||
|
nnoremap <silent> <CR> :nohlsearch<CR><CR>
|
||||||
|
set clipboard=unnamedplus
|
||||||
|
|
||||||
|
au BufNewFile,BufRead *.py
|
||||||
|
\ set tabstop=4 |
|
||||||
|
\ set softtabstop=4 |
|
||||||
|
\ set shiftwidth=4 |
|
||||||
|
\ set textwidth=99 |
|
||||||
|
\ set expandtab |
|
||||||
|
\ set autoindent |
|
||||||
|
\ set fileformat=unix
|
||||||
|
|
||||||
|
au BufNewFile,BufRead *.js,*.html,*.css
|
||||||
|
\ set tabstop=2 |
|
||||||
|
\ set softtabstop=2 |
|
||||||
|
\ set shiftwidth=2
|
||||||
@@ -0,0 +1,109 @@
|
|||||||
|
# If you come from bash you might have to change your $PATH.
|
||||||
|
# export PATH=$HOME/bin:/usr/local/bin:$PATH
|
||||||
|
|
||||||
|
# Path to your oh-my-zsh installation.
|
||||||
|
export ZSH=/home/fedor/.oh-my-zsh
|
||||||
|
|
||||||
|
# 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-zsh is loaded.
|
||||||
|
# See https://github.com/robbyrussell/oh-my-zsh/wiki/Themes
|
||||||
|
ZSH_THEME="agnoster-custom"
|
||||||
|
|
||||||
|
# Set list of themes to load
|
||||||
|
# Setting this variable when ZSH_THEME=random
|
||||||
|
# cause zsh load theme from this variable instead of
|
||||||
|
# looking in ~/.oh-my-zsh/themes/
|
||||||
|
# An empty array have no effect
|
||||||
|
# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )
|
||||||
|
|
||||||
|
# Uncomment the following line to use case-sensitive completion.
|
||||||
|
# CASE_SENSITIVE="true"
|
||||||
|
|
||||||
|
# Uncomment the following line to use hyphen-insensitive completion. Case
|
||||||
|
# sensitive completion must be off. _ and - will be interchangeable.
|
||||||
|
# HYPHEN_INSENSITIVE="true"
|
||||||
|
|
||||||
|
# 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_ZSH_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 want to change the command execution time
|
||||||
|
# stamp shown in the history command output.
|
||||||
|
# The optional three formats: "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
|
||||||
|
# HIST_STAMPS="mm/dd/yyyy"
|
||||||
|
|
||||||
|
# Would you like to use another custom folder than $ZSH/custom?
|
||||||
|
# ZSH_CUSTOM=/path/to/new-custom-folder
|
||||||
|
|
||||||
|
# Which plugins would you like to load? (plugins can be found in ~/.oh-my-zsh/plugins/*)
|
||||||
|
# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/
|
||||||
|
# Example format: plugins=(rails git textmate ruby lighthouse)
|
||||||
|
# Add wisely, as too many plugins slow down shell startup.
|
||||||
|
plugins=(
|
||||||
|
git
|
||||||
|
colored-man-pages
|
||||||
|
colorize
|
||||||
|
cp
|
||||||
|
extract
|
||||||
|
rsync
|
||||||
|
web-search
|
||||||
|
jump
|
||||||
|
virtualenv
|
||||||
|
common-aliases
|
||||||
|
)
|
||||||
|
|
||||||
|
EDITOR="vim"
|
||||||
|
VISUAL="$EDITOR"
|
||||||
|
source $ZSH/oh-my-zsh.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-zsh libs,
|
||||||
|
# plugins, and themes. Aliases can be placed here, though oh-my-zsh
|
||||||
|
# users are encouraged to define aliases within the ZSH_CUSTOM folder.
|
||||||
|
# For a full list of active aliases, run `alias`.
|
||||||
|
#
|
||||||
|
# Example aliases
|
||||||
|
# alias zshconfig="mate ~/.zshrc"
|
||||||
|
# alias ohmyzsh="mate ~/.oh-my-zsh"
|
||||||
|
|
||||||
|
DEFAULT_USER="fedor"
|
||||||
|
|
||||||
|
eval `dircolors ~/.dir_colors/dircolors`
|
||||||
@@ -1,10 +0,0 @@
|
|||||||
# My dotfiles and scripts
|
|
||||||
|
|
||||||
Programs:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
apt install stow git fish neovim tmux zoxide eza fd-find ripgrep bat rsync
|
|
||||||
pacman -Syu stow git fish neovim tmux zoxide eza fd ripgrep bat rsync
|
|
||||||
cd dotfiles
|
|
||||||
stow server
|
|
||||||
```
|
|
||||||
@@ -1,31 +0,0 @@
|
|||||||
[general]
|
|
||||||
import = [
|
|
||||||
"solarized_dark.toml"
|
|
||||||
]
|
|
||||||
|
|
||||||
[window]
|
|
||||||
opacity = 0.85
|
|
||||||
|
|
||||||
|
|
||||||
[font]
|
|
||||||
size = 11.0
|
|
||||||
|
|
||||||
[font.bold]
|
|
||||||
family = "Inconsolata LGC Nerd Font"
|
|
||||||
style = "Bold"
|
|
||||||
|
|
||||||
[font.bold_italic]
|
|
||||||
family = "Inconsolata LGC Nerd Font"
|
|
||||||
style = "Bold Italic"
|
|
||||||
|
|
||||||
[font.italic]
|
|
||||||
family = "Inconsolata LGC Nerd Font"
|
|
||||||
style = "Italic"
|
|
||||||
|
|
||||||
[font.normal]
|
|
||||||
family = "Inconsolata LGC Nerd Font"
|
|
||||||
style = "Regular"
|
|
||||||
|
|
||||||
[font.offset]
|
|
||||||
x = 0
|
|
||||||
y = 0
|
|
||||||
@@ -1,28 +0,0 @@
|
|||||||
# Colors (Solarized Dark)
|
|
||||||
|
|
||||||
# Default colors
|
|
||||||
[colors.primary]
|
|
||||||
background = '#002b36'
|
|
||||||
foreground = '#839496'
|
|
||||||
|
|
||||||
# Normal colors
|
|
||||||
[colors.normal]
|
|
||||||
black = '#073642'
|
|
||||||
red = '#dc322f'
|
|
||||||
green = '#859900'
|
|
||||||
yellow = '#b58900'
|
|
||||||
blue = '#268bd2'
|
|
||||||
magenta = '#d33682'
|
|
||||||
cyan = '#2aa198'
|
|
||||||
white = '#eee8d5'
|
|
||||||
|
|
||||||
# Bright colors
|
|
||||||
[colors.bright]
|
|
||||||
black = '#002b36'
|
|
||||||
red = '#cb4b16'
|
|
||||||
green = '#586e75'
|
|
||||||
yellow = '#657b83'
|
|
||||||
blue = '#839496'
|
|
||||||
magenta = '#6c71c4'
|
|
||||||
cyan = '#93a1a1'
|
|
||||||
white = '#fdf6e3'
|
|
||||||
@@ -1,215 +0,0 @@
|
|||||||
# This file has been auto-generated by i3-config-wizard(1).
|
|
||||||
# It will not be overwritten, so edit it as you like.
|
|
||||||
#
|
|
||||||
# Should you change your keyboard layout some time, delete
|
|
||||||
# this file and re-run i3-config-wizard(1).
|
|
||||||
#
|
|
||||||
|
|
||||||
# i3 config file (v4)
|
|
||||||
#
|
|
||||||
# Please see https://i3wm.org/docs/userguide.html for a complete reference!
|
|
||||||
|
|
||||||
set $mod Mod4
|
|
||||||
|
|
||||||
# Font for window titles. Will also be used by the bar unless a different font
|
|
||||||
# is used in the bar {} block below.
|
|
||||||
font pango:Inconsolata LGC Nerd Font Mono Regular 10
|
|
||||||
default_border pixel 2
|
|
||||||
default_floating_border pixel 1
|
|
||||||
gaps inner 2px
|
|
||||||
gaps outer 2px
|
|
||||||
client.focused #4c7899 #285577 #ffffff #4c7899 #285577
|
|
||||||
# This font is widely installed, provides lots of unicode glyphs, right-to-left
|
|
||||||
# text rendering and scalability on retina/hidpi displays (thanks to pango).
|
|
||||||
#font pango:DejaVu Sans Mono 8
|
|
||||||
|
|
||||||
# Start XDG autostart .desktop files using dex. See also
|
|
||||||
# https://wiki.archlinux.org/index.php/XDG_Autostart
|
|
||||||
#exec --no-startup-id dex --autostart --environment i3
|
|
||||||
|
|
||||||
# The combination of xss-lock, nm-applet and pactl is a popular choice, so
|
|
||||||
# they are included here as an example. Modify as you see fit.
|
|
||||||
|
|
||||||
# xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the
|
|
||||||
# screen before suspend. Use loginctl lock-session to lock your screen.
|
|
||||||
exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork
|
|
||||||
|
|
||||||
# NetworkManager is the most popular way to manage wireless networks on Linux,
|
|
||||||
# and nm-applet is a desktop environment-independent system tray GUI for it.
|
|
||||||
#exec --no-startup-id nm-applet
|
|
||||||
exec --no-startup-id picom -b
|
|
||||||
exec --no-startup-id setxkbmap -model pc104 -layout us,ru -option grp:alt_shift_toggle -option grp_led:caps -option caps:escape
|
|
||||||
#exec --no-startup-id nextcloud
|
|
||||||
exec --no-startup-id seafile-gui
|
|
||||||
exec --no-startup-id unclutter --fork
|
|
||||||
exec --no-startup-id feh --bg-center --randomize ~/.config/wallpapers/*
|
|
||||||
|
|
||||||
# Use pactl to adjust volume in PulseAudio.
|
|
||||||
set $refresh_i3status killall -SIGUSR1 i3status
|
|
||||||
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status
|
|
||||||
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status
|
|
||||||
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status
|
|
||||||
bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status
|
|
||||||
bindsym XF86MonBrightnessUp exec --no-startup-id brightnessctl set "+10%"
|
|
||||||
bindsym XF86MonBrightnessDown exec --no-startup-id brightnessctl set "10%-"
|
|
||||||
bindsym $mod+b exec --no-startup-id loginctl lock-session
|
|
||||||
bindsym $mod+F1 exec --no-startup-id pactl set-default-sink alsa_output.pci-0000_00_1f.3.analog-stereo && pactl set-sink-port alsa_output.pci-0000_00_1f.3.analog-stereo analog-output-headphones
|
|
||||||
bindsym $mod+F2 exec --no-startup-id pactl set-default-sink alsa_output.pci-0000_00_1f.3.analog-stereo && pactl set-sink-port alsa_output.pci-0000_00_1f.3.analog-stereo analog-output-lineout
|
|
||||||
bindsym $mod+F3 exec --no-startup-id pactl set-default-sink alsa_output.pci-0000_01_00.1.hdmi-stereo && pactl set-card-profile alsa_output.pci-0000_01_00.1.hdmi-stereo hdmi-output-1
|
|
||||||
bindsym $mod+F4 exec --no-startup-id pactl set-default-sink bluez_output.D3_87_2B_2F_19_C6.1
|
|
||||||
bindsym Print exec "maim -s | xclip -selection clipboard -t image/png"
|
|
||||||
|
|
||||||
# Use Mouse+$mod to drag floating windows to their wanted position
|
|
||||||
floating_modifier $mod
|
|
||||||
|
|
||||||
# move tiling windows via drag & drop by left-clicking into the title bar,
|
|
||||||
# or left-clicking anywhere into the window while holding the floating modifier.
|
|
||||||
tiling_drag modifier titlebar
|
|
||||||
|
|
||||||
# start a terminal
|
|
||||||
bindsym $mod+Return exec alacritty
|
|
||||||
|
|
||||||
# kill focused window
|
|
||||||
bindsym $mod+Shift+q kill
|
|
||||||
|
|
||||||
# start dmenu (a program launcher)
|
|
||||||
# bindsym $mod+d exec --no-startup-id dmenu_run
|
|
||||||
# A more modern dmenu replacement is rofi:
|
|
||||||
bindsym $mod+r exec "rofi -modi drun,run -show drun"
|
|
||||||
# There also is i3-dmenu-desktop which only displays applications shipping a
|
|
||||||
# .desktop file. It is a wrapper around dmenu, so you need that installed.
|
|
||||||
# bindcode $mod+40 exec --no-startup-id i3-dmenu-desktop
|
|
||||||
|
|
||||||
# change focus
|
|
||||||
bindsym $mod+h focus left
|
|
||||||
bindsym $mod+j focus down
|
|
||||||
bindsym $mod+k focus up
|
|
||||||
bindsym $mod+l focus right
|
|
||||||
|
|
||||||
# alternatively, you can use the cursor keys:
|
|
||||||
bindsym $mod+Left focus left
|
|
||||||
bindsym $mod+Down focus down
|
|
||||||
bindsym $mod+Up focus up
|
|
||||||
bindsym $mod+Right focus right
|
|
||||||
|
|
||||||
# move focused window
|
|
||||||
bindsym $mod+Shift+h move left
|
|
||||||
bindsym $mod+Shift+j move down
|
|
||||||
bindsym $mod+Shift+k move up
|
|
||||||
bindsym $mod+Shift+l move right
|
|
||||||
|
|
||||||
# alternatively, you can use the cursor keys:
|
|
||||||
bindsym $mod+Shift+Left move left
|
|
||||||
bindsym $mod+Shift+Down move down
|
|
||||||
bindsym $mod+Shift+Up move up
|
|
||||||
bindsym $mod+Shift+Right move right
|
|
||||||
|
|
||||||
# split in horizontal orientation
|
|
||||||
bindsym $mod+Control+h split h
|
|
||||||
|
|
||||||
# split in vertical orientation
|
|
||||||
bindsym $mod+Control+v split v
|
|
||||||
|
|
||||||
# enter fullscreen mode for the focused container
|
|
||||||
bindsym $mod+Control+f fullscreen toggle
|
|
||||||
|
|
||||||
# change container layout (stacked, tabbed, toggle split)
|
|
||||||
bindsym $mod+Control+s layout stacking
|
|
||||||
bindsym $mod+Control+w layout tabbed
|
|
||||||
bindsym $mod+Control+e layout toggle split
|
|
||||||
|
|
||||||
# toggle tiling / floating
|
|
||||||
bindsym $mod+Shift+space floating toggle
|
|
||||||
|
|
||||||
# change focus between tiling / floating windows
|
|
||||||
bindsym $mod+space focus mode_toggle
|
|
||||||
|
|
||||||
# focus the parent container
|
|
||||||
bindsym $mod+Control+a focus parent
|
|
||||||
|
|
||||||
# focus the child container
|
|
||||||
#bindsym $mod+d focus child
|
|
||||||
|
|
||||||
# Define names for default workspaces for which we configure key bindings later on.
|
|
||||||
# We use variables to avoid repeating the names in multiple places.
|
|
||||||
set $ws1 "1:a"
|
|
||||||
set $ws2 "2:s"
|
|
||||||
set $ws3 "3:d"
|
|
||||||
set $ws4 "4:f"
|
|
||||||
set $ws5 "5:u"
|
|
||||||
set $ws6 "6:i"
|
|
||||||
set $ws7 "7:o"
|
|
||||||
set $ws8 "8:p"
|
|
||||||
|
|
||||||
# switch to workspace
|
|
||||||
bindsym $mod+a workspace $ws1
|
|
||||||
bindsym $mod+s workspace $ws2
|
|
||||||
bindsym $mod+d workspace $ws3
|
|
||||||
bindsym $mod+f workspace $ws4
|
|
||||||
bindsym $mod+u workspace $ws5
|
|
||||||
bindsym $mod+i workspace $ws6
|
|
||||||
bindsym $mod+o workspace $ws7
|
|
||||||
bindsym $mod+p workspace $ws8
|
|
||||||
|
|
||||||
# move focused container to workspace
|
|
||||||
bindsym $mod+Shift+a move container to workspace $ws1
|
|
||||||
bindsym $mod+Shift+s move container to workspace $ws2
|
|
||||||
bindsym $mod+Shift+d move container to workspace $ws3
|
|
||||||
bindsym $mod+Shift+f move container to workspace $ws4
|
|
||||||
bindsym $mod+Shift+u move container to workspace $ws5
|
|
||||||
bindsym $mod+Shift+i move container to workspace $ws6
|
|
||||||
bindsym $mod+Shift+o move container to workspace $ws7
|
|
||||||
bindsym $mod+Shift+p move container to workspace $ws8
|
|
||||||
|
|
||||||
# reload the configuration file
|
|
||||||
# bindsym $mod+Shift+c reload
|
|
||||||
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
|
|
||||||
bindsym $mod+Shift+c restart
|
|
||||||
# exit i3 (logs you out of your X session)
|
|
||||||
bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'"
|
|
||||||
|
|
||||||
# resize window (you can also use the mouse for that)
|
|
||||||
mode "resize" {
|
|
||||||
# These bindings trigger as soon as you enter the resize mode
|
|
||||||
|
|
||||||
# Pressing left will shrink the window’s width.
|
|
||||||
# Pressing right will grow the window’s width.
|
|
||||||
# Pressing up will shrink the window’s height.
|
|
||||||
# Pressing down will grow the window’s height.
|
|
||||||
bindsym h resize shrink width 10 px or 10 ppt
|
|
||||||
bindsym j resize grow height 10 px or 10 ppt
|
|
||||||
bindsym k resize shrink height 10 px or 10 ppt
|
|
||||||
bindsym l resize grow width 10 px or 10 ppt
|
|
||||||
|
|
||||||
# same bindings, but for the arrow keys
|
|
||||||
bindsym Left resize shrink width 10 px or 10 ppt
|
|
||||||
bindsym Down resize grow height 10 px or 10 ppt
|
|
||||||
bindsym Up resize shrink height 10 px or 10 ppt
|
|
||||||
bindsym Right resize grow width 10 px or 10 ppt
|
|
||||||
|
|
||||||
# back to normal: Enter or Escape or $mod+r
|
|
||||||
bindsym Return mode "default"
|
|
||||||
bindsym Escape mode "default"
|
|
||||||
bindsym $mod+Shift+r mode "default"
|
|
||||||
}
|
|
||||||
|
|
||||||
bindsym $mod+Shift+r mode "resize"
|
|
||||||
|
|
||||||
# Start i3bar to display a workspace bar (plus the system information i3status
|
|
||||||
# finds out, if available)
|
|
||||||
bar {
|
|
||||||
status_command i3status
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
assign [class="^firefox$"] $ws1
|
|
||||||
assign [class="^obsidian$"] $ws5
|
|
||||||
assign [class="(?i)strawberry"] $ws6
|
|
||||||
assign [class="^KeePassXC$"] $ws7
|
|
||||||
assign [class="^TelegramDesktop$"] $ws8
|
|
||||||
exec firefox
|
|
||||||
exec keepassxc
|
|
||||||
exec strawberry
|
|
||||||
exec obsidian
|
|
||||||
exec Telegram
|
|
||||||
|
|
||||||
@@ -1,317 +0,0 @@
|
|||||||
#################################
|
|
||||||
# Shadows #
|
|
||||||
#################################
|
|
||||||
|
|
||||||
# Enabled client-side shadows on windows. Note desktop windows
|
|
||||||
# (windows with '_NET_WM_WINDOW_TYPE_DESKTOP') never get shadow,
|
|
||||||
# unless explicitly requested using the wintypes option.
|
|
||||||
#
|
|
||||||
# Can be set per-window using rules.
|
|
||||||
#
|
|
||||||
# Default: false
|
|
||||||
shadow = true;
|
|
||||||
|
|
||||||
# The blur radius for shadows, in pixels.
|
|
||||||
#
|
|
||||||
# Default: 12
|
|
||||||
shadow-radius = 7;
|
|
||||||
|
|
||||||
# The opacity of shadows.
|
|
||||||
#
|
|
||||||
# Range: 0.0 - 1.0
|
|
||||||
# Default: 0.75
|
|
||||||
# shadow-opacity = .75
|
|
||||||
|
|
||||||
# The left offset for shadows, in pixels.
|
|
||||||
#
|
|
||||||
# Default: -15
|
|
||||||
shadow-offset-x = -7;
|
|
||||||
|
|
||||||
# The top offset for shadows, in pixels.
|
|
||||||
#
|
|
||||||
# Default: -15
|
|
||||||
shadow-offset-y = -7;
|
|
||||||
|
|
||||||
# Hex string color value of shadow. Formatted like "#RRGGBB", e.g. "#C0FFEE".
|
|
||||||
#
|
|
||||||
# Default: #000000
|
|
||||||
# shadow-color = "#000000"
|
|
||||||
|
|
||||||
# Crop shadow of a window fully on a particular monitor to that monitor. This is
|
|
||||||
# currently implemented using the X RandR extension.
|
|
||||||
#
|
|
||||||
# Default: false
|
|
||||||
# crop-shadow-to-monitor = false
|
|
||||||
|
|
||||||
|
|
||||||
#################################
|
|
||||||
# Fading #
|
|
||||||
#################################
|
|
||||||
|
|
||||||
# Fade windows in/out when opening/closing and when opacity changes,
|
|
||||||
# unless no-fading-openclose is used. Can be set per-window using rules.
|
|
||||||
#
|
|
||||||
# Default: false
|
|
||||||
fading = true;
|
|
||||||
|
|
||||||
# Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028)
|
|
||||||
fade-in-step = 0.07;
|
|
||||||
|
|
||||||
# Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03)
|
|
||||||
fade-out-step = 0.07;
|
|
||||||
|
|
||||||
# The time between steps in fade step, in milliseconds. (> 0, defaults to 10)
|
|
||||||
fade-delta = 10
|
|
||||||
|
|
||||||
# Do not fade on window open/close.
|
|
||||||
# no-fading-openclose = false
|
|
||||||
|
|
||||||
# Do not fade destroyed ARGB windows with WM frame. Workaround of bugs in Openbox, Fluxbox, etc.
|
|
||||||
# no-fading-destroyed-argb = false
|
|
||||||
|
|
||||||
|
|
||||||
#################################
|
|
||||||
# Transparency / Opacity #
|
|
||||||
#################################
|
|
||||||
|
|
||||||
# Opacity of window titlebars and borders.
|
|
||||||
#
|
|
||||||
# Range: 0.1 - 1.0
|
|
||||||
# Default: 1.0 (disabled)
|
|
||||||
frame-opacity = 0.9;
|
|
||||||
|
|
||||||
# Use fixed inactive dim value, instead of adjusting according to window opacity.
|
|
||||||
#
|
|
||||||
# Default: false
|
|
||||||
# inactive-dim-fixed = true
|
|
||||||
|
|
||||||
#################################
|
|
||||||
# Corners #
|
|
||||||
#################################
|
|
||||||
|
|
||||||
# Sets the radius of rounded window corners. When > 0, the compositor will
|
|
||||||
# round the corners of windows. Does not interact well with
|
|
||||||
# `transparent-clipping`.
|
|
||||||
#
|
|
||||||
# Default: 0 (disabled)
|
|
||||||
corner-radius = 5
|
|
||||||
|
|
||||||
#################################
|
|
||||||
# Blur #
|
|
||||||
#################################
|
|
||||||
|
|
||||||
# Parameters for background blurring, see BLUR section in the man page for more information.
|
|
||||||
# blur-method =
|
|
||||||
# blur-size = 12
|
|
||||||
#
|
|
||||||
# blur-deviation = false
|
|
||||||
#
|
|
||||||
# blur-strength = 5
|
|
||||||
|
|
||||||
# Blur background of semi-transparent / ARGB windows.
|
|
||||||
# Can be set per-window using rules.
|
|
||||||
#
|
|
||||||
# Default: false
|
|
||||||
# blur-background = false
|
|
||||||
|
|
||||||
# Blur background of windows when the window frame is not opaque.
|
|
||||||
# Implies:
|
|
||||||
# blur-background
|
|
||||||
#
|
|
||||||
# Default: false
|
|
||||||
# blur-background-frame = false
|
|
||||||
|
|
||||||
# Use fixed blur strength rather than adjusting according to window opacity.
|
|
||||||
#
|
|
||||||
# Default: false
|
|
||||||
# blur-background-fixed = false
|
|
||||||
|
|
||||||
|
|
||||||
# Specify the blur convolution kernel, with the following format:
|
|
||||||
# example:
|
|
||||||
# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1";
|
|
||||||
# Can also be a pre-defined kernel, see the man page.
|
|
||||||
#
|
|
||||||
# Default: ""
|
|
||||||
blur-kern = "3x3box";
|
|
||||||
|
|
||||||
#################################
|
|
||||||
# General Settings #
|
|
||||||
#################################
|
|
||||||
|
|
||||||
# Enable remote control via D-Bus. See the man page for more details.
|
|
||||||
#
|
|
||||||
# Default: false
|
|
||||||
# dbus = true
|
|
||||||
|
|
||||||
# Daemonize process. Fork to background after initialization. Causes issues with certain (badly-written) drivers.
|
|
||||||
# daemon = false
|
|
||||||
|
|
||||||
# Specify the backend to use: `xrender`, `glx`, or `egl`.
|
|
||||||
#
|
|
||||||
# Default: "xrender"
|
|
||||||
backend = "xrender"
|
|
||||||
|
|
||||||
# Use higher precision during rendering, and apply dither when presenting the
|
|
||||||
# rendered screen. Reduces banding artifacts, but may cause performance
|
|
||||||
# degradation. Only works with OpenGL.
|
|
||||||
dithered-present = false;
|
|
||||||
|
|
||||||
# Enable/disable VSync.
|
|
||||||
#
|
|
||||||
# Default: false
|
|
||||||
vsync = true;
|
|
||||||
|
|
||||||
# Try to detect windows with rounded corners and don't consider them
|
|
||||||
# shaped windows. The accuracy is not very high, unfortunately.
|
|
||||||
#
|
|
||||||
# Has nothing to do with `corner-radius`.
|
|
||||||
#
|
|
||||||
# Default: false
|
|
||||||
detect-rounded-corners = true;
|
|
||||||
|
|
||||||
# Detect '_NET_WM_WINDOW_OPACITY' on client windows, useful for window managers
|
|
||||||
# not passing '_NET_WM_WINDOW_OPACITY' of client windows to frame windows.
|
|
||||||
#
|
|
||||||
# Default: false
|
|
||||||
detect-client-opacity = true;
|
|
||||||
|
|
||||||
# Use EWMH '_NET_ACTIVE_WINDOW' to determine currently focused window,
|
|
||||||
# rather than listening to 'FocusIn'/'FocusOut' event. May be more accurate,
|
|
||||||
# provided that the WM supports it.
|
|
||||||
#
|
|
||||||
# Default: false
|
|
||||||
# use-ewmh-active-win = false
|
|
||||||
|
|
||||||
# Unredirect all windows if a full-screen opaque window is detected,
|
|
||||||
# to maximize performance for full-screen windows. Known to cause flickering
|
|
||||||
# when redirecting/unredirecting windows.
|
|
||||||
#
|
|
||||||
# Default: false
|
|
||||||
# unredir-if-possible = false
|
|
||||||
|
|
||||||
# Delay before unredirecting the window, in milliseconds.
|
|
||||||
#
|
|
||||||
# Default: 0.
|
|
||||||
# unredir-if-possible-delay = 0
|
|
||||||
|
|
||||||
# Use 'WM_TRANSIENT_FOR' to group windows, and consider windows
|
|
||||||
# in the same group focused at the same time.
|
|
||||||
#
|
|
||||||
# Default: false
|
|
||||||
detect-transient = true;
|
|
||||||
|
|
||||||
# Use 'WM_CLIENT_LEADER' to group windows, and consider windows in the same
|
|
||||||
# group focused at the same time. This usually means windows from the same application
|
|
||||||
# will be considered focused or unfocused at the same time.
|
|
||||||
# 'WM_TRANSIENT_FOR' has higher priority if detect-transient is enabled, too.
|
|
||||||
#
|
|
||||||
# Default: false
|
|
||||||
# detect-client-leader = false
|
|
||||||
|
|
||||||
# Use of damage information for rendering. This cause the only the part of the
|
|
||||||
# screen that has actually changed to be redrawn, instead of the whole screen
|
|
||||||
# every time. Should improve performance.
|
|
||||||
#
|
|
||||||
# Default: false
|
|
||||||
use-damage = true;
|
|
||||||
|
|
||||||
# Use X Sync fence to wait for the completion of rendering of other windows,
|
|
||||||
# before using their content to render the current screen.
|
|
||||||
#
|
|
||||||
# Required for explicit sync drivers, such as nvidia.
|
|
||||||
#
|
|
||||||
# Default: false
|
|
||||||
# xrender-sync-fence = false
|
|
||||||
|
|
||||||
# GLX backend: Use specified GLSL fragment shader for rendering window
|
|
||||||
# contents. Read the man page for a detailed explanation of the interface.
|
|
||||||
#
|
|
||||||
# Can be set per-window using rules.
|
|
||||||
#
|
|
||||||
# window-shader-fg = "default"
|
|
||||||
|
|
||||||
# Force all windows to be painted with blending. Useful if you
|
|
||||||
# have a `window-shader-fg` that could turn opaque pixels transparent.
|
|
||||||
#
|
|
||||||
# Default: false
|
|
||||||
# force-win-blend = false
|
|
||||||
|
|
||||||
# Do not use EWMH to detect fullscreen windows.
|
|
||||||
# Reverts to checking if a window is fullscreen based only on its size and coordinates.
|
|
||||||
#
|
|
||||||
# Default: false
|
|
||||||
# no-ewmh-fullscreen = false
|
|
||||||
|
|
||||||
# Dimming bright windows so their brightness doesn't exceed this set value.
|
|
||||||
# Brightness of a window is estimated by averaging all pixels in the window,
|
|
||||||
# so this could comes with a performance hit.
|
|
||||||
# Setting this to 1.0 disables this behaviour. Requires --use-damage to be disabled.
|
|
||||||
#
|
|
||||||
# Default: 1.0 (disabled)
|
|
||||||
# max-brightness = 1.0
|
|
||||||
|
|
||||||
# Make transparent windows clip other windows like non-transparent windows do,
|
|
||||||
# instead of blending on top of them. e.g. placing a transparent window on top
|
|
||||||
# of another window will cut a "hole" in that window, and show the desktop background
|
|
||||||
# underneath.
|
|
||||||
#
|
|
||||||
# Default: false
|
|
||||||
# transparent-clipping = false
|
|
||||||
|
|
||||||
# Set the log level. Possible values are:
|
|
||||||
# "trace", "debug", "info", "warn", "error"
|
|
||||||
# in increasing level of importance. Case insensitive.
|
|
||||||
# If using the "TRACE" log level, it's better to log into a file
|
|
||||||
# using *--log-file*, since it can generate a huge stream of logs.
|
|
||||||
#
|
|
||||||
# Default: "warn"
|
|
||||||
# log-level = "warn";
|
|
||||||
|
|
||||||
# Set the log file.
|
|
||||||
# If *--log-file* is never specified, logs will be written to stderr.
|
|
||||||
# Otherwise, logs will to written to the given file, though some of the early
|
|
||||||
# logs might still be written to the stderr.
|
|
||||||
# When setting this option from the config file, it is recommended to use an absolute path.
|
|
||||||
#
|
|
||||||
# log-file = "/path/to/your/log/file"
|
|
||||||
|
|
||||||
# Write process ID to a file.
|
|
||||||
# write-pid-path = "/path/to/your/log/file"
|
|
||||||
|
|
||||||
# Rule-based per-window options.
|
|
||||||
#
|
|
||||||
# See WINDOW RULES section in the man page for how these work.
|
|
||||||
rules: ({
|
|
||||||
match = "window_type = 'tooltip'";
|
|
||||||
fade = false;
|
|
||||||
shadow = true;
|
|
||||||
opacity = 0.75;
|
|
||||||
full-shadow = false;
|
|
||||||
}, {
|
|
||||||
match = "window_type = 'dock' || "
|
|
||||||
"window_type = 'desktop' || "
|
|
||||||
"_GTK_FRAME_EXTENTS@";
|
|
||||||
blur-background = false;
|
|
||||||
}, {
|
|
||||||
match = "window_type != 'dock'";
|
|
||||||
# shader = "my_shader.frag";
|
|
||||||
}, {
|
|
||||||
match = "window_type = 'dock' || "
|
|
||||||
"window_type = 'desktop'";
|
|
||||||
corner-radius = 0;
|
|
||||||
}, {
|
|
||||||
match = "name = 'Notification' || "
|
|
||||||
"class_g = 'Conky' || "
|
|
||||||
"class_g ?= 'Notify-osd' || "
|
|
||||||
"class_g = 'Cairo-clock' || "
|
|
||||||
"_GTK_FRAME_EXTENTS@";
|
|
||||||
shadow = false;
|
|
||||||
})
|
|
||||||
|
|
||||||
# `@include` directive can be used to include additional configuration files.
|
|
||||||
# Relative paths are search either in the parent of this configuration file
|
|
||||||
# (when the configuration is loaded through a symlink, the symlink will be
|
|
||||||
# resolved first). Or in `$XDG_CONFIG_HOME/picom/include`.
|
|
||||||
#
|
|
||||||
# @include "extra.conf"
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
[General]
|
|
||||||
filedialog-path=@Variant(\0\0\0\x11\0\0\0\v/home/fedor)
|
|
||||||
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\x3 \0\0\0\0\0\0\x6?\0\0\x3m\0\0\x3#\0\0\0\x3\0\0\x6<\0\0\x3j\0\0\0\0\0\0\0\0\x6@\0\0\x3#\0\0\0\x3\0\0\x6<\0\0\x3j)
|
|
||||||
|
|
||||||
[FullScreen]
|
|
||||||
pos=@Point(400 836)
|
|
||||||
screen=@Rect(0 0 1600 900)
|
|
||||||
wide=false
|
|
||||||
|
|
||||||
[MainWindow]
|
|
||||||
adv-controls=0
|
|
||||||
bgSize=@Size(794 798)
|
|
||||||
pl-dock-status=true
|
|
||||||
playlist-visible=false
|
|
||||||
playlistSize=@Size(-1 -1)
|
|
||||||
status-bar-visible=false
|
|
||||||
|
|
||||||
[RecentsMRL]
|
|
||||||
list=file:///mnt/winuser/Videos/Watchmen.mkv
|
|
||||||
times=7568337
|
|
||||||
|
Before Width: | Height: | Size: 600 KiB |
|
Before Width: | Height: | Size: 801 KiB |
|
Before Width: | Height: | Size: 1.5 MiB |
|
Before Width: | Height: | Size: 1.0 MiB |
|
Before Width: | Height: | Size: 458 KiB |
|
Before Width: | Height: | Size: 1.5 MiB |
|
Before Width: | Height: | Size: 1.1 MiB |
|
Before Width: | Height: | Size: 1.4 MiB |
|
Before Width: | Height: | Size: 468 KiB |
|
Before Width: | Height: | Size: 1.4 MiB |
|
Before Width: | Height: | Size: 1.7 MiB |
|
Before Width: | Height: | Size: 1.5 MiB |
|
Before Width: | Height: | Size: 945 KiB |
|
Before Width: | Height: | Size: 1.4 MiB |
|
Before Width: | Height: | Size: 1.4 MiB |
|
Before Width: | Height: | Size: 1.4 MiB |
|
Before Width: | Height: | Size: 2.4 MiB |
|
Before Width: | Height: | Size: 436 KiB |
|
Before Width: | Height: | Size: 1.4 MiB |
|
Before Width: | Height: | Size: 1.3 MiB |
|
Before Width: | Height: | Size: 814 KiB |
|
Before Width: | Height: | Size: 422 KiB |
|
Before Width: | Height: | Size: 461 KiB |
|
Before Width: | Height: | Size: 1.3 MiB |
|
Before Width: | Height: | Size: 269 KiB |
|
Before Width: | Height: | Size: 1.6 MiB |
|
Before Width: | Height: | Size: 718 KiB |
|
Before Width: | Height: | Size: 282 KiB |
|
Before Width: | Height: | Size: 1.9 MiB |
|
Before Width: | Height: | Size: 342 KiB |
|
Before Width: | Height: | Size: 250 KiB |
|
Before Width: | Height: | Size: 1.4 MiB |
|
Before Width: | Height: | Size: 1.4 MiB |
|
Before Width: | Height: | Size: 1.6 MiB |
|
Before Width: | Height: | Size: 974 KiB |
|
Before Width: | Height: | Size: 922 KiB |
|
Before Width: | Height: | Size: 1.3 MiB |
|
Before Width: | Height: | Size: 1.3 MiB |
|
Before Width: | Height: | Size: 508 KiB |
|
Before Width: | Height: | Size: 459 KiB |
|
Before Width: | Height: | Size: 963 KiB |
|
Before Width: | Height: | Size: 2.9 MiB |
|
Before Width: | Height: | Size: 492 KiB |
|
Before Width: | Height: | Size: 833 KiB |
|
Before Width: | Height: | Size: 1.3 MiB |
@@ -1,4 +0,0 @@
|
|||||||
set selection-clipboard clipboard
|
|
||||||
set recolor true
|
|
||||||
set adjust-open width
|
|
||||||
set scroll-full-overlap 0.05
|
|
||||||
@@ -1,45 +0,0 @@
|
|||||||
# Don't edit this file, as it will be written by the web-config tool (`fish_config`).
|
|
||||||
# To customize your theme, delete this file and see
|
|
||||||
# help interactive#syntax-highlighting
|
|
||||||
# or
|
|
||||||
# man fish-interactive | less +/^SYNTAX.HIGHLIGHTING
|
|
||||||
# for appropriate commands to add to ~/.config/fish/config.fish instead.
|
|
||||||
|
|
||||||
set --global fish_color_autosuggestion 707A8C
|
|
||||||
set --global fish_color_cancel --reverse
|
|
||||||
set --global fish_color_command 5CCFE6
|
|
||||||
set --global fish_color_comment 5C6773
|
|
||||||
set --global fish_color_cwd 73D0FF
|
|
||||||
set --global fish_color_cwd_root red
|
|
||||||
set --global fish_color_end F29E74
|
|
||||||
set --global fish_color_error FF3333
|
|
||||||
set --global fish_color_escape 95E6CB
|
|
||||||
set --global fish_color_gray
|
|
||||||
set --global fish_color_history_current --bold
|
|
||||||
set --global fish_color_host --reset
|
|
||||||
set --global fish_color_host_remote yellow
|
|
||||||
set --global fish_color_keyword
|
|
||||||
set --global fish_color_normal CBCCC6
|
|
||||||
set --global fish_color_operator FFCC66
|
|
||||||
set --global fish_color_option
|
|
||||||
set --global fish_color_param CBCCC6
|
|
||||||
set --global fish_color_quote BAE67E
|
|
||||||
set --global fish_color_redirection D4BFFF
|
|
||||||
set --global fish_color_search_match --bold --background=FFCC66
|
|
||||||
set --global fish_color_selection --bold --background=FFCC66
|
|
||||||
set --global fish_color_status red
|
|
||||||
set --global fish_color_user brgreen
|
|
||||||
set --global fish_color_valid_path --underline=single
|
|
||||||
set --global fish_pager_color_background
|
|
||||||
set --global fish_pager_color_completion --reset
|
|
||||||
set --global fish_pager_color_description B3A06D
|
|
||||||
set --global fish_pager_color_prefix --bold --underline=single
|
|
||||||
set --global fish_pager_color_progress brwhite --bold --background=cyan
|
|
||||||
set --global fish_pager_color_secondary_background
|
|
||||||
set --global fish_pager_color_secondary_completion
|
|
||||||
set --global fish_pager_color_secondary_description
|
|
||||||
set --global fish_pager_color_secondary_prefix
|
|
||||||
set --global fish_pager_color_selected_background --background=FFCC66
|
|
||||||
set --global fish_pager_color_selected_completion
|
|
||||||
set --global fish_pager_color_selected_description
|
|
||||||
set --global fish_pager_color_selected_prefix
|
|
||||||
@@ -1,45 +0,0 @@
|
|||||||
# Don't edit this file, as it will be written by the web-config tool (`fish_config`).
|
|
||||||
# To customize your theme, delete this file and see
|
|
||||||
# help interactive#syntax-highlighting
|
|
||||||
# or
|
|
||||||
# man fish-interactive | less +/^SYNTAX.HIGHLIGHTING
|
|
||||||
# for appropriate commands to add to ~/.config/fish/config.fish instead.
|
|
||||||
|
|
||||||
set --global fish_color_autosuggestion 586e75
|
|
||||||
set --global fish_color_cancel --reverse
|
|
||||||
set --global fish_color_command 93a1a1
|
|
||||||
set --global fish_color_comment 586e75
|
|
||||||
set --global fish_color_cwd green
|
|
||||||
set --global fish_color_cwd_root red
|
|
||||||
set --global fish_color_end 268bd2
|
|
||||||
set --global fish_color_error dc322f
|
|
||||||
set --global fish_color_escape 00a6b2
|
|
||||||
set --global fish_color_gray
|
|
||||||
set --global fish_color_history_current --bold
|
|
||||||
set --global fish_color_host normal
|
|
||||||
set --global fish_color_host_remote yellow
|
|
||||||
set --global fish_color_keyword
|
|
||||||
set --global fish_color_normal normal
|
|
||||||
set --global fish_color_operator 00a6b2
|
|
||||||
set --global fish_color_option
|
|
||||||
set --global fish_color_param 839496
|
|
||||||
set --global fish_color_quote 657b83
|
|
||||||
set --global fish_color_redirection 6c71c4
|
|
||||||
set --global fish_color_search_match bryellow --bold --background=black
|
|
||||||
set --global fish_color_selection white --bold --background=brblack
|
|
||||||
set --global fish_color_status red
|
|
||||||
set --global fish_color_user brgreen
|
|
||||||
set --global fish_color_valid_path --underline=single
|
|
||||||
set --global fish_pager_color_background
|
|
||||||
set --global fish_pager_color_completion B3A06D
|
|
||||||
set --global fish_pager_color_description B3A06D
|
|
||||||
set --global fish_pager_color_prefix cyan --underline=single
|
|
||||||
set --global fish_pager_color_progress brwhite --bold --background=cyan
|
|
||||||
set --global fish_pager_color_secondary_background
|
|
||||||
set --global fish_pager_color_secondary_completion
|
|
||||||
set --global fish_pager_color_secondary_description
|
|
||||||
set --global fish_pager_color_secondary_prefix
|
|
||||||
set --global fish_pager_color_selected_background --background=brblack
|
|
||||||
set --global fish_pager_color_selected_completion
|
|
||||||
set --global fish_pager_color_selected_description
|
|
||||||
set --global fish_pager_color_selected_prefix
|
|
||||||
@@ -1,55 +0,0 @@
|
|||||||
if status is-interactive
|
|
||||||
# Commands to run in interactive sessions can go here
|
|
||||||
alias ls "eza --icons"
|
|
||||||
alias ll "eza -al --git --icons"
|
|
||||||
alias la "eza -a --icons"
|
|
||||||
alias cat bat
|
|
||||||
alias less "less -RFX"
|
|
||||||
function grep ()
|
|
||||||
rg -p $argv | less
|
|
||||||
end
|
|
||||||
alias e nvim
|
|
||||||
alias edit nvim
|
|
||||||
alias find fd
|
|
||||||
zoxide init --cmd cd fish | source
|
|
||||||
alias show-packages "expac -H M '%-20n\t%10d' (pacman -Qqe)"
|
|
||||||
function mkcd
|
|
||||||
mkdir $argv[1] && cd $argv[1]
|
|
||||||
end
|
|
||||||
function cpr
|
|
||||||
rsync --archive -hh --partial --info=stats1,progress2 --modify-window=1 "$argv"
|
|
||||||
end
|
|
||||||
function mvr
|
|
||||||
rsync --archive -hh --partial --info=stats1,progress2 --modify-window=1 --remove-source-files "$argv"
|
|
||||||
end
|
|
||||||
alias ga "git add ."
|
|
||||||
alias gs "git status"
|
|
||||||
alias gc "git commit"
|
|
||||||
alias gp "git push"
|
|
||||||
alias gg "ga && gc && gp"
|
|
||||||
function pdf
|
|
||||||
zathura "$argv" --fork && exit
|
|
||||||
end
|
|
||||||
alias connect-phone "iwctl station wlan0 connect \"Fedor Pixel 7\""
|
|
||||||
alias vpn-up "sudo systemctl start wg-quick@vpn.service"
|
|
||||||
alias vpn-down "sudo systemctl stop wg-quick@vpn.service"
|
|
||||||
|
|
||||||
end
|
|
||||||
# ASDF configuration code
|
|
||||||
if test -z $ASDF_DATA_DIR
|
|
||||||
set _asdf_shims "$HOME/.asdf/shims"
|
|
||||||
else
|
|
||||||
set _asdf_shims "$ASDF_DATA_DIR/shims"
|
|
||||||
end
|
|
||||||
|
|
||||||
# Do not use fish_add_path (added in Fish 3.2) because it
|
|
||||||
# potentially changes the order of items in PATH
|
|
||||||
if not contains $_asdf_shims $PATH
|
|
||||||
set -gx --prepend PATH $_asdf_shims
|
|
||||||
end
|
|
||||||
set --erase _asdf_shims
|
|
||||||
|
|
||||||
# Added by LM Studio CLI (lms)
|
|
||||||
set -gx PATH $PATH /home/fedor/.lmstudio/bin
|
|
||||||
# End of LM Studio CLI section
|
|
||||||
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
# This file contains fish universal variable definitions.
|
|
||||||
# VERSION: 3.0
|
|
||||||
SETUVAR --export MANPAGER:nvim\x20\x2bMan\x21
|
|
||||||
SETUVAR --export VISUAL:/usr/bin/v
|
|
||||||
SETUVAR __fish_initialized:4300
|
|
||||||
SETUVAR __fish_webconfig_theme_notification:set\x2dtheme\x2dv1\x2d\x232
|
|
||||||
SETUVAR fish_greeting:\x1d
|
|
||||||
SETUVAR fish_user_paths:/home/fedor/\x2elocal/bin\x1e/usr/local/bin
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
# Redefine fish_mode_prompt function as empty to hide fish-shell mode indicator
|
|
||||||
function fish_mode_prompt
|
|
||||||
end
|
|
||||||
@@ -1,389 +0,0 @@
|
|||||||
# name: Agnoster
|
|
||||||
# agnoster's Theme - https://gist.github.com/3712874
|
|
||||||
# A Powerline-inspired theme for FISH
|
|
||||||
#
|
|
||||||
# # README
|
|
||||||
#
|
|
||||||
# In order for this theme to render correctly, you will need a
|
|
||||||
# [Powerline-patched font](https://gist.github.com/1595572).
|
|
||||||
|
|
||||||
## Set this options in your config.fish (if you want to :])
|
|
||||||
# set -g theme_display_user yes
|
|
||||||
# set -g theme_hide_hostname yes
|
|
||||||
# set -g theme_hide_hostname no
|
|
||||||
# set -g default_user your_normal_user
|
|
||||||
# set -g theme_svn_prompt_enabled yes
|
|
||||||
# set -g theme_mercurial_prompt_enabled yes
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
set -g current_bg NONE
|
|
||||||
set -g segment_separator \uE0B0
|
|
||||||
set -g right_segment_separator \uE0B0
|
|
||||||
set -q scm_prompt_blacklist; or set -g scm_prompt_blacklist
|
|
||||||
set -q max_package_count_visible_in_prompt; or set -g max_package_count_visible_in_prompt 10
|
|
||||||
# We support trimming the version only in simple cases, such as "1.2.3".
|
|
||||||
set -q try_to_trim_nix_package_version; or set -g try_to_trim_nix_package_version yes
|
|
||||||
|
|
||||||
# ===========================
|
|
||||||
# Color setting
|
|
||||||
|
|
||||||
# You can set these variables in config.fish like:
|
|
||||||
# set -g color_dir_bg red
|
|
||||||
# If not set, default color from agnoster will be used.
|
|
||||||
# ===========================
|
|
||||||
|
|
||||||
set -q color_virtual_env_bg; or set -g color_virtual_env_bg white
|
|
||||||
set -q color_virtual_env_str; or set -g color_virtual_env_str black
|
|
||||||
set -q color_user_bg; or set -g color_user_bg black
|
|
||||||
set -q color_user_str; or set -g color_user_str yellow
|
|
||||||
set -q color_dir_bg; or set -g color_dir_bg blue
|
|
||||||
set -q color_dir_str; or set -g color_dir_str black
|
|
||||||
set -q color_hg_changed_bg; or set -g color_hg_changed_bg yellow
|
|
||||||
set -q color_hg_changed_str; or set -g color_hg_changed_str black
|
|
||||||
set -q color_hg_bg; or set -g color_hg_bg green
|
|
||||||
set -q color_hg_str; or set -g color_hg_str black
|
|
||||||
set -q color_git_dirty_bg; or set -g color_git_dirty_bg yellow
|
|
||||||
set -q color_git_dirty_str; or set -g color_git_dirty_str black
|
|
||||||
set -q color_git_bg; or set -g color_git_bg green
|
|
||||||
set -q color_git_str; or set -g color_git_str black
|
|
||||||
set -q color_svn_bg; or set -g color_svn_bg green
|
|
||||||
set -q color_svn_str; or set -g color_svn_str black
|
|
||||||
set -q color_status_nonzero_bg; or set -g color_status_nonzero_bg black
|
|
||||||
set -q color_status_nonzero_str; or set -g color_status_nonzero_str red
|
|
||||||
set -q glyph_status_nonzero; or set -g glyph_status_nonzero "✘"
|
|
||||||
set -q color_status_superuser_bg; or set -g color_status_superuser_bg black
|
|
||||||
set -q color_status_superuser_str; or set -g color_status_superuser_str yellow
|
|
||||||
set -q glyph_status_superuser; or set -g glyph_status_superuser "🔒"
|
|
||||||
set -q color_status_jobs_bg; or set -g color_status_jobs_bg black
|
|
||||||
set -q color_status_jobs_str; or set -g color_status_jobs_str cyan
|
|
||||||
set -q glyph_status_jobs; or set -g glyph_status_jobs "⚡"
|
|
||||||
set -q color_status_private_bg; or set -g color_status_private_bg black
|
|
||||||
set -q color_status_private_str; or set -g color_status_private_str purple
|
|
||||||
set -q glyph_status_private; or set -g glyph_status_private "⚙"
|
|
||||||
|
|
||||||
# ===========================
|
|
||||||
# General VCS settings
|
|
||||||
|
|
||||||
set -q fish_vcs_branch_name_length; or set -g fish_vcs_branch_name_length 15
|
|
||||||
|
|
||||||
# ===========================
|
|
||||||
# Git settings
|
|
||||||
# set -g color_dir_bg red
|
|
||||||
|
|
||||||
set -q fish_git_prompt_untracked_files; or set -g fish_git_prompt_untracked_files normal
|
|
||||||
|
|
||||||
# ===========================
|
|
||||||
# Subversion settings
|
|
||||||
|
|
||||||
set -q theme_svn_prompt_enabled; or set -g theme_svn_prompt_enabled no
|
|
||||||
|
|
||||||
# ===========================
|
|
||||||
# Mercurial settings
|
|
||||||
|
|
||||||
set -q theme_mercurial_prompt_enabled; or set -g theme_mercurial_prompt_enabled no
|
|
||||||
|
|
||||||
# ===========================
|
|
||||||
# Helper methods
|
|
||||||
# ===========================
|
|
||||||
|
|
||||||
set -g __fish_git_prompt_showdirtystate 'yes'
|
|
||||||
set -g __fish_git_prompt_char_dirtystate '±'
|
|
||||||
set -g __fish_git_prompt_char_cleanstate ''
|
|
||||||
|
|
||||||
function shorten_branch_name -a branch_name
|
|
||||||
set new_branch_name $branch_name
|
|
||||||
|
|
||||||
if test (string length $branch_name) -gt $fish_vcs_branch_name_length
|
|
||||||
# Round up length before dot (+0.5)
|
|
||||||
# Remove half the length of dots (-1)
|
|
||||||
# -> Total offset: -0.5
|
|
||||||
set pre_dots_length (math -s0 $fish_vcs_branch_name_length / 2 - 0.5)
|
|
||||||
# Round down length after dot (-0.5)
|
|
||||||
# Remove half the length of dots (-1)
|
|
||||||
# -> Total offset: -1.5
|
|
||||||
set post_dots_length (math -s0 $fish_vcs_branch_name_length / 2 - 1.5)
|
|
||||||
set new_branch_name (string replace -r "(.{$pre_dots_length}).*(.{$post_dots_length})" '$1..$2' $branch_name)
|
|
||||||
end
|
|
||||||
|
|
||||||
echo $new_branch_name
|
|
||||||
end
|
|
||||||
|
|
||||||
function parse_git_dirty
|
|
||||||
if [ $__fish_git_prompt_showdirtystate = "yes" ]
|
|
||||||
set -l submodule_syntax
|
|
||||||
set submodule_syntax "--ignore-submodules=dirty"
|
|
||||||
set untracked_syntax "--untracked-files=$fish_git_prompt_untracked_files"
|
|
||||||
set git_dirty (command git status --porcelain $submodule_syntax $untracked_syntax 2> /dev/null)
|
|
||||||
if [ -n "$git_dirty" ]
|
|
||||||
echo -n "$__fish_git_prompt_char_dirtystate"
|
|
||||||
else
|
|
||||||
echo -n "$__fish_git_prompt_char_cleanstate"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
function cwd_in_scm_blacklist
|
|
||||||
for entry in $scm_prompt_blacklist
|
|
||||||
pwd | grep "^$entry" -
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
# ===========================
|
|
||||||
# Segments functions
|
|
||||||
# ===========================
|
|
||||||
|
|
||||||
function prompt_segment -d "Function to draw a segment"
|
|
||||||
set -l bg
|
|
||||||
set -l fg
|
|
||||||
if [ -n "$argv[1]" ]
|
|
||||||
set bg $argv[1]
|
|
||||||
else
|
|
||||||
set bg normal
|
|
||||||
end
|
|
||||||
if [ -n "$argv[2]" ]
|
|
||||||
set fg $argv[2]
|
|
||||||
else
|
|
||||||
set fg normal
|
|
||||||
end
|
|
||||||
if [ "$current_bg" != 'NONE' -a "$argv[1]" != "$current_bg" ]
|
|
||||||
set_color -b $bg
|
|
||||||
set_color $current_bg
|
|
||||||
echo -n "$segment_separator "
|
|
||||||
set_color -b $bg
|
|
||||||
set_color $fg
|
|
||||||
else
|
|
||||||
set_color -b $bg
|
|
||||||
set_color $fg
|
|
||||||
echo -n " "
|
|
||||||
end
|
|
||||||
set current_bg $argv[1]
|
|
||||||
if [ -n "$argv[3]" ]
|
|
||||||
echo -n -s $argv[3] " "
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
function prompt_finish -d "Close open segments"
|
|
||||||
if [ -n $current_bg ]
|
|
||||||
set_color normal
|
|
||||||
set_color $current_bg
|
|
||||||
echo -n "$segment_separator "
|
|
||||||
set_color normal
|
|
||||||
end
|
|
||||||
set -g current_bg NONE
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
# ===========================
|
|
||||||
# Theme components
|
|
||||||
# ===========================
|
|
||||||
|
|
||||||
function prompt_virtual_env -d "Display Python or Nix virtual environment"
|
|
||||||
set envs
|
|
||||||
|
|
||||||
if test "$CONDA_DEFAULT_ENV"
|
|
||||||
set envs $envs "conda[$CONDA_DEFAULT_ENV]"
|
|
||||||
end
|
|
||||||
|
|
||||||
if test "$VIRTUAL_ENV"
|
|
||||||
set py_env (basename $VIRTUAL_ENV)
|
|
||||||
set envs $envs "py[$py_env]"
|
|
||||||
end
|
|
||||||
|
|
||||||
# Support for `nix shell` command in nix 2.4+. Only the packages passed on the command line are
|
|
||||||
# available in PATH, so it is useful to print them all.
|
|
||||||
set nix_packages
|
|
||||||
for p in $PATH
|
|
||||||
set package_name_version (string match --regex '/nix/store/\w+-([^/]+)/.*' $p)[2]
|
|
||||||
if test "$package_name_version"
|
|
||||||
set package_name (string match --regex '^(.*)-(\d+(\.\d)+|unstable-20\d{2}-\d{2}-\d{2})' $package_name_version)[2]
|
|
||||||
if test "$try_to_trim_nix_package_version" = "yes" -a -n "$package_name"
|
|
||||||
set package $package_name
|
|
||||||
else
|
|
||||||
set package $package_name_version
|
|
||||||
end
|
|
||||||
if not contains $package $nix_packages
|
|
||||||
set nix_packages $nix_packages $package
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
if test (count $nix_packages) -gt $max_package_count_visible_in_prompt
|
|
||||||
set nix_packages $nix_packages[1..$max_package_count_visible_in_prompt] "..."
|
|
||||||
end
|
|
||||||
|
|
||||||
if [ "$IN_NIX_SHELL" = "impure" ]
|
|
||||||
# Support for
|
|
||||||
# 1) `nix-shell` command
|
|
||||||
# 2) `nix develop` command in nix 2.4+.
|
|
||||||
# These commands are typically dumping too many packages into PATH for it be useful to print
|
|
||||||
# them. Thus we only print "nix[impure]".
|
|
||||||
set envs $envs "nix[impure]"
|
|
||||||
else if test "$nix_packages"
|
|
||||||
# Support for `nix-shell -p`. Would print "nix[foo bar baz]".
|
|
||||||
# We check for this case after checking for "impure" because impure brings too many packages
|
|
||||||
# into PATH.
|
|
||||||
set envs $envs "nix[$nix_packages]"
|
|
||||||
else if test "$IN_NIX_SHELL"
|
|
||||||
# Support for `nix-shell --pure`. Would print "nix[pure]".
|
|
||||||
# We check for this case after checking for individual packages because it otherwise might
|
|
||||||
# confuse the user into believing when they are in a pure shell, after they have invoked
|
|
||||||
# `nix shell` from within it.
|
|
||||||
set envs $envs "nix[$IN_NIX_SHELL]"
|
|
||||||
end
|
|
||||||
|
|
||||||
if test "$envs"
|
|
||||||
prompt_segment $color_virtual_env_bg $color_virtual_env_str (string join " " $envs)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
function prompt_user -d "Display current user if different from $default_user"
|
|
||||||
if [ "$theme_display_user" = "yes" ]
|
|
||||||
if [ "$USER" != "$default_user" -o -n "$SSH_CLIENT" ]
|
|
||||||
set USER (whoami)
|
|
||||||
get_hostname
|
|
||||||
if [ $HOSTNAME_PROMPT ]
|
|
||||||
set USER_PROMPT $USER@$HOSTNAME_PROMPT
|
|
||||||
else
|
|
||||||
set USER_PROMPT $USER
|
|
||||||
end
|
|
||||||
prompt_segment $color_user_bg $color_user_str $USER_PROMPT
|
|
||||||
end
|
|
||||||
else
|
|
||||||
get_hostname
|
|
||||||
if [ $HOSTNAME_PROMPT ]
|
|
||||||
prompt_segment $color_user_bg $color_user_str $HOSTNAME_PROMPT
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
function get_hostname -d "Set current hostname to prompt variable $HOSTNAME_PROMPT if connected via SSH"
|
|
||||||
set -g HOSTNAME_PROMPT ""
|
|
||||||
if [ "$theme_hide_hostname" = "no" -o \( "$theme_hide_hostname" != "yes" -a -n "$SSH_CLIENT" \) ]
|
|
||||||
set -g HOSTNAME_PROMPT (uname -n)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
function prompt_dir -d "Display the current directory"
|
|
||||||
prompt_segment $color_dir_bg $color_dir_str (prompt_pwd)
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
function prompt_hg -d "Display mercurial state"
|
|
||||||
not set -l root (fish_print_hg_root); and return
|
|
||||||
|
|
||||||
set -l state
|
|
||||||
set -l branch (cat $root/branch 2>/dev/null; or echo default)
|
|
||||||
set -l bookmark (cat $root/bookmarks.current 2>/dev/null)
|
|
||||||
set state (hg_get_state)
|
|
||||||
set revision (command hg id -n)
|
|
||||||
set branch_symbol \uE0A0
|
|
||||||
set prompt_text "$branch_symbol $branch$bookmark:$revision"
|
|
||||||
if [ "$state" = "0" ]
|
|
||||||
prompt_segment $color_hg_changed_bg $color_hg_changed_str $prompt_text " ±"
|
|
||||||
else
|
|
||||||
prompt_segment $color_hg_bg $color_hg_str $prompt_text
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
function hg_get_state -d "Get mercurial working directory state"
|
|
||||||
if hg status | grep --quiet -e "^[A|M|R|!|?]"
|
|
||||||
echo 0
|
|
||||||
else
|
|
||||||
echo 1
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
function prompt_git -d "Display the current git state"
|
|
||||||
set -l ref
|
|
||||||
set -l dirty
|
|
||||||
if command git rev-parse --is-inside-work-tree >/dev/null 2>&1
|
|
||||||
set dirty (parse_git_dirty)
|
|
||||||
set ref (command git symbolic-ref HEAD 2> /dev/null)
|
|
||||||
if [ $status -gt 0 ]
|
|
||||||
set -l branch (command git show-ref --head -s --abbrev |head -n1 2> /dev/null)
|
|
||||||
set ref "➦ $branch "
|
|
||||||
end
|
|
||||||
set branch_symbol \uE0A0
|
|
||||||
set -l long_branch (echo $ref | sed "s#refs/heads/##")
|
|
||||||
set -l branch (shorten_branch_name $long_branch)
|
|
||||||
if [ "$dirty" != "" ]
|
|
||||||
prompt_segment $color_git_dirty_bg $color_git_dirty_str "$branch_symbol $branch $dirty"
|
|
||||||
else
|
|
||||||
prompt_segment $color_git_bg $color_git_str "$branch_symbol $branch $dirty"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
function prompt_svn -d "Display the current svn state"
|
|
||||||
set -l ref
|
|
||||||
if command svn info >/dev/null 2>&1
|
|
||||||
set long_branch (svn_get_branch)
|
|
||||||
set -l branch (shorten_branch_name $long_branch)
|
|
||||||
set branch_symbol \uE0A0
|
|
||||||
set revision (svn_get_revision)
|
|
||||||
prompt_segment $color_svn_bg $color_svn_str "$branch_symbol $branch:$revision"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
function svn_get_branch -d "get the current branch name"
|
|
||||||
svn info 2> /dev/null | awk -F/ \
|
|
||||||
'/^URL:/ { \
|
|
||||||
for (i=0; i<=NF; i++) { \
|
|
||||||
if ($i == "branches" || $i == "tags" ) { \
|
|
||||||
print $(i+1); \
|
|
||||||
break;\
|
|
||||||
}; \
|
|
||||||
if ($i == "trunk") { print $i; break; } \
|
|
||||||
} \
|
|
||||||
}'
|
|
||||||
end
|
|
||||||
|
|
||||||
function svn_get_revision -d "get the current revision number"
|
|
||||||
svn info 2> /dev/null | sed -n 's/Revision:\ //p'
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
function prompt_status -d "the symbols for a non zero exit status, root and background jobs"
|
|
||||||
if [ $RETVAL -ne 0 ]
|
|
||||||
prompt_segment $color_status_nonzero_bg $color_status_nonzero_str $glyph_status_nonzero
|
|
||||||
end
|
|
||||||
|
|
||||||
if [ "$fish_private_mode" ]
|
|
||||||
prompt_segment $color_status_private_bg $color_status_private_str $glyph_status_private
|
|
||||||
end
|
|
||||||
|
|
||||||
# if superuser (uid == 0)
|
|
||||||
set -l uid (id -u $USER)
|
|
||||||
if [ $uid -eq 0 ]
|
|
||||||
prompt_segment $color_status_superuser_bg $color_status_superuser_str $glyph_status_superuser
|
|
||||||
end
|
|
||||||
|
|
||||||
# Jobs display
|
|
||||||
if [ (jobs -l | wc -l) -gt 0 ]
|
|
||||||
prompt_segment $color_status_jobs_bg $color_status_jobs_str $glyph_status_jobs
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
# ===========================
|
|
||||||
# Apply theme
|
|
||||||
# ===========================
|
|
||||||
|
|
||||||
function fish_prompt
|
|
||||||
set -g RETVAL $status
|
|
||||||
prompt_status
|
|
||||||
prompt_user
|
|
||||||
prompt_dir
|
|
||||||
prompt_virtual_env
|
|
||||||
if [ (cwd_in_scm_blacklist | wc -c) -eq 0 ]
|
|
||||||
type -q git; and prompt_git
|
|
||||||
if [ "$theme_mercurial_prompt_enabled" = "yes" ]
|
|
||||||
prompt_hg
|
|
||||||
end
|
|
||||||
if [ "$theme_svn_prompt_enabled" = "yes" ]
|
|
||||||
prompt_svn
|
|
||||||
end
|
|
||||||
end
|
|
||||||
prompt_finish
|
|
||||||
end
|
|
||||||
@@ -1,81 +0,0 @@
|
|||||||
# right prompt for agnoster theme
|
|
||||||
# shows vim mode status
|
|
||||||
|
|
||||||
# ===========================
|
|
||||||
# Color setting
|
|
||||||
|
|
||||||
# You can set these variables in config.fish like:
|
|
||||||
# set -g color_dir_bg red
|
|
||||||
# If not set, default color from agnoster will be used.
|
|
||||||
# ===========================
|
|
||||||
set -q color_vi_mode_indicator; or set color_vi_mode_indicator black
|
|
||||||
set -q color_vi_mode_normal; or set color_vi_mode_normal green
|
|
||||||
set -q color_vi_mode_insert; or set color_vi_mode_insert blue
|
|
||||||
set -q color_vi_mode_visual; or set color_vi_mode_visual red
|
|
||||||
|
|
||||||
|
|
||||||
# ===========================
|
|
||||||
# Cursor setting
|
|
||||||
|
|
||||||
# You can set these variables in config.fish like:
|
|
||||||
# set -g cursor_vi_mode_insert bar_blinking
|
|
||||||
# ===========================
|
|
||||||
set -q cursor_vi_mode_normal; or set cursor_vi_mode_normal box_steady
|
|
||||||
set -q cursor_vi_mode_insert; or set cursor_vi_mode_insert bar_steady
|
|
||||||
set -q cursor_vi_mode_visual; or set cursor_vi_mode_visual box_steady
|
|
||||||
|
|
||||||
|
|
||||||
function fish_cursor_name_to_code -a cursor_name -d "Translate cursor name to a cursor code"
|
|
||||||
# these values taken from
|
|
||||||
# https://github.com/gnachman/iTerm2/blob/master/sources/VT100Terminal.m#L1646
|
|
||||||
# Beginning with the statement "case VT100CSI_DECSCUSR:"
|
|
||||||
if [ $cursor_name = "box_blinking" ]
|
|
||||||
echo 1
|
|
||||||
else if [ $cursor_name = "box_steady" ]
|
|
||||||
echo 2
|
|
||||||
else if [ $cursor_name = "underline_blinking" ]
|
|
||||||
echo 3
|
|
||||||
else if [ $cursor_name = "underline_steady" ]
|
|
||||||
echo 4
|
|
||||||
else if [ $cursor_name = "bar_blinking" ]
|
|
||||||
echo 5
|
|
||||||
else if [ $cursor_name = "bar_steady" ]
|
|
||||||
echo 6
|
|
||||||
else
|
|
||||||
echo 2
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
function prompt_vi_mode -d 'vi mode status indicator'
|
|
||||||
set -l right_segment_separator \uE0B2
|
|
||||||
switch $fish_bind_mode
|
|
||||||
case default
|
|
||||||
set -l mode (fish_cursor_name_to_code $cursor_vi_mode_normal)
|
|
||||||
echo -e "\e[\x3$mode q"
|
|
||||||
set_color $color_vi_mode_normal
|
|
||||||
echo "$right_segment_separator"
|
|
||||||
set_color -b $color_vi_mode_normal $color_vi_mode_indicator
|
|
||||||
echo " N "
|
|
||||||
case insert
|
|
||||||
set -l mode (fish_cursor_name_to_code $cursor_vi_mode_insert)
|
|
||||||
echo -e "\e[\x3$mode q"
|
|
||||||
set_color $color_vi_mode_insert
|
|
||||||
echo "$right_segment_separator"
|
|
||||||
set_color -b $color_vi_mode_insert $color_vi_mode_indicator
|
|
||||||
echo " I "
|
|
||||||
case visual
|
|
||||||
set -l mode (fish_cursor_name_to_code $cursor_vi_mode_visual)
|
|
||||||
echo -e "\e[\x3$mode q"
|
|
||||||
set_color $color_vi_mode_visual
|
|
||||||
echo "$right_segment_separator"
|
|
||||||
set_color -b $color_vi_mode_visual $color_vi_mode_indicator
|
|
||||||
echo " V "
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
function fish_right_prompt -d 'Prints right prompt'
|
|
||||||
if not test "$fish_key_bindings" = "fish_default_key_bindings"
|
|
||||||
prompt_vi_mode
|
|
||||||
set_color normal
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@@ -1,63 +0,0 @@
|
|||||||
# Beware! This file is rewritten by htop when settings are changed in the interface.
|
|
||||||
# The parser is also very primitive, and not human-friendly.
|
|
||||||
htop_version=3.3.0
|
|
||||||
config_reader_min_version=3
|
|
||||||
fields=0 48 17 18 38 39 40 2 46 47 49 1
|
|
||||||
hide_kernel_threads=1
|
|
||||||
hide_userland_threads=0
|
|
||||||
hide_running_in_container=0
|
|
||||||
shadow_other_users=0
|
|
||||||
show_thread_names=0
|
|
||||||
show_program_path=1
|
|
||||||
highlight_base_name=0
|
|
||||||
highlight_deleted_exe=1
|
|
||||||
shadow_distribution_path_prefix=0
|
|
||||||
highlight_megabytes=1
|
|
||||||
highlight_threads=1
|
|
||||||
highlight_changes=0
|
|
||||||
highlight_changes_delay_secs=5
|
|
||||||
find_comm_in_cmdline=1
|
|
||||||
strip_exe_from_cmdline=1
|
|
||||||
show_merged_command=0
|
|
||||||
header_margin=1
|
|
||||||
screen_tabs=1
|
|
||||||
detailed_cpu_time=0
|
|
||||||
cpu_count_from_one=0
|
|
||||||
show_cpu_usage=1
|
|
||||||
show_cpu_frequency=0
|
|
||||||
show_cpu_temperature=0
|
|
||||||
degree_fahrenheit=0
|
|
||||||
update_process_names=0
|
|
||||||
account_guest_in_cpu_meter=0
|
|
||||||
color_scheme=0
|
|
||||||
enable_mouse=1
|
|
||||||
delay=15
|
|
||||||
hide_function_bar=0
|
|
||||||
header_layout=two_50_50
|
|
||||||
column_meters_0=AllCPUs Memory Swap
|
|
||||||
column_meter_modes_0=1 1 1
|
|
||||||
column_meters_1=Tasks LoadAverage Uptime
|
|
||||||
column_meter_modes_1=2 2 2
|
|
||||||
tree_view=0
|
|
||||||
sort_key=46
|
|
||||||
tree_sort_key=0
|
|
||||||
sort_direction=-1
|
|
||||||
tree_sort_direction=1
|
|
||||||
tree_view_always_by_pid=0
|
|
||||||
all_branches_collapsed=0
|
|
||||||
screen:Main=PID USER PRIORITY NICE M_VIRT M_RESIDENT M_SHARE STATE PERCENT_CPU PERCENT_MEM TIME Command
|
|
||||||
.sort_key=PERCENT_CPU
|
|
||||||
.tree_sort_key=PID
|
|
||||||
.tree_view_always_by_pid=0
|
|
||||||
.tree_view=0
|
|
||||||
.sort_direction=-1
|
|
||||||
.tree_sort_direction=1
|
|
||||||
.all_branches_collapsed=0
|
|
||||||
screen:I/O=PID USER IO_PRIORITY IO_RATE IO_READ_RATE IO_WRITE_RATE PERCENT_SWAP_DELAY PERCENT_IO_DELAY Command
|
|
||||||
.sort_key=IO_RATE
|
|
||||||
.tree_sort_key=PID
|
|
||||||
.tree_view_always_by_pid=0
|
|
||||||
.tree_view=0
|
|
||||||
.sort_direction=-1
|
|
||||||
.tree_sort_direction=1
|
|
||||||
.all_branches_collapsed=0
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
tt.*
|
|
||||||
.tests
|
|
||||||
doc/tags
|
|
||||||
debug
|
|
||||||
.repro
|
|
||||||
foo.*
|
|
||||||
*.log
|
|
||||||
data
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
{
|
|
||||||
"neodev": {
|
|
||||||
"library": {
|
|
||||||
"enabled": true,
|
|
||||||
"plugins": true
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"neoconf": {
|
|
||||||
"plugins": {
|
|
||||||
"lua_ls": {
|
|
||||||
"enabled": true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,201 +0,0 @@
|
|||||||
Apache License
|
|
||||||
Version 2.0, January 2004
|
|
||||||
http://www.apache.org/licenses/
|
|
||||||
|
|
||||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
|
||||||
|
|
||||||
1. Definitions.
|
|
||||||
|
|
||||||
"License" shall mean the terms and conditions for use, reproduction,
|
|
||||||
and distribution as defined by Sections 1 through 9 of this document.
|
|
||||||
|
|
||||||
"Licensor" shall mean the copyright owner or entity authorized by
|
|
||||||
the copyright owner that is granting the License.
|
|
||||||
|
|
||||||
"Legal Entity" shall mean the union of the acting entity and all
|
|
||||||
other entities that control, are controlled by, or are under common
|
|
||||||
control with that entity. For the purposes of this definition,
|
|
||||||
"control" means (i) the power, direct or indirect, to cause the
|
|
||||||
direction or management of such entity, whether by contract or
|
|
||||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
|
||||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
|
||||||
|
|
||||||
"You" (or "Your") shall mean an individual or Legal Entity
|
|
||||||
exercising permissions granted by this License.
|
|
||||||
|
|
||||||
"Source" form shall mean the preferred form for making modifications,
|
|
||||||
including but not limited to software source code, documentation
|
|
||||||
source, and configuration files.
|
|
||||||
|
|
||||||
"Object" form shall mean any form resulting from mechanical
|
|
||||||
transformation or translation of a Source form, including but
|
|
||||||
not limited to compiled object code, generated documentation,
|
|
||||||
and conversions to other media types.
|
|
||||||
|
|
||||||
"Work" shall mean the work of authorship, whether in Source or
|
|
||||||
Object form, made available under the License, as indicated by a
|
|
||||||
copyright notice that is included in or attached to the work
|
|
||||||
(an example is provided in the Appendix below).
|
|
||||||
|
|
||||||
"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
|
|
||||||
editorial revisions, annotations, elaborations, or other modifications
|
|
||||||
represent, as a whole, an original work of authorship. For the purposes
|
|
||||||
of this License, Derivative Works shall not include works that remain
|
|
||||||
separable from, or merely link (or bind by name) to the interfaces of,
|
|
||||||
the Work and Derivative Works thereof.
|
|
||||||
|
|
||||||
"Contribution" shall mean any work of authorship, including
|
|
||||||
the original version of the Work and any modifications or additions
|
|
||||||
to that Work or Derivative Works thereof, that is intentionally
|
|
||||||
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
|
|
||||||
the copyright owner. For the purposes of this definition, "submitted"
|
|
||||||
means any form of electronic, verbal, or written communication sent
|
|
||||||
to the Licensor or its representatives, including but not limited to
|
|
||||||
communication on electronic mailing lists, source code control systems,
|
|
||||||
and issue tracking systems that are managed by, or on behalf of, the
|
|
||||||
Licensor for the purpose of discussing and improving the Work, but
|
|
||||||
excluding communication that is conspicuously marked or otherwise
|
|
||||||
designated in writing by the copyright owner as "Not a Contribution."
|
|
||||||
|
|
||||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
|
||||||
on behalf of whom a Contribution has been received by Licensor and
|
|
||||||
subsequently incorporated within the Work.
|
|
||||||
|
|
||||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
|
||||||
this License, each Contributor hereby grants to You a perpetual,
|
|
||||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
||||||
copyright license to reproduce, prepare Derivative Works of,
|
|
||||||
publicly display, publicly perform, sublicense, and distribute the
|
|
||||||
Work and such Derivative Works in Source or Object form.
|
|
||||||
|
|
||||||
3. Grant of Patent License. Subject to the terms and conditions of
|
|
||||||
this License, each Contributor hereby grants to You a perpetual,
|
|
||||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
||||||
(except as stated in this section) patent license to make, have made,
|
|
||||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
|
||||||
where such license applies only to those patent claims licensable
|
|
||||||
by such Contributor that are necessarily infringed by their
|
|
||||||
Contribution(s) alone or by combination of their Contribution(s)
|
|
||||||
with the Work to which such Contribution(s) was submitted. If You
|
|
||||||
institute patent litigation against any entity (including a
|
|
||||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
|
||||||
or a Contribution incorporated within the Work constitutes direct
|
|
||||||
or contributory patent infringement, then any patent licenses
|
|
||||||
granted to You under this License for that Work shall terminate
|
|
||||||
as of the date such litigation is filed.
|
|
||||||
|
|
||||||
4. Redistribution. You may reproduce and distribute copies of the
|
|
||||||
Work or Derivative Works thereof in any medium, with or without
|
|
||||||
modifications, and in Source or Object form, provided that You
|
|
||||||
meet the following conditions:
|
|
||||||
|
|
||||||
(a) You must give any other recipients of the Work or
|
|
||||||
Derivative Works a copy of this License; and
|
|
||||||
|
|
||||||
(b) You must cause any modified files to carry prominent notices
|
|
||||||
stating that You changed the files; and
|
|
||||||
|
|
||||||
(c) You must retain, in the Source form of any Derivative Works
|
|
||||||
that You distribute, all copyright, patent, trademark, and
|
|
||||||
attribution notices from the Source form of the Work,
|
|
||||||
excluding those notices that do not pertain to any part of
|
|
||||||
the Derivative Works; and
|
|
||||||
|
|
||||||
(d) If the Work includes a "NOTICE" text file as part of its
|
|
||||||
distribution, then any Derivative Works that You distribute must
|
|
||||||
include a readable copy of the attribution notices contained
|
|
||||||
within such NOTICE file, excluding those notices that do not
|
|
||||||
pertain to any part of the Derivative Works, in at least one
|
|
||||||
of the following places: within a NOTICE text file distributed
|
|
||||||
as part of the Derivative Works; within the Source form or
|
|
||||||
documentation, if provided along with the Derivative Works; or,
|
|
||||||
within a display generated by the Derivative Works, if and
|
|
||||||
wherever such third-party notices normally appear. The contents
|
|
||||||
of the NOTICE file are for informational purposes only and
|
|
||||||
do not modify the License. You may add Your own attribution
|
|
||||||
notices within Derivative Works that You distribute, alongside
|
|
||||||
or as an addendum to the NOTICE text from the Work, provided
|
|
||||||
that such additional attribution notices cannot be construed
|
|
||||||
as modifying the License.
|
|
||||||
|
|
||||||
You may add Your own copyright statement to Your modifications and
|
|
||||||
may provide additional or different license terms and conditions
|
|
||||||
for use, reproduction, or distribution of Your modifications, or
|
|
||||||
for any such Derivative Works as a whole, provided Your use,
|
|
||||||
reproduction, and distribution of the Work otherwise complies with
|
|
||||||
the conditions stated in this License.
|
|
||||||
|
|
||||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
|
||||||
any Contribution intentionally submitted for inclusion in the Work
|
|
||||||
by You to the Licensor shall be under the terms and conditions of
|
|
||||||
this License, without any additional terms or conditions.
|
|
||||||
Notwithstanding the above, nothing herein shall supersede or modify
|
|
||||||
the terms of any separate license agreement you may have executed
|
|
||||||
with Licensor regarding such Contributions.
|
|
||||||
|
|
||||||
6. Trademarks. This License does not grant permission to use the trade
|
|
||||||
names, trademarks, service marks, or product names of the Licensor,
|
|
||||||
except as required for reasonable and customary use in describing the
|
|
||||||
origin of the Work and reproducing the content of the NOTICE file.
|
|
||||||
|
|
||||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
|
||||||
agreed to in writing, Licensor provides the Work (and each
|
|
||||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
|
||||||
implied, including, without limitation, any warranties or conditions
|
|
||||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
|
||||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
|
||||||
appropriateness of using or redistributing the Work and assume any
|
|
||||||
risks associated with Your exercise of permissions under this License.
|
|
||||||
|
|
||||||
8. Limitation of Liability. In no event and under no legal theory,
|
|
||||||
whether in tort (including negligence), contract, or otherwise,
|
|
||||||
unless required by applicable law (such as deliberate and grossly
|
|
||||||
negligent acts) or agreed to in writing, shall any Contributor be
|
|
||||||
liable to You for damages, including any direct, indirect, special,
|
|
||||||
incidental, or consequential damages of any character arising as a
|
|
||||||
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 stoppage, computer failure or malfunction, or any and all
|
|
||||||
other commercial damages or losses), even if such Contributor
|
|
||||||
has been advised of the possibility of such damages.
|
|
||||||
|
|
||||||
9. Accepting Warranty or Additional Liability. While redistributing
|
|
||||||
the Work or Derivative Works thereof, You may choose to offer,
|
|
||||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
|
||||||
or other liability obligations and/or rights consistent with this
|
|
||||||
License. However, in accepting such obligations, You may act only
|
|
||||||
on Your own behalf and on Your sole responsibility, not on behalf
|
|
||||||
of any other Contributor, and only if You agree to indemnify,
|
|
||||||
defend, and hold each Contributor harmless for any liability
|
|
||||||
incurred by, or claims asserted against, such Contributor by reason
|
|
||||||
of your accepting any such warranty or additional liability.
|
|
||||||
|
|
||||||
END OF TERMS AND CONDITIONS
|
|
||||||
|
|
||||||
APPENDIX: How to apply the Apache License to your work.
|
|
||||||
|
|
||||||
To apply the Apache License to your work, attach the following
|
|
||||||
boilerplate notice, with the fields enclosed by brackets "[]"
|
|
||||||
replaced with your own identifying information. (Don't include
|
|
||||||
the brackets!) The text should be enclosed in the appropriate
|
|
||||||
comment syntax for the file format. We also recommend that a
|
|
||||||
file or class name and description of purpose be included on the
|
|
||||||
same "printed page" as the copyright notice for easier
|
|
||||||
identification within third-party archives.
|
|
||||||
|
|
||||||
Copyright [yyyy] [name of copyright owner]
|
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
you may not use this file except in compliance with the License.
|
|
||||||
You may obtain a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
# 💤 LazyVim
|
|
||||||
|
|
||||||
A starter template for [LazyVim](https://github.com/LazyVim/LazyVim).
|
|
||||||
Refer to the [documentation](https://lazyvim.github.io/installation) to get started.
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
-- bootstrap lazy.nvim, LazyVim and your plugins
|
|
||||||
require("config.lazy")
|
|
||||||
require("lspconfig").elixirls.setup({
|
|
||||||
-- Unix
|
|
||||||
cmd = { "elixir-ls" },
|
|
||||||
})
|
|
||||||
vim.opt.modeline = false
|
|
||||||
@@ -1,42 +0,0 @@
|
|||||||
{
|
|
||||||
"LazyVim": { "branch": "main", "commit": "83d90f339defdb109a6ede333865a66ffc7ef6aa" },
|
|
||||||
"blink.cmp": { "branch": "main", "commit": "78336bc89ee5365633bcf754d93df01678b5c08f" },
|
|
||||||
"bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" },
|
|
||||||
"catppuccin": { "branch": "main", "commit": "426dbebe06b5c69fd846ceb17b42e12f890aedf1" },
|
|
||||||
"conform.nvim": { "branch": "master", "commit": "dca1a190aa85f9065979ef35802fb77131911106" },
|
|
||||||
"crates.nvim": { "branch": "main", "commit": "694357861ec9ebf12475ddcdd04ea45a0923c32d" },
|
|
||||||
"flash.nvim": { "branch": "main", "commit": "fcea7ff883235d9024dc41e638f164a450c14ca2" },
|
|
||||||
"friendly-snippets": { "branch": "main", "commit": "6cd7280adead7f586db6fccbd15d2cac7e2188b9" },
|
|
||||||
"gitsigns.nvim": { "branch": "main", "commit": "dd3f588bacbeb041be6facf1742e42097f62165d" },
|
|
||||||
"grug-far.nvim": { "branch": "main", "commit": "21790e59dd0109a92a70cb874dd002af186314f5" },
|
|
||||||
"lazy.nvim": { "branch": "main", "commit": "85c7ff3711b730b4030d03144f6db6375044ae82" },
|
|
||||||
"lazydev.nvim": { "branch": "main", "commit": "ff2cbcba459b637ec3fd165a2be59b7bbaeedf0d" },
|
|
||||||
"lualine.nvim": { "branch": "master", "commit": "131a558e13f9f28b15cd235557150ccb23f89286" },
|
|
||||||
"markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" },
|
|
||||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "0c2823e0418f3d9230ff8b201c976e84de1cb401" },
|
|
||||||
"mason.nvim": { "branch": "main", "commit": "cb8445f8ce85d957416c106b780efd51c6298f89" },
|
|
||||||
"mini.ai": { "branch": "main", "commit": "43eb2074843950a3a25aae56a5f41362ec043bfa" },
|
|
||||||
"mini.icons": { "branch": "main", "commit": "bac6317300e205335df425296570d84322730067" },
|
|
||||||
"mini.pairs": { "branch": "main", "commit": "42387c7fe68fc0b6e95eaf37f1bb76e7bffaa0d9" },
|
|
||||||
"noice.nvim": { "branch": "main", "commit": "7bfd942445fb63089b59f97ca487d605e715f155" },
|
|
||||||
"nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" },
|
|
||||||
"nvim-ansible": { "branch": "main", "commit": "c7f595d568b588942d4d0c37b5cd6cae3764a148" },
|
|
||||||
"nvim-lint": { "branch": "master", "commit": "eab58b48eb11d7745c11c505e0f3057165902461" },
|
|
||||||
"nvim-lspconfig": { "branch": "master", "commit": "31026a13eefb20681124706a79fc1df6bf11ab27" },
|
|
||||||
"nvim-treesitter": { "branch": "main", "commit": "4916d6592ede8c07973490d9322f187e07dfefac" },
|
|
||||||
"nvim-treesitter-textobjects": { "branch": "main", "commit": "851e865342e5a4cb1ae23d31caf6e991e1c99f1e" },
|
|
||||||
"nvim-ts-autotag": { "branch": "main", "commit": "88c1453db4ba7dd24131086fe51fdf74e587d275" },
|
|
||||||
"persistence.nvim": { "branch": "main", "commit": "b20b2a7887bd39c1a356980b45e03250f3dce49c" },
|
|
||||||
"plenary.nvim": { "branch": "master", "commit": "74b06c6c75e4eeb3108ec01852001636d85a932b" },
|
|
||||||
"render-markdown.nvim": { "branch": "main", "commit": "3f3eea97b80839f629c951ca660ffd125bfa5b34" },
|
|
||||||
"rustaceanvim": { "branch": "master", "commit": "f2f0c1231a5b019dbc1fd6dafac1751c878925a3" },
|
|
||||||
"snacks.nvim": { "branch": "main", "commit": "ad9ede6a9cddf16cedbd31b8932d6dcdee9b716e" },
|
|
||||||
"solarized.nvim": { "branch": "main", "commit": "a8085e29883ddcfb39bd46197eb32ef00df05368" },
|
|
||||||
"todo-comments.nvim": { "branch": "main", "commit": "31e3c38ce9b29781e4422fc0322eb0a21f4e8668" },
|
|
||||||
"tokyonight.nvim": { "branch": "main", "commit": "cdc07ac78467a233fd62c493de29a17e0cf2b2b6" },
|
|
||||||
"transparent.nvim": { "branch": "main", "commit": "8ac59883de84e9cd1850ea25cf087031c5ba7d54" },
|
|
||||||
"trouble.nvim": { "branch": "main", "commit": "bd67efe408d4816e25e8491cc5ad4088e708a69a" },
|
|
||||||
"ts-comments.nvim": { "branch": "main", "commit": "123a9fb12e7229342f807ec9e6de478b1102b041" },
|
|
||||||
"venv-selector.nvim": { "branch": "main", "commit": "bcb2f58533c59b01565285eba49693f00bc460f5" },
|
|
||||||
"which-key.nvim": { "branch": "main", "commit": "3aab2147e74890957785941f0c1ad87d0a44c15a" }
|
|
||||||
}
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
{
|
|
||||||
"extras": [
|
|
||||||
"lazyvim.plugins.extras.formatting.black",
|
|
||||||
"lazyvim.plugins.extras.lang.ansible",
|
|
||||||
"lazyvim.plugins.extras.lang.markdown",
|
|
||||||
"lazyvim.plugins.extras.lang.python",
|
|
||||||
"lazyvim.plugins.extras.lang.rust"
|
|
||||||
],
|
|
||||||
"install_version": 8,
|
|
||||||
"news": {
|
|
||||||
"NEWS.md": "11866"
|
|
||||||
},
|
|
||||||
"version": 8
|
|
||||||
}
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
-- 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
|
|
||||||
--
|
|
||||||
-- Add any additional autocmds here
|
|
||||||
-- with `vim.api.nvim_create_autocmd`
|
|
||||||
--
|
|
||||||
-- Or remove existing autocmds by their group name (which is prefixed with `lazyvim_` for the defaults)
|
|
||||||
-- e.g. vim.api.nvim_del_augroup_by_name("lazyvim_wrap_spell")
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
-- 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
|
|
||||||
-- Add any additional keymaps here
|
|
||||||
@@ -1,53 +0,0 @@
|
|||||||
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
|
||||||
if not (vim.uv or vim.loop).fs_stat(lazypath) then
|
|
||||||
local lazyrepo = "https://github.com/folke/lazy.nvim.git"
|
|
||||||
local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath })
|
|
||||||
if vim.v.shell_error ~= 0 then
|
|
||||||
vim.api.nvim_echo({
|
|
||||||
{ "Failed to clone lazy.nvim:\n", "ErrorMsg" },
|
|
||||||
{ out, "WarningMsg" },
|
|
||||||
{ "\nPress any key to exit..." },
|
|
||||||
}, true, {})
|
|
||||||
vim.fn.getchar()
|
|
||||||
os.exit(1)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
vim.opt.rtp:prepend(lazypath)
|
|
||||||
|
|
||||||
require("lazy").setup({
|
|
||||||
spec = {
|
|
||||||
-- add LazyVim and import its plugins
|
|
||||||
{ "LazyVim/LazyVim", import = "lazyvim.plugins" },
|
|
||||||
-- import/override with your plugins
|
|
||||||
{ import = "plugins" },
|
|
||||||
},
|
|
||||||
defaults = {
|
|
||||||
-- 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.
|
|
||||||
lazy = false,
|
|
||||||
-- 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.
|
|
||||||
version = false, -- always use the latest git commit
|
|
||||||
-- version = "*", -- try installing the latest stable version for plugins that support semver
|
|
||||||
},
|
|
||||||
install = { colorscheme = { "tokyonight", "habamax" } },
|
|
||||||
checker = {
|
|
||||||
enabled = true, -- check for plugin updates periodically
|
|
||||||
notify = false, -- notify on update
|
|
||||||
}, -- automatically check for plugin updates
|
|
||||||
performance = {
|
|
||||||
rtp = {
|
|
||||||
-- disable some rtp plugins
|
|
||||||
disabled_plugins = {
|
|
||||||
"gzip",
|
|
||||||
-- "matchit",
|
|
||||||
-- "matchparen",
|
|
||||||
-- "netrwPlugin",
|
|
||||||
"tarPlugin",
|
|
||||||
"tohtml",
|
|
||||||
"tutor",
|
|
||||||
"zipPlugin",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
})
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
-- Options are automatically loaded before lazy.nvim startup
|
|
||||||
-- Default options that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/options.lua
|
|
||||||
-- Add any additional options here
|
|
||||||
@@ -1,197 +0,0 @@
|
|||||||
-- since this is just an example spec, don't actually load anything here and return an empty spec
|
|
||||||
-- stylua: ignore
|
|
||||||
if true then return {} end
|
|
||||||
|
|
||||||
-- every spec file under the "plugins" directory will be loaded automatically by lazy.nvim
|
|
||||||
--
|
|
||||||
-- In your plugin files, you can:
|
|
||||||
-- * add extra plugins
|
|
||||||
-- * disable/enabled LazyVim plugins
|
|
||||||
-- * override the configuration of LazyVim plugins
|
|
||||||
return {
|
|
||||||
-- add gruvbox
|
|
||||||
{ "ellisonleao/gruvbox.nvim" },
|
|
||||||
|
|
||||||
-- Configure LazyVim to load gruvbox
|
|
||||||
{
|
|
||||||
"LazyVim/LazyVim",
|
|
||||||
opts = {
|
|
||||||
colorscheme = "gruvbox",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
|
|
||||||
-- change trouble config
|
|
||||||
{
|
|
||||||
"folke/trouble.nvim",
|
|
||||||
-- opts will be merged with the parent spec
|
|
||||||
opts = { use_diagnostic_signs = true },
|
|
||||||
},
|
|
||||||
|
|
||||||
-- disable trouble
|
|
||||||
{ "folke/trouble.nvim", enabled = false },
|
|
||||||
|
|
||||||
-- override nvim-cmp and add cmp-emoji
|
|
||||||
{
|
|
||||||
"hrsh7th/nvim-cmp",
|
|
||||||
dependencies = { "hrsh7th/cmp-emoji" },
|
|
||||||
---@param opts cmp.ConfigSchema
|
|
||||||
opts = function(_, opts)
|
|
||||||
table.insert(opts.sources, { name = "emoji" })
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
|
|
||||||
-- change some telescope options and a keymap to browse plugin files
|
|
||||||
{
|
|
||||||
"nvim-telescope/telescope.nvim",
|
|
||||||
keys = {
|
|
||||||
-- add a keymap to browse plugin files
|
|
||||||
-- stylua: ignore
|
|
||||||
{
|
|
||||||
"<leader>fp",
|
|
||||||
function() require("telescope.builtin").find_files({ cwd = require("lazy.core.config").options.root }) end,
|
|
||||||
desc = "Find Plugin File",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
-- change some options
|
|
||||||
opts = {
|
|
||||||
defaults = {
|
|
||||||
layout_strategy = "horizontal",
|
|
||||||
layout_config = { prompt_position = "top" },
|
|
||||||
sorting_strategy = "ascending",
|
|
||||||
winblend = 0,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
|
|
||||||
-- add pyright to lspconfig
|
|
||||||
{
|
|
||||||
"neovim/nvim-lspconfig",
|
|
||||||
---@class PluginLspOpts
|
|
||||||
opts = {
|
|
||||||
---@type lspconfig.options
|
|
||||||
servers = {
|
|
||||||
-- pyright will be automatically installed with mason and loaded with lspconfig
|
|
||||||
pyright = {},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
|
|
||||||
-- add tsserver and setup with typescript.nvim instead of lspconfig
|
|
||||||
{
|
|
||||||
"neovim/nvim-lspconfig",
|
|
||||||
dependencies = {
|
|
||||||
"jose-elias-alvarez/typescript.nvim",
|
|
||||||
init = function()
|
|
||||||
require("lazyvim.util").lsp.on_attach(function(_, buffer)
|
|
||||||
-- stylua: ignore
|
|
||||||
vim.keymap.set( "n", "<leader>co", "TypescriptOrganizeImports", { buffer = buffer, desc = "Organize Imports" })
|
|
||||||
vim.keymap.set("n", "<leader>cR", "TypescriptRenameFile", { desc = "Rename File", buffer = buffer })
|
|
||||||
end)
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
---@class PluginLspOpts
|
|
||||||
opts = {
|
|
||||||
---@type lspconfig.options
|
|
||||||
servers = {
|
|
||||||
-- tsserver will be automatically installed with mason and loaded with lspconfig
|
|
||||||
tsserver = {},
|
|
||||||
},
|
|
||||||
-- you can do any additional lsp server setup here
|
|
||||||
-- return true if you don't want this server to be setup with lspconfig
|
|
||||||
---@type table<string, fun(server:string, opts:_.lspconfig.options):boolean?>
|
|
||||||
setup = {
|
|
||||||
-- example to setup with typescript.nvim
|
|
||||||
tsserver = function(_, opts)
|
|
||||||
require("typescript").setup({ server = opts })
|
|
||||||
return true
|
|
||||||
end,
|
|
||||||
-- Specify * to use this function as a fallback for any server
|
|
||||||
-- ["*"] = function(server, opts) end,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
|
|
||||||
-- for typescript, LazyVim also includes extra specs to properly setup lspconfig,
|
|
||||||
-- treesitter, mason and typescript.nvim. So instead of the above, you can use:
|
|
||||||
{ import = "lazyvim.plugins.extras.lang.typescript" },
|
|
||||||
|
|
||||||
-- add more treesitter parsers
|
|
||||||
{
|
|
||||||
"nvim-treesitter/nvim-treesitter",
|
|
||||||
opts = {
|
|
||||||
ensure_installed = {
|
|
||||||
"bash",
|
|
||||||
"html",
|
|
||||||
"javascript",
|
|
||||||
"json",
|
|
||||||
"lua",
|
|
||||||
"markdown",
|
|
||||||
"markdown_inline",
|
|
||||||
"python",
|
|
||||||
"query",
|
|
||||||
"regex",
|
|
||||||
"tsx",
|
|
||||||
"typescript",
|
|
||||||
"vim",
|
|
||||||
"yaml",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
|
|
||||||
-- since `vim.tbl_deep_extend`, can only merge tables and not lists, the code above
|
|
||||||
-- would overwrite `ensure_installed` with the new value.
|
|
||||||
-- If you'd rather extend the default config, use the code below instead:
|
|
||||||
{
|
|
||||||
"nvim-treesitter/nvim-treesitter",
|
|
||||||
opts = function(_, opts)
|
|
||||||
-- add tsx and treesitter
|
|
||||||
vim.list_extend(opts.ensure_installed, {
|
|
||||||
"tsx",
|
|
||||||
"typescript",
|
|
||||||
})
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
|
|
||||||
-- the opts function can also be used to change the default opts:
|
|
||||||
{
|
|
||||||
"nvim-lualine/lualine.nvim",
|
|
||||||
event = "VeryLazy",
|
|
||||||
opts = function(_, opts)
|
|
||||||
table.insert(opts.sections.lualine_x, {
|
|
||||||
function()
|
|
||||||
return "😄"
|
|
||||||
end,
|
|
||||||
})
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
|
|
||||||
-- or you can return new options to override all the defaults
|
|
||||||
{
|
|
||||||
"nvim-lualine/lualine.nvim",
|
|
||||||
event = "VeryLazy",
|
|
||||||
opts = function()
|
|
||||||
return {
|
|
||||||
--[[add your custom lualine config here]]
|
|
||||||
}
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
|
|
||||||
-- use mini.starter instead of alpha
|
|
||||||
{ import = "lazyvim.plugins.extras.ui.mini-starter" },
|
|
||||||
|
|
||||||
-- add jsonls and schemastore packages, and setup treesitter for json, json5 and jsonc
|
|
||||||
{ import = "lazyvim.plugins.extras.lang.json" },
|
|
||||||
|
|
||||||
-- add any tools you want to have installed below
|
|
||||||
{
|
|
||||||
"williamboman/mason.nvim",
|
|
||||||
opts = {
|
|
||||||
ensure_installed = {
|
|
||||||
"stylua",
|
|
||||||
"shellcheck",
|
|
||||||
"shfmt",
|
|
||||||
"flake8",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
return {
|
|
||||||
{ "xiyaowong/transparent.nvim", lazy = false },
|
|
||||||
}
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
return {
|
|
||||||
"maxmx03/solarized.nvim",
|
|
||||||
lazy = false,
|
|
||||||
priority = 1000,
|
|
||||||
---@type solarized.config
|
|
||||||
opts = {},
|
|
||||||
config = function(_, opts)
|
|
||||||
vim.o.termguicolors = true
|
|
||||||
vim.o.background = "dark"
|
|
||||||
require("solarized").setup(opts)
|
|
||||||
vim.cmd.colorscheme("solarized")
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
indent_type = "Spaces"
|
|
||||||
indent_width = 2
|
|
||||||
column_width = 120
|
|
||||||
@@ -1,101 +0,0 @@
|
|||||||
" You can edit this file by hand.
|
|
||||||
" The " character at the beginning of a line comments out the line.
|
|
||||||
" Blank lines are ignored.
|
|
||||||
|
|
||||||
" The Default color scheme is used for any directory that does not have
|
|
||||||
" a specified scheme and for parts of user interface like menus. A
|
|
||||||
" color scheme set for a base directory will also
|
|
||||||
" be used for the sub directories.
|
|
||||||
|
|
||||||
" The standard ncurses colors are:
|
|
||||||
" Default = -1 = None, can be used for transparency or default color
|
|
||||||
" Black = 0
|
|
||||||
" Red = 1
|
|
||||||
" Green = 2
|
|
||||||
" Yellow = 3
|
|
||||||
" Blue = 4
|
|
||||||
" Magenta = 5
|
|
||||||
" Cyan = 6
|
|
||||||
" White = 7
|
|
||||||
|
|
||||||
" Light versions of colors are also available (they set bold
|
|
||||||
" attribute in terminals with less than 16 colors):
|
|
||||||
" LightBlack
|
|
||||||
" LightRed
|
|
||||||
" LightGreen
|
|
||||||
" LightYellow
|
|
||||||
" LightBlue
|
|
||||||
" LightMagenta
|
|
||||||
" LightCyan
|
|
||||||
" LightWhite
|
|
||||||
|
|
||||||
" Available attributes (some of them can be combined):
|
|
||||||
" bold
|
|
||||||
" underline
|
|
||||||
" reverse or inverse
|
|
||||||
" standout
|
|
||||||
" italic (on unsupported systems becomes reverse)
|
|
||||||
" combine
|
|
||||||
" none
|
|
||||||
|
|
||||||
" Vifm supports 256 colors you can use color numbers 0-255
|
|
||||||
" (requires properly set up terminal: set your TERM environment variable
|
|
||||||
" (directly or using resources) to some color terminal name (e.g.
|
|
||||||
" xterm-256color) from /usr/lib/terminfo/; you can check current number
|
|
||||||
" of colors in your terminal with tput colors command)
|
|
||||||
|
|
||||||
" highlight group cterm=attrs ctermfg=foreground_color ctermbg=background_color
|
|
||||||
|
|
||||||
highlight clear
|
|
||||||
|
|
||||||
highlight Win cterm=none ctermfg=white ctermbg=black
|
|
||||||
highlight Directory cterm=bold ctermfg=cyan ctermbg=default
|
|
||||||
highlight Link cterm=bold ctermfg=yellow ctermbg=default
|
|
||||||
highlight BrokenLink cterm=bold ctermfg=red ctermbg=default
|
|
||||||
highlight HardLink cterm=none ctermfg=yellow ctermbg=default
|
|
||||||
highlight Socket cterm=bold ctermfg=magenta ctermbg=default
|
|
||||||
highlight Device cterm=bold ctermfg=red ctermbg=default
|
|
||||||
highlight Fifo cterm=bold ctermfg=cyan ctermbg=default
|
|
||||||
highlight Executable cterm=bold ctermfg=green ctermbg=default
|
|
||||||
highlight Selected cterm=bold ctermfg=magenta ctermbg=default
|
|
||||||
highlight CurrLine cterm=bold,reverse ctermfg=default ctermbg=default
|
|
||||||
highlight TopLine cterm=none ctermfg=black ctermbg=white
|
|
||||||
highlight TopLineSel cterm=bold ctermfg=black ctermbg=default
|
|
||||||
highlight StatusLine cterm=bold ctermfg=black ctermbg=white
|
|
||||||
highlight WildBox ctermfg=default ctermbg=default
|
|
||||||
highlight WildMenu cterm=underline,reverse ctermfg=white ctermbg=black
|
|
||||||
highlight CmdLine cterm=none ctermfg=white ctermbg=black
|
|
||||||
highlight ErrorMsg cterm=none ctermfg=red ctermbg=black
|
|
||||||
highlight Border cterm=none ctermfg=black ctermbg=white
|
|
||||||
highlight OtherLine ctermfg=default ctermbg=default
|
|
||||||
highlight JobLine cterm=bold,reverse ctermfg=black ctermbg=white
|
|
||||||
highlight SuggestBox cterm=bold ctermfg=default ctermbg=default
|
|
||||||
highlight CmpMismatch cterm=bold ctermfg=white ctermbg=red
|
|
||||||
highlight CmpUnmatched cterm=bold ctermfg=white ctermbg=green
|
|
||||||
highlight CmpBlank ctermfg=default ctermbg=default
|
|
||||||
highlight AuxWin ctermfg=default ctermbg=default
|
|
||||||
highlight TabLine cterm=none ctermfg=white ctermbg=black
|
|
||||||
highlight TabLineSel cterm=bold,reverse ctermfg=default ctermbg=default
|
|
||||||
highlight User1 ctermfg=default ctermbg=default
|
|
||||||
highlight User2 ctermfg=default ctermbg=default
|
|
||||||
highlight User3 ctermfg=default ctermbg=default
|
|
||||||
highlight User4 ctermfg=default ctermbg=default
|
|
||||||
highlight User5 ctermfg=default ctermbg=default
|
|
||||||
highlight User6 ctermfg=default ctermbg=default
|
|
||||||
highlight User7 ctermfg=default ctermbg=default
|
|
||||||
highlight User8 ctermfg=default ctermbg=default
|
|
||||||
highlight User9 ctermfg=default ctermbg=default
|
|
||||||
highlight User10 ctermfg=default ctermbg=default
|
|
||||||
highlight User11 ctermfg=default ctermbg=default
|
|
||||||
highlight User12 ctermfg=default ctermbg=default
|
|
||||||
highlight User13 ctermfg=default ctermbg=default
|
|
||||||
highlight User14 ctermfg=default ctermbg=default
|
|
||||||
highlight User15 ctermfg=default ctermbg=default
|
|
||||||
highlight User16 ctermfg=default ctermbg=default
|
|
||||||
highlight User17 ctermfg=default ctermbg=default
|
|
||||||
highlight User18 ctermfg=default ctermbg=default
|
|
||||||
highlight User19 ctermfg=default ctermbg=default
|
|
||||||
highlight User20 ctermfg=default ctermbg=default
|
|
||||||
highlight OtherWin ctermfg=default ctermbg=default
|
|
||||||
highlight LineNr ctermfg=default ctermbg=default
|
|
||||||
highlight OddLine ctermfg=default ctermbg=default
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
{"gtabs":[{"panes":[{"ptabs":[{"history":[{"dir":"/home/fedor/w","file":"..","relpos":0,"ts":1760707093},{"dir":"/home/fedor","file":"Nextcloud","relpos":5,"ts":1760707093},{"dir":"/home/fedor/Nextcloud","file":"books","relpos":7,"ts":1760707093},{"dir":"/home/fedor/Nextcloud/books","file":"Stephen Bussey - Real-Time Phoenix.pdf","relpos":18,"ts":1760707093}],"filters":{"invert":true,"dot":true,"manual":"","auto":""},"last-location":"/home/fedor/Nextcloud/books","sorting":[2],"preview":false}]},{"ptabs":[{"history":[{"dir":"/home/fedor/w","file":"..","relpos":0,"ts":1760707093},{"dir":"/home/fedor","file":"books","relpos":10,"ts":1760707093},{"dir":"/home/fedor/books","file":"Elixir","relpos":1,"ts":1760707093},{"dir":"/home/fedor/books/Elixir","file":"phoenix","relpos":3,"ts":1760707093},{"dir":"/home/fedor/books/Elixir/phoenix","file":"Lance Halvorsen - Functional Web Development with Elixir, OTP, and Phoenix. Rethink the Modern Web App-Pragmatic Bookshelf (2017).pdf","relpos":3,"ts":1760707093}],"filters":{"invert":true,"dot":true,"manual":"","auto":""},"last-location":"/home/fedor/books/Elixir/phoenix","sorting":[2],"preview":false}]}],"active-pane":1,"preview":false,"splitter":{"pos":-1,"ratio":0.5,"orientation":"v","expanded":false}}],"active-gtab":0,"marks":{"H":{"dir":"/home/fedor/","file":"..","ts":1760706827},"b":{"dir":"/home/fedor/bin/","file":"..","ts":1760706827},"h":{"dir":"/home/fedor/","file":"..","ts":1760706827},"z":{"dir":"/home/fedor/.config/vifm","file":"..","ts":1760706827}},"bmarks":{},"cmd-hist":[{"text":"mkdir phoenix","ts":1760707093},{"text":"q","ts":1760707093}],"regs":{"\"":["/home/fedor/Nextcloud/books/Bruce Tate, Sophie DeBenedetto - Programming Phoenix LiveView_ Interactive Elixir Web Programming Without Writing Any JavaScript-Pragmatic Bookshelf (2022).pdf","/home/fedor/Nextcloud/books/Chris McCord, Bruce Tate, Jose Valim - Programming Phoenix 1.4_ Productive -_ Reliable -_ Fast-The Pragmatic Programmers (2019).pdf","/home/fedor/Nextcloud/books/Lance Halvorsen - Functional Web Development with Elixir, OTP, and Phoenix. Rethink the Modern Web App-Pragmatic Bookshelf (2017).pdf","/home/fedor/Nextcloud/books/Stephen Bussey - Real-Time Phoenix.pdf"]},"dir-stack":[],"use-term-multiplexer":false}
|
|
||||||
@@ -1,627 +0,0 @@
|
|||||||
" vim: filetype=vifm :
|
|
||||||
"
|
|
||||||
" Sample configuration file for vifm (last updated: 11 May, 2025)
|
|
||||||
"
|
|
||||||
" You can edit this file by hand. The " character at the beginning of a line
|
|
||||||
" comments out the line. Blank lines are ignored. The basic format for each
|
|
||||||
" item is shown with an example.
|
|
||||||
"
|
|
||||||
" The purpose of this file
|
|
||||||
" ========================
|
|
||||||
" 1. Provide a sensible default configuration out of the box.
|
|
||||||
" 2. Demonstrate how a typical configuration file might look like.
|
|
||||||
" 3. Familiarize a user with commonly used features.
|
|
||||||
" 4. Provide some ideas/settings for various use cases.
|
|
||||||
"
|
|
||||||
" How to use this file
|
|
||||||
" ====================
|
|
||||||
" - Go through it top to bottom while reading comments.
|
|
||||||
" - Adjust/remove/comment/uncomment lines as you see fit.
|
|
||||||
" - Look up :commands or 'options' in the documentation to learn more.
|
|
||||||
"
|
|
||||||
" Some settings are set to provide more useful defaults without breaking
|
|
||||||
" compatibility and others are just a great fit (e.g., some bindings) and are
|
|
||||||
" almost universally useful, but most lines are provided simply as usage
|
|
||||||
" examples and can be removed without hesitation. Make configuration specific
|
|
||||||
" to your needs using this file as a starting point.
|
|
||||||
|
|
||||||
" ------------------------------------------------------------------------------
|
|
||||||
" Main settings
|
|
||||||
" ------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
" Command used to edit files in various contexts. The default is vim.
|
|
||||||
" If you would like to use another vi clone such as Elvis or Vile
|
|
||||||
" you will need to change this setting.
|
|
||||||
if executable('vim')
|
|
||||||
set vicmd=vim
|
|
||||||
elseif executable('nvim')
|
|
||||||
set vicmd=nvim
|
|
||||||
elseif executable('elvis')
|
|
||||||
set vicmd=elvis\ -G\ termcap
|
|
||||||
elseif executable('vile')
|
|
||||||
set vicmd=vile
|
|
||||||
elseif $EDITOR != ''
|
|
||||||
echo 'Note: using `'.$EDITOR.'` as an editor'
|
|
||||||
let &vicmd = $EDITOR
|
|
||||||
endif
|
|
||||||
|
|
||||||
" This makes vifm perform file operations on its own instead of relying on
|
|
||||||
" standard utilities like `cp`. While using `cp` and alike is a more universal
|
|
||||||
" solution, it's also much slower when processing large amounts of files and
|
|
||||||
" doesn't support progress measuring.
|
|
||||||
set syscalls
|
|
||||||
|
|
||||||
" Trash Directory
|
|
||||||
" The default is to move files that are deleted with dd or :d to
|
|
||||||
" the trash directory. If you change this you will not be able to move
|
|
||||||
" files by deleting them and then using p to put the file in the new location.
|
|
||||||
" I recommend not changing this until you are familiar with vifm.
|
|
||||||
" This probably shouldn't be an option.
|
|
||||||
set trash
|
|
||||||
|
|
||||||
" What should be saved automatically on restarting vifm. Drop "savedirs"
|
|
||||||
" value if you don't want vifm to remember last visited directories for you.
|
|
||||||
set vifminfo=dhistory,savedirs,chistory,state,tui,tabs,shistory,ehistory,
|
|
||||||
\phistory,fhistory,dirstack,registers,bookmarks,bmarks,mchistory
|
|
||||||
|
|
||||||
" This is size of all of the many kinds of histories, in particular it's the
|
|
||||||
" number of last visited directories (not necessarily distinct ones) stored in
|
|
||||||
" the directory history.
|
|
||||||
set history=100
|
|
||||||
|
|
||||||
" Automatically resolve symbolic links on l or Enter.
|
|
||||||
set nofollowlinks
|
|
||||||
|
|
||||||
" Natural sort of (version) numbers within text.
|
|
||||||
set sortnumbers
|
|
||||||
|
|
||||||
" Maximum number of changes that can be undone.
|
|
||||||
set undolevels=100
|
|
||||||
|
|
||||||
" Use Vim's format of help file (has highlighting and "hyperlinks").
|
|
||||||
" If you would rather use a plain text help file set novimhelp.
|
|
||||||
set vimhelp
|
|
||||||
|
|
||||||
" If you would like to run an executable file when you
|
|
||||||
" press Enter, l or Right Arrow, set this.
|
|
||||||
set norunexec
|
|
||||||
|
|
||||||
" Format for displaying time in file list. For example:
|
|
||||||
" TIME_STAMP_FORMAT=%m/%d-%H:%M
|
|
||||||
" See man date or man strftime for details.
|
|
||||||
set timefmt='%Y/%m/%d %H:%M'
|
|
||||||
|
|
||||||
" Show list of matches on tab completion in command-line mode
|
|
||||||
set wildmenu
|
|
||||||
|
|
||||||
" Display completions in a form of popup with descriptions of the matches
|
|
||||||
set wildstyle=popup
|
|
||||||
|
|
||||||
" Display suggestions in normal, visual and view modes for keys, marks and
|
|
||||||
" registers (at most 5 files). In other view, when available.
|
|
||||||
set suggestoptions=normal,visual,view,otherpane,keys,marks,registers
|
|
||||||
|
|
||||||
" Ignore case in search patterns unless it contains at least one uppercase
|
|
||||||
" letter
|
|
||||||
set ignorecase
|
|
||||||
set smartcase
|
|
||||||
|
|
||||||
" Don't select search matches automatically
|
|
||||||
set nohlsearch
|
|
||||||
|
|
||||||
" Use increment searching (search while typing)
|
|
||||||
set incsearch
|
|
||||||
|
|
||||||
" Try to leave some space from cursor to upper/lower border in lists
|
|
||||||
set scrolloff=4
|
|
||||||
|
|
||||||
" Don't do too many requests to slow file systems
|
|
||||||
if !has('win')
|
|
||||||
set slowfs=curlftpfs
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Set custom status line look
|
|
||||||
if !has('win')
|
|
||||||
set statusline=" Hint: %z%= %A %10u:%-7g %15s %20d "
|
|
||||||
else
|
|
||||||
set statusline=" Hint: %z%= %A %15s %20d "
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Suppress "Permission denied" errors using syntax specific to GNU find
|
|
||||||
if system("find --version | grep -c 'GNU findutils'") != 0
|
|
||||||
set findprg='find %s %a -print , -type d \( ! -readable -o ! -executable \) -prune'
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Add -s to the default value to suppress "Permission denied" errors
|
|
||||||
set grepprg="grep -n -H -I -r -s %i %a %s"
|
|
||||||
|
|
||||||
" List of color schemes to try (picks the first one supported by the terminal)
|
|
||||||
colorscheme Default-256 Default
|
|
||||||
|
|
||||||
" ------------------------------------------------------------------------------
|
|
||||||
" Bookmarks
|
|
||||||
" ------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
" :mark mark /full/directory/path [filename]
|
|
||||||
|
|
||||||
mark b ~/bin/
|
|
||||||
mark h ~/
|
|
||||||
|
|
||||||
" ------------------------------------------------------------------------------
|
|
||||||
" Commands
|
|
||||||
" ------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
" :com[mand][!] command_name action
|
|
||||||
"
|
|
||||||
" These are some of the macros that can be used in the action part:
|
|
||||||
" %a for user arguments
|
|
||||||
" %c for current file under the cursor
|
|
||||||
" %C for current file under the cursor of inactive pane
|
|
||||||
" %f for selected file(s)
|
|
||||||
" %F for selected file(s) of inactive pane
|
|
||||||
" %b is the same as %f %F
|
|
||||||
" %d for current directory name
|
|
||||||
" %D for current directory name of inactive pane
|
|
||||||
" %r{x} for list of files in register {x}
|
|
||||||
" %m runs the command in a menu window
|
|
||||||
" %u uses command's output to build a file list
|
|
||||||
" see `:help vifm-macros` and `:help vifm-filename-modifiers` for more
|
|
||||||
|
|
||||||
command! df df -h %m 2> /dev/null
|
|
||||||
command! diff vim -d %f %F
|
|
||||||
command! zip zip -r %c.zip %f
|
|
||||||
command! run !! ./%f
|
|
||||||
command! make !!make %a
|
|
||||||
command! mkcd :mkdir %a | cd %a
|
|
||||||
command! vgrep vim "+grep %a"
|
|
||||||
command! reload :write | restart full
|
|
||||||
|
|
||||||
" ------------------------------------------------------------------------------
|
|
||||||
" File handlers and previewers
|
|
||||||
" ------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
" Setting up handlers that are considered in all environments:
|
|
||||||
" filetype {pattern1,pattern2} program1,{Optional description}program2
|
|
||||||
"
|
|
||||||
" Setting up handlers that are considered only in a graphical environment:
|
|
||||||
" filextype {pattern} graphical-program %c
|
|
||||||
"
|
|
||||||
" Setting up previewers:
|
|
||||||
" fileviewer {pattern1,pattern2} console-viewer1,console-viewer2
|
|
||||||
"
|
|
||||||
" ORDER MATTERS! Both handlers and previewers are considered in the order of
|
|
||||||
" their definition, therefore they should be defined from most to least
|
|
||||||
" specific. In particular, catch-all patterns like `*`, `*/`, `.*`, `*.*`
|
|
||||||
" should be defined after all others.
|
|
||||||
"
|
|
||||||
" All entries matching a particular file are considered in order until an
|
|
||||||
" existing command is found. Other entries are accessible via :file command
|
|
||||||
" for handlers or via `a` and `A` keys for previewers in view mode.
|
|
||||||
"
|
|
||||||
" The ordering can be checked at run-time by running
|
|
||||||
" :filetype/:filextype/:fileviewer with a file name as the only argument.
|
|
||||||
" This displays a menu of defined entries annotated with availability of
|
|
||||||
" commands.
|
|
||||||
"
|
|
||||||
" More on syntax and usage:
|
|
||||||
" - macros like %c, %f, %d, etc. may be used in the commands
|
|
||||||
" - the %a macro is ignored
|
|
||||||
" - to insert a literal % use %%
|
|
||||||
" - spaces in an app name must be escaped, for example:
|
|
||||||
" + QuickTime\ Player.app
|
|
||||||
" + "c:/Program Files (x86)/app/app.exe"
|
|
||||||
|
|
||||||
" For automated FUSE mounts, you must register an extension with :file[x]type
|
|
||||||
" in one of the following formats:
|
|
||||||
"
|
|
||||||
" :filetype patterns FUSE_MOUNT|mount_cmd %SOURCE_FILE %DESTINATION_DIR
|
|
||||||
"
|
|
||||||
" %SOURCE_FILE and %DESTINATION_DIR are filled in at runtime.
|
|
||||||
"
|
|
||||||
" Example:
|
|
||||||
" :filetype *.zip,*.[jwe]ar FUSE_MOUNT|fuse-zip %SOURCE_FILE %DESTINATION_DIR
|
|
||||||
"
|
|
||||||
" :filetype patterns FUSE_MOUNT2|mount_cmd %PARAM %DESTINATION_DIR
|
|
||||||
"
|
|
||||||
" %PARAM and %DESTINATION_DIR are filled in at runtime.
|
|
||||||
"
|
|
||||||
" Example:
|
|
||||||
" :filetype *.ssh FUSE_MOUNT2|sshfs %PARAM %DESTINATION_DIR
|
|
||||||
"
|
|
||||||
" %PARAM value is the first line of the matched file, example: root@127.0.0.1:/
|
|
||||||
"
|
|
||||||
" You can also add %CLEAR if you want to clear screen before running FUSE
|
|
||||||
" program. There is also %FOREGROUND, which is useful for entering passwords.
|
|
||||||
|
|
||||||
" Pdf
|
|
||||||
filextype {*.pdf},<application/pdf> zathura %c %i, apvlv %c, xpdf %c
|
|
||||||
fileviewer {*.pdf},<application/pdf> pdftotext -nopgbrk %c -
|
|
||||||
|
|
||||||
" PostScript
|
|
||||||
filextype {*.ps,*.eps,*.ps.gz},<application/postscript>
|
|
||||||
\ {View in zathura}
|
|
||||||
\ zathura %f,
|
|
||||||
\ {View in gv}
|
|
||||||
\ gv %c %i,
|
|
||||||
|
|
||||||
" Djvu
|
|
||||||
filextype {*.djvu},<image/vnd.djvu>
|
|
||||||
\ {View in zathura}
|
|
||||||
\ zathura %f,
|
|
||||||
\ {View in apvlv}
|
|
||||||
\ apvlv %f,
|
|
||||||
|
|
||||||
" Midi
|
|
||||||
filetype {*.mid,*.kar}
|
|
||||||
\ {Play using TiMidity++}
|
|
||||||
\ timidity %f,
|
|
||||||
|
|
||||||
" Audio
|
|
||||||
filetype {*.wav,*.mp3,*.flac,*.m4a,*.wma,*.ape,*.ac3,*.og[agx],*.spx,*.opus,
|
|
||||||
\*.aac,*.mpga},
|
|
||||||
\<audio/*>
|
|
||||||
\ {Play using MPlayer}
|
|
||||||
\ mplayer %f,
|
|
||||||
\ {Play using mpv}
|
|
||||||
\ mpv --no-video %f %s,
|
|
||||||
\ {Play using ffplay}
|
|
||||||
\ ffplay -nodisp -hide_banner -autoexit %c,
|
|
||||||
fileviewer {*.wav,*.mp3,*.flac,*.m4a,*.wma,*.ape,*.ac3,*.og[agx],*.spx,*.opus,
|
|
||||||
\*.aac,*.mpga},
|
|
||||||
\<audio/*>
|
|
||||||
\ ffprobe -hide_banner -pretty %c 2>&1
|
|
||||||
|
|
||||||
" Video
|
|
||||||
filextype {*.avi,*.mp4,*.wmv,*.dat,*.3gp,*.ogv,*.mkv,*.mpg,*.mpeg,*.vob,
|
|
||||||
\*.fl[icv],*.m2v,*.mov,*.webm,*.mts,*.m4v,*.r[am],*.qt,*.divx,
|
|
||||||
\*.as[fx],*.unknown_video},
|
|
||||||
\<video/*>
|
|
||||||
\ {View using ffplay}
|
|
||||||
\ ffplay -fs -hide_banner -autoexit %f,
|
|
||||||
\ {View using Dragon}
|
|
||||||
\ dragon %f:p,
|
|
||||||
\ {View using mplayer}
|
|
||||||
\ mplayer %f,
|
|
||||||
\ {Play using mpv}
|
|
||||||
\ mpv %f,
|
|
||||||
fileviewer {*.avi,*.mp4,*.wmv,*.dat,*.3gp,*.ogv,*.mkv,*.mpg,*.mpeg,*.vob,
|
|
||||||
\*.fl[icv],*.m2v,*.mov,*.webm,*.mts,*.m4v,*.r[am],*.qt,*.divx,
|
|
||||||
\*.as[fx],*.unknown_video},
|
|
||||||
\<video/*>
|
|
||||||
\ ffprobe -hide_banner -pretty %c 2>&1
|
|
||||||
|
|
||||||
" Web
|
|
||||||
filextype {*.xhtml,*.html,*.htm},<text/html>
|
|
||||||
\ {Open with qutebrowser}
|
|
||||||
\ qutebrowser %f %i,
|
|
||||||
\ {Open with firefox}
|
|
||||||
\ firefox %f &,
|
|
||||||
filetype {*.xhtml,*.html,*.htm},<text/html> links, lynx
|
|
||||||
|
|
||||||
" Object
|
|
||||||
filetype {*.o},<application/x-object> nm %f | less
|
|
||||||
|
|
||||||
" Man page
|
|
||||||
filetype {*.[1-8]},<text/troff> man ./%c
|
|
||||||
fileviewer {*.[1-8]},<text/troff> man ./%c | col -b
|
|
||||||
|
|
||||||
" Images
|
|
||||||
filextype {*.svg,*.svgz},<image/svg+xml>
|
|
||||||
\ {Edit in Inkscape}
|
|
||||||
\ inkscape %f,
|
|
||||||
\ {View in Inkview}
|
|
||||||
\ inkview %f,
|
|
||||||
filextype {*.cr2}
|
|
||||||
\ {Open in Darktable}
|
|
||||||
\ darktable %f,
|
|
||||||
\ {Open in RawTherapee}
|
|
||||||
\ rawtherapee %f,
|
|
||||||
filextype {*.xcf}
|
|
||||||
\ {Open in GIMP}
|
|
||||||
\ gimp %f,
|
|
||||||
filextype {*.kra}
|
|
||||||
\ {Open in Krita}
|
|
||||||
\ krita %f,
|
|
||||||
filextype {*.blend}
|
|
||||||
\ {Open in Blender}
|
|
||||||
\ blender %c,
|
|
||||||
filextype {*.sh3d}
|
|
||||||
\ {Open in Sweet Home 3D}
|
|
||||||
\ sweethome3d %c:p,
|
|
||||||
filextype {*.bmp,*.jpg,*.jpeg,*.png,*.gif,*.xpm},<image/*>
|
|
||||||
\ {View in sxiv}
|
|
||||||
\ sxiv %f,
|
|
||||||
\ {View in gpicview}
|
|
||||||
\ gpicview %c,
|
|
||||||
\ {View in shotwell}
|
|
||||||
\ shotwell,
|
|
||||||
fileviewer {*.bmp,*.jpg,*.jpeg,*.png,*.gif,*.xpm},<image/*>
|
|
||||||
\ identify %f
|
|
||||||
|
|
||||||
" OpenRaster
|
|
||||||
filextype *.ora
|
|
||||||
\ {Edit in MyPaint}
|
|
||||||
\ mypaint %f,
|
|
||||||
|
|
||||||
" Mindmap
|
|
||||||
filextype *.vym
|
|
||||||
\ {Open with VYM}
|
|
||||||
\ vym %f &,
|
|
||||||
|
|
||||||
" MD5
|
|
||||||
filetype *.md5
|
|
||||||
\ {Check MD5 hash sum}
|
|
||||||
\ md5sum -c %f %S,
|
|
||||||
|
|
||||||
" SHA1
|
|
||||||
filetype *.sha1
|
|
||||||
\ {Check SHA1 hash sum}
|
|
||||||
\ sha1sum -c %f %S,
|
|
||||||
|
|
||||||
" SHA256
|
|
||||||
filetype *.sha256
|
|
||||||
\ {Check SHA256 hash sum}
|
|
||||||
\ sha256sum -c %f %S,
|
|
||||||
|
|
||||||
" SHA512
|
|
||||||
filetype *.sha512
|
|
||||||
\ {Check SHA512 hash sum}
|
|
||||||
\ sha512sum -c %f %S,
|
|
||||||
|
|
||||||
" GPG signature
|
|
||||||
filetype {*.asc},<application/pgp-signature>
|
|
||||||
\ {Check signature}
|
|
||||||
\ !!gpg --verify %c,
|
|
||||||
|
|
||||||
" Torrent
|
|
||||||
filetype {*.torrent},<application/x-bittorrent> ktorrent %f &
|
|
||||||
fileviewer {*.torrent},<application/x-bittorrent>
|
|
||||||
\ dumptorrent -v %c,
|
|
||||||
\ transmission-show %c
|
|
||||||
|
|
||||||
" FuseZipMount
|
|
||||||
filetype {*.zip,*.jar,*.war,*.ear,*.oxt,*.apkg},
|
|
||||||
\<application/zip,application/java-archive>
|
|
||||||
\ {Mount with fuse-zip}
|
|
||||||
\ FUSE_MOUNT|fuse-zip %SOURCE_FILE %DESTINATION_DIR,
|
|
||||||
\ {View contents}
|
|
||||||
\ unzip -l %f | less,
|
|
||||||
\ {Extract here}
|
|
||||||
\ unzip %c,
|
|
||||||
fileviewer *.zip,*.jar,*.war,*.ear,*.oxt unzip -l %f
|
|
||||||
|
|
||||||
" ArchiveMount
|
|
||||||
filetype {*.cpio,*.cpio.gz,*.rpm,*.tar,*.tar.bz2,*.tbz2,*.tgz,*.tar.gz,*.tar.xz,
|
|
||||||
\*.txz,*.tar.zst,*.tzst},
|
|
||||||
\<application/x-cpio,application/x-rpm,application/x-tar>
|
|
||||||
\ {Mount with archivemount}
|
|
||||||
\ FUSE_MOUNT|archivemount %SOURCE_FILE %DESTINATION_DIR,
|
|
||||||
fileviewer *.tgz,*.tar.gz tar -tzf %c
|
|
||||||
fileviewer *.tar.bz2,*.tbz2 tar -tjf %c
|
|
||||||
fileviewer *.tar.xz,*.txz tar -tJf %c
|
|
||||||
fileviewer *.tar.zst,*.tzst tar -t --zstd -f %c
|
|
||||||
fileviewer {*.tar},<application/x-tar> tar -tf %c
|
|
||||||
fileviewer {*.cpio},<application/x-cpio> cpio -t < %c
|
|
||||||
fileviewer {*.rpm},<application/x-rpm> rpm -q --list %c%q 2> /dev/null
|
|
||||||
|
|
||||||
" Rar2FsMount and rar archives
|
|
||||||
filetype {*.rar},<application/x-rar>
|
|
||||||
\ {Mount with rar2fs}
|
|
||||||
\ FUSE_MOUNT|rar2fs %SOURCE_FILE %DESTINATION_DIR,
|
|
||||||
fileviewer {*.rar},<application/x-rar> unrar v %c
|
|
||||||
|
|
||||||
" IsoMount
|
|
||||||
filetype {*.iso},<application/x-iso9660-image>
|
|
||||||
\ {Mount with fuseiso}
|
|
||||||
\ FUSE_MOUNT|fuseiso %SOURCE_FILE %DESTINATION_DIR,
|
|
||||||
|
|
||||||
" SshMount
|
|
||||||
filetype *.ssh
|
|
||||||
\ {Mount with sshfs}
|
|
||||||
\ FUSE_MOUNT2|sshfs %PARAM %DESTINATION_DIR %FOREGROUND,
|
|
||||||
|
|
||||||
" FtpMount
|
|
||||||
filetype *.ftp
|
|
||||||
\ {Mount with curlftpfs}
|
|
||||||
\ FUSE_MOUNT2|curlftpfs -o ftp_port=-,,disable_eprt %PARAM %DESTINATION_DIR %FOREGROUND,
|
|
||||||
|
|
||||||
" Fuse7z and 7z archives
|
|
||||||
filetype {*.7z},<application/x-7z-compressed>
|
|
||||||
\ {Mount with fuse-7z}
|
|
||||||
\ FUSE_MOUNT|fuse-7z %SOURCE_FILE %DESTINATION_DIR,
|
|
||||||
fileviewer {*.7z},<application/x-7z-compressed> 7z l %c
|
|
||||||
|
|
||||||
" Office files
|
|
||||||
filextype {*.odt,*.doc,*.docx,*.xls,*.xlsx,*.odp,*.pptx,*.ppt},
|
|
||||||
\<application/vnd.openxmlformats-officedocument.*,
|
|
||||||
\application/msword,
|
|
||||||
\application/vnd.ms-excel>
|
|
||||||
\ libreoffice %f &
|
|
||||||
fileviewer {*.doc},<application/msword> catdoc %c
|
|
||||||
fileviewer {*.docx},
|
|
||||||
\<application/
|
|
||||||
\vnd.openxmlformats-officedocument.wordprocessingml.document>
|
|
||||||
\ docx2txt.pl %f -
|
|
||||||
|
|
||||||
" TuDu files
|
|
||||||
filetype *.tudu tudu -f %c
|
|
||||||
|
|
||||||
" Qt projects
|
|
||||||
filextype *.pro qtcreator %f &
|
|
||||||
|
|
||||||
" Directories
|
|
||||||
filextype */
|
|
||||||
\ {View in thunar}
|
|
||||||
\ Thunar %f &,
|
|
||||||
|
|
||||||
" Syntax highlighting in preview
|
|
||||||
"
|
|
||||||
" Explicitly set highlight type for some extensions
|
|
||||||
"
|
|
||||||
" 256-color terminal
|
|
||||||
" fileviewer *.[ch],*.[ch]pp highlight -O xterm256 -s dante --syntax c %c
|
|
||||||
" fileviewer Makefile,Makefile.* highlight -O xterm256 -s dante --syntax make %c
|
|
||||||
"
|
|
||||||
" 16-color terminal
|
|
||||||
" fileviewer *.c,*.h highlight -O ansi -s dante %c
|
|
||||||
"
|
|
||||||
" Or leave it for automatic detection
|
|
||||||
" fileviewer *[^/] pygmentize -O style=monokai -f console256 -g
|
|
||||||
|
|
||||||
" Displaying pictures in terminal
|
|
||||||
" fileviewer *.jpg,*.png shellpic %c
|
|
||||||
|
|
||||||
" Open all other files with default system programs (you can also remove all
|
|
||||||
" :file[x]type commands above to ensure they don't interfere with system-wide
|
|
||||||
" settings). By default all unknown files are opened with 'vi[x]cmd'
|
|
||||||
" uncommenting one of lines below will result in ignoring 'vi[x]cmd' option
|
|
||||||
" for unknown file types.
|
|
||||||
" For *nix:
|
|
||||||
" filetype * xdg-open
|
|
||||||
" For OS X:
|
|
||||||
" filetype * open
|
|
||||||
" For Windows:
|
|
||||||
" filetype * explorer %"f &
|
|
||||||
|
|
||||||
" ------------------------------------------------------------------------------
|
|
||||||
" Sample keyboard mappings
|
|
||||||
" ------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
" Start shell in current directory
|
|
||||||
nnoremap s :shell<cr>
|
|
||||||
|
|
||||||
" Display sorting dialog
|
|
||||||
nnoremap S :sort<cr>
|
|
||||||
|
|
||||||
" Toggle visibility of preview window
|
|
||||||
nnoremap w :view<cr>
|
|
||||||
vnoremap w :view<cr>gv
|
|
||||||
|
|
||||||
if $DISPLAY != '' && executable('gvim')
|
|
||||||
" Open file in existing instance of gvim
|
|
||||||
nnoremap o :!gvim --remote-tab-silent %f<cr>
|
|
||||||
" Open file in new instance of gvim
|
|
||||||
nnoremap O :!gvim %f<cr>
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Open file in the background using its default program
|
|
||||||
nnoremap gb :file &<cr>l
|
|
||||||
|
|
||||||
" Interaction with system clipboard
|
|
||||||
if has('win')
|
|
||||||
" Yank current directory path to Windows clipboard with forward slashes
|
|
||||||
nnoremap yp :!echo %"d:gs!\!/! %i | clip<cr>
|
|
||||||
" Yank path to current file to Windows clipboard with forward slashes
|
|
||||||
nnoremap yf :!echo %"c:p:gs!\!/! %i | clip<cr>
|
|
||||||
elseif $WAYLAND_DISPLAY != ''
|
|
||||||
if executable('wl-copy')
|
|
||||||
" Yank current directory path into primary and selection clipboards
|
|
||||||
nnoremap yd :!echo -n %d | wl-copy %i &&
|
|
||||||
\ echo -n %d | wl-copy -p %i<cr>
|
|
||||||
" Yank current file path into into primary and selection clipboards
|
|
||||||
nnoremap yf :!echo -n %c:p | wl-copy %i &&
|
|
||||||
\ echo -n %c:p | wl-copy -p %i<cr>
|
|
||||||
endif
|
|
||||||
elseif $DISPLAY != ''
|
|
||||||
if executable('xclip')
|
|
||||||
" Yank current directory path into the clipboard
|
|
||||||
nnoremap yd :!echo -n %d | xclip -selection clipboard %i<cr>
|
|
||||||
" Yank current file path into the clipboard
|
|
||||||
nnoremap yf :!echo -n %c:p | xclip -selection clipboard %i<cr>
|
|
||||||
elseif executable('xsel')
|
|
||||||
" Yank current directory path into primary and selection clipboards
|
|
||||||
nnoremap yd :!echo -n %d | xsel --input --primary %i &&
|
|
||||||
\ echo -n %d | xsel --clipboard --input %i<cr>
|
|
||||||
" Yank current file path into into primary and selection clipboards
|
|
||||||
nnoremap yf :!echo -n %c:p | xsel --input --primary %i &&
|
|
||||||
\ echo -n %c:p | xsel --clipboard --input %i<cr>
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Mappings for faster renaming
|
|
||||||
nnoremap I cw<c-a>
|
|
||||||
nnoremap cc cw<c-u>
|
|
||||||
nnoremap A cw
|
|
||||||
|
|
||||||
" As above, but without the file extension
|
|
||||||
" nnoremap I cW<c-a>
|
|
||||||
" nnoremap cc cW<c-u>
|
|
||||||
" nnoremap A cW
|
|
||||||
|
|
||||||
" Open console in current directory
|
|
||||||
if $DISPLAY != '' && executable('xterm')
|
|
||||||
nnoremap ,t :!xterm &<cr>
|
|
||||||
elseif $TERMINAL != ''
|
|
||||||
nnoremap ,t :!$TERMINAL &<cr>
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Open editor to edit vifmrc and apply settings after returning to vifm
|
|
||||||
nnoremap ,c :write | edit $MYVIFMRC | restart full<cr>
|
|
||||||
|
|
||||||
" Open gvim to edit vifmrc
|
|
||||||
if $DISPLAY != '' && executable('gvim')
|
|
||||||
nnoremap ,C :!gvim --remote-tab-silent $MYVIFMRC &<cr>
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Toggle wrap setting on ,w key
|
|
||||||
nnoremap ,w :set wrap!<cr>
|
|
||||||
|
|
||||||
" Example of standard two-panel file managers mappings
|
|
||||||
nnoremap <f3> :!less %f<cr>
|
|
||||||
nnoremap <f4> :edit<cr>
|
|
||||||
nnoremap <f5> :copy<cr>
|
|
||||||
nnoremap <f6> :move<cr>
|
|
||||||
nnoremap <f7> :mkdir<space>
|
|
||||||
nnoremap <f8> :delete<cr>
|
|
||||||
|
|
||||||
" Midnight commander alike mappings
|
|
||||||
" Open current directory in the other pane
|
|
||||||
nnoremap <a-i> :sync<cr>
|
|
||||||
" Open directory under cursor in the other pane
|
|
||||||
nnoremap <a-o> :sync %c<cr>
|
|
||||||
" Swap panes (uncomment if you don't need builtin behaviour of Ctrl-U)
|
|
||||||
" nnoremap <c-u> <c-w>x
|
|
||||||
|
|
||||||
" ------------------------------------------------------------------------------
|
|
||||||
" Panel configuration examples
|
|
||||||
" ------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
" Customize view columns a bit (enable ellipsis for truncated file names)
|
|
||||||
" set viewcolumns=-{name}..,6{}.
|
|
||||||
|
|
||||||
" Show vertical border
|
|
||||||
" set fillchars=vborder:│
|
|
||||||
|
|
||||||
" Filter-out build artifacts and temporary files
|
|
||||||
" filter! {*.lo,*.o,*.d,*.class,*.pyc,*.pyo,.*~}
|
|
||||||
|
|
||||||
" ------------------------------------------------------------------------------
|
|
||||||
" Various customization examples
|
|
||||||
" ------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
" Use ag (the silver searcher) instead of grep
|
|
||||||
" set grepprg='ag --line-numbers %i %a %s'
|
|
||||||
|
|
||||||
" Add additional place to look for executables
|
|
||||||
" let $PATH = $HOME.'/bin/fuse:'.$PATH
|
|
||||||
|
|
||||||
" Disable particular shortcut
|
|
||||||
" nnoremap <left> <nop>
|
|
||||||
|
|
||||||
" Export IPC name of current instance as environment variable and use it to
|
|
||||||
" communicate with the instance later.
|
|
||||||
"
|
|
||||||
" It can be used in some shell script that gets run from inside vifm, for
|
|
||||||
" example, like this:
|
|
||||||
" vifm --server-name "$VIFM_SERVER_NAME" --remote +"cd '$PWD'"
|
|
||||||
"
|
|
||||||
" let $VIFM_SERVER_NAME = v:servername
|
|
||||||
|
|
||||||
" Activate screen/tmux support
|
|
||||||
" screen!
|
|
||||||
|
|
||||||
" ------------------------------------------------------------------------------
|
|
||||||
" Icon decorations example
|
|
||||||
" ------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
" https://github.com/cirala/vifm_devicons
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
[user]
|
|
||||||
email = fedor.lyanguzov@ya.ru
|
|
||||||
name = Fedor Lyanguzov
|
|
||||||
[commit]
|
|
||||||
verbose = true
|
|
||||||
[core]
|
|
||||||
editor = nvim
|
|
||||||
[init]
|
|
||||||
defaultBranch = main
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
elixir 1.18.4-otp-28
|
|
||||||
erlang 28.1
|
|
||||||