Vim: Difference between revisions

From Leo's Notes
This page was last edited on 6 December 2018, at 03:56.
Line 42: Line 42:
{{highlight|lang=text|code=
{{highlight|lang=text|code=
:set autoindent noexpandtab tabstop=4 shiftwidth=4
:set autoindent noexpandtab tabstop=4 shiftwidth=4
}}
=== Force Soft Tabs ===
The reverse of the above:
{{highlight|lang=text|code=
: set tabstop=4 softtabstop=0 expandtab shiftwidth=4 smarttab
}}
}}



Revision as of 03:56, 6 December 2018

Quick Overview

TODO: Write guide from onenote.

Tips

Execute Current File using Preset Key

To make vi execute a script that is being edited using a function key (in this case, F5), add the following to your .vimrc

" Mapping F5 to run hashbang scripts
" Will save, then run the interpreter.
au BufEnter * if match( getline(1) , '^\#!') == 0 |
\ execute("let b:interpreter = getline(1)[2:]") |
\endif

fun! CallInterpreter()
    if exists("b:interpreter")
         exec ("w")
         exec ("!".b:interpreter." %")
    endif
endfun

map <F5> :call CallInterpreter()<CR>

Toggle Line Numbers

To make vi toggle line numbers using a key (in this case, F4), add the following to your .vimrc

" Map F4 to toggle line numbers
map <F4> :set nonumber!<CR>


Multi-line Edit

1,33s/^/  /g

Vi Visual Bell Flash

Out of the box vi flashes to the point where I feel like I'll get a seizure. To turn it off:

:set noflash

Force Tabs

Force tabs instead of soft tabs with tab stops and width set to 4.

:set autoindent noexpandtab tabstop=4 shiftwidth=4

Force Soft Tabs

The reverse of the above:

: set tabstop=4 softtabstop=0 expandtab shiftwidth=4 smarttab