Better pager in terminal

This commit is contained in:
rydesun 2021-08-02 14:41:51 +08:00
parent da75cf4f71
commit fe52e8cc04
3 changed files with 20 additions and 2 deletions

View file

@ -6,6 +6,8 @@ map ctrl+g>ctrl+w kitten hints --type=word --program -
map ctrl+g>ctrl+u kitten hints --type=url --program -
map ctrl+g>ctrl+i kitten hints --type=ip --program -
scrollback_pager nvim -R -c "nnoremap q :exit<CR>" -c "set signcolumn=no laststatus=0" -c "set noswapfile" -c "autocmd! myconfig_term" -c "autocmd TermOpen * normal G" -c "silent write! /tmp/kitty_scrollback_buffer" -c "te cat /tmp/kitty_scrollback_buffer; rm /tmp/kitty_scrollback_buffer; cat"
font_size 15.0
symbol_map U+3400-U+4DBF,U+4E00-U+9FFC Noto Sans Mono CJK SC

View file

@ -93,6 +93,16 @@ bindkey -e
autoload -Uz edit-command-line
zle -N edit-command-line
bindkey '^X^E' edit-command-line
# 修改清屏方式
# 将内容挤出屏幕而不是直接清空
scroll-and-clear-screen() {
printf '\n%.0s' {1..$LINES}
zle clear-screen
}
zle -N scroll-and-clear-screen
bindkey '^l' scroll-and-clear-screen
# fzf
if [[ -f /usr/share/fzf/key-bindings.zsh ]]; then
source /usr/share/fzf/key-bindings.zsh
@ -206,7 +216,13 @@ alias la='ls -Al'
mcd() { mkdir -p $1 && cd $1 }
alias x='xdg-open'
alias v='nvim -R -c "nnoremap q :exit<CR>"' && compdef v=nvim # 使用neovim作为pager
alias v='nvim -R -c "nnoremap q :exit<CR>" -c "set signcolumn=no laststatus=0"' &&
compdef v=nvim # 使用neovim作为pager
alias V='nvim -R -c "nnoremap q :exit<CR>" -c "set signcolumn=no laststatus=0" \
-c "set noswapfile" -c "silent! autocmd! myconfig_term" \
-c "silent write! /tmp/pager_buffer" \
-c "term cat /tmp/pager_buffer; rm /tmp/pager_buffer; cat"' &&
compdef V=nvim # 使用neovim作为pager支持ANSI code
if [[ -e $VIMRUNTIME ]]; then
alias e='nvr'
else

View file

@ -1,7 +1,7 @@
# default
EDITOR DEFAULT=nvim
BROWSER DEFAULT=firefox
MANPAGER DEFAULT="nvim +Man!"
MANPAGER DEFAULT="nvim +Man! -c 'set signcolumn=no laststatus=0'"
# xdg base directory
XDG_CONFIG_HOME DEFAULT=@{HOME}/.config