Vim/ru: Difference between revisions

Unabomberlive (talk | contribs)
Created page with "или"
Unabomberlive (talk | contribs)
Created page with "Иногда вы не хотите изменять плагины, находящиес в upstream, для этого вы можете использовать <code>vimUtils.buildVimPlugin</code> для создания своего собственного плагина:"
 
(26 intermediate revisions by the same user not shown)
Line 5: Line 5:
== Установка ==
== Установка ==


<div lang="en" dir="ltr" class="mw-content-ltr">
<span id="Basic_Install"></span>
=== Basic Install ===
=== Начальная Установка ===
</div>


На unstable:
На unstable ветке:


<syntaxhighlight lang="nix>
<syntaxhighlight lang="nix>
Line 24: Line 23:
</syntaxhighlight>
</syntaxhighlight>


<div lang="en" dir="ltr" class="mw-content-ltr">
На 24.05 или старше:
On 24.05 or older:
</div>


<syntaxhighlight lang="nix>
<syntaxhighlight lang="nix>
Line 60: Line 57:
</div>
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
<span id="Vim_Spell_Files"></span>
=== Vim Spell Files ===
=== Файлы Правописания Vim ===
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Вы можете настроить на установку файлов правописания в каталог пользователя через home-manager, упаковывая отдельные файлы правописанияВот пример для neovim и французского языка:
You can configure home-manager to install spelling files into your user directory by packaging individual spell filesHere' an example for neovim and French:
</div>


<syntaxHighlight lang="nix">
<syntaxHighlight lang="nix">
Line 106: Line 100:
</div>
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
<span id="System_wide_vim/nvim_configuration"></span>
== System wide vim/nvim configuration ==
== Глобальная настройка vim/nvim ==
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
<div lang="en" dir="ltr" class="mw-content-ltr">
Line 114: Line 107:
</div>
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
On unstable ветке:
On unstable:
</div>


<syntaxHighlight lang="nix">
<syntaxHighlight lang="nix">
Line 139: Line 130:
         set nocompatible
         set nocompatible
         set backspace=indent,eol,start
         set backspace=indent,eol,start
         <div lang="en" dir="ltr" class="mw-content-ltr">
         " Включить подсветку синтаксиса по умолчанию
" Turn on syntax highlighting by default
</div>
         syntax on
         syntax on
         " ...
         " ...
Line 150: Line 139:
</syntaxHighlight>
</syntaxHighlight>


<div lang="en" dir="ltr" class="mw-content-ltr">
На 24.05 или старше:
On 24.05 or older:
</div>


<syntaxHighlight lang="nix">
<syntaxHighlight lang="nix">
Line 174: Line 161:
         set nocompatible
         set nocompatible
         set backspace=indent,eol,start
         set backspace=indent,eol,start
         <div lang="en" dir="ltr" class="mw-content-ltr">
         " Включить подсветку синтаксиса по умолчанию
" Turn on syntax highlighting by default
</div>
         syntax on
         syntax on
         " ...
         " ...
Line 210: Line 195:
</syntaxHighlight>
</syntaxHighlight>


<div lang="en" dir="ltr" class="mw-content-ltr">
импортируйте их в свой <code>configuration.nix</code> и
import these in your <code>configuration.nix</code> and
</div>
<syntaxHighlight lang="nix">
<syntaxHighlight lang="nix">
{     
{     
Line 223: Line 206:
</syntaxHighlight>
</syntaxHighlight>


<div lang="en" dir="ltr" class="mw-content-ltr">
<span id="Custom_setup_without_using_Home_Manager"></span>
== Custom setup without using Home Manager ==
== Пользовательская настройка без использования Home Manager ==
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
<div lang="en" dir="ltr" class="mw-content-ltr">
Line 231: Line 213:
</div>
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Плагины Vim могут быть установлены с помощью Nix. Вы можете не использовать менеджеры плагинов и сделать все самостоятельно в <code>.nixpkgs/config</code>.
Vim plugins can be installed with the help of nix. You can omit using vim plugin managers and do everything in your <code>.nixpkgs/config</code>.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
<div lang="en" dir="ltr" class="mw-content-ltr">
Line 243: Line 223:
</div>
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
И в vim, и в neovim можно дополнительно включенить ваши любимые плагины и дополнительные библиотеки. Чтобы получить список всех доступных плагинов vim, выполните команду <code>nix search nixpkgs#vimPlugins</code>.
Both vim and neovim can be further configured to include your favorite plugins and additional libraries. To list all available vim plugins, run <code>nix search nixpkgs#vimPlugins</code>.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Добавьте следующий код в ваш <code>~/.nixpkgs/config.nix</code>
Add the following code to your <code>~/.nixpkgs/config.nix</code>:
</div>


<syntaxHighlight lang="nix">
<syntaxHighlight lang="nix">
Line 256: Line 232:
     myVim = vim_configurable.customize {
     myVim = vim_configurable.customize {
       name = "vim-with-plugins";
       name = "vim-with-plugins";
       <div lang="en" dir="ltr" class="mw-content-ltr">
       # добавьте сюда код из секции с примером
# add here code from the example section
</div>
     };
     };
     myNeovim = neovim.override {
     myNeovim = neovim.override {
       configure = {
       configure = {
         customRC = ''
         customRC = ''
           <div lang="en" dir="ltr" class="mw-content-ltr">
           # здесь должна находится ваша пользовательская конфигурация!
# here your custom configuration goes!
</div>
         '';
         '';
         packages.myVimPackage = with pkgs.vimPlugins; {
         packages.myVimPackage = with pkgs.vimPlugins; {
           <div lang="en" dir="ltr" class="mw-content-ltr">
           # смотрите примеры ниже чтобы узнать как использовать пользовательские пакеты
# see examples below how to use custom packages
</div>
           start = [ ];
           start = [ ];
           opt = [ ];
           opt = [ ];
Line 287: Line 257:
=== Примеры ===
=== Примеры ===


<div lang="en" dir="ltr" class="mw-content-ltr">
<span id="Apply_custom_vimrc_configuration"></span>
==== Apply custom vimrc configuration ====
==== Добавить пользовательские настройка в вашу конфигурацию vimrc ====
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
<div lang="en" dir="ltr" class="mw-content-ltr">
Line 298: Line 267:
vim_configurable.customize {
vim_configurable.customize {
   name = "vim-with-plugins";
   name = "vim-with-plugins";
   <div lang="en" dir="ltr" class="mw-content-ltr">
   # добавьте пользовательские строки в .vimrc, например, такие:
# add custom .vimrc lines like this:
</div>
   vimrcConfig.customRC = ''
   vimrcConfig.customRC = ''
     set hidden
     set hidden
Line 365: Line 332:
</div>
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
* Сначала выполните <code>./update.py</code>.
* First run <code>./update.py</code>.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
<div lang="en" dir="ltr" class="mw-content-ltr">
Line 377: Line 342:
</div>
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
* Запустите <code>./update.py</code> еще раз, чтобы сгенерировать nix-выражение плагина.
* Run <code>./update.py</code> once again to generate the plugin's nix expression.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
<div lang="en" dir="ltr" class="mw-content-ltr">
Line 399: Line 362:
=== Добавьте новый пользовательский плагин в пользовательские пакеты ===
=== Добавьте новый пользовательский плагин в пользовательские пакеты ===


<div lang="en" dir="ltr" class="mw-content-ltr">
Иногда вы не хотите изменять плагины, находящиес в upstream, для этого вы можете использовать <code>vimUtils.buildVimPlugin</code> для создания своего собственного плагина:
Sometimes you do not want to change upstream plugins, for this you can use  <code>vimUtils.buildVimPlugin</code> to create your own:
</div>


<syntaxHighlight lang="nix">
<syntaxHighlight lang="nix">
Line 482: Line 443:


<span id="Vim_as_a_Python_IDE"></span>
<span id="Vim_as_a_Python_IDE"></span>
=== Vim как Python IDE ===
=== Vim в качестве Python IDE ===


Следующий фрагмент создаст полнофункциональную IDE для python.
Следующий фрагмент создаст полнофункциональную IDE для python.
Line 554: Line 515:
== Поддержка Python 3 для Vim ==
== Поддержка Python 3 для Vim ==


<div lang="en" dir="ltr" class="mw-content-ltr">
Если вы определили конфигурацию vim в файле `./my_vim.nix`, вы можете установить vim с поддержкой python3 вместо python2, переопределив версию python, как показано ниже:
If you have defined your vim configuration in a `./my_vim.nix` file you can install vim with the python 3 support instead of python2 by overriding the python version like the following:
</div>


<syntaxHighlight  lang="nix">
<syntaxHighlight  lang="nix">