Vim uses :help 'path'
to define the root directories from where to search non-recursively for files.
It is used for:
gf
,gF
,<C-w>f
,<C-w>F
,<C-w>gf
,<C-w>gF
,:find
,:sfind
,:tabfind
,
augroup vlime_hilight_curr_expr | |
autocmd! | |
if empty(prop_type_get('lisp_curr_expr')) | |
call prop_type_add('lisp_curr_expr', {'highlight': 'LispCurrExpr'}) | |
endif | |
hi link LispCurrExpr MatchParen | |
function! s:HilightCurrExpr() abort | |
call prop_remove({'type': 'lisp_curr_expr', 'all': v:true}) |
# CLI | |
sudo apt update | |
sudp apt install \ | |
git curl docker.io \ | |
build-essential pkg-config autoconf bison rustc cargo clang \ | |
libssl-dev libreadline-dev zlib1g-dev libyaml-dev libreadline-dev libncurses5-dev libffi-dev libgdbm-dev libjemalloc2 \ | |
libvips imagemagick libmagickwand-dev libsqlite3-0 \ | |
redis-server mysql-server sqlite3 libmysqlclient-dev apache2-utils \ | |
rbenv |
function mapSeries(arr) { | |
if (!Array.isArray(arr)) throw new Error('mapSeries requires an Array'); | |
const length = arr.length; | |
const results = new Array(length); | |
arr.reduce((chain, item, i) => { | |
return chain.then(() => item).then(val => results[i] = val); | |
}, Promise.resolve()) | |
.then(() => results); | |
} |
#!/bin/sh | |
# | |
# Query a property from the terminal, e.g. background color. | |
# | |
# XTerm Operating System Commands | |
# "ESC ] Ps;Pt ST" | |
oldstty=$(stty -g) | |
# What to query? |
#!/usr/bin/env bash | |
set -Eeuo pipefail | |
IFS=$'\n\t' | |
if [ "$#" -ne 1 ]; then | |
echo "usage: ./download <year>" >&2 | |
exit 1 | |
fi |
I use tmux splits (panes). Inside one of these panes there's a Vim process, and it has its own splits (windows).
In Vim I have key bindings C-h/j/k/l
set to switch windows in the given direction. (Vim default mappings for windows switching are the same, but prefixed with C-W
.) I'd like to use the same keystrokes for switching tmux panes.
An extra goal that I've solved with a dirty hack is to toggle between last active panes with C-\
.
Here's how it should work: