{"id":13477444,"url":"https://github.com/n-shift/nv","last_synced_at":"2025-03-27T05:31:46.158Z","repository":{"id":140090339,"uuid":"399815812","full_name":"n-shift/nv","owner":"n-shift","description":null,"archived":true,"fork":false,"pushed_at":"2021-10-10T17:22:42.000Z","size":211,"stargazers_count":37,"open_issues_count":0,"forks_count":3,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-10-30T10:40:37.573Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Lua","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/n-shift.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2021-08-25T12:46:19.000Z","updated_at":"2024-06-10T15:05:53.000Z","dependencies_parsed_at":"2024-01-13T19:18:58.165Z","dependency_job_id":"9e1146e0-65c3-464f-88f0-7029ac0e926a","html_url":"https://github.com/n-shift/nv","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/n-shift%2Fnv","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/n-shift%2Fnv/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/n-shift%2Fnv/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/n-shift%2Fnv/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/n-shift","download_url":"https://codeload.github.com/n-shift/nv/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245791646,"owners_count":20672666,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-07-31T16:01:42.897Z","updated_at":"2025-03-27T05:31:45.845Z","avatar_url":"https://github.com/n-shift.png","language":"Lua","readme":"# nv\n\n\u003cdiv align=\"center\"\u003e\n\n[![Lua](https://img.shields.io/badge/Made%20with%20Lua-blueviolet.svg?style=for-the-badge\u0026logo=lua)]()\n\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n\u003ca href=\"https://github.com/shift-d/nv\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/repo-size/shift-d/nv?style=flat-square\u0026label=Repo\" alt=\"GitHub repository size\"/\u003e\n\u003c/a\u003e\n\u003ca href=\"https://github.com/shift-d/nv/blob/main/LICENSE\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/license/siduck76/NvChad?style=flat-square\u0026logo=GNU\u0026label=License\" alt=\"License\"/\u003e\n\u003c/a\u003e\n\n[![Neovim Minimum Version](https://img.shields.io/badge/Neovim-0.5+-blueviolet.svg?style=flat-square\u0026logo=Neovim\u0026logoColor=white)](https://github.com/neovim/neovim)\n[![Last Commit](https://img.shields.io/github/last-commit/shift-d/nv.svg?style=flat-square\u0026label=Last%20Commit\u0026color=58eb34)](https://github.com/shift-d/nv/pulse)\n\n\u003c/div\u003e\n\nnv is a lua neovim config which tries to be simple, cute and well-documented\n\n## Installation\n\n### Pre-requisites\n\n#### For installation\n- [neovim v0.5.0+](https://neovim.io) (required for lua support)\n- git\n\n#### Requirements for default config to work\n- [Nerd patched font](https://www.nerdfonts.com/) - used by nvim-web-devicons\n- [sumneko-lua](https://github.com/sumneko/lua-language-server) - used by [lua-dev](#folkelua-devnvim)\n- [ripgrep](https://github.com/BurntSushi/ripgrep) - default [telescope](#nvim-telescopetelescopenvim) grep searcher\n\n\n### Manual\n\n1. Backup your previous neovim config if it exists\n2. Clone repository into config folder\n    - Windows\n        - cmd\n            - default: `git clone https://github.com/shift-d/nv --depth 1 %LOCALAPPDATA%\\nvim\\`\n            - XDG_CONFIG_HOME is set: `git clone https://github.com/shift-d/nv --depth 1 %XDG_CONFIG_HOME%\\nvim\\`\n        - powershell\n            - default: `git clone https://github.com/shift-d/nv --depth 1 $env:LOCALAPPDATA\\nvim\\`\n            - XDG_CONFIG_HOME is set: `git clone https://github.com/shift-d/nv --depth 1 $env:XDG_CONFIG_HOME\\nvim\\`\n    - Unix:\n        - default: `git clone https://github.com/shift-d/nv --depth 1 ~/.config/nvim/`\n        - XDG_CONFIG_HOME is set: `git clone https://github.com/shift-d/nv -- depth 1 $XDG_CONFIG_HOME/nvim/`\n3. Open neovim inside config directory\n4. Type `:PackerInstall`\n5. Reopen neovim - and... done!\n\n### Script\n\n#### Windows\n1. Open powershell\n2. Run `Invoke-WebRequest https://raw.githubusercontent.com/shift-d/nv/main/scripts/install.ps1 | select -ExpandProperty Content | Invoke-Expression`\n3. Follow steps 3-5 from [manual installation](#manual)\n\n#### Unix\n1. Open shell\n2. Run `curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/shift-d/nv/main/scripts/install.sh | bash`\n3. Follow steps 3-5 from [manual installation](#manual)\n\n## Configuration\n\nFeel free to configurate everything!\nUnlike [NvChad](https://github.com/NvChad/NvChad) and [kyoto.nvim](https://github.com/samrath2007/kyoto.nvim) nv provides only glue for your config.\nMake it yourself!\n\nPlease, review every config file. If you don't know what exactly this option does - run `:h $option` or if it's in plugin config - visit it's README.md.\n\n## Directory overview\n\n- `init.lua` - file that imports every module\n- `lua/` - folder that should be used for containing `*.lua` files\n    - `config/` - folder for plugin configuration files\n        - `packer.lua` - [packer.nvim](https://github.com/wbthomason/packer.nvim) config and autoinstall\n    - `options.lua` - `vim.opt`, `vim.o` and `vim.g` options\n    - `mappings.lua` - keybindings handled by [nest.nvim](https://github.com/LionC/nest.nvim)\n    - `plugins.lua` - plugin specification file; more info in [Plugins](#Plugins) section\n    - `lsp.lua` - LSP settings\n    - `utils.lua` - global functions for lua\n- `viml/` - folder that should be used for containing  `*.vim` files\n    - `commands.vim` - definitions of user commands and autocommands\n\n## Comparison to other configs\n\nState|nv|NvChad|kyoto.nvim|Lunarvim|\n-----|--|------|----------|--------|\nNumber of plugins | 18 | 33 | 30 | 26|\nWhy | simplicity and well-documented | fast and pretty | fast and customizable | sane defaults|\nInstallation | crossplatform | crossplatform | linux/macos only | [not yet](https://github.com/LunarVim/LunarVim/pull/1261)\nRequired | nerd font, sumneko-lua, rg | rg, nodejs, nerd font | nerd font, ctags, python, nodejs, rg | rust, python, nodejs |\n\u003e Latest update of table: 8.09.21\n\n## Screenshots\n\n#### overview\n[![overview](https://i.postimg.cc/T2ryHJMD/image.png)](https://postimg.cc/8szP7WCp)\n#### dashboard\n[![dashboard](https://i.postimg.cc/Ls14gmm1/image.png)](https://postimg.cc/94cHv5Rm)\n#### nvimtree\n[![NvimTree](https://i.postimg.cc/pTBHKT4p/image.png)](https://postimg.cc/YGjZHppH)\n#### completion\n[![completion](https://i.postimg.cc/85ZY1rxB/image.png)](https://postimg.cc/tZVkk7qY)\n#### telescope.nvim\n[![telescope.nvim](https://i.postimg.cc/43Z2V5gQ/image.png)](https://postimg.cc/nXR1tqMX)\n#### lualine\n[![lualine](https://i.postimg.cc/YjKzkr2z/image.png)](https://postimg.cc/D46XPKXS)\n\n# nv resources\n- [EXTENDING.md](https://github.com/shift-d/nv/blob/main/markdown/EXTENDING.md) - notes about extending nv\n- [DOCS.md](https://github.com/shift-d/nv/blob/main/markdown/DOCS.md) - nv documentation\n\n# FAQ\n\n## Why use vimscript and not write entire config in lua?\n\nSometimes you are not able to write code in lua, so you have to call vimscript from lua.\nIn my opinion, making stacks of `vim.cmd(...` is a bad idea, so I'd like to separate vimscript only categories from lua code.\nIn case of this config, defining commands and autocommands is not supported in neovim lua api _yet_, so that's why I moved their definition to .vim file.\n\nNOTE: related PR's for adding commands and autocommands support for lua API:\n[neovim/neovim#11613](https://github.com/neovim/neovim/pull/11613)\n[neovim/neovim#14661](https://github.com/neovim/neovim/pull/14661)\n\n# Credits\n[siduck76](https://github.com/siduck76) - for his inspirational [NvChad](https://github.com/NvChad/NvChad)\n\n[samrath2007](https://github.com/samrath2007) - for his amazing [kyoto.nvim](https://github.com/samrath2007/kyoto.nvim)\n","funding_links":[],"categories":["Lua"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fn-shift%2Fnv","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fn-shift%2Fnv","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fn-shift%2Fnv/lists"}