Neovim: Difference between revisions

U32 (talk | contribs)
mNo edit summary
Ardenet (talk | contribs)
reposition translate tag to reduce translation change
Tags: Mobile edit Mobile web edit Visual edit
Line 17: Line 17:
   |documentation=[https://neovim.io/doc/ Official Documentation]
   |documentation=[https://neovim.io/doc/ Official Documentation]
}}
}}
<translate>
<translate>
<!--T:1-->
<!--T:1-->
Line 27: Line 28:
== Installation == <!--T:3-->
== Installation == <!--T:3-->


==== Shell ====
==== Shell ==== <!--T:4-->


<!--T:5-->
To temporarily use Neovim in a shell environment without modifying your system configuration, you can run:
To temporarily use Neovim in a shell environment without modifying your system configuration, you can run:
</translate>
{{code|lang=bash|line=no|1=$ nix-shell -p neovim}}
{{code|lang=bash|line=no|1=$ nix-shell -p neovim}}
<translate>
This makes the Neovim editor available in your current shell. You can then launch Neovim by typing <code>neovim</code>.
This makes the Neovim editor available in your current shell. You can then launch Neovim by typing <code>neovim</code>.


==== System setup ====
==== System setup ==== <!--T:6-->


To install Neovim system-wide, making it available to all users, add the following to your configuration:
To install Neovim system-wide, making it available to all users, add the following to your configuration:
{{code|lang=nix|line=no|1=# Example for /etc/nixos/configuration.nix
</translate>
 
{{code|lang=nix|line=no|1=<translate># Example for /etc/nixos/configuration.nix</translate>
environment.systemPackages = [
environment.systemPackages = [
   pkgs.neovim
   pkgs.neovim
];
];


# User-specific installation (in ~/.config/nixpkgs/home.nix)
<translate># User-specific installation (in ~/.config/nixpkgs/home.nix)</translate>
home.packages = [
home.packages = [
   pkgs.neovim
   pkgs.neovim
];}}
];}}
<translate>
After rebuilding your system with <code>nixos-rebuild switch</code> or <code>home-manager switch</code>, Neovim will be installed and accessible.
After rebuilding your system with <code>nixos-rebuild switch</code> or <code>home-manager switch</code>, Neovim will be installed and accessible.


== Configuration == <!--T:7-->
== Configuration == <!--T:7-->


==== Basic ==== <!--T:8-->
==== Basic ==== <!--T:8-->
</translate>


</translate>
{{code|lang=nix|line=no|1=<translate>
{{code|lang=nix|line=no|1=<translate>
<!--T:39-->
<!--T:39-->
Line 72: Line 81:
   '';
   '';
};}}
};}}
<translate>
<translate>
==== Advanced ==== <!--T:10-->
==== Advanced ==== <!--T:10-->
</translate>


</translate>
{{code|lang=nix|line=no|1=<translate>
{{code|lang=nix|line=no|1=<translate>
<!--T:41-->
<!--T:41-->
Line 108: Line 117:
</translate>
</translate>
environment.variables.EDITOR = "nvim";}}
environment.variables.EDITOR = "nvim";}}
<translate>
<translate>
== Tips and Tricks == <!--T:12-->
== Tips and Tricks == <!--T:12-->
{{expand}}
{{expand}}
Line 117: Line 126:
Have a look at the [https://github.com/nix-community/neovim-nightly-overlay Neovim Nightly Overlay]<ref>Nix Community, "neovim-nightly-overlay", GitHub, Last updated June 2025, Accessed June 2025. https://github.com/nix-community/neovim-nightly-overlay</ref> 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, Last updated June 2025, Accessed June 2025. https://github.com/nix-community/neovim-nightly-overlay</ref> to install the most recent current nightly version of Neovim.
You can run the master version via the following command:
You can run the master version via the following command:
</translate>
{{code|lang=bash|line=no|1=$ nix run "github:nix-community/neovim-nightly-overlay"}}
{{code|lang=bash|line=no|1=$ nix run "github:nix-community/neovim-nightly-overlay"}}


<translate>
==== Plugin Management ==== <!--T:21-->
==== Plugin Management ==== <!--T:21-->
</translate>


</translate>
{{code|lang=nix|line=no|1=plugins = [
{{code|lang=nix|line=no|1=plugins = [
<translate>
<translate>
Line 212: Line 224:
</translate>
</translate>
];}}
];}}
<translate>
<translate>
==== Frameworks ==== <!--T:18-->
==== Frameworks ==== <!--T:18-->


Line 228: Line 240:
* [https://nvchad.com/ NVChad]<ref>Siduck, "NvChad", NvChad Official Website, © 2025, Accessed June 2025. https://nvchad.com/</ref>
* [https://nvchad.com/ NVChad]<ref>Siduck, "NvChad", NvChad Official Website, © 2025, Accessed June 2025. https://nvchad.com/</ref>


<!--T:48--> ==== FHS wrapper ====
==== FHS wrapper ==== <!--T:48-->


You can create a custom neovim FHS wrapper
You can create a custom neovim FHS wrapper
</translate>
{{code|lang=nix|line=no|1=
{{code|lang=nix|line=no|1=
{
{
Line 247: Line 261:
}}
}}


<translate>
<!--T:FHS_WRAPPER_SOURCE-->
<!--T:FHS_WRAPPER_SOURCE-->
This FHS wrapper example is based on a contribution to nixpkgs<ref name="nixpkgs-pr-334032">NixOS, "Feature: Custom Neovim FHS Wrapper" (Pull Request #334032), GitHub, 2025, Accessed June 2025. https://github.com/NixOS/nixpkgs/pull/334032</ref>.
This FHS wrapper example is based on a contribution to nixpkgs<ref name="nixpkgs-pr-334032">NixOS, "Feature: Custom Neovim FHS Wrapper" (Pull Request #334032), GitHub, 2025, Accessed June 2025. https://github.com/NixOS/nixpkgs/pull/334032</ref>.
Line 257: Line 272:


In your <code>~/.local/state/nvim/lsp.log</code>, you have the following error:
In your <code>~/.local/state/nvim/lsp.log</code>, you have the following error:
</translate>


{{code|lang=text|line=no|1=[ERROR][2025-06-07 23:13:15] ...p/_transport.lua:36 "rpc" "lua-language-server" "stderr" "Could not start dynamically linked executable: /home/incogshift/.local/share/nvim/mason/packages/lua-language-server/libexec/bin/lua-language-server\nNixOS cannot run dynamically linked executables intended for generic\nlinux environments out of the box. For more information, see:\nhttps://nix.dev/permalink/stub-ld\n"}}
{{code|lang=text|line=no|1=[ERROR][2025-06-07 23:13:15] ...p/_transport.lua:36 "rpc" "lua-language-server" "stderr" "Could not start dynamically linked executable: /home/incogshift/.local/share/nvim/mason/packages/lua-language-server/libexec/bin/lua-language-server\nNixOS cannot run dynamically linked executables intended for generic\nlinux environments out of the box. For more information, see:\nhttps://nix.dev/permalink/stub-ld\n"}}


<translate>
<!--T:LUA_LS_SO_REF-->
<!--T:LUA_LS_SO_REF-->
A solution for this issue can be found on Stack Overflow<ref name="so-lua-ls-dynlink">Stack Overflow Contributor, "Answer to 'Could not start dynamically linked executable... on NixOS'", Stack Overflow, 2025, Accessed June 2025. https://stackoverflow.com/a/78215911/27134695</ref>.
A solution for this issue can be found on Stack Overflow<ref name="so-lua-ls-dynlink">Stack Overflow Contributor, "Answer to 'Could not start dynamically linked executable... on NixOS'", Stack Overflow, 2025, Accessed June 2025. https://stackoverflow.com/a/78215911/27134695</ref>.
== References == <!--T:27-->


== See also ==
== See also ==
Line 273: Line 288:
* [https://github.com/nix-community/neovim-overlay Neovim Overlay on Nixpkgs] – For nightly builds and additional Neovim packages.
* [https://github.com/nix-community/neovim-overlay Neovim Overlay on Nixpkgs] – For nightly builds and additional Neovim packages.


== References ==
== References == <!--T:27-->
 
</translate>


[[Category:Applications]]
[[Category:Applications]]
[[Category:CLI Applications]]
[[Category:CLI Applications]]
[[Category:Text Editor]]
[[Category:Text Editor]]
</translate>