Первая версия vimrc
commit
1f100f2166
|
|
@ -0,0 +1,36 @@
|
||||||
|
VIMRC для локальной работы
|
||||||
|
==========================
|
||||||
|
|
||||||
|
Данная конфигурация vim достаточно минимальна и использует только сторонюю тему [iceberg](https://github.com/cocopon/iceberg.vim/).
|
||||||
|
|
||||||
|
|
||||||
|
Установка
|
||||||
|
---------
|
||||||
|
|
||||||
|
1. Делаем бэкап текущей версии
|
||||||
|
|
||||||
|
```shell
|
||||||
|
cp ~/.vimrc ~/.vimrc_bak
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Загружаем файл
|
||||||
|
|
||||||
|
```shell
|
||||||
|
curl https://code.geekfrom.ru/i/vimrc/raw/branch/master/vimrc > ~/.vimrc
|
||||||
|
```
|
||||||
|
|
||||||
|
или ставим через git
|
||||||
|
|
||||||
|
```shell
|
||||||
|
git clone https://code.geekfrom.ru/i/vimrc.git
|
||||||
|
ln -s vimrc/vimrc ~/.vimrc
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
Возможности
|
||||||
|
-----------
|
||||||
|
|
||||||
|
- `*` и `#` работают и в visual mode тоже. `Ctrl+l` выключает подсветку.
|
||||||
|
- более удобная подсветка при поиске
|
||||||
|
- в пути `%%` разворачивается в полный путь до текущего файла
|
||||||
|
- используется системный буфер.
|
||||||
|
|
@ -0,0 +1,86 @@
|
||||||
|
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
" File: vimrc
|
||||||
|
" Maintainer: Andrew Nechaev <i@geekfrom.ru>
|
||||||
|
" Version: 0.0.1
|
||||||
|
" Created: 10th May 2022
|
||||||
|
" Modified: 2022-05-11 10:25+0400
|
||||||
|
" License: MIT
|
||||||
|
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
|
set nocompatible " Отключаем совместимость с vi
|
||||||
|
syntax enable " Включаем подсветку синтаксиса
|
||||||
|
|
||||||
|
filetype plugin on " Включаем поддержку расширений
|
||||||
|
|
||||||
|
set number relativenumber " Включаем релятивную нумерацию строк
|
||||||
|
|
||||||
|
set tabstop=4 softtabstop=4 shiftwidth=4 expandtab " Табы и пробелы
|
||||||
|
set list
|
||||||
|
set lcs=tab:>-,eol:<,nbsp:% " Подсвечиваем табы и переносы строк
|
||||||
|
set smartindent " Добавляем умный отступ
|
||||||
|
set autoindent " Избавляемся он непонятного поведения при вставки из буфера
|
||||||
|
|
||||||
|
set backspace=indent,eol,start " Делаем возможность по забою удалять нормально
|
||||||
|
|
||||||
|
set wildmenu " Добавляем меню в автодополнение
|
||||||
|
set wildmode=list,full
|
||||||
|
|
||||||
|
set history=200 " Увеличиваем количество запоминаемых команд с 20 до 200
|
||||||
|
set clipboard^=unnamed,unnamedplus " Копируем в нормальный буфер
|
||||||
|
set hidden " Разрешим переключатся между буферами с несохраненными данными
|
||||||
|
|
||||||
|
set splitbelow " Открывать сплит снизу
|
||||||
|
set splitright " Открывать сплит справа
|
||||||
|
set scrolloff=5 " Прокручиваем окно, когда осталось меньше 5 строк
|
||||||
|
|
||||||
|
" Если в пути написать %% то автоматически подставится полный путь до
|
||||||
|
" директории, в которой лежит файл в текущем буфере
|
||||||
|
cnoremap <expr> %% getcmdtype() == ':' ? expand('%:h').'/' : '%%'
|
||||||
|
|
||||||
|
" Бинд Ctrl-l на временное выключение подстветки до следующего поиска
|
||||||
|
nnoremap <silent> <C-l> :<C-u>nohlsearch<CR><C-l>
|
||||||
|
set hls
|
||||||
|
|
||||||
|
" подствечиваем поиск сразу же
|
||||||
|
set incsearch
|
||||||
|
|
||||||
|
" makes * and # work on visual mode too.
|
||||||
|
function! s:VSetSearch(cmdtype)
|
||||||
|
let temp = @s
|
||||||
|
norm! gv"sy
|
||||||
|
let @/ = '\V' . substitute(escape(@s, a:cmdtype.'\'), '\n', '\\n', 'g')
|
||||||
|
let @s = temp
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
xnoremap * :<C-u>call <SID>VSetSearch('/')<CR>/<C-R>=@/<CR><CR>
|
||||||
|
xnoremap # :<C-u>call <SID>VSetSearch('?')<CR>?<C-R>=@/<CR><CR>
|
||||||
|
|
||||||
|
" улучшаем переключение между буферами и табами через []{}
|
||||||
|
nnoremap <silent> [b :bprevious<CR>
|
||||||
|
nnoremap <silent> ]b :bnext<CR>
|
||||||
|
nnoremap <silent> [B :bfirst<CR>
|
||||||
|
nnoremap <silent> ]B :blast<CR>
|
||||||
|
nnoremap <silent> [t :tabprevious<CR>
|
||||||
|
nnoremap <silent> ]t :tabnext<CR>
|
||||||
|
nnoremap <silent> [T :tabfirst<CR>
|
||||||
|
nnoremap <silent> ]T :tablast<CR>
|
||||||
|
|
||||||
|
" Внешний вид
|
||||||
|
set background=dark
|
||||||
|
"colorscheme iceberg
|
||||||
|
set ruler
|
||||||
|
|
||||||
|
" Настройка статусбара
|
||||||
|
set statusline=
|
||||||
|
set statusline+=\ %F
|
||||||
|
set statusline+=%m\
|
||||||
|
set statusline+=%=
|
||||||
|
set statusline+=%#CursorColumn#
|
||||||
|
set statusline+=\ %Y
|
||||||
|
set statusline+=\〈\ %{&fileformat}
|
||||||
|
set statusline+=\ 〈\ %{&fileencoding?&fileencoding:&encoding}
|
||||||
|
set statusline+=\ 〈\ %p%%
|
||||||
|
set statusline+=\ 〈\ %l:%c
|
||||||
|
set statusline+=\
|
||||||
|
|
||||||
|
set laststatus=2 " Всегда показываем статусбар
|
||||||
Loading…
Reference in New Issue