termux-packages/packages/vim/vimrc
Shayne Holmes 5f630bd495 vim: Fix scroll mappings
The included `vimrc` file sets mappings for <ScrollWheelUp> and
<ScrollWheelDown>, so that scrolling is smooth. Unfortunately,
'compatible' is set by default [0], so the `<>` notation used for those
mappings isn't enabled. Instead of the key `<ScrollWheelUp>` being
mapped, the mapping is actually from the typed string "<ScrollWheelUp>".

[0]: `:help compatible-default` explains that vim will turn the
'compatible' option off when "a user vimrc is found", or under various
other conditions (note that the system-wide vimrc doesn't count [1]),
but even in the case where a user vimrc exists, this system-wide vimrc
is executed before that happens.

[1]: From `:help compatible-default`:

    Note that this does NOT happen when a system-wide vimrc file was
    found.
2019-04-09 15:18:12 -07:00

109 lines
2.4 KiB
VimL

" Ensure that <> notation works for the mappings that follow
set nocompatible
" Scroll only one line for mouse wheel events to get smooth scrolling on touch screens
map <ScrollWheelUp> <C-Y>
imap <ScrollWheelUp> <C-X><C-Y>
map <ScrollWheelDown> <C-E>
imap <ScrollWheelDown> <C-X><C-E>
" As of version 8, vim enables the mouse by default - but only if no ~/.vimrc
" is found. Enable that unconditionally for Termux as it's useful with touch:
set mouse=a
" sensible.vim - Defaults everyone can agree on
" Maintainer: Tim Pope <http://tpo.pe/>
" Version: 1.2
if exists('g:loaded_sensible') || &compatible
finish
else
let g:loaded_sensible = 'yes'
endif
if has('autocmd')
filetype plugin indent on
endif
if has('syntax') && !exists('g:syntax_on')
syntax enable
endif
" Use :help 'option' to see the documentation for the given option.
set autoindent
set backspace=indent,eol,start
set complete-=i
set smarttab
set nrformats-=octal
if !has('nvim') && &ttimeoutlen == -1
set ttimeout
set ttimeoutlen=100
endif
set incsearch
" Use <C-L> to clear the highlighting of :set hlsearch.
if maparg('<C-L>', 'n') ==# ''
nnoremap <silent> <C-L> :nohlsearch<C-R>=has('diff')?'<Bar>diffupdate':''<CR><CR><C-L>
endif
set laststatus=2
set ruler
set wildmenu
if !&scrolloff
set scrolloff=1
endif
if !&sidescrolloff
set sidescrolloff=5
endif
set display+=lastline
if &encoding ==# 'latin1' && has('gui_running')
set encoding=utf-8
endif
if &listchars ==# 'eol:$'
set listchars=tab:>\ ,trail:-,extends:>,precedes:<,nbsp:+
endif
if v:version > 703 || v:version == 703 && has("patch541")
set formatoptions+=j " Delete comment character when joining commented lines
endif
if has('path_extra')
setglobal tags-=./tags tags-=./tags; tags^=./tags;
endif
if &shell =~# 'fish$' && (v:version < 704 || v:version == 704 && !has('patch276'))
set shell=/usr/bin/env\ bash
endif
set autoread
if &history < 1000
set history=1000
endif
if &tabpagemax < 50
set tabpagemax=50
endif
if !empty(&viminfo)
set viminfo^=!
endif
set sessionoptions-=options
" Allow color schemes to do bright colors without forcing bold.
if &t_Co == 8 && $TERM !~# '^linux\|^Eterm'
set t_Co=16
endif
" Load matchit.vim, but only if the user hasn't installed a newer version.
if !exists('g:loaded_matchit') && findfile('plugin/matchit.vim', &rtp) ==# ''
runtime! macros/matchit.vim
endif
inoremap <C-U> <C-G>u<C-U>
" vim:set ft=vim et sw=2: