|
50 | 50 | [Contribute]: #contributing |
51 | 51 | [FAQ]: #frequently-asked-questions |
52 | 52 | [Credits]: #credits |
| 53 | +[License]: #license |
53 | 54 |
|
54 | 55 | **[<kbd><br> Features <br></kbd>][Features]** |
55 | 56 | **[<kbd><br> Get Started <br></kbd>][Get Started]** |
|
67 | 68 | [standalone]: https://notashelf.github.io/nvf/index.xhtml#ch-standalone-installation |
68 | 69 | [NixOS module]: https://notashelf.github.io/nvf/index.xhtml#ch-standalone-nixos |
69 | 70 | [Home-Manager module]: https://notashelf.github.io/nvf/index.xhtml#ch-standalone-hm |
| 71 | +[release notes]: https://notashelf.github.io/nvf/release-notes.html |
| 72 | +[discussions tab]: https://github.com/notashelf/nvf/discussions |
| 73 | +[FAQ section]: #frequently-asked-questions |
| 74 | +[DAG]: https://en.wikipedia.org/wiki/Directed_acyclic_graph |
70 | 75 |
|
71 | 76 | - **Simple**: One language to rule them all! Use Nix to configure everything, |
72 | 77 | with optional Lua support for robust configurability! |
|
79 | 84 | customizable through the Nix module system. |
80 | 85 | - Not comfortable with a full-nix config or want to bring your Lua config? You |
81 | 86 | can do just that, no unnecessary restrictions. |
82 | | - - Lazyloading? We got it! Lazyload both internal and external plugins at will. |
| 87 | + - Lazyloading 💤? We got it! Lazyload both internal and external plugins at |
| 88 | + will. |
| 89 | + - nvf allows _ordering configuration bits_ using [DAG] (_Directed acyclic |
| 90 | + graph_)s. It has never been easier to construct an editor configuration |
| 91 | + deterministically! |
| 92 | + - nvf exposes everything you need to avoid a vendor lock-in. Which means you |
| 93 | + can add new modules, plugins and so on without relying on us adding a module |
| 94 | + for them! Though, of course, feel free to request them. |
| 95 | + - Use plugins from anywhere. Inputs, npins, nixpkgs... You name it. |
| 96 | + - Add your own modules, with ease. It's all built-in! |
83 | 97 | - **Well-documented**: Documentation is priority. You will _never_ face |
84 | 98 | undocumented, obscure behaviour. |
| 99 | + - Changes, breaking or otherwise, will be communicated in the [release notes] |
| 100 | + - Refer to the [FAQ section] for answers to common questions. |
| 101 | + - Your question not there? Head to the to the [discussions tab]! |
85 | 102 | - **Idiomatic**: nvf does things ✨ _the right way_ ✨ - the codebase is, and |
86 | 103 | will, remain maintainable for myself and any contributors. |
| 104 | +- **Community-Led**: we would like nvf to be fully capable of accomplishing what |
| 105 | + you really want it to do. If you have a use case that is not made possible by |
| 106 | + nvf, please open an issue (or a pull request!) |
| 107 | + - Your feedback is more than welcome! Feedback is what _drives_ nvf forward. |
| 108 | + If you have anything to say, or ask, please let us know. |
| 109 | + - Pull requests are _always_ welcome. If you think the project can benefit |
| 110 | + from something you did locally, but are not quite sure how to upstream, |
| 111 | + please feel free to contact us! We'll help you get it done. |
87 | 112 |
|
88 | 113 | ## Get Started |
89 | 114 |
|
@@ -173,36 +198,49 @@ fix. |
173 | 198 | [list of open pull requests]: https://github.com/NotAShelf/nvf/pulls |
174 | 199 |
|
175 | 200 | **Q**: What platforms are supported? |
176 | | -<br/> **A**: nvf actively supports **Linux and Darwin** platforms using |
177 | | -standalone Nix, NixOS or Home-Manager. Please take a look at the [nvf manual] |
178 | | -for available installation instructions. |
| 201 | + |
| 202 | +**A**: nvf actively supports **Linux and Darwin** platforms using standalone |
| 203 | +Nix, NixOS or Home-Manager. Please take a look at the [nvf manual] for available |
| 204 | +installation instructions. |
179 | 205 |
|
180 | 206 | **Q**: Can you add _X_? |
181 | | -<br/> **A**: Maybe! It is not one of our goals to support each and every Neovim |
| 207 | + |
| 208 | +**A**: Maybe! It is not one of our goals to support each and every Neovim |
182 | 209 | plugin, however, I am always open to new modules and plugin setup additions to |
183 | 210 | **nvf**. Use the appropriate [issue template] and I will consider a module |
184 | 211 | addition. As mentioned before, pull requests to add new features are also |
185 | 212 | welcome. |
186 | 213 |
|
187 | 214 | **Q**: A plugin I need is not available in **nvf**. What to do? |
188 | | -<br/> **A**: **nvf** exposes several APIs for you to be able to add your own |
189 | | -plugin configurations! Please see the documentation on how you may do this. |
| 215 | + |
| 216 | +**A**: **nvf** exposes several APIs for you to be able to add your own plugin |
| 217 | +configurations! Please see the documentation on how you may do this. |
190 | 218 |
|
191 | 219 | **Q**: Main branch is awfully silent, is the project dead? |
192 | | -<br/> **A**: No! Sometimes we branch out (e.g. `v0.6`) to avoid breaking |
193 | | -userspace and work in a separate branch until we make sure the new additions are |
194 | | -implemented in the most comfortable way possible for the end user. If you have |
195 | | -not noticed any activity on the main branch, consider taking a look at the |
| 220 | + |
| 221 | +**A**: No! Sometimes we branch out (e.g. `v0.6`) to avoid breaking userspace and |
| 222 | +work in a separate branch until we make sure the new additions are implemented |
| 223 | +in the most comfortable way possible for the end user. If you have not noticed |
| 224 | +any activity on the main branch, consider taking a look at the |
196 | 225 | [list of branches] or the [list of open pull requests]. You may also consider |
197 | 226 | _testing_ those release branches to get access to new features ahead of time and |
198 | 227 | better prepare to breaking changes. |
199 | 228 |
|
200 | 229 | **Q**: Will you support non-flake installations? |
201 | | -<br/> **A**: Quite possibly. **nvf** started as "neovim-flake", which does mean |
202 | | -it is and will remain flakes-first but we might consider non-flakes |
203 | | -compatibility. Though keep in mind that **nvf** under non-flake environments |
204 | | -would lose customizability of plugin inputs, which is one of our primary |
205 | | -features. |
| 230 | + |
| 231 | +**A**: Quite possibly. **nvf** started as "neovim-flake", which does mean it is |
| 232 | +and will remain flakes-first but we might consider non-flakes compatibility. |
| 233 | +Though keep in mind that **nvf** under non-flake environments would lose |
| 234 | +customizability of plugin inputs, which is one of our primary features. |
| 235 | + |
| 236 | +**Q**: I prefer working with Lua, can I use nvf as a plugin manager while I use |
| 237 | +an imperative path (e.g., `~/.config/nvim`) for my Neovim configuration instead |
| 238 | +of a configuration generated from Nix? |
| 239 | + |
| 240 | +**A**: Yes! Add `"~/.config.nvim"` to `vim.additionalRuntimePaths = [ ... ]` and |
| 241 | +any plugins you want to load to `vim.startPlugins`. This will load your |
| 242 | +configuration from `~/.config/nvim`. You may still use `vim.*` to modify |
| 243 | +Neovim's behaviour with Nix. |
206 | 244 |
|
207 | 245 | ## Credits |
208 | 246 |
|
@@ -245,7 +283,7 @@ and everyone who has submitted issues or pull requests! |
245 | 283 |
|
246 | 284 | ### Inspiration |
247 | 285 |
|
248 | | -This configuration borrows from and is based on a few other configurations, |
| 286 | +This configuration borrows from, and is based on a few other configurations, |
249 | 287 | including: |
250 | 288 |
|
251 | 289 | - [@jordanisaacs's](https://github.com/jordanisaacs) |
|
0 commit comments