Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

A normal Neovim distribution

License

NotificationsYou must be signed in to change notification settings

NormalNvim/NormalNvim

Repository files navigation

Important : You need Neovim 0.11+

*✨ ~ ⭐ - A normal Neovim distribution - ⭐ ~ ✨*

Discord

Screenshots

Tokyo Night (Night) theme by defaultscreenshot_2024-10-04_23-22-02_932273168

The space key showsall you can doscreenshot_2024-03-12_22-48-45_446272370

If you are new here don't forget tocheck the wiki.

How to install

Installer (Linux/MacOS/WSL)

You can preview ithere

wget -q https://raw.githubusercontent.com/NormalNvim/installer/main/installer.sh&& chmod +x installer.sh&& ./installer.sh

Clone manually (Linux/MacOS/WSL)

# Strongly recommended: Fork the repo and clone YOUR fork.git clone https://github.com/NormalNvim/NormalNvim.git~/.config/nvim

Clone manually (Windows)

# Strongly recommended: Fork the repo and clone YOUR fork.git clone https://github.com/NormalNvim/NormalNvim.git %USERPROFILE%\AppData\Local\nvim&& nvim

Optional dependencies

This is only necessary if you installed NormalNvim by cloning manually.To unlock all features you will have to install the dependencies.

Distro features

  • Lazy: Plugins are loaded lazily, providing super fast performance.
  • 🔋Batteries included: Mostplugins you will ever need are included and debugged by default. Get the best user experience out of the box and forget about nasty bugs in your Neovim config.
  • 😎Plugins are self-contained: Allowing you to easily delete what you need.
  • 🤖IDE tools: We shipCompiler.nvim (compiler),DAP (debugger),Neotest (test runner), andDooku.nvim (docs generator)
  • 🐞IDE parsers: Linters, Formatters, LSP, Treesitter... preinstalled, preconfigured and ready to code for the top 12 most popular programming languages.
  • 🥶Plugin version freeze: You can choose "stable" or "nightly" update channels. Or if you prefer, use :DistroFreezePluginVersions to create your own stable versions!
  • 🔙Rollbacks: You can easily recover from a nvim distro update using :DistroUpdateRevert
  • 🔥Hot reload: Every time you change something in your config, the changes are reflected on nvim on real time without need to restart.
  • 📱Phone friendly: You can also install it on Android Termux. Did you ever have a compiler in your pocket? 😉
  • ⌨️Alternative mappings: By default the distro uses qwerty, but colemak-dh can be foundhere.
  • Fully modular: Every feature is a small plugin.
  • 👽100% agnostic: Any plugin NormalNvim ship, can be used in any distro.
  • ❤️We don't treat you like you are stupid: Code comments guide you to easily customize everything. We will neverhide or abstract stuff from you.

Philosophy and design decisions

You are expected to fork the project before cloning it. So you are the only one in control. It is also recommended to useneovim's appimage.

This is not a distro you are expected to update often from upstream. It is meant to be used as a base to create your own distro.

NormalNvim won't be the next/r/UnixPorn sensation. It is a normal nvim config you can trust 100% will never unexpectedly break while you are working. Nothing flashy. Nothing brightful. Just bread and butter.

Commands

The next relevant commands are provided bydistroupdate.nvim

CommandDescription
:DistroUpdateTo update the distro from git origin. Local uncommited changes will be lost.
:DistroUpdateRevertTo revert the last:DistroUpdate.
:DistroFreezePluginVersionsTo save your current plugins versions intolazy_versions.lua.

FAQ

Please before opening an issue, check theastrocommunity repo where you can find help about how to install and configure most plugins.

  • NormalNvim is not working. How can I know why?

    :checkhealth base

  • Why can't I see the icons? You must install thenerdfont version of your font, and use it on your terminal. Alternatively you can editbase/icons/nerd_font.lua to manually specify your own icons.

  • How can I install a new colorscheme? Go toplugins/2-ui.lua, and add the theme you want. Re-open nvim and now you can set your new colorcheme onbase/1-options.lua. You can also preview all your installed themes with<space>+ft.

  • How can I change the user interface? We use the plugin heirline to create the user interface. You can re-order or change any component of your user interface inplugins/2-ui.lua. If you preffer the classic vim appearance, you can delete the plugin.

  • How can I disable the animations? You can delete the pluginmini.animate. In case you only want to disable some animations look into the plugin docs.

  • How can I useAsk chatgpt? On your operative system, set the next env var. You can get an API key fromchatgpt's website.

OPENAI_API_KEY="my_key_here"

🌟 Get involved

One of the biggest challenges NormalNvim face is marketing. So share the project and tell your friends!Stargazers over time

Fix a bug and send a PR to appear as contributor

Credits

Originally it took AstroNvim as base. But implementsthis VIM config with some extras. Code has been simplified while retaining its core features. NormalNvim has also contributed to the code of many of the plugins included, in order to debug them and make them better.

Special thanks to LeoRed04 for designing the logo.

Trivia

Did you know NormalNvim was the first Neovim distro to ship a compiler thatsupport 22+ programming languages out of the box?

Roadmap

High prio

  • New known bug: Diagnostics icons not displaying correctly on the left bar.
  • Let's contribute to eldritch.nvim so markdown support is as good as the one we had on tokyonight.

Cool ideas

  • Given all modern GPUs for consumers are now AI capable, let's re-study the possibility of making easier for users running local AI models. Considering Cloud services will still be necessary for android devices.
  • Let's start preparing NormalNvim v5.0

Todos before v5.0 (2025)

  • It would be a neat UX improvement to integratesnacks.nvim UI toggles. But let's ensure code remain decoupled.
  • Compiler.nvim: test windows support.
  • Compiler.nvim: add support for justfiles and taskfiles.
  • Makeit.nvim: Add support for justfiles and taskfiles.
  • Makeit.nvim: Remove orchestrators. This only make sense for compiler.nvim.
  • Makeit.nvim: Allow all possible conventions forMakefile, such asmakefile,Makefile.linux, etc.
  • Compiler.nvim: Allow all possible conventions forMakefile, such asmakefile,Makefile.linux, etc.
  • Compiler.nvim: test support for nim-lang.
  • Let's start doing some manual testing for the installer to ensure it install correctly on all OS.
  • Version v2 of the website should look considerably better.
  • Let's try to improve the user experience of the toggle keys under<space>u where possible.
  • Let's ensure nvim 0.12 don't have any incompatibility, so it's easy to migrate when it's released next year.
  • On Rust, out of the box, the items under<lead> l don't display unless rustfmt is installed.
  • Compiler.nvim: add support for new languagecommon LISP. → Not planned.
  • Compiler.nvim: add support for new languageCOBOL. → Not planned.
  • Let's considertiny-glimmer over highlight-undo, so we don't have to maintain the plugin ourselves. → Let's keep using highlighg-undo, as it's been fixed upstream.
  • Let's keep an eye on the plugins that display deprecation warnings on nvim 0.11here andhere. Full list of deprecationshere.

Blocked

  • Once selene addthis andthis andthis, let's add the new rules.

Sponsor this project

 

Packages

No packages published

Contributors10

Languages


[8]ページ先頭

©2009-2025 Movatter.jp