From 5a76ba59fe6f7ad1342e02fa883b58b3b04915fa Mon Sep 17 00:00:00 2001 From: Tobias Reisinger Date: Fri, 20 Dec 2019 14:06:42 +0100 Subject: [PATCH] add: vimrc hybrid line numbers fix: zsh cursor move: vimrc, viminfo, zsh_history --- .config/vimrc | 24 ++++++++++++++++++++++++ .config/zsh/.zshrc | 33 ++++----------------------------- .profile | 2 ++ .vimrc | 14 -------------- 4 files changed, 30 insertions(+), 43 deletions(-) create mode 100644 .config/vimrc delete mode 100644 .vimrc diff --git a/.config/vimrc b/.config/vimrc new file mode 100644 index 0000000..d130458 --- /dev/null +++ b/.config/vimrc @@ -0,0 +1,24 @@ +set number relativenumber + +augroup numbertoggle + autocmd! + autocmd WinEnter * set relativenumber + autocmd WinLeave * set norelativenumber +augroup END + +syntax on + +set tabstop=4 +set shiftwidth=4 +set expandtab + +set encoding=utf-8 + +set nowrap + +set viminfo+=n~/.cache/viminfo + +" Save cursor position. I don't understand this part :) +if has("autocmd") + au BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$") | exe "normal! g`\"" | endif +endif diff --git a/.config/zsh/.zshrc b/.config/zsh/.zshrc index 6f4430b..487f8e8 100644 --- a/.config/zsh/.zshrc +++ b/.config/zsh/.zshrc @@ -5,7 +5,7 @@ PS1="%B%{$fg[red]%}[%{$fg[yellow]%}%n%{$fg[green]%}@%{$fg[blue]%}%M %{$fg[magent # History in cache directory: HISTSIZE=10000 SAVEHIST=10000 -HISTFILE=~/.cache/zsh/history +HISTFILE=~/.cache/zsh_history # Basic auto/tab complete: autoload -U compinit @@ -25,38 +25,13 @@ bindkey -M menuselect 'l' vi-forward-char bindkey -M menuselect 'j' vi-down-line-or-history bindkey -v '^?' backward-delete-char -# Change cursor shape for different vi modes. -function zle-keymap-select { - if [[ ${KEYMAP} == vicmd ]] || - [[ $1 = 'block' ]]; then - echo -ne '\e[1 q' - elif [[ ${KEYMAP} == main ]] || - [[ ${KEYMAP} == viins ]] || - [[ ${KEYMAP} = '' ]] || - [[ $1 = 'beam' ]]; then - echo -ne '\e[5 q' - fi -} -zle -N zle-keymap-select zle-line-init() { zle -K viins # initiate `vi insert` as keymap (can be removed if `bindkey -V` has been set elsewhere) - echo -ne "\e[5 q" + echo -ne "\e[1 q" } zle -N zle-line-init -echo -ne '\e[5 q' # Use beam shape cursor on startup. -preexec() { echo -ne '\e[5 q' ;} # Use beam shape cursor for each new prompt. - -# Use lf to switch directories and bind it to ctrl-o -lfcd () { - tmp="$(mktemp)" - lf -last-dir-path="$tmp" "$@" - if [ -f "$tmp" ]; then - dir="$(cat "$tmp")" - rm -f "$tmp" - [ -d "$dir" ] && [ "$dir" != "$(pwd)" ] && cd "$dir" - fi -} -bindkey -s '^o' 'lfcd\n' +echo -ne '\e[1 q' # Use beam shape cursor on startup. +# preexec() { echo -ne '\e[5 q' ;} # Use beam shape cursor for each new prompt. # Edit line in vim with ctrl-e: autoload edit-command-line; zle -N edit-command-line diff --git a/.profile b/.profile index 8fb7a58..16da867 100644 --- a/.profile +++ b/.profile @@ -1,3 +1,5 @@ +export VIMINIT='source ~/.config/vimrc' + # set PATH so it includes user's private bin if it exists [ -d "$HOME/bin" ] && PATH="$HOME/bin:$PATH" diff --git a/.vimrc b/.vimrc deleted file mode 100644 index 4c85222..0000000 --- a/.vimrc +++ /dev/null @@ -1,14 +0,0 @@ -set number -syntax on - -set tabstop=4 -set shiftwidth=4 -set expandtab - -set encoding=utf-8 - -set nowrap - -if has("autocmd") - au BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$") | exe "normal! g`\"" | endif -endif