asciidoc вместо markdown

This commit is contained in:
2019-06-02 00:08:41 +03:00
parent 71dd5de667
commit 82ae133e81
89 changed files with 3514 additions and 3122 deletions

18
wiki/Vim/Vimdiff.adoc Normal file
View File

@ -0,0 +1,18 @@
= Vim: сравнение файлов
:category: Vim
:tags: Vim, команды Vim,
Команды режима `diff` для сравнения и слияния файлов:
[cols="1,2",options="header",]
|===
|Команда |Назначение
|`do` |Получить изменения из второго окна в текущее окно
|`dp` |Вставить изменения из текущего окна во второе окно
|`]c` |Перейти к следующему отличию
|`[c` |Перейти к предыдущему отличию
|`C-W` `C-W` |Переход между окнами
|===
http://vimcasts.org/episodes/fugitive-vim-resolving-merge-conflicts-with-vimdiff/[Видеоурок]
по трехпутевому слиянию.

View File

@ -1,19 +0,0 @@
---
title: "Vim: сравнение файлов"
category: Vim
tags: Vim, команды Vim,
summary:
...
Команды режима `diff` для сравнения и слияния файлов:
Команда | Назначение
-------------|------------
`do` | Получить изменения из второго окна в текущее окно
`dp` | Вставить изменения из текущего окна во второе окно
`]c` | Перейти к следующему отличию
`[c` | Перейти к предыдущему отличию
`C-W` `C-W` | Переход между окнами
[Видеоурок](http://vimcasts.org/episodes/fugitive-vim-resolving-merge-conflicts-with-vimdiff/)
по трехпутевому слиянию.

View File

@ -0,0 +1,21 @@
= Vim: замена выделенного блока
:category: Vim
:tags: Vim, команды Vim,
Замену блока, выделенного в режиме VISUAL, можно выполнить
последовательностью команд `y:%s/<ctrl-r>"/заменитель/g`.
[cols="1,3",options="header",]
|===
|Команда |Назначение
|`y` |Копирование в регистр "
|`&#58;` |Перейти в командный режим
|`%` |Применить ко всему буферу
|`s` |Замена
|`Сtrl-r` |Вставка из регистра
|`&quot;` |Имя регистра (будет предложено по умолчанию)
|`/` |Разделитель
|`заменитель` |Новый текст
|`/` |Разделитель
|`g` |Для всех вхождений в строке
|===

View File

@ -1,23 +0,0 @@
---
title: "Vim: замена выделенного блока"
category: Vim
tags: Vim, команды Vim,
summary:
...
Замену блока, выделенного в режиме VISUAL, можно выполнить
последовательностью команд `y:%s/<ctrl-r>"/заменитель/g`.
Команда | Назначение
---------------|-------------
`y` | Копирование в регистр &quot;
`&#58;` | Перейти в командный режим
`%` | Применить ко всему буферу
`s` | Замена
`Сtrl-r` | Вставка из регистра
`&quot;` | Имя регистра (будет предложено по умолчанию)
`/` | Разделитель
`заменитель` | Новый текст
`/` | Разделитель
`g` | Для всех вхождений в строке

View File

@ -1,39 +1,39 @@
---
title: "Vim: клавиши Leader и LocalLeader"
category: Vim
tags: Vim, команды Vim,
summary:
...
= Vim: клавиши Leader и LocalLeader
:category: Vim
:tags: Vim, команды Vim,
Клавиши `Leader` и `LocalLeader` представляют собой префиксы для команд.
Их текущие значения можно посмотреть командами
```vim
[source,vim]
----
:echo mapleader
:echo maplocalleader
```
----
Часто их значения переназначают в файле `$HOME/.vimrc`, например так
Часто их значения переназначают в файле `$HOME/.vim/vimrc`, например так
```vim
[source,vim]
----
let mapleader = "\<Space>"
let maplocalleader = ","
```
----
Новое значение команды генерируется с помощью текущих значений этих
переменных, таким образом последовательность команд
```vim
[source,vim]
----
let mapleader = ","
nnoremap <Leader>a :echo "Hey there ,"<CR>
let mapleader = "\<Space>"
nnoremap <Leader>a :echo "Hey there space"<CR>
```
----
приведёт к тому, что будут созданы две команды `,a` и `<Space>a`,
следовательно для получения единообразных команд следует помещать
переназначения в начало файла `$HOME/.vimrc`.
переназначения в начало файла `$HOME/.vim/vimrc`.
`LocalLeader` отличается от `Leader` тем, что действует только для
текущего буфера, поэтому обычно используется в плагинах, загружаемых
@ -42,7 +42,7 @@ nnoremap <Leader>a :echo "Hey there space"<CR>
Таймауты для ввода команд, использующих клавиши `Leader` и
`LocalLeader`, настраиваются командой
```vim
[source,vim]
----
set timeout timeoutlen=5000 ttimeoutlen=100
```
----

View File

@ -1,14 +1,12 @@
---
title: "Vim: клавиши PageUp и PageDown"
category: Vim
tags: Vim, команды Vim,
summary:
...
= Vim: клавиши PageUp и PageDown
:category: Vim
:tags: Vim, команды Vim,
Чтобы поведение клавиш `PageUp` и `PageDown` совпадало с более
привычным, можно добавить в `$HOME/.vimrc` следующий код:
привычным, можно добавить в `$HOME/.vim/vimrc` следующий код:
```vim
[source,vim]
----
" Более привычные PgUp / PgDown, когда курсор остаётся в той же строке, "
" а не переносится вверх / вниз экрана, как при стандартном PgUp / PgDown. "
" Поскольку по умолчанию прокрутка по C-U / C-D, при которой курсор остаётся
@ -18,5 +16,4 @@ nmap <PageUp> <C-U><C-U>
nmap <PageDown> <C-D><C-D>
imap <PageUp> <C-O><C-U><C-O><C-U>
imap <PageDown> <C-O><C-D><C-O><C-D>
```
----

View File

@ -1,15 +1,13 @@
---
title: "Vim: кодировка файла"
category: Vim
tags: Vim,
summary:
...
= Vim: кодировка файла
:category: Vim
:tags: Vim,
Для управления кодировкой файлов можно создать дополнительное меню,
позволяющее открыть файл в выбранной кодировке, проверить её
корректность и сохранить в нужном виде. Пример кода:
```vim
[source,vim]
----
" кодировка для чтения файла
set encoding=utf-8
" кодировка терминала
@ -29,5 +27,4 @@ menu Encoding.Open\ as\ UCS-2LE :e ++enc=ucs-2le<CR>
menu Encoding.Open\ as\ UTF-8 :e ++enc=utf-8<CR>
menu Encoding.Convert\ to\ UTF-8 :set fenc=utf-8<CR>
map <F12> :emenu Encoding.<Tab>
```
----

View File

@ -0,0 +1,25 @@
= Vim: комментирование кода
:category: Vim
:tags: Vim, команды Vim,
Отмена автоматического комментирования кода при вставке из буфера:
[source,vim]
----
autocmd FileType * setlocal formatoptions-=cro
----
Для управления комментированием можно использовать плагин
https://github.com/scrooloose/nerdcommenter[NerdCommenter]. Основные
команды:
[cols="1,2",options="header",]
|===
|Команда |Назначение
|`[n]<leader>cc` |комментировать блок
|`[n]<leader>cn` |комментировать с учётом вложенности
|`[n]<leader>cl` |символ комментария помещать в начало строки
|`[n]<leader>ci` |инвертирование комментариев
|`<leader>cA` |добавить комментарий в конец строки
|`[n]<leader>cu` |раскомментировать блок
|===

View File

@ -1,26 +0,0 @@
---
title: "Vim: комментирование кода"
category: Vim
tags: Vim, команды Vim,
summary:
...
Отмена автоматического комментирования кода при вставке из буфера:
```Vim
autocmd FileType * setlocal formatoptions-=cro
```
Для управления комментированием можно использовать плагин
[NerdCommenter](https://github.com/scrooloose/nerdcommenter).
Основные команды:
Команда | Назначение
----------------------|----------------------------
`[n]<leader\>cc` | комментировать блок
`[n]<leader\>cn` | комментировать с учётом вложенности
`[n]<leader\>cl` | символ комментария помещать в начало строки
`[n]<leader\>ci` | инвертирование комментариев
`<leader\>cA` | добавить комментарий в конец строки
`[n]<leader\>cu` | раскомментировать блок

View File

@ -1,28 +1,28 @@
---
title: "Vim: менеджер плагинов Plug"
category: Vim
tags: Vim, плагины Vim,
summary:
...
= Vim: менеджер плагинов Plug
:category: Vim
:tags: Vim, плагины Vim,
Автоматическое управление плагинами в Vim можно организовать
с помощью менеджера [Plug](https://github.com/junegunn/vim-plug),
установить который можно командой
Автоматическое управление плагинами в Vim можно организовать с помощью
менеджера https://github.com/junegunn/vim-plug[Plug], установить который
можно командой
```sh
[source,sh]
----
curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
```
----
Чтобы использовать Plug, нужно добавить в `$HOME/.vimrc`:
Чтобы использовать Plug, нужно добавить в `$HOME/.vim/vimrc`:
1. Строку `call plug#begin('~/.vim/plugged')`
2. Список строк, начинающихся с команды `Plug`, для загрузки плагинов
3. Закончить список командой `call plug#end()`
[arabic]
* Строку `call plug#begin('~/.vim/plugged')`
* Список строк, начинающихся с команды `Plug`, для загрузки плагинов
* Закончить список командой `call plug#end()`
Пример:
```vim
[source,vim]
----
" Обязательно использовать одиночные кавычки
call plug#begin('~/.vim/plugged')
@ -40,5 +40,4 @@ Plug 'tpope/vim-fireplace', { 'for': 'clojure' }
" Окончание списка плагинов
call plug#end()
```
----

View File

@ -1,15 +1,13 @@
---
title: "Vim: навигация по тексту с помощью easymotion"
category: Vim
tags: Vim, команды Vim,
summary:
...
= Vim: навигация по тексту с помощью easymotion
:category: Vim
:tags: Vim, команды Vim,
Плагин [easymotion](https://github.com/easymotion/vim-easymotion)
предоставляет функции для удобного перемещения по тексту.
Пример настройки:
Плагин https://github.com/easymotion/vim-easymotion[easymotion]
предоставляет функции для удобного перемещения по тексту. Пример
настройки:
```vim
[source,vim]
----
" Не включать команды по умолчанию
let g:EasyMotion_do_mapping = 0
@ -49,5 +47,4 @@ omap / <Plug>(easymotion-tn)
" different highlight method and have some other features )
map n <Plug>(easymotion-next)
map N <Plug>(easymotion-prev)
```
----

View File

@ -0,0 +1,14 @@
= Vim: навигация по буферам
:category: Vim
:tags: Vim, команды Vim,
[cols="1,2",options="header",]
|===
|Команда |Назначение
|`:bn` |следующий буфер
|`:bp` |предыдущий буфер
|`:ls` |список открытых буферов
|`:bd` |закрыть текущий буфер
|`:b имя_буфера` |переключиться на буфер
|`:bdа имя_буфера` |удалить буфер по имени
|===

View File

@ -1,16 +0,0 @@
---
title: "Vim: навигация по буферам"
category: Vim
tags: Vim, команды Vim,
summary:
...
Команда | Назначение
------------------|-----------------
`:bn` | следующий буфер
`:bp` | предыдущий буфер
`:ls` | список открытых буферов
`:bd` | закрыть текущий буфер
`:b имя_буфера` | переключиться на буфер
`:bdа имя_буфера` | удалить буфер по имени

View File

@ -1,14 +1,12 @@
---
title: "Vim: нумерация строк"
category: Vim
tags: Vim, команды Vim,
summary:
...
= Vim: нумерация строк
:category: Vim
:tags: Vim, команды Vim,
Для переключения режимов отображения слева столбца нумерации
строк можно добавить в `$HOME/.vimrc` следующий код:
Для переключения режимов отображения слева столбца нумерации строк можно
добавить в `$HOME/.vimrc` следующий код:
```vim
[source,vim]
----
" Нумерация строк включена
set number
" Нумерация строк абсолютная
@ -28,7 +26,7 @@ function! ChangeNumbering()
endfunc
map <LocalLeader># <Esc>:call ChangeNumbering()<CR>
```
----
В результате по команде `<LocalLeader>#` будет осуществляться
циклическое переключение между абсолютной, относительной нумерацией

View File

@ -1,14 +1,12 @@
---
title: "Vim: проверка орфографии"
category: Vim
tags: Vim, команды Vim, словарь, орфография,
summary:
...
= Vim: проверка орфографии
:category: Vim
:tags: Vim, команды Vim, словарь, орфография,
Код в `$HOME/.vimrc` для циклического переключения режимов проверки
Код в `$HOME/.vim/vimrc` для циклического переключения режимов проверки
орфографии: два языка, английский, русский и без проверки:
```Vim
[source,vim]
----
" По умолчанию проверка орфографии для русского и английского.
setlocal spell spelllang=ru,en
set spellsuggest=9
@ -35,5 +33,4 @@ map <C-F7> <Esc>:call ChangeSpellLang()<CR>
" выбор альтернатив
imap <F7> <Esc> z=<CR>i
map <F7> z=<CR>
```
----

View File

@ -0,0 +1,10 @@
= Vim: полезные ссылки
:category: Vim
:tags: Vim,
* http://vim.org[Vim]
* http://usevim.com/[Usevim]
* http://nvie.com/posts/how-i-boosted-my-vim/[How I boosted my Vim]
* https://sheerun.net/2014/03/21/how-to-boost-your-vim-productivity/[How
to boost your Vim productivity]
* https://vimawesome.com/[Vim Awesome]

View File

@ -1,12 +0,0 @@
---
title: "Vim: полезные ссылки"
category: Vim
tags: Vim,
summary:
...
* [Vim](http://vim.org)
* [Usevim](http://usevim.com/)
* [How I boosted my Vim](http://nvie.com/posts/how-i-boosted-my-vim/)
* [How to boost your Vim productivity](https://sheerun.net/2014/03/21/how-to-boost-your-vim-productivity/)
* [Vim Awesome](https://vimawesome.com/)

View File

@ -0,0 +1,19 @@
= Vim: управление окнами
:category: Vim
:tags: Vim, команды Vim,
[cols="1,2",options="header",]
|===
|Команда |Назначение
|`:split filename` |открыть в новом окне (горизонтальное разделение)
|`:vsplit filename` |открыть в новом окне (вертикальное разделение)
|`<C-W>` `<C-W>` |перейти к следующему окну
|`<C-W>` `q` |закрыть текущее окно
|`<C-W>` `o` |развернуть окно полностью
|`<C-W>` `pass:c[_]` |развернуть окно по высоте
|`<C-W>` `\|` |развернуть окно по ширине
|`<C-W>` `=` |выровнять размер окон
|`<C-W>` `+` |увеличить окно на 1 строку
|`<C-W>` `-` |уменьшить окно на 1 строку
|`<C-W>` `стрелки` |перемещение между окнами
|===

View File

@ -1,21 +0,0 @@
---
title: "Vim: управление окнами"
category: Vim
tags: Vim, команды Vim,
summary:
...
Команда | Назначение
--------------------|-------------------------
`:split filename` | открыть в новом окне (горизонтальное разделение)
`:vsplit filename` | открыть в новом окне (вертикальное разделение)
`<C-W>` `<C-W>` | перейти к следующему окну
`<C-W>` `q` | закрыть текущее окно
`<C-W>` `o` | развернуть окно полностью
`<C-W>` `_` | развернуть окно по высоте
`<C-W>` `|` | развернуть окно по ширине
`<C-W>` `=` | выровнять размер окон
`<C-W>` `+` | увеличить окно на 1 строку
`<C-W>` `-` | уменьшить окно на 1 строку
`<C-W>` `стрелки` | перемещение между окнами