X-Git-Url: https://git.phdru.name/?p=dotfiles.git;a=blobdiff_plain;f=.vimrc;h=4bb96bc4ba1914ff8461dd3f50d67f58d5a8911d;hp=83458ed39c76bae0a98b6eddf257d497e61ee052;hb=HEAD;hpb=5d48cf52db5f95f5685c69cef59e92504c16841f diff --git a/.vimrc b/.vimrc index 83458ed..dfa434f 100644 --- a/.vimrc +++ b/.vimrc @@ -74,6 +74,7 @@ set nohlsearch " Stop the search highlighting set hidden " Don't unload a buffer when no longer shown in a window; allow to switch between buffers/windows when the buffer is modified set laststatus=2 " Always show status line +" set statusline=%<%f\ %h%m%r%=%-14.(%l,%c%V%)\ %P " Default statusline set splitbelow " A new window is put below of the current one set splitright " A new window is put right of the current one @@ -84,10 +85,13 @@ set ttyfast " terminal connection is fast set title " Set title to the value of 'titlestring' or to 'filename - VIM' set titleold= " string to restore the title to when exiting Vim -" String to use for the Vim window title; with statusline printf items: +" String to use for the Vim window title; with statusline printf items. +" This is the default: +" display filename, modification flag, full path, and program name in uppercase. +" set titlestring=%t%(\ %M%)%(\ (%{substitute(expand(\"%:p:h\"),\ $HOME,\ \"~\",\ \"\")})%)%(\ %a%)\ -\ %{toupper(v:progname)} " display filename, modification flag, full path, argument list status, " the current user, host and program name (to distinguish vim/view/etc). -set titlestring=%t%(\ %M%)%(\ (%{expand(\"%:p:h\")})%)%(\ %a%)\ -\ [%{$USER}@%{hostname()}]\ %{v:progname} +set titlestring=%t%(\ %M%)%(\ (%{substitute(expand(\"%:p:h\"),\ $HOME,\ \"~\",\ \"\")})%)%(\ %a%)\ -\ %{v:progname}\ [%{$USER}@%{hostname()}] " 9 using the mouse @@ -310,26 +314,7 @@ else endif endif - " Bracketed paste mode - " https://github.com/ConradIrwin/vim-bracketed-paste/blob/master/plugin/bracketed-paste.vim - let &t_ti .= "\[?2004h" - let &t_te = "\e[?2004l" . &t_te - - function! XTermPasteBegin(ret) - set pastetoggle= - set paste - return a:ret - endfunction - - execute "set =\[200~" - execute "set =\[201~" - map XTermPasteBegin("i") - imap XTermPasteBegin("") - vmap XTermPasteBegin("c") - cmap - cmap - - "https://coderwall.com/p/if9mda/automatically-set-paste-mode-in-vim-when-pasting-in-insert-mode + " https://coderwall.com/p/if9mda/automatically-set-paste-mode-in-vim-when-pasting-in-insert-mode " https://ttssh2.osdn.jp/manual/en/usage/tips/vim.html function! WrapForScreenTmux(s) if (&term =~ "screen") @@ -538,10 +523,12 @@ endfunction nmap \b :call ExtractOpenURL('') nmap \w :call ExtractOpenURL('-n') nmap \t :call ExtractOpenURL('-t') +nmap \p :call ExtractOpenURL('-p') " Send visual block to a browser vmap \b ""y:call OpenURL('"', '') vmap \w ""y:call OpenURL('"', '-n') vmap \t ""y:call OpenURL('"', '-t') +vmap \p ""y:call OpenURL('"', '-p') " Encode and send visual block to a browser vmap \B ""y:call EncodeOpenURL('"', '') vmap \W ""y:call EncodeOpenURL('"', '-n') @@ -605,13 +592,13 @@ function! W() execute 'set fileencoding=' . e w break - catch /E513: write error, conversion failed/ + catch /E513: [Ww]rite error, conversion failed/ continue endtry endfor if &modified - throw '"' . expand('%') . '" E513: write error, conversion failed; tried ' . join(encodings, ',') + throw '"' . expand('%') . '" E513: Write error, conversion failed; tried ' . join(encodings, ',') elseif has("spell") call SetupSpell() endif @@ -871,5 +858,7 @@ if v:version >= 800 call timer_start(500, 'SetLazyRedraw') endif +autocmd VimLeave * call writefile([getcwd()], expand('~/tmp/vim/cwd')) + " This has to go to the very end of ~/.vimrc to allow reading the .vimrc set secure " safer working with script files in the current directory