dgy
/
hexagons
Archived
1
0
Fork 0

mantenimiento de siempre y un archivo que me olvide

This commit is contained in:
deadguy 2019-12-12 14:21:10 -03:00
parent a39f21b543
commit 0b080f9b1a
Signed by: dgy
GPG Key ID: 37CA55B52CF63730
8 changed files with 250 additions and 251 deletions

View File

@ -53,6 +53,7 @@
"html"
],
"coc.preferences.currentFunctionSymbolAutoUpdate": true,
"coc.preferences.snippetStatusText": "Ⓢ ",
"codeLens.enable": true,
"signature.triggerSignatureWait": 100,
"session.saveOnVimLeave": false,
@ -60,8 +61,10 @@
"list.source.files.args": ["-t", "f", "-S", "-2m", "-F", "-H"],
"list.source.grep.args": ["--vimgrep", "--hiden", "--no-heading"],
"list.source.mru.ignoreGitIgnore": true,
"list.previewSplitRight": true,
"list.previewSplitRight": true,
"explorer.width": 30,
"explorer.icon.expanded": "▾",
"explorer.icon.collapsed": "▸",
"explorer.icon.enableNerdfont": true,
"explorer.buffer.columns": ["selection", "bufnr", "name", "modified"],
"explorer.file.columns": [
@ -80,6 +83,13 @@
"dd": "deleteForever",
"b": "search"
},
"emmet.includeLanguages": {
"html.handlebars": "html",
"javascript": "javascriptreact"
},
"tsserver.enableJavascript": true,
"tslint.enable": true,
"tslint.autoFixOnSave": true,
"eslint.trace.server": "verbose",
"eslint.autoFix": true,
"eslint.autoFixOnSave": true,
@ -89,8 +99,9 @@
"typescript",
"typescriptreact",
"javascriptreact"
],
"prettier.eslintIntegration": true,
"prettier.stylelintIntegration": true,
"prettier.disableSuccessMessage": true
]
// "prettier.eslintIntegration": true,
// "prettier.stylelintIntegration": true,
// "prettier.disableSuccessMessage": true,
// "prettier.onlyUseLocalVersion": true
}

View File

@ -5,23 +5,14 @@ let g:python_host_skip_check=1 " Skip python 2 host check
let g:python3_host_prog = '/usr/bin/python3'
let g:tagbar_ctags_bin = '/usr/bin/ctags'
let python_highlight_all=1
set inccommand=nosplit " Live preview of substitutes and other similar commands
" Plug updates itself automatically
if empty(glob('~/.config/nvim/autoload/plug.vim'))
silent !curl -fLo ~/.config/nvim/autoload/plug.vim --create-dirs
\ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
au VimEnter * PlugInstall --sync | source $MYVIMRC
endif
set grepprg=rg\ --vimgrep\ --hidden\ --no-heading
set grepformat=%f:%l:%c:%m,%f:%l:%m
" }}}
" Plugins {{{
call plug#begin('~/.config/nvim/plugged')
Plug 'w0rp/ale'
Plug 'othree/yajs.vim', {'for': 'javascript'}
Plug 'othree/es.next.syntax.vim', {'for': 'javascript'}
Plug 'mhartington/nvim-typescript', {'do': './install.sh', 'for': 'typescript'}
Plug 'neoclide/coc.nvim', {'branch': 'release'}
Plug 'yuezk/vim-js', {'for': 'javascript'}
Plug 'sheerun/vim-polyglot'
Plug 'liuchengxu/vista.vim'
Plug 'tmsvg/pear-tree'
@ -33,13 +24,15 @@ call plug#end()
" Options {{{
set path+=**
set binary
set inccommand=nosplit " Live preview of substitutes and other similar commands
set clipboard^=unnamedplus " system clipboard (requires +clipboard)
set fileencoding=utf-8 " The encoding written to file.
set shell=/bin/zsh " Setting shell to zsh
set number " Line numbers on
set relativenumber " For easier line jumps
set noshowmode " It's on the statusline
set noshowmode " Always hide mode
set laststatus=2 " Always show statusline
set showtabline=2 " Always Show tabline
set pumheight=12 " Completion window max size
set helpheight=12 " Minimum help window height
set noswapfile " New buffers will be loaded without creating a swapfile
@ -60,16 +53,18 @@ set cursorline " Hightlight the screen line of the cursor
set visualbell " Use visual bell instead of beeping
set scrolloff=5 " Keep this many lines padding when scrolling
set shortmess+=aoOIWcs " Shorten messages and don't show intro
set tabstop=4 " Number of spaces a <Tab> equals
set foldnestmax=10 " Deepest fold is 10 levels
set foldmethod=marker " Markers are used to specify folds.
set foldlevelstart=10
set foldclose=all " Folds closed by default
set title
set foldlevelstart=10
set selectmode=key " Shift + arrow keys for selecting text
set keymodel=startsel " This one complements the one above it
set signcolumn=yes " Gutter for diagnostics and git status
set softtabstop=4
set tabstop=4 " Number of spaces a <Tab> equals
set shiftwidth=4 " Number of spaces to use in auto(indent)
set softtabstop=4 " While performing editing operations
set shiftround " Round indent to multiple of 'shiftwidth'
set title
set breakindent
set redrawtime=500
set ttimeoutlen=10
@ -86,10 +81,8 @@ set formatoptions+=nj
set pastetoggle=<F12>
set fillchars+=vert:\│
" Display all matching files when we tab complete
set wildmode=longest:full,full
set wildignorecase
set wildoptions=tagfile
set grepprg=rg\ --vimgrep\ --hidden\ --no-heading
set grepformat=%f:%l:%c:%m,%f:%l:%m
if &diff
set textwidth=80
@ -98,10 +91,10 @@ endif
match ErrorMsg '^\(<\|=\|>\)\{7\}\([^=].\+\)\?$'
let mapleader="\<SPACE>"
let maplocalleader=","
let maplocalleader=','
let formatlistpat='^\s*\(\d\+[\]:.)}\t ]\|[*-][\t ]\)\s*'
let g:vim_jsx_pretty_colorful_config = 1
let g:markdown_fenced_languages = ['vim', 'help']
" }}}
" {{{ Ale
let g:ale_use_global_executables = 1
@ -115,40 +108,47 @@ let g:ale_close_preview_on_insert = 1
let g:ale_sign_error = '✖'
let g:ale_sign_warning = '⚠'
let g:ale_sign_info = 'i'
let g:ale_set_loclist = 0
let g:ale_set_quickfix = 1
let g:ale_set_balloons = 1
let g:ale_virtualtext_cursor = 1
let g:ale_loclist_msg_format = '[%linter%] %s% (code)% [%severity%]'
let g:ale_set_highlights = 1
let g:ale_set_signs = 1
let g:ale_set_balloons = 1
let g:ale_linter_aliases = {
\ 'jsx': ['css', 'javascript'],
\ 'vue': ['vue', 'javascript'],
\}
let g:ale_linters = {
\ 'javascript': ['prettier_standard'],
\ 'jsx': ['eslint'],
\ 'jsx': ['prettier_standard'],
\ 'typescript': ['tsserver', 'eslint'],
\ 'json': ['prettier'],
\ 'html': ['prettier'],
\ 'css': ['stylelint', 'eslint'],
\ 'scss': ['stylelint', 'eslint'],
\ 'css': ['stylelint'],
\ 'scss': ['stylelint'],
\ 'bash': ['shellcheck'],
\ 'vim': ['vint'],
\}
let g:ale_fixers = {
\ 'javascript': ['prettier_standard'],
\ 'jsx': ['prettier_standard'],
\ 'typescript': ['prettier'],
\ 'json': ['prettier'],
\ 'css': ['stylelint', 'eslint'],
\ 'scss': ['stylelint', 'eslint'],
\ 'html': ['prettier_standard'],
\ 'scss': ['stylelint'],
\ 'css': ['stylelint'],
\ 'html': ['prettier'],
\ 'markdown': ['prettier'],
\}
let g:ale_pattern_options = {
\ '\.min\.js$': {'ale_linters': [], 'ale_fixers': []},
\ '\.min\.css$': {'ale_linters': [], 'ale_fixers': []},
\}
nmap <silent> <F10> <Plug>(ale_previous_wrap)
nmap <silent> <F11> <Plug>(ale_next_wrap)
nmap <silent> <F7> <Plug>(ale_previous_wrap)
nmap <silent> <F8> <Plug>(ale_next_wrap)
" }}}
" CoC {{{
let g:coc_global_extensions = ['coc-lists', 'coc-highlight', 'coc-stylelint', 'coc-explorer', 'coc-vimlsp', 'coc-css', 'coc-html', 'coc-json', 'coc-eslint', 'coc-prettier', 'coc-snippets']
let g:coc_global_extensions = ['coc-lists', 'coc-highlight', 'coc-tsserver', 'coc-emmet', 'coc-stylelint', 'coc-explorer', 'coc-css', 'coc-html', 'coc-json', 'coc-eslint', 'coc-snippets']
" Remap keys for gotos
nmap <silent> gd <Plug>(coc-definition)
@ -164,6 +164,9 @@ nnoremap <silent> <leader>o/ :<C-u>CocList -I symbols<CR>
" Explorer
nmap <silent><F5> :CocCommand explorer<CR>
" Config
nnoremap <silent><F6> :CocConfig<CR>
" Lists
nnoremap <silent><F1> :<C-u>CocList -S --ignore-case helptags<CR>
nnoremap <silent><F2> :<C-u>CocList --ignore-case files<CR>
@ -192,13 +195,24 @@ let g:coc_snippet_next = '<tab>'
let g:coc_snippet_prev = '<S-TAB>'
"}}}
" Vista {{{
let g:vista_default_executive = 'coc'
let g:vista#renderer#enable_icon = 1
let g:vista_default_executive = 'ctags'
let g:vista_disable_statusline = 1
let g:vista_sidebar_width = 35
let g:vista#renderer#enable_icon = 1
let g:vista_executive_for = {
\ 'javascript': 'coc',
\ 'javascript.jsx': 'coc',
\ 'python': 'ctags',
\ }
nnoremap <silent> <F9> :Vista!!<cr>
nnoremap <silent> <F11> :Vista!!<cr>
" }}}
" JS {{{
let g:polyglot_disabled = ['javascript']
let g:vim_jsx_pretty_colorful_config = 1
let g:jsx_ext_required = 1
let g:yats_host_keyword = 1
"}}}
" Colors {{{
set termguicolors
let g:oceanic_next_terminal_italic = 1
@ -211,7 +225,7 @@ function! MyHighlights() abort
call matchadd('ColorColumn', '\%81v', 100)
endfunction
hi! VertSplit ctermbg=NONE ctermfg=NONE guibg=NONE guifg=#080808
hi! VertSplit ctermbg=NONE ctermfg=NONE guibg=#080808 guifg=#080808
hi! Comment cterm=italic ctermbg=NONE guibg=NONE
hi! Normal ctermbg=NONE guibg=NONE
hi! NonText ctermbg=NONE guibg=NONE
@ -221,8 +235,9 @@ hi! CursorLine ctermbg=236 ctermfg=NONE guibg=#303030
hi! SignColumn ctermbg=NONE guibg=NONE
hi! Folded ctermbg=NONE guibg=NONE
hi! TabLineFill cterm=None ctermbg=NONE guibg=#080808 guifg=#080808
hi! TablineSel ctermfg=234 ctermbg=4 guibg=#008bbd guifg=#1c1c1c
hi! EndOfBuffer ctermbg=NONE ctermfg=NONE guibg=NONE guifg=#080808
hi! WildMenu ctermfg=226 ctermbg=0 guifg=#ffff00 guibg=#000000
hi! WildMenu ctermfg=228 ctermbg=0 guifg=#ffff00 guibg=#000000
hi! link CocErrorSign WarningMsg
hi! link CocWarningSign Number
hi! link CocInfoSign Type
@ -270,33 +285,69 @@ endfunction
function! LinePasteMode()
let paste_status = &paste
if paste_status == 1
return " paste "
return ' paste '
else
return ""
return ''
endif
endfunction
function! Statusline()
let b:status=""
let b:status=''
let b:status.=ModeColor()
let b:status.=CurrentMode()
let b:status.=LinePasteMode()
let b:status.="%1* %f "
let b:status.="%1* %m "
let b:status.="%= "
let b:status.="%6*"
let b:status.='%1* '
let b:status.='%= '
let b:status.='%6*'
let b:status.=LinterStatus()
let b:status.="%3* %p%% ┃ %c "
let b:status.='%3* %p%% %c '
return b:status
endfunction
set statusline=%!Statusline()
" }}}
" Tabline {{{
function! Tabline()
let s = ''
for i in range(tabpagenr('$'))
let tab = i + 1
let winnr = tabpagewinnr(tab)
let buflist = tabpagebuflist(tab)
let bufnr = buflist[winnr - 1]
let bufname = bufname(bufnr)
let bufmodified = getbufvar(bufnr, '&mod')
let s .= '%' . tab . 'T'
let s .= (tab == tabpagenr() ? '%#TabLineSel#' : '%#TabLine#')
let s .= ' ' . tab .':'
let s .= (bufname !=? '' ? '['. fnamemodify(bufname, ':t') . '] ' : '[No Name] ')
if bufmodified
let s .= '[+] '
endif
endfor
let s .= '%#TabLineFill#'
if (exists('g:tablineclosebutton'))
let s .= '%=%999XX'
endif
return s
endfunction
set tabline=%!Tabline()
" }}}
" AutoCommands {{{
if !exists("autocommands_loaded") && has("autocmd")
if !exists('autocommands_loaded') && has('autocmd')
let autocommands_loaded = 1
" Plug updates itself automatically
if empty(glob('~/.config/nvim/autoload/plug.vim'))
silent !curl -fLo ~/.config/nvim/autoload/plug.vim --create-dirs
\ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
aug Plugged
au VimEnter * PlugInstall --sync | source $MYVIMRC
aug END
endif
function! PopOutOfInsertMode()
if v:insertmode
call feedkeys("\<C-\>\<C-n>")
@ -310,7 +361,7 @@ if !exists("autocommands_loaded") && has("autocmd")
endfunction
function! LocalStatusLine()
let b:status = "%#error#[HELP]%*"
let b:status = '%#error#[HELP]%*'
return b:status
endfunction
@ -322,7 +373,6 @@ if !exists("autocommands_loaded") && has("autocmd")
aug status_line
au FileType help setlocal statusline=%!LocalStatusLine()
au FileType man setlocal statusline=%!LocalStatusLine()
au FileType fzf setlocal statusline=%!LocalStatusLine()
aug END
aug on_save
@ -338,14 +388,6 @@ if !exists("autocommands_loaded") && has("autocmd")
au QuitPre * if empty(&buftype) | lclose | endif
aug END
aug defx_things
" Close defx if it's the only buffer left in the window
au WinEnter * if &ft == 'defx' && winnr('$') == 1 | q | endif
" Move focus to the next window if current buffer is defx
au TabLeave * if &ft == 'defx' | wincmd w | endif
au FileType defx do WinEnter | call s:defx_my_settings()
aug END
aug term_stuff
au TermOpen * setlocal nonumber norelativenumber
au TermOpen * setlocal laststatus=0
@ -358,8 +400,9 @@ if !exists("autocommands_loaded") && has("autocmd")
aug miscs
" Highlight symbol under cursor on CursorHold
au CursorHold * silent call CocActionAsync('highlight')
au ColorScheme * call MyHighlights()
au CursorHold * call CocActionAsync('doHover')
au User CocJumpPlaceholder call CocActionAsync('showSignatureHelp')
au ColorScheme * call MyHighlights()
aug END
aug inserts
@ -376,14 +419,6 @@ if !exists("autocommands_loaded") && has("autocmd")
aug file_types
au FileType * setl formatoptions-=cro
au BufRead,BufNewFile *.md set filetype=markdown
au BufRead,BufNewFile *.txt set filetype=text
au BufRead,BufNewFile *.conf set filetype=config
au BufRead,BufNewFile *.bash* set filetype=sh
au BufRead,BufNewFile *.vue set filetype=vue
au BufRead,BufNewFile *.jsx set filetype=javascript.jsx
au BufRead,BufNewFile *.ts set filetype=typescript
au BufRead,BufNewFile *.tsx set filetype=typescript.tsx
au FileType typescript,json setl formatexpr=CocAction('formatSelected')
au FileType json syntax match Comment +\/\/.\+$+
aug END
@ -404,7 +439,7 @@ function! LaunchSC() range abort
call SetActiveTerminalJobID()
call jobsend(g:my_active_terminal_job_id, "scsynth -u 57110\r")
sleep 2200ms
silent exe "normal! G"
silent exe 'normal! G'
silent exe "normal! :vsplit\n"
silent exe "normal! :terminal\n"
call SetActiveTerminalJobID()
@ -412,7 +447,7 @@ function! LaunchSC() range abort
silent exe "normal! :tabprev\n"
silent exe "normal! <cr>\n"
sleep 2200ms
silent exe "normal! G"
silent exe 'normal! G'
endfunction
function! LaunchFoxDot() range abort
@ -420,18 +455,18 @@ function! LaunchFoxDot() range abort
call jobsend(g:my_active_terminal_job_id, "ipython\r")
sleep 2200ms
call jobsend(g:my_active_terminal_job_id, "from FoxDot import *\r")
silent exe "normal! G"
silent exe 'normal! G'
endfunction
function! SetActiveTerminalJobID()
let g:my_active_terminal_job_id = b:terminal_job_id
echom "Active terminal job ID set to " . g:my_active_terminal_job_id
echom 'Active terminal job ID set to ' . g:my_active_terminal_job_id
endfunction
function! LineFlash(blinktime)
redraw!
exec 'sleep ' . float2nr(a:blinktime * 1000) . 'm'
silent exe "normal! vv"
silent exe 'normal! vv'
endfunction
function! SendToFoxdot() range abort
@ -458,12 +493,8 @@ map <silent> <Leader>xf :set filetype=foxdot<CR>
"}}}
"Mappings {{{
"Normal {{{
" LaTeX and friends
nnoremap <F8> :w! \| !compiler <c-r>%<CR>
" Plug
nnoremap <leader>pu :PlugUpdate<CR>
nnoremap <leader>pU :PlugUpgrade<CR>
nnoremap ¿ G
nnoremap <Bar> gg
@ -472,16 +503,17 @@ nnoremap <Bar> gg
nnoremap ñ ;
nnoremap Ñ ,
" Super quick search and replace
nnoremap <leader>+ :'{,'}s/\<<C-r>=expand("<cword>")<CR>\>/
nnoremap <leader>¿ :%s/\<<C-r>=expand("<cword>")<CR>\>/
" Learn vim keys the hard way
" Resize splits
nnoremap <silent> <Left> :vertical resize -2<CR>
nnoremap <silent> <Right> :vertical resize +2<CR>
nnoremap <silent> <Up> :resize -1<CR>
nnoremap <silent> <Down> :resize +1<CR>
cnoremap jk <C-c>
" Maximize current split vertically
nnoremap <silent> <leader>z <C-W><C-_>
" Make all splits equal size vertically
nnoremap <silent> <leader>Z <C-W><C-=>
" Edit and source config file
nnoremap <silent> <leader>ev :vsplit $MYVIMRC<CR>
@ -497,6 +529,9 @@ nnoremap <silent> <leader>b :bdelete<CR>
nnoremap <silent> <leader>q :q!<CR>
nnoremap <silent> <leader>Q :qa!<CR>
" Fast leave insert mode
cnoremap jk <C-c>
" Splits
nnoremap <leader>T :terminal<CR>
nnoremap <leader>s :split<CR>
@ -619,7 +654,7 @@ tnoremap <M-l> <C-\><C-n><C-w>l
"}}}
" Functions {{{
function! CmdLine(str)
call feedkeys(":" . a:str)
call feedkeys(':' . a:str)
endfunction
" vp doesn't replace paste buffer

View File

@ -5,7 +5,7 @@ alias m='neomutt'
alias r='ranger'
alias amix='alsamixer'
alias v='$EDITOR'
alias irc='irssi'
alias irc='weechat'
alias play='ncmpcpp'
alias torr='transmission-remote-cli'
alias cal='calcurse'
@ -24,6 +24,7 @@ alias yt='mpsyt'
alias git='lab'
alias gst='git status'
alias gca='git commit -a -m'
alias gu='git add -vu'
alias gc='git add --all && git commit -m'
alias gp="git push"
@ -74,7 +75,7 @@ alias pwn='chmod +x'
alias ta='tmux attach -t'
alias tn='tmux new-session -s'
alias tk='tmux kill-session -t'
alias tsq='killall transmission-daemon 2> /dev/null'
alias tsq='kill -9 transmission-daemon'
alias tsl='transmission-remote --list'
alias tsx='transmission-remote --remove-and-delete -t'
alias tsr='transmission-remote --remove -t'

View File

@ -1,17 +1,17 @@
# -*- mode: shell-script -*-
# vim:ft=zsh
# Framebuffer colors {{{
if [ "$TERM" = "linux" ]; then
_SEDCMD='s/.*\*color\([0-9]\{1,\}\).*#\([0-9a-fA-F]\{6\}\).*/\1 \2/p'
for i in $(sed -n "$_SEDCMD" $HOME/.Xresources | awk '$1 < 16 {printf "\\e]P%X%s", $1, $2}'); do
echo -en "$i"
done
clear
if command -v tmux >/dev/null 2>&1; then
test -z "$TMUX" && (tmux new -A -s shell)
fi
# Tmux {{{
if command -v tmux >/dev/null 2>&1; then
test -z "$TMUX" && (tmux new -A -s shell)
fi
# When you clear the terminal with ctrl-l anything on-screen is not saved (this is compatible with xterm behavior).
# In contrast, GNU screen will first push anything on-screen into the scrollback buffer before clearing the screen.
tmux-clear-screen() {
for line in {1..$(( $LINES ))} ; do echo; done
zle clear-screen
}
zle -N tmux-clear-screen
bindkey "^L" tmux-clear-screen
# }}}
# Completion Dots {{{
# if you want red dots to be displayed while waiting for completion
@ -48,15 +48,5 @@ ranger() {
fi
}
# }}}
# This is a workaround for tmux {{{
# When you clear the terminal with ctrl-l anything on-screen is not saved (this is compatible with xterm behavior).
# In contrast, GNU screen will first push anything on-screen into the scrollback buffer before clearing the screen.
tmux-clear-screen() {
for line in {1..$(( $LINES ))} ; do echo; done
zle clear-screen
}
zle -N tmux-clear-screen
bindkey "^L" tmux-clear-screen
# }}}
# vim:foldmethod=marker:foldlevel=0

View File

@ -1,116 +0,0 @@
autoload -U history-substring-search-up
autoload -U history-substring-search-down
autoload -U up-line-or-beginning-search
autoload -U down-line-or-beginning-search
zle -N history-substring-search-up
zle -N history-substring-search-down
zle -N up-line-or-beginning-search
zle -N down-line-or-beginning-search
bindkey -v
# Fix backspace not working after returning from cmd mode
bindkey '^?' backward-delete-char
bindkey '^h' backward-delete-char
bindkey '^w' backward-kill-word
# Even more ways to search
bindkey '^P' up-line-or-beginning-search
bindkey '^N' down-line-or-beginning-search
bindkey '^U' history-incremental-pattern-search-backward
bindkey '^F' fzf-history-widget
bindkey -M viins '^K' up-history # ^K to previous command.
bindkey -M viins '^J' down-history # ^J to next command.
# Ctrl+Y is a standard in some places, and since Ctrl+R is taken...
bindkey -a u undo
bindkey -a '^y' redo
# file rename magick
bindkey "^[m" copy-prev-shell-word
# Better searching in command mode
bindkey -M vicmd '?' history-incremental-search-backward
bindkey -M vicmd '/' history-incremental-search-forward
bindkey -M vicmd 'k' history-substring-search-up
bindkey -M vicmd 'j' history-substring-search-down
bindkey -M vicmd '^K' up-history # ^K to previous command.
bindkey -M vicmd '^J' down-history # ^J to next command.
bindkey -M vicmd 'H' vi-beginning-of-line # Go beginning of line.
bindkey -M vicmd 'L' vi-end-of-line # Go end of line.
bindkey -M vicmd 'cr' change-surround # Change surround operator.
bindkey -M vicmd 'dr' delete-surround # Delete surround operator.
bindkey -M vicmd 'yr' add-surround # Add surround operator.
typeset -g -A key
key[Home]="$terminfo[khome]"
key[End]="$terminfo[kend]"
key[Insert]="$terminfo[kich1]"
key[Backspace]="$terminfo[kbs]"
key[Delete]="$terminfo[kdch1]"
key[Up]="$terminfo[kcuu1]"
key[Down]="$terminfo[kcud1]"
key[Left]="$terminfo[kcub1]"
key[Right]="$terminfo[kcuf1]"
key[PageUp]="$terminfo[kpp]"
key[PageDown]="$terminfo[knp]"
# setup key accordingly
[[ -n "$key[Home]" ]] && bindkey -- "$key[Home]" beginning-of-line
[[ -n "$key[End]" ]] && bindkey -- "$key[End]" end-of-line
[[ -n "$key[Insert]" ]] && bindkey -- "$key[Insert]" overwrite-mode
[[ -n "$key[Backspace]" ]] && bindkey -- "$key[Backspace]" backward-delete-char
[[ -n "$key[Delete]" ]] && bindkey -- "$key[Delete]" delete-char
[[ -n "$key[Up]" ]] && bindkey -- "$key[Up]" history-substring-search-up
[[ -n "$key[Down]" ]] && bindkey -- "$key[Down]" history-substring-search-down
[[ -n "$key[Left]" ]] && bindkey -- "$key[Left]" backward-char
[[ -n "$key[Right]" ]] && bindkey -- "$key[Right]" forward-char
[[ -n "$key[PageUp]" ]] && bindkey -- "$key[PageUp]" history-beginning-search-backward
[[ -n "$key[PageDown]" ]] && bindkey -- "$key[PageDown]" history-beginning-search-forward
# Runs bindkey but for all of the keymaps. Running it with no arguments will
# print out the mappings for all of the keymaps.
function bindkey-all {
local keymap=''
for keymap in $(bindkey -l); do
[[ "$#" -eq 0 ]] && printf "#### %s\n" "${keymap}" 1>&2
bindkey -M "${keymap}" "$@"
done
}
# Finally, make sure the terminal is in application mode, when zle is
# active. Only then are the values from $terminfo valid.
if (( ${+terminfo[smkx]} )) && (( ${+terminfo[rmkx]} )); then
function zle-line-init () {
echoti smkx
}
function zle-line-finish () {
echoti rmkx
}
zle -N zle-line-init
zle -N zle-line-finish
fi
# ci"
autoload -U select-quoted
zle -N select-quoted
for m in visual viopp; do
for c in {a,i}{\',\",\`}; do
bindkey -M $m $c select-quoted
done
done
# ci{, ci(, di{ etc..
autoload -U select-bracketed
zle -N select-bracketed
for m in visual viopp; do
for c in {a,i}${(s..)^:-'()[]{}<>bB'}; do
bindkey -M $m $c select-bracketed
done
done
autoload edit-command-line; zle -N edit-command-line
bindkey '^e' edit-command-line
export KEYTIMEOUT=1

100
.config/zsh/teclas.zsh Normal file
View File

@ -0,0 +1,100 @@
# Setup {{{
foreach carga (
history-substring-search-up
history-substring-search-down
up-line-or-beginning-search
down-line-or-beginning-search
surround
select-bracketed
select-quoted
) {
autoload -U $carga
}
foreach widge (
history-substring-search-up
history-substring-search-down
up-line-or-beginning-search
down-line-or-beginning-search
delete-surround surround
add-surround surround
change-surround surround
select-bracketed
select-quoted
) {
zle -N $widge
}
bindkey -v
typeset -g -A key
key[Home]="$terminfo[khome]"
key[End]="$terminfo[kend]"
key[Insert]="$terminfo[kich1]"
key[Backspace]="$terminfo[kbs]"
key[Delete]="$terminfo[kdch1]"
key[Up]="$terminfo[kcuu1]"
key[Down]="$terminfo[kcud1]"
key[Left]="$terminfo[kcub1]"
key[Right]="$terminfo[kcuf1]"
key[PageUp]="$terminfo[kpp]"
key[PageDown]="$terminfo[knp]"
# }}}
# Insert {{{
bindkey -M viins '^K' up-history # ^K to previous command.
bindkey -M viins '^J' down-history # ^J to next command.
bindkey -M viins '^F' vi-forward-char # Go forward char or complete current completion.
bindkey -M viins '^B' backward-kill-word # Delete a WORD backward.
bindkey -M viins '^Y' redo
bindkey -M viins '^P' up-line-or-beginning-search
bindkey -M viins '^N' down-line-or-beginning-search
bindkey -M viins '^U' history-incremental-pattern-search-backward
#bindkey -M viins '^?' backward-delete-char # Delete left char with backspace key.
#bindkey -M viins '^[[3~' delete-char # Ensure delete key always delete forward.
bindkey -M viins '^[[A' history-substring-search-up
bindkey -M viins '^[[B' history-substring-search-down
[[ -n "$key[Home]" ]] && bindkey -M viins -- "$key[Home]" beginning-of-line
[[ -n "$key[End]" ]] && bindkey -M viins -- "$key[End]" end-of-line
[[ -n "$key[Insert]" ]] && bindkey -M viins -- "$key[Insert]" overwrite-mode
[[ -n "$key[Backspace]" ]] && bindkey -M viins -- "$key[Backspace]" backward-delete-char
[[ -n "$key[Delete]" ]] && bindkey -M viins -- "$key[Delete]" delete-char
[[ -n "$key[Up]" ]] && bindkey -M viins -- "$key[Up]" history-substring-search-up
[[ -n "$key[Down]" ]] && bindkey -M viins -- "$key[Down]" history-substring-search-down
[[ -n "$key[Left]" ]] && bindkey -M viins -- "$key[Left]" backward-char
[[ -n "$key[Right]" ]] && bindkey -M viins -- "$key[Right]" forward-char
[[ -n "$key[PageUp]" ]] && bindkey -M viins -- "$key[PageUp]" history-beginning-search-backward
[[ -n "$key[PageDown]" ]] && bindkey -M viins -- "$key[PageDown]" history-beginning-search-forward
# }}}
# Normal {{{
bindkey -M vicmd 'j' down-line # Override down-line-or-history.
bindkey -M vicmd 'k' up-line # Override up-line-or-history.
bindkey -M vicmd '^K' up-history # ^K to previous command.
bindkey -M vicmd '^J' down-history # ^J to next command.
bindkey -M vicmd 'H' vi-beginning-of-line # Go beginning of line.
bindkey -M vicmd 'L' vi-end-of-line # Go end of line.
bindkey -M vicmd 'cs' change-surround # Change surround operator.
bindkey -M vicmd 'ds' delete-surround # Delete surround operator.
bindkey -M vicmd 'ys' add-surround # Add surround operator.
bindkey -M vicmd '?' history-incremental-search-backward
bindkey -M vicmd '/' history-incremental-search-forward
bindkey -M vicmd '^Y' redo
bindkey -M vicmd '^[[A' history-substring-search-up
bindkey -M vicmd '^[[B' history-substring-search-down
# }}}
# Visual {{{
bindkey -M visual 'H' vi-beginning-of-line # Go beginning of line.
bindkey -M visual 'L' vi-end-of-line # Go end of line.
bindkey -M visual 'S' add-surround # Add surround.
foreach char ({a,i}{\',\",\`}) { bindkey -M visual $char select-quoted } && unset char # Text objects for delimiters.
foreach char ({a,i}${(s..)^:-'()[]{}<>bB'}) { bindkey -M visual $char select-bracketed } && unset char # Text objects for pairs of brackets.
# }}}
# Operator {{{
bindkey -M viopp 'H' vi-beginning-of-line # Go beginning of line.
bindkey -M viopp 'L' vi-end-of-line # Go end of line.
foreach char ({a,i}{\',\",\`}) { bindkey -M viopp $char select-quoted } && unset char # Text objects for delimiters.
foreach char ({a,i}${(s..)^:-'()[]{}<>bB'}) { bindkey -M viopp $char select-bracketed } && unset char # Text objects for pairs of brackets.
export KEYTIMEOUT=1
# }}}
# vim:foldmethod=marker:foldlevel=0

View File

@ -47,12 +47,6 @@ textbox {
border: none !important;
}
vbox[style],
hbox[style] {
background-color: #212121 !important;
border: none !important;
}
window#main-window {
--tabs-navbar-shadow-size: 0px !important;
--chrome-content-separator-color: none !important;

View File

@ -68,7 +68,6 @@ set -g prefix M-a
bind-key M-a send-prefix
# Varios
bind-key ? list-keys
bind-key D detach-client
bind-key : command-prompt
bind-key R respawn-window
@ -108,18 +107,6 @@ bind-key X kill-window
bind-key Z kill-session
bind-key Q kill-server
# Ir a ventana
bind-key 1 select-window -t :1
bind-key 2 select-window -t :2
bind-key 3 select-window -t :3
bind-key 4 select-window -t :4
bind-key 5 select-window -t :5
bind-key 6 select-window -t :6
bind-key 7 select-window -t :7
bind-key 8 select-window -t :8
bind-key 9 select-window -t :9
bind-key 0 select-window -t :0
# Movimiento de ventanas
bind-key -n C-left prev
bind-key -n C-right next
@ -132,9 +119,6 @@ bind-key w choose-tree -Zw "swap-window -t '%%'"
bind-key s choose-tree -Zw "swap-pane -t '%%'"
bind-key m choose-tree -Zw "move-pane -t '%%'"
# Urlscan
bind-key u capture-pane \; save-buffer /tmp/tmux-buffer \; new-window -n "urlscan" '$SHELL -c "urlscan < /tmp/tmux-buffer"'
# Copy/paste. Seleccionar texto con el mouse lo copia automaticamente al clipboard
bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "xsel -i -p -b"
bind-key -n M-S-v run "xsel -o | tmux load-buffer - ; tmux paste-buffer"