LINUX.ORG.RU

Избранные сообщения SomeV

настройка vim

Форум — General

Решил я намедни, недавеча как вчера, настроить vim:

" отключаем режим совместимости с vi
set nocompatible

" разрешить копирование из vim в системный буфер обмена
set clipboard=unnamedplus

" кодировка по-умолчанию
set encoding=utf-8
set termencoding=utf-8
set fileencoding=utf-8
set fileencodings=utf8,cp1251

" включить поддержку 256 цветов
set t_Co=256

" навигация по словам: какие символы входят в состав слова
set iskeyword=@,48-57,_,192-255

" подсветка синтаксиса
syntax on

" включить определение синтаксиса и отступов по типу файла с применением плагинов
filetype indent plugin on

" отступы

" автоматически определять отступы
set autoindent
" количество пробелов, добавляемых с помощью команд << и >>
set shiftwidth=2
" количество пробелов, которыми отображается символ табуляции
set tabstop=2
" при нажатии tab в начале строки, добавляет отступ, равный shiftwith
set smarttab
" в режиме вставки заменяет табы на пробелы
set expandtab

" сворачивание
set foldmethod=indent
set foldlevel=1
set foldclose=all

" подсвечивать найденное
set hlsearch
" поиск по мере ввода
set incsearch
" игнорировать регистр при поиске, если в запросе нет заглавных
set ignorecase
set smartcase

" удалять отступы по нажатию на backspace
set backspace=indent,eol,start

" подсвечивать текущую строку
set cursorline
" количество строк, которое всегда отображается до и после курсора
" прокрутка от середины
"set scrolloff=999
set scrolloff=1

" при переходе на новую строку, принудительно не перемещать курсор в ее начало
set nostartofline

" показывать диалог при наличии несохраненных изменений
set confirm

" разрешить переключение между буферами при наличии несохраненных изменений
set hidden

" автоматически перечитывать файл при его изменении
set autoread

" автоматически менять рабочий каталог
set autochdir

" показывать номера строк
set number
" показывать номера строк относительно текущей
set relativenumber

" показывать парные скобки
set showmatch

" переносить длинный текст на новую строку
set wrap

" длина строки
set textwidth=80

" не разрывать слова при переносе
set linebreak

" показывать имя буфера в заголовке
set title

" показывать положение курсора
set ruler

" показывать незавершенные команды
set showcmd

" показывать дополнительную информацию в строке состояния
set wildmenu
set wildmode=longest:list,full

" мерцание экрана вместо издавания звука биппера при ошибках
set visualbell

" не сигнализировать об ошибках
set noerrorbells

" отображение специальных символов
set showbreak=↪
set list listchars=tab:→\ ,nbsp:␣,trail:•,extends:⟩,precedes:⟨

" всегда показывать строку состояния
set laststatus=2

" строка состояния
set statusline=%<%f%h%m%r%=%b\ 0x%B\ \ %l,%c%V\ %P

" отключить создание backup, swap и undo файлов
"set nobackup
"set noswapfile
"set noundofile

" задаем альтернативные пути для backup, swap и undo файлов
" при наличии «//» в конце пути vim будет сохранять файлы под полным именем, заменяя «/» в имени на «%»
set backupdir=.backup/,~/.vim/backup//,/tmp//
set directory=.swp/,~/.vim/swp//,/tmp//
set undodir=.undo/,~/.vim/undo//,/tmp//

" размер истории команд и поиска
set history=10000

" максимальное количество изменений, которые могут быть отменены
set undolevels=10000

" мышь
if has('mouse')
  set mouse=a
endif

" клавиатура

set notimeout          " don't timeout on mappings
set ttimeout           " do timeout on terminal key codes
set timeoutlen=100     " timeout after 100 msec

" leader key
let mapleader="\<Space>"

" быстрая запись
nmap <leader>w :w!<cr>

" :W для записи файлов, требующих повышенных привелегий
command W w !sudo tee % > /dev/null

" перемещение между окнами
nmap <leader>h <c-w>h
nmap <leader>l <c-w>l
nmap <leader>k <c-w>k
nmap <leader>j <c-w>j

" разбиение экрана
nmap <leader>s :split<cr>
nmap <leader>- :split<cr>
nmap <leader>v :vsplit<cr>
nmap <leader>/ :vsplit<cr>

" буферы
nmap <tab> :bn<cr> " следующий
nmap <S-tab> :bp<cr> " предыдущий

" закрыть текущий буфер
nmap <leader>x :close<cr>

" вкладки
nmap <leader>t :tabnew<cr>
"nmap ? :tabclose<cr>
"nmap ? :tabmove<cr>
nmap <leader>] :tabnext<cr>
nmap <leader>[ :tabprevious<cr>

" отступы в визуальном режиме
vmap < <gv
vmap > >gv

И возник у меня такой вопрос: а как лучше всего кейбиндинги настроить? Так же я не уверен, что все настройки правильно прописал. Поделитесь своими бнастройками, позазя

 

tz4678
()

Помогу новичкам в освоении системы Linux

Форум — General

Так как я давно в Linux и когда у меня что-нибудь не удаётся, я всегда нахожу причину, решил помочь разбираться в Linux новичкам. А также предложил заняться тем же знакомым в Jabber (XMPP). Минимальный гуглинг перед задаванием вопроса строго приветствуется.

Наша комната чата (Jabber-конференция), доступна по адресу linux-support@conference.sigil.tk. Кто заходит в Jabber-конференцию первый раз, поясняю: то, что до символа @ вводить в поле Room, а то что после - в Server. Вебгейт для конференции: http://sigil.tk/jabber/.

С пользователями различных дистрибутивов Linux, имеющими длительный опыт работы в них, можно связаться по Jabber:

Debian/Ubuntu, Arch (Linux):
z00ke, crustycrab@izhnet.org / crustycrab@jabber.ru,
derlafff, derlafff@qip.ru - установка системы с помощью deboostrap, настройка multitouch,
Spirit_of_Stallman, root_master@jabber.ru.

Debian/Ubuntu, Gentoo (Linux):
Chaser_Andrey, chaser_andrey at jabber.ru,
leg0las, leg0las@jabber.com.ua.

Arch, Debian, Ubuntu (Linux) Server - post-factum, oleksandr@natalenko.name.

Debian Linux и LFS - TERRANZ, terranz@terranz.ath.cx.

Debian/Ubuntu (Linux):
Licwin, licwin@jabbim.com,
Darth_Revan, sor.alexei@hotbox.ru,
GNU-Ubuntu1204LTS, Ubuntu9.10@sibnsk.net.

openSUSE, Debian, Gentoo, Mandriva/Mageia/PClinuxOS (Linux) - я, Zenitur@jabber.ru.

Fedora, Ubuntu (Linux): ArtKun, artkun@guitarplayer.ru.

Fedora Linux:
Jayrome, jayrome@jabber.ru,
tekk, tekk@jabber.ru.

Red Hat Enterprise Virtualization: Канал #rhev IRC-сети FreeNode. По вопросам KVM, qemu, RHEV/oVirt и все что вокруг (сети, железо, СХД, планирование, миграция...) поможет dyasny.

Gentoo Linux:
geladil, geladil@sigil.tk,
Pinkbyte, мыло&jabber: admin собака pinkbyte.ru,
Nensha, Mi@nengraphy.com - Sabayon, Gentoo,
tiandrey, tiacorpo@gmail.com (e-mail и Jabber),
Tanger, tanger@jabber.mipt.ru - Gentoo, awesome.

Slackware, Arch (Linux): mopsene, mopsene@jabber.ru.

Arch, Lunar (Linux): neocrust, Jabber/Mail: neocrust@gmail.com.

Arch Linux:
bsdfun, dreamsoul@jabber.ru,
pztrn, pztrn@pztrn.ru,
DoctorSinus, doctorsinus@jabber.ru.

ВНИМАНИЕ: Этот топик не предназначен для задавания технических или иных вопросов и ответов на них, а также просьб о помощи. Впредь подобные сообщения будут удаляться.

По поводу пополнения данного списка - обращаться к модераторам

Перемещено DoctorSinus из talks

 ,

ZenitharChampion
()