Compare commits

...

14 Commits

Author SHA1 Message Date
31a6ea351d Update linters.yml 2025-03-02 12:41:30 +02:00
333995c7f4 fix(config): vim config
Signed-off-by: Ismo Vuorinen <ismo@ivuorinen.net>
2025-02-28 17:08:06 +02:00
d6b24c27a1 chore(config): add LM Studio to path
Signed-off-by: Ismo Vuorinen <ismo@ivuorinen.net>
2025-02-27 16:20:16 +02:00
89ae4003f9 chore(config): ignore config/git/local.d/*
Signed-off-by: Ismo Vuorinen <ismo@ivuorinen.net>
2025-02-27 15:39:19 +02:00
7a008c3ae8 chore(config): update brewfile
Signed-off-by: Ismo Vuorinen <ismo@ivuorinen.net>
2025-02-27 15:34:36 +02:00
a6f89e80bd chore(config): tmux: tms keybindings, update docs
Signed-off-by: Ismo Vuorinen <ismo@ivuorinen.net>
2025-02-27 15:34:11 +02:00
3d987e491e chore(config): fish: add cargo bin, pyenv init
Signed-off-by: Ismo Vuorinen <ismo@ivuorinen.net>
2025-02-27 15:33:24 +02:00
e1729fd925 chore(config): aerospace, add Microsoft RDC
Signed-off-by: Ismo Vuorinen <ismo@ivuorinen.net>
2025-02-27 15:32:32 +02:00
4e5dae4161 fix(ci): update-submodules fetch-depth to 2 2025-02-27 14:58:22 +02:00
6b30ebfddb fix(config): vim plugged config 2025-02-27 14:58:03 +02:00
github-actions[bot]
0aafae5d97 chore: update pre-commit hooks (#85)
Co-authored-by: ivuorinen <11024+ivuorinen@users.noreply.github.com>
2025-02-27 07:37:20 +02:00
32cc561d20 chore(ci): update-submodules fetch depth to 1 2025-02-26 18:00:55 +02:00
784fddea64 fix(repo): remove tools/dotbot-asdf submodule 2025-02-26 00:41:03 +02:00
0a058aaf22 chore(config): fish_add_path "$CARGO_HOME/bin" 2025-02-25 23:39:46 +02:00
15 changed files with 119 additions and 206 deletions

View File

@@ -5,6 +5,8 @@ jobs:
linters: linters:
name: Linters name: Linters
runs-on: self-hosted runs-on: self-hosted
permissions:
contents: write
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- name: GitHub Actions - name: GitHub Actions

View File

@@ -17,7 +17,7 @@ jobs:
uses: actions/checkout@v4 uses: actions/checkout@v4
with: with:
submodules: true submodules: true
fetch-depth: 0 fetch-depth: 2
token: ${{secrets.GITHUB_TOKEN}} token: ${{secrets.GITHUB_TOKEN}}
- name: Config Git User - name: Config Git User
run: | run: |
@@ -33,7 +33,7 @@ jobs:
echo "$name updated to $tag" echo "$name updated to $tag"
fi fi
' '
if git diff --quiet; then if git diff --quiet; then
echo "No updates for submodules." echo "No updates for submodules."
else else

6
.gitignore vendored
View File

@@ -22,6 +22,10 @@ config/npm/npmrc
config/nvim/lazy-lock.json config/nvim/lazy-lock.json
config/nvim/spell/* config/nvim/spell/*
!config/nvim/spell/.gitkeep !config/nvim/spell/.gitkeep
config/git/local.d/*
!config/git/local.d/.gitkeep
config/vim/fzf
config/vim/plugged/*
config/zed/* config/zed/*
!config/zed/settings.json !config/zed/settings.json
config/zsh/.zcompdump config/zsh/.zcompdump
@@ -36,3 +40,5 @@ ssh/local.d/*
config/fish/fish_variables config/fish/fish_variables
**/exports-secret.fish **/exports-secret.fish
config/fish/completions/asdf.fish config/fish/completions/asdf.fish
config/vim/.netrwhist
*.swp

View File

@@ -49,7 +49,7 @@ repos:
- id: actionlint - id: actionlint
- repo: https://github.com/renovatebot/pre-commit-hooks - repo: https://github.com/renovatebot/pre-commit-hooks
rev: 39.178.1 rev: 39.182.3
hooks: hooks:
- id: renovate-config-validator - id: renovate-config-validator

View File

@@ -11,8 +11,6 @@ git submodule add --name dotbot-include \
-f https://gitlab.com/gnfzdz/dotbot-include.git tools/dotbot-include -f https://gitlab.com/gnfzdz/dotbot-include.git tools/dotbot-include
git submodule add --name dotbot-pip \ git submodule add --name dotbot-pip \
-f https://github.com/sobolevn/dotbot-pip.git tools/dotbot-pip -f https://github.com/sobolevn/dotbot-pip.git tools/dotbot-pip
git submodule add --name dotbot-asdf \
-f https://github.com/sobolevn/dotbot-asdf tools/dotbot-asdf
# other repos # other repos
git submodule add --name cheat-community \ git submodule add --name cheat-community \

View File

@@ -25,3 +25,6 @@ x-have antidot && {
PROMPT_DIRTRIM=3 PROMPT_DIRTRIM=3
PROMPT_COMMAND='PS1_CMD1=$(git branch --show-current 2>/dev/null)' PROMPT_COMMAND='PS1_CMD1=$(git branch --show-current 2>/dev/null)'
PS1='\[\e[95m\]\u\[\e[0m\]@\[\e[38;5;22;2m\]\h\[\e[0m\] \[\e[38;5;33m\]\w\[\e[0m\] \[\e[92;2m\]${PS1_CMD1}\n\[\e[39m\]➜\[\e[0m\] ' PS1='\[\e[95m\]\u\[\e[0m\]@\[\e[38;5;22;2m\]\h\[\e[0m\] \[\e[38;5;33m\]\w\[\e[0m\] \[\e[92;2m\]${PS1_CMD1}\n\[\e[39m\]➜\[\e[0m\] '
# Added by LM Studio CLI (lms)
export PATH="$PATH:$HOME/.lmstudio/bin"

View File

@@ -22,7 +22,6 @@ FPATH="$ZSH_COMPLETIONS:$FPATH"
ZSH_COMPDUMP="$XDG_CACHE_HOME/zsh/zcompdump-${SHORT_HOST}-${ZSH_VERSION}" ZSH_COMPDUMP="$XDG_CACHE_HOME/zsh/zcompdump-${SHORT_HOST}-${ZSH_VERSION}"
source "$DOTFILES/config/zsh/antidote.zsh" source "$DOTFILES/config/zsh/antidote.zsh"
# source "$DOTFILES/config/zsh/prompt.zsh"
# Function to source FZF configuration # Function to source FZF configuration
source_fzf_config() source_fzf_config()
@@ -61,3 +60,6 @@ bashcompinit
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh. # To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
export P10K_CONFIG="$DOTFILES/config/zsh/p10k.zsh" export P10K_CONFIG="$DOTFILES/config/zsh/p10k.zsh"
[[ ! -f "$P10K_CONFIG" ]] || source "$P10K_CONFIG" [[ ! -f "$P10K_CONFIG" ]] || source "$P10K_CONFIG"
# Added by LM Studio CLI (lms)
export PATH="$PATH:$HOME/.lmstudio/bin"

View File

@@ -119,6 +119,10 @@ run = ['layout floating']
if.app-id = 'com.philipyoungg.session-setapp' # Session app (Setapp) if.app-id = 'com.philipyoungg.session-setapp' # Session app (Setapp)
run = ['layout floating'] run = ['layout floating']
[[on-window-detected]]
if.app-id = 'com.microsoft.rdc.macos' # Remote Desktop
run = ['layout floating']
# Possible values: (qwerty|dvorak) # Possible values: (qwerty|dvorak)
# See https://nikitabobko.github.io/AeroSpace/guide#key-mapping # See https://nikitabobko.github.io/AeroSpace/guide#key-mapping
[key-mapping] [key-mapping]

View File

@@ -14,3 +14,6 @@ if status is-interactive
# Start tmux if not already running and not in SSH # Start tmux if not already running and not in SSH
open-tmux # defined in functions/open-tmux.fish open-tmux # defined in functions/open-tmux.fish
end end
# Added by LM Studio CLI (lms)
set -gx PATH $PATH $HOME/.lmstudio/bin

View File

@@ -19,6 +19,9 @@ set -q HOSTNAME; or set -x HOSTNAME (hostname -s)
# Add local bin to path # Add local bin to path
fish_add_path "$XDG_BIN_HOME" fish_add_path "$XDG_BIN_HOME"
# Add cargo bin to path
fish_add_path "$XDG_SHARE_HOME/cargo/bin"
# NPM configuration # NPM configuration
set -q NPM_CONFIG_PREFIX; or set -x NPM_CONFIG_PREFIX "$XDG_DATA_HOME/npm" set -q NPM_CONFIG_PREFIX; or set -x NPM_CONFIG_PREFIX "$XDG_DATA_HOME/npm"
fish_add_path "$NPM_CONFIG_PREFIX/bin" fish_add_path "$NPM_CONFIG_PREFIX/bin"
@@ -107,6 +110,9 @@ set -q OP_CACHE; or set -x OP_CACHE "$XDG_STATE_HOME/1password"
set -q WORKON_HOME; or set -x WORKON_HOME "$XDG_DATA_HOME/virtualenvs" set -q WORKON_HOME; or set -x WORKON_HOME "$XDG_DATA_HOME/virtualenvs"
set -q PYENV_ROOT; or set -x PYENV_ROOT "$XDG_DATA_HOME/pyenv" set -q PYENV_ROOT; or set -x PYENV_ROOT "$XDG_DATA_HOME/pyenv"
fish_add_path "$PYENV_ROOT/bin" fish_add_path "$PYENV_ROOT/bin"
if x-have pyenv; and not functions -q pyenv
status --is-interactive; and source (pyenv init - | psub)
end
# Poetry configuration # Poetry configuration
set -q POETRY_HOME; or set -x POETRY_HOME "$XDG_DATA_HOME/poetry" set -q POETRY_HOME; or set -x POETRY_HOME "$XDG_DATA_HOME/poetry"
@@ -118,6 +124,7 @@ set -q CARGO_BIN_HOME; or set -x CARGO_BIN_HOME "$XDG_BIN_HOME"
set -q RUSTUP_HOME; or set -x RUSTUP_HOME "$XDG_DATA_HOME/rustup" set -q RUSTUP_HOME; or set -x RUSTUP_HOME "$XDG_DATA_HOME/rustup"
set -x RUST_WITHOUT "clippy,docs,rls" set -x RUST_WITHOUT "clippy,docs,rls"
fish_add_path "$CARGO_BIN_HOME" fish_add_path "$CARGO_BIN_HOME"
fish_add_path "$CARGO_HOME/bin"
fish_add_path "$XDG_SHARE_HOME/bob/nvim-bin" fish_add_path "$XDG_SHARE_HOME/bob/nvim-bin"
# screen configuration # screen configuration

View File

View File

@@ -217,8 +217,6 @@ brew "nss"
brew "openldap" brew "openldap"
# ISO-C API and CLI for generating UUIDs # ISO-C API and CLI for generating UUIDs
brew "ossp-uuid" brew "ossp-uuid"
# General-purpose scripting language
brew "php@8.2"
# Execute binaries from Python packages in isolated environments # Execute binaries from Python packages in isolated environments
brew "pipx" brew "pipx"
# Python version management # Python version management
@@ -235,6 +233,8 @@ brew "ruby-build"
brew "rbenv" brew "rbenv"
# Generate C-based recognizers from regular expressions # Generate C-based recognizers from regular expressions
brew "re2c" brew "re2c"
# Rust toolchain installer
brew "rustup"
# Static analysis and lint tool, for (ba)sh scripts # Static analysis and lint tool, for (ba)sh scripts
brew "shellcheck" brew "shellcheck"
# Send macOS User Notifications from the command-line # Send macOS User Notifications from the command-line
@@ -288,9 +288,11 @@ brew "shivammathur/extensions/uuid@8.3"
# Yaml PHP extension # Yaml PHP extension
brew "shivammathur/extensions/yaml@8.3" brew "shivammathur/extensions/yaml@8.3"
# General-purpose scripting language # General-purpose scripting language
brew "shivammathur/php/php"
# General-purpose scripting language
brew "shivammathur/php/php-debug" brew "shivammathur/php/php-debug"
# General-purpose scripting language
brew "shivammathur/php/php@8.2", link: true
# General-purpose scripting language
brew "shivammathur/php/php@8.2-debug"
# Command-line interface for 1Password # Command-line interface for 1Password
cask "1password-cli" cask "1password-cli"
# AeroSpace is an i3-like tiling window manager for macOS # AeroSpace is an i3-like tiling window manager for macOS

View File

@@ -3,7 +3,7 @@
# Contains configuration from the following sources: # Contains configuration from the following sources:
# - https://tmuxguide.readthedocs.io/en/latest/tmux/tmux.html # - https://tmuxguide.readthedocs.io/en/latest/tmux/tmux.html
# - https://github.com/dreamsofcode-io/tmux/blob/main/tmux.conf # - https://github.com/dreamsofcode-io/tmux/blob/main/tmux.conf
#
# ╭──────────────────────────────────────────────────────────╮ # ╭──────────────────────────────────────────────────────────╮
# │ Settings │ # │ Settings │
# ╰──────────────────────────────────────────────────────────╯ # ╰──────────────────────────────────────────────────────────╯
@@ -62,6 +62,7 @@ set -g window-status-format ' #I:#W '
# │ Bindings │ # │ Bindings │
# ╰──────────────────────────────────────────────────────────╯ # ╰──────────────────────────────────────────────────────────╯
# bind flags # bind flags
# -N = Note / description of the command
# -r = repeatable, only needs prefix once # -r = repeatable, only needs prefix once
# -n = doesn't need prefix # -n = doesn't need prefix
# -t = binds to a certain key-table (root, copy-mode, prefix, etc.) # -t = binds to a certain key-table (root, copy-mode, prefix, etc.)
@@ -95,10 +96,10 @@ unbind p
bind p paste-buffer bind p paste-buffer
# tms bindings # tms bindings
bind C-f display-popup -E "tms" bind -N "tms" t display-popup -E "tms"
bind C-w display-popup -E "tms windows" bind -N "tms windows" C-w display-popup -E "tms windows"
bind C-s display-popup -E "tms switch" bind -N "tms switch" C-s display-popup -E "tms switch"
bind C-r display-popup -E "tms refresh" bind -N "tms refresh" C-r display-popup -E "tms refresh"
# ╭──────────────────────────────────────────────────────────╮ # ╭──────────────────────────────────────────────────────────╮
# │ Plugins │ # │ Plugins │

View File

@@ -1,18 +1,10 @@
" vim-bootstrap 2024-04-26 07:50:42 " This is my vimrc
"
" https://tlvince.com/vim-respect-xdg "
set directory=$XDG_CACHE_HOME/vim,~/,/tmp
set backupdir=$XDG_CACHE_HOME/vim,~/,/tmp
set viminfo+=n$XDG_CACHE_HOME/vim/viminfo
set runtimepath=$XDG_CONFIG_HOME/vim,$XDG_CONFIG_HOME/vim/after,$VIM,$VIMRUNTIME
let $MYVIMRC="$XDG_CONFIG_HOME/vim/vimrc"
set v=$XDG_CONFIG_HOME/vim
"***************************************************************************** "*****************************************************************************
"" Vim-Plug core "" Vim-Plug core
"***************************************************************************** "*****************************************************************************
let vimplug_exists=expand(v . '/autoload/plug.vim') let vimplug_exists=expand('$HOME/.config/autoload/plug.vim')
if has('win32')&&!has('win64') if has('win32')&&!has('win64')
let curl_exists=expand('C:\Windows\Sysnative\curl.exe') let curl_exists=expand('C:\Windows\Sysnative\curl.exe')
else else
@@ -21,7 +13,7 @@ endif
let g:vim_bootstrap_langs = "go,html,javascript,lua,php,python,typescript" let g:vim_bootstrap_langs = "go,html,javascript,lua,php,python,typescript"
let g:vim_bootstrap_editor = "vim" " nvim or vim let g:vim_bootstrap_editor = "vim" " nvim or vim
let g:vim_bootstrap_theme = "material" let g:vim_bootstrap_theme = "minimalist"
let g:vim_bootstrap_frams = "vuejs" let g:vim_bootstrap_frams = "vuejs"
if !filereadable(vimplug_exists) if !filereadable(vimplug_exists)
@@ -38,17 +30,12 @@ if !filereadable(vimplug_exists)
endif endif
" Required: " Required:
call plug#begin(expand(v . '/plugged')) call plug#begin(expand('$HOME/.config/vim/plugged'))
"*****************************************************************************
"" Plug install packages
"*****************************************************************************
Plug 'scrooloose/nerdtree' Plug 'scrooloose/nerdtree'
Plug 'jistr/vim-nerdtree-tabs' Plug 'jistr/vim-nerdtree-tabs'
Plug 'tpope/vim-commentary' Plug 'tpope/vim-commentary'
Plug 'tpope/vim-fugitive' Plug 'tpope/vim-fugitive'
Plug 'vim-airline/vim-airline'
Plug 'vim-airline/vim-airline-themes'
Plug 'airblade/vim-gitgutter' Plug 'airblade/vim-gitgutter'
Plug 'vim-scripts/grep.vim' Plug 'vim-scripts/grep.vim'
Plug 'vim-scripts/CSApprox' Plug 'vim-scripts/CSApprox'
@@ -58,13 +45,13 @@ Plug 'dense-analysis/ale'
Plug 'Yggdroot/indentLine' Plug 'Yggdroot/indentLine'
Plug 'editor-bootstrap/vim-bootstrap-updater' Plug 'editor-bootstrap/vim-bootstrap-updater'
Plug 'tpope/vim-rhubarb' " required by fugitive to :GBrowse Plug 'tpope/vim-rhubarb' " required by fugitive to :GBrowse
Plug 'kaicataldo/material.vim' Plug 'dikiaap/minimalist'
Plug 'liuchengxu/vim-which-key'
if isdirectory('~/.config/vim/extra/fzf')
if isdirectory('~/.local/bin/fzf')
Plug '~/.local/bin/fzf' | Plug 'junegunn/fzf.vim' Plug '~/.local/bin/fzf' | Plug 'junegunn/fzf.vim'
else else
Plug 'junegunn/fzf', { 'dir': '~/.local/bin/fzf', 'do': './install --bin' } Plug 'junegunn/fzf', { 'dir': '~/.config/vim/fzf', 'do': './install --bin' }
Plug 'junegunn/fzf.vim' Plug 'junegunn/fzf.vim'
endif endif
let g:make = 'gmake' let g:make = 'gmake'
@@ -77,19 +64,10 @@ Plug 'Shougo/vimproc.vim', {'do': g:make}
Plug 'xolox/vim-misc' Plug 'xolox/vim-misc'
Plug 'xolox/vim-session' Plug 'xolox/vim-session'
"" Snippets
Plug 'SirVer/ultisnips'
Plug 'honza/vim-snippets'
"*****************************************************************************
"" Custom bundles
"*****************************************************************************
" go " go
"" Go Lang Bundle "" Go Lang Bundle
Plug 'fatih/vim-go', {'do': ':GoInstallBinaries'} Plug 'fatih/vim-go', {'do': ':GoInstallBinaries'}
" html " html
"" HTML Bundle "" HTML Bundle
Plug 'hail2u/vim-css3-syntax' Plug 'hail2u/vim-css3-syntax'
@@ -97,87 +75,80 @@ Plug 'gko/vim-coloresque'
Plug 'tpope/vim-haml' Plug 'tpope/vim-haml'
Plug 'mattn/emmet-vim' Plug 'mattn/emmet-vim'
" javascript " javascript
"" Javascript Bundle "" Javascript Bundle
Plug 'jelera/vim-javascript-syntax' Plug 'jelera/vim-javascript-syntax'
" lua " lua
"" Lua Bundle "" Lua Bundle
Plug 'xolox/vim-lua-ftplugin' Plug 'xolox/vim-lua-ftplugin'
Plug 'xolox/vim-lua-inspect' Plug 'xolox/vim-lua-inspect'
" php " php
"" PHP Bundle "" PHP Bundle
Plug 'phpactor/phpactor', {'for': 'php', 'do': 'composer install --no-dev -o'} Plug 'phpactor/phpactor', {'for': 'php', 'do': 'composer install --no-dev -o'}
Plug 'stephpy/vim-php-cs-fixer' Plug 'stephpy/vim-php-cs-fixer'
" python " python
"" Python Bundle "" Python Bundle
Plug 'davidhalter/jedi-vim' Plug 'davidhalter/jedi-vim'
Plug 'raimon49/requirements.txt.vim', {'for': 'requirements'} Plug 'raimon49/requirements.txt.vim', {'for': 'requirements'}
" typescript " typescript
Plug 'leafgarland/typescript-vim' Plug 'leafgarland/typescript-vim'
Plug 'HerringtonDarkholme/yats.vim' Plug 'HerringtonDarkholme/yats.vim'
" vuejs " vuejs
Plug 'posva/vim-vue' Plug 'posva/vim-vue'
Plug 'leafOfTree/vim-vue-plugin' Plug 'leafOfTree/vim-vue-plugin'
"***************************************************************************** "*****************************************************************************
"***************************************************************************** "*****************************************************************************
"" Include user's extra bundle set nocompatible " disable compatibility mode with vi
if filereadable(expand("~/.config/vim/vimrc.local.bundles")) filetype off " disable filetype detection (but re-enable later, see below)
source ~/.config/vim/vimrc.local.bundles
endif set encoding=utf-8 " UTF-8
set number " Show line numbers
set relativenumber " Show relative line numbers
set laststatus=2 " Always show statusline (even with only single window)
set showmatch " Highlight matching brace
set visualbell " Use visual bell (no beeping)
set backspace=indent,eol,start " Backspace behaviour
set cindent " Use 'C' style program indenting
set cursorline " Highlight current line
set expandtab " Use spaces instead of tabs
set fileformats=unix,dos,mac
set ignorecase " Always case-insensitive
set incsearch " Searches for strings incrementally
set linespace=3
set modeline
set modelines=3
set mouse=a
set mousemodel=popup
set ruler " Show row and column ruler information
set scrolloff=5
set shiftwidth=4 " Number of auto-indent spaces
set smartcase " Enable smart-case search
set smartindent " Enable smart-indent
set smarttab " Enable smart-tabs
set softtabstop=4 " Number of spaces per Tab
set termguicolors
set undolevels=1000 " Number of undo levels
set wildmenu
call plug#end() call plug#end()
" Required: " Required:
filetype plugin indent on filetype plugin indent on
"*****************************************************************************
"" Basic Setup
"*****************************************************************************"
"" Encoding
set encoding=utf-8
set fileencoding=utf-8
set fileencodings=utf-8
set ttyfast
"" Fix backspace indent
set backspace=indent,eol,start
"" Tabs. May be overridden by autocmd rules
set tabstop=4
set softtabstop=0
set shiftwidth=4
set expandtab
"" Map leader to <space> "" Map leader to <space>
let mapleader=' ' let mapleader=' '
"" Enable hidden buffers "" Enable hidden buffers
set hidden set hidden
"" Searching
set hlsearch
set incsearch
set ignorecase
set smartcase
set fileformats=unix,dos,mac
if exists('$SHELL') if exists('$SHELL')
set shell=$SHELL set shell=$SHELL
else else
@@ -186,35 +157,20 @@ endif
" session management " session management
let g:session_directory = "~/.local/state/vim/session" let g:session_directory = "~/.local/state/vim/session"
let g:session_autoload = "no" let g:session_autoload = "yes"
let g:session_autosave = "yes" let g:session_autosave = "yes"
let g:session_command_aliases = 1 let g:session_command_aliases = 1
"*****************************************************************************
"" Visual Settings
"*****************************************************************************
syntax on syntax on
set ruler
set number
let no_buffers_menu=1
colorscheme material
" Better command line completion
set wildmenu
" mouse support
set mouse=a
set mousemodel=popup set mousemodel=popup
set t_Co=256 set t_Co=256
set guioptions=egmrti set guioptions=egmrti
set gfn=Monospace\ 13
if has("gui_running") if has("gui_running")
if has("gui_mac") || has("gui_macvim") if has("gui_mac") || has("gui_macvim")
set guifont=Menlo:h14 set macligatures
set guifont=JetBrains\ Mono:h14
set transparency=7 set transparency=7
endif endif
else else
@@ -226,7 +182,6 @@ else
let g:indentLine_char = '┆' let g:indentLine_char = '┆'
let g:indentLine_faster = 1 let g:indentLine_faster = 1
if $COLORTERM == 'gnome-terminal' if $COLORTERM == 'gnome-terminal'
set term=gnome-256color set term=gnome-256color
else else
@@ -237,30 +192,15 @@ else
endif endif
if &term =~ '256color' if &term =~ '256color'
set t_ut= set t_ut=
endif endif
"" Disable the blinking cursor.
set gcr=a:blinkon0
set scrolloff=3
"" Status bar
set laststatus=2
"" Use modeline overrides
set modeline
set modelines=10
set title set title
set titleold="Terminal" set titleold="Terminal"
set titlestring=%F set titlestring=%F
set statusline=%F%m%r%h%w%=(%{&ff}/%Y)\ (line\ %l\/%L,\ col\ %c)\ set statusline=%F%m%r%h%w%=(%{&ff}/%Y)\ (line\ %l\/%L)|
" Search mappings: These will make it so that going to the next one in a " Search mappings: These will make it so that going to the next one in a
" search will center on the line it's found in. " search will center on the line it's found in.
@@ -272,12 +212,13 @@ if exists("*fugitive#statusline")
endif endif
" vim-airline " vim-airline
let g:airline_theme = 'powerlineish'
let g:airline#extensions#branch#enabled = 1
let g:airline#extensions#ale#enabled = 1 let g:airline#extensions#ale#enabled = 1
let g:airline#extensions#branch#enabled = 1
let g:airline#extensions#tabline#enabled = 1 let g:airline#extensions#tabline#enabled = 1
let g:airline#extensions#tagbar#enabled = 1 let g:airline#extensions#tagbar#enabled = 1
let g:airline_powerline_fonts = 1
let g:airline_skip_empty_sections = 1 let g:airline_skip_empty_sections = 1
let g:airline_theme = 'minimalist'
"***************************************************************************** "*****************************************************************************
"" Abbreviations "" Abbreviations
@@ -296,7 +237,7 @@ cnoreabbrev Qall qall
"" NERDTree configuration "" NERDTree configuration
let g:NERDTreeChDirMode=2 let g:NERDTreeChDirMode=2
let g:NERDTreeIgnore=['node_modules','vendor','\.rbc$', '\~$', '\.pyc$', '\.db$', '\.sqlite$', '__pycache__'] let g:NERDTreeIgnore=['node_modules', 'vendor', '\.rbc$', '\~$', '\.pyc$', '\.db$', '\.sqlite$', '__pycache__']
let g:NERDTreeSortOrder=['^__\.py$', '\/$', '*', '\.swp$', '\.bak$', '\~$'] let g:NERDTreeSortOrder=['^__\.py$', '\/$', '*', '\.swp$', '\.bak$', '\~$']
let g:NERDTreeShowBookmarks=1 let g:NERDTreeShowBookmarks=1
let g:nerdtree_tabs_focus_on_files=1 let g:nerdtree_tabs_focus_on_files=1
@@ -304,7 +245,7 @@ let g:NERDTreeMapOpenInTabSilent = '<RightMouse>'
let g:NERDTreeWinSize = 50 let g:NERDTreeWinSize = 50
set wildignore+=*/tmp/*,*.so,*.swp,*.zip,*.pyc,*.db,*.sqlite,*node_modules/,*vendor/ set wildignore+=*/tmp/*,*.so,*.swp,*.zip,*.pyc,*.db,*.sqlite,*node_modules/,*vendor/
nnoremap <silent> <F2> :NERDTreeFind<CR> nnoremap <silent> <F2> :NERDTreeFind<CR>
nnoremap <silent> <F3> :NERDTreeToggle<CR> nnoremap <silent> <leader>q :NERDTreeToggle<CR>
" grep.vim " grep.vim
nnoremap <silent> <leader>f :Rgrep<CR> nnoremap <silent> <leader>f :Rgrep<CR>
@@ -315,16 +256,21 @@ let Grep_Skip_Dirs = '.git node_modules vendor plugged'
" terminal emulation " terminal emulation
nnoremap <silent> <leader>sh :terminal<CR> nnoremap <silent> <leader>sh :terminal<CR>
" vim-which-key config
nnoremap <silent> <leader> :WhichKey '<Space>'<CR>
set timeoutlen=500 " By default timeoutlen=1000 (ms)
"***************************************************************************** "*****************************************************************************
"" Commands "" Commands
"***************************************************************************** "*****************************************************************************
" remove trailing whitespaces " remove trailing whitespaces
command! FixWhitespace :%s/\s\+$//e command! FixWhitespace :%s/\s\+$//e
"***************************************************************************** "*****************************************************************************
"" Functions "" Functions
"***************************************************************************** "*****************************************************************************
if !exists('*s:setupWrapping') if !exists('*s:setupWrapping')
function s:setupWrapping() function s:setupWrapping()
set wrap set wrap
@@ -336,6 +282,7 @@ endif
"***************************************************************************** "*****************************************************************************
"" Autocmd Rules "" Autocmd Rules
"***************************************************************************** "*****************************************************************************
"" The PC is fast enough, do syntax highlight syncing from start unless 200 lines "" The PC is fast enough, do syntax highlight syncing from start unless 200 lines
augroup vimrc-sync-fromstart augroup vimrc-sync-fromstart
autocmd! autocmd!
@@ -345,7 +292,7 @@ augroup END
"" Remember cursor position "" Remember cursor position
augroup vimrc-remember-cursor-position augroup vimrc-remember-cursor-position
autocmd! autocmd!
autocmd BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g`\"" | endif " autocmd BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g`\"" | endif
augroup END augroup END
"" txt "" txt
@@ -406,12 +353,6 @@ set wildmode=list:longest,list:full
set wildignore+=*.o,*.obj,.git,*.rbc,*.pyc,__pycache__,vendor set wildignore+=*.o,*.obj,.git,*.rbc,*.pyc,__pycache__,vendor
let $FZF_DEFAULT_COMMAND = "find * -path '*/\.*' -prune -o -path 'node_modules/**' -prune -o -path 'target/**' -prune -o -path 'vendor/**' -prune -o -path 'dist/**' -prune -o -type f -print -o -type l -print 2> /dev/null" let $FZF_DEFAULT_COMMAND = "find * -path '*/\.*' -prune -o -path 'node_modules/**' -prune -o -path 'target/**' -prune -o -path 'vendor/**' -prune -o -path 'dist/**' -prune -o -type f -print -o -type l -print 2> /dev/null"
" The Silver Searcher
if executable('ag')
let $FZF_DEFAULT_COMMAND = 'ag --hidden --ignore .git -g ""'
set grepprg=ag\ --nogroup\ --nocolor
endif
" ripgrep " ripgrep
if executable('rg') if executable('rg')
let $FZF_DEFAULT_COMMAND = 'rg --files --hidden --follow --glob "!.git/*"' let $FZF_DEFAULT_COMMAND = 'rg --files --hidden --follow --glob "!.git/*"'
@@ -425,12 +366,6 @@ nnoremap <silent> <leader>e :FZF -m<CR>
"Recovery commands from history through FZF "Recovery commands from history through FZF
nmap <leader>y :History:<CR> nmap <leader>y :History:<CR>
" snippets
let g:UltiSnipsExpandTrigger="<tab>"
let g:UltiSnipsJumpForwardTrigger="<tab>"
let g:UltiSnipsJumpBackwardTrigger="<c-b>"
let g:UltiSnipsEditSplit="vertical"
" ale " ale
let g:ale_linters = {} let g:ale_linters = {}
@@ -457,6 +392,7 @@ if has('macunix')
" pbcopy for OSX copy/paste " pbcopy for OSX copy/paste
vmap <C-x> :!pbcopy<CR> vmap <C-x> :!pbcopy<CR>
vmap <C-c> :w !pbcopy<CR><CR> vmap <C-c> :w !pbcopy<CR><CR>
vmap <C-v> :!pbpaste<CR>
endif endif
"" Buffer nav "" Buffer nav
@@ -556,15 +492,12 @@ augroup go
augroup END augroup END
" ale " ale
:call extend(g:ale_linters, { :call extend(g:ale_linters, {"go": [ 'golint', 'go vet' ]})
\"go": ['golint', 'go vet'], })
" html " html
" for html files, 2 spaces " for html files, 2 spaces
autocmd Filetype html setlocal ts=2 sw=2 expandtab autocmd Filetype html setlocal ts=2 sw=2 expandtab
" javascript " javascript
let g:javascript_enable_domhtmlcss = 1 let g:javascript_enable_domhtmlcss = 1
@@ -574,10 +507,6 @@ augroup vimrc-javascript
autocmd FileType javascript setl tabstop=4|setl shiftwidth=4|setl expandtab softtabstop=4 autocmd FileType javascript setl tabstop=4|setl shiftwidth=4|setl expandtab softtabstop=4
augroup END augroup END
" lua
" php " php
" Phpactor plugin " Phpactor plugin
" Include use statement " Include use statement
@@ -609,10 +538,7 @@ vmap <silent><Leader>em :<C-U>call phpactor#ExtractMethod()<CR>
" vim-python " vim-python
augroup vimrc-python augroup vimrc-python
autocmd! autocmd!
autocmd FileType python setlocal expandtab autocmd FileType python setlocal expandtab shiftwidth=4 tabstop=8 colorcolumn=79 formatoptions+=croq softtabstop=4 cinwords=if,elif,else,for,while,try,except,finally,def,class,with
\ shiftwidth=4 tabstop=8 colorcolumn=79
\ formatoptions+=croq softtabstop=4
\ cinwords=if,elif,else,for,while,try,except,finally,def,class,with
augroup END augroup END
" jedi-vim " jedi-vim
@@ -627,71 +553,17 @@ let g:jedi#completions_command = "<C-Space>"
let g:jedi#smart_auto_mappings = 0 let g:jedi#smart_auto_mappings = 0
" ale " ale
:call extend(g:ale_linters, { :call extend(g:ale_linters, { 'python': [ 'flake8' ] })
\'python': ['flake8'], })
" vim-airline
let g:airline#extensions#virtualenv#enabled = 1
" Syntax highlight " Syntax highlight
let python_highlight_all = 1 let python_highlight_all = 1
" typescript " typescript
let g:yats_host_keyword = 1 let g:yats_host_keyword = 1
" vuejs " vuejs
" vim vue " vim vue
let g:vue_disable_pre_processors=1 let g:vue_disable_pre_processors=1
" vim vue plugin " vim vue plugin
let g:vim_vue_plugin_load_full_syntax = 1 let g:vim_vue_plugin_load_full_syntax = 1
"*****************************************************************************
"*****************************************************************************
"" Include user's local vim config
if filereadable(expand("~/.config/vimrc.local"))
source ~/.config/vimrc.local
endif
"*****************************************************************************
"" Convenience variables
"*****************************************************************************
" vim-airline
if !exists('g:airline_symbols')
let g:airline_symbols = {}
endif
if !exists('g:airline_powerline_fonts')
let g:airline#extensions#tabline#left_sep = ' '
let g:airline#extensions#tabline#left_alt_sep = '|'
let g:airline_left_sep = '▶'
let g:airline_left_alt_sep = '»'
let g:airline_right_sep = '◀'
let g:airline_right_alt_sep = '«'
let g:airline#extensions#branch#prefix = '⤴' "➔, ➥, ⎇
let g:airline#extensions#readonly#symbol = '⊘'
let g:airline#extensions#linecolumn#prefix = '¶'
let g:airline#extensions#paste#symbol = 'ρ'
let g:airline_symbols.linenr = '␊'
let g:airline_symbols.branch = '⎇'
let g:airline_symbols.paste = 'ρ'
let g:airline_symbols.paste = 'Þ'
let g:airline_symbols.paste = '∥'
let g:airline_symbols.whitespace = 'Ξ'
else
let g:airline#extensions#tabline#left_sep = ''
let g:airline#extensions#tabline#left_alt_sep = ''
" powerline symbols
let g:airline_left_sep = ''
let g:airline_left_alt_sep = ''
let g:airline_right_sep = ''
let g:airline_right_alt_sep = ''
let g:airline_symbols.branch = ''
let g:airline_symbols.readonly = ''
let g:airline_symbols.linenr = ''
endif

View File

@@ -3,10 +3,16 @@
Leader: `<ctrl><space>` Leader: `<ctrl><space>`
```txt ```txt
Space Select next layout
! Break pane to a new window
" Split window vertically
# List all paste buffers
$ Rename current session $ Rename current session
% Split window horizontally % Split window horizontally
& Kill current window & Kill current window
' Prompt for window index to select ' Prompt for window index to select
( Switch to previous client
) Switch to next client
, Rename current window , Rename current window
- Delete the most recent paste buffer - Delete the most recent paste buffer
. Move the current window . Move the current window
@@ -25,6 +31,7 @@ Leader: `<ctrl><space>`
; Move to the previously active pane ; Move to the previously active pane
= Choose a paste buffer from a list = Choose a paste buffer from a list
? List key bindings ? List key bindings
D Choose and detach a client from a list
E Spread panes out evenly E Spread panes out evenly
L Switch to the last client L Switch to the last client
M Clear the marked pane M Clear the marked pane
@@ -33,11 +40,13 @@ Leader: `<ctrl><space>`
d Detach the current client d Detach the current client
f Search for a pane f Search for a pane
i Display window information i Display window information
l Select the previously current window
m Toggle the marked pane m Toggle the marked pane
n Select the next window
o Select the next pane o Select the next pane
q Display pane numbers q Display pane numbers
s Choose a session from a list s Choose a session from a list
t Show a clock t tms
w Choose a window from a list w Choose a window from a list
x Kill the active pane x Kill the active pane
z Zoom the active pane z Zoom the active pane
@@ -65,6 +74,9 @@ Leader: `<ctrl><space>`
M-Left Resize the pane left by 5 M-Left Resize the pane left by 5
M-Right Resize the pane right by 5 M-Right Resize the pane right by 5
C-o Rotate through the panes C-o Rotate through the panes
C-r tms refresh
C-s tms switch
C-w tms windows
C-z Suspend the current client C-z Suspend the current client
C-Up Resize the pane up C-Up Resize the pane up
C-Down Resize the pane down C-Down Resize the pane down
@@ -75,3 +87,4 @@ Leader: `<ctrl><space>`
S-Left Move the visible part of the window left S-Left Move the visible part of the window left
S-Right Move the visible part of the window right S-Right Move the visible part of the window right
``` ```