Vim/zh: Difference between revisions

Ardenet (talk | contribs)
Created page with "Vim"
Tags: Mobile edit Mobile web edit
 
Ardenet (talk | contribs)
Created page with "==== 应用自定义 vimrc 配置 ===="
(14 intermediate revisions by the same user not shown)
Line 4: Line 4:
</div>   
</div>   


<div lang="en" dir="ltr" class="mw-content-ltr">
<span id="Installation"></span>
== Installation ==
== 安装 ==
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
<span id="Basic_Install"></span>
=== Basic Install ===
=== 基础安装 ===
</div>
<syntaxhighlight lang="nix>
<syntaxhighlight lang="nix>
   programs.vim.enable = true;
   programs.vim.enable = true;
</syntaxhighlight>
</syntaxhighlight>


<div lang="en" dir="ltr" class="mw-content-ltr">
或者
or
</div>


<syntaxhighlight lang="nix">
<syntaxhighlight lang="nix">
Line 26: Line 22:
</syntaxhighlight>
</syntaxhighlight>


<div lang="en" dir="ltr" class="mw-content-ltr">
或者
or
</div>


<syntaxhighlight lang="nix">
<syntaxhighlight lang="nix">
Line 34: Line 28:
</syntaxhighlight>
</syntaxhighlight>


<div lang="en" dir="ltr" class="mw-content-ltr">
<span id="Using_Home_Manager"></span>
=== Using Home Manager ===
=== 使用 Home Manager ===
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
使用 [[Special:MyLanguage/Home Manager|Home Manager]] 可以轻松设置 Vim。这是一个简单的例子:
Vim can easily be set up using [[Special:MyLanguage/Home Manager|Home Manager]]. Here's a minimal example:
</div>


<syntaxhighlight lang="nix>
<syntaxhighlight lang="nix>
Line 57: Line 48:
</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 files.  Here' an example for [[neovim]] and French:
</div>


<syntaxHighlight lang="nix">
<syntaxHighlight lang="nix">
Line 95: Line 83:
</syntaxHighlight>
</syntaxHighlight>


<div lang="en" dir="ltr" class="mw-content-ltr">
<span id="NeoVim_with_Coc_for_Python"></span>
==== NeoVim with Coc for Python ====
==== NeoVim 配置带有 Python 支持的 Coc ====
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
<div lang="en" dir="ltr" class="mw-content-ltr">
Line 104: Line 91:
</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">
如果您想要一个 vim/nvim 的系统范围“基本”配置,这里有两个示例:
If you want a system wide "baseline" configuration for vim/nvim here are two examples:.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
<div lang="en" dir="ltr" class="mw-content-ltr">
Line 124: Line 108:
     package = (pkgs.vim-full.override {  }).customize{
     package = (pkgs.vim-full.override {  }).customize{
       name = "vim";
       name = "vim";
       <div lang="en" dir="ltr" class="mw-content-ltr">
       # 安装插件,例如用于 nix 文件的语法高亮
# Install plugins for example for syntax highlighting of nix files
</div>
       vimrcConfig.packages.myplugins = with pkgs.vimPlugins; {
       vimrcConfig.packages.myplugins = with pkgs.vimPlugins; {
         start = [ vim-nix vim-lastplace ];
         start = [ vim-nix vim-lastplace ];
Line 132: Line 114:
       };
       };
       vimrcConfig.customRC = ''
       vimrcConfig.customRC = ''
         <div lang="en" dir="ltr" class="mw-content-ltr">
         " 你的自定义 vimrc
" your custom vimrc
</div>
         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 156: Line 134:
     configure = {
     configure = {
       customRC = ''
       customRC = ''
         <div lang="en" dir="ltr" class="mw-content-ltr">
         " 你的自定义 vimrc
" your custom vimrc
</div>
         set nocompatible
         set nocompatible
         set backspace=indent,eol,start
         set backspace=indent,eol,start
Line 172: Line 148:
</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 185: Line 159:
</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 193: Line 166:
</div>
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Vim 插件可以通过 nix 安装。您可以不使用 vim 插件管理器,直接在 <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 201: Line 172:
</div>
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
<span id="Customizations"></span>
=== Customizations ===
=== 自定义 ===
</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 218: Line 184:
     myVim = vim-full.customize {
     myVim = vim-full.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 242: Line 202:
</syntaxhighlight>
</syntaxhighlight>


<div lang="en" dir="ltr" class="mw-content-ltr">
之后,您可以安装特殊移植的 `myVim` `myNeovim` 包。
After that you can install your special grafted `myVim` or `myNeovim` packages.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
<span id="Examples"></span>
=== Examples ===
=== 示例 ===
</div>


<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">