Neovim/ru: Difference between revisions
Created page with "# Пример Плагина: nvim-tree-lua" |
Created page with "== Решение проблем ==" |
||
(15 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
<languages/> | <languages/> | ||
<div lang="en" dir="ltr" class="mw-content-ltr"> | <div lang="en" dir="ltr" class="mw-content-ltr"> | ||
[https://neovim.io/ Neovim] is a highly extensible and open source text editor that aims to improve upon and modernize the popular [[Vim]] editor. It's designed to be a drop-in replacement for Vim, maintaining compatibility with most Vim plugins and configurations while offering additional features and improvements. Neovim focuses on extensibility, usability, and performance. | [https://neovim.io/ Neovim]<ref>Neovim Team, "Home - Neovim", Neovim Official Website, N/A. https://neovim.io/</ref> is a highly extensible and open source text editor that aims to improve upon and modernize the popular [[Vim]]<ref>NixOS Wiki, Vim. https://wiki.nixos.org/wiki/Vim</ref> editor. It's designed to be a drop-in replacement for Vim, maintaining compatibility with most Vim plugins and configurations while offering additional features and improvements. Neovim focuses on extensibility, usability, and performance. | ||
</div> | </div> | ||
Line 25: | Line 25: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
После изменения конфигурации примените изменения, выполнив: | |||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
Line 33: | Line 31: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
< | <span id="Using_Home_Configuration"></span> | ||
==== | ==== Используя Home-Manager ==== | ||
<syntaxhighlight lang="text"> | <syntaxhighlight lang="text"> | ||
Line 43: | Line 40: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
После обновления конфигурации примените изменения, выполнив: | |||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
Line 58: | Line 53: | ||
<syntaxhighlight lang="nix"> | <syntaxhighlight lang="nix"> | ||
# Глобально | |||
# | |||
programs.neovim = { | programs.neovim = { | ||
enable = true; | enable = true; | ||
Line 66: | Line 59: | ||
}; | }; | ||
# Для одного пользователя | |||
# | |||
programs.neovim = { | programs.neovim = { | ||
enable = true; | enable = true; | ||
Line 81: | Line 72: | ||
<syntaxhighlight lang="nix"> | <syntaxhighlight lang="nix"> | ||
# Глобально | |||
# | |||
programs.neovim = { | programs.neovim = { | ||
enable = true; | enable = true; | ||
Line 105: | Line 94: | ||
}; | }; | ||
# Для одного пользователя | |||
# | # Вам нужно добавить строку ниже, чтобы установить его в качестве редактора по умолчанию: | ||
# | |||
environment.variables.EDITOR = "nvim"; | environment.variables.EDITOR = "nvim"; | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Line 115: | Line 102: | ||
== Советы и рекомендации == | == Советы и рекомендации == | ||
< | <span id="Location_of_Options"></span> | ||
==== | ==== Расположение Опций ==== | ||
<div lang="en" dir="ltr" class="mw-content-ltr"> | <div lang="en" dir="ltr" class="mw-content-ltr"> | ||
The home manager options are defined in the following [https://nix-community.github.io/home-manager/options.xhtml#opt-programs.neovim.enable Home Manager Options Manual]. | The home manager options are defined in the following [https://nix-community.github.io/home-manager/options.xhtml#opt-programs.neovim.enable Home Manager Options Manual]<ref>Nix Community, "Home Manager Option Search", Nix Community GitHub Pages, N/A. https://nix-community.github.io/home-manager/options.xhtml#opt-programs.neovim.enable</ref>. | ||
</div> | </div> | ||
<div lang="en" dir="ltr" class="mw-content-ltr"> | <div lang="en" dir="ltr" class="mw-content-ltr"> | ||
The global options are listed on [https://mynixos.com/search?q=nixpkgs%2Foption%2Fprograms.neovim MyNixOS]. | The global options are listed on [https://mynixos.com/search?q=nixpkgs%2Foption%2Fprograms.neovim MyNixOS]<ref>MyNixOS Team, "Search: nixpkgs/option/programs.neovim", MyNixOS, N/A. https://mynixos.com/search?q=nixpkgs%2Foption%2Fprograms.neovim</ref>. | ||
</div> | </div> | ||
< | <span id="Package_Variations"></span> | ||
==== | ==== Варианты Пакета ==== | ||
<div lang="en" dir="ltr" class="mw-content-ltr"> | <div lang="en" dir="ltr" class="mw-content-ltr"> | ||
Have a look at the [https://github.com/nix-community/neovim-nightly-overlay Neovim Nightly Overlay] to install the most recent current nightly version of Neovim. | Have a look at the [https://github.com/nix-community/neovim-nightly-overlay Neovim Nightly Overlay]<ref>Nix Community, "neovim-nightly-overlay", GitHub, N/A. https://github.com/nix-community/neovim-nightly-overlay</ref> to install the most recent current nightly version of Neovim. | ||
</div> | </div> | ||
Line 141: | Line 126: | ||
nix run "github:nix-community/neovim-nightly-overlay" | nix run "github:nix-community/neovim-nightly-overlay" | ||
< | <span id="Plugin_Management"></span> | ||
==== Управление Плагинами ==== | |||
</ | |||
<syntaxhighlight lang="nix"> | <syntaxhighlight lang="nix"> | ||
Line 202: | Line 160: | ||
} | } | ||
# Пример плагина: nvim-treesitter с конфигурацией на языке Lua | |||
# | |||
{ | { | ||
plugin = pkgs.vimPlugins.nvim-treesitter; | plugin = pkgs.vimPlugins.nvim-treesitter; | ||
Line 213: | Line 169: | ||
highlight = { | highlight = { | ||
enable = true, <span lang="en" dir="ltr" class="mw-content-ltr">-- false will disable the whole extension</span> | enable = true, <span lang="en" dir="ltr" class="mw-content-ltr">-- false will disable the whole extension</span> | ||
disable = {}, | disable = {}, -- список языков, которые будут отключены | ||
}, | }, | ||
incremental_selection = { | incremental_selection = { | ||
Line 257: | Line 213: | ||
]; | ]; | ||
</syntaxhighlight> | </syntaxhighlight> | ||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
==== Frameworks ==== | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
If you prefer not to configure your system manually, NixOS offers several predefined configurations and community-supported options. Here are a few of them: | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
* [https://www.lazyvim.org/ LazyVim]<ref>LazyVim Team, "LazyVim", LazyVim Official Website, N/A. https://www.lazyvim.org/</ref> | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
* [https://astronvim.com/ AstroVim]<ref>AstroNvim Team, "AstroNvim", AstroNvim Official Website, N/A. https://astronvim.com/</ref> | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
* [https://nvchad.com/ NVChad]<ref>NvChad Team, "NvChad", NvChad Official Website, N/A. https://nvchad.com/</ref> | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
Another excellent option is [https://www.lunarvim.org/docs/installation LunarVim]<ref>LunarVim Team, "Installation", LunarVim Documentation, N/A. https://www.lunarvim.org/docs/installation</ref>. The development community describes it as "an IDE layer for Neovim with sane defaults." LunarVim includes an installer/updater for LSP modules and other features. It can be installed via the <code>lunarvim</code> package from <code>nixpkgs</code> and is started with the <code>lvim</code> command. | |||
</div> | |||
Конфигурация LunarVim хранится в <code>~/.config/lvim</code>. | |||
<span id="Troubleshooting"></span> | |||
== Решение проблем == | |||
<span id="References"></span> | <span id="References"></span> | ||
== Ссылки == | == Ссылки == | ||
[[Category:Applications]] | [[Category:Applications]] | ||
[[Category:Text Editor]] | [[Category:Text Editor]] |