mirror of
https://github.com/NotAShelf/nvf.git
synced 2025-09-06 10:21:31 +00:00
Merge remote-tracking branch 'origin/main' into v0.8
This commit is contained in:
commit
e1ad7f4fb9
49 changed files with 1338 additions and 727 deletions
80
.github/CONTRIBUTING.md
vendored
80
.github/CONTRIBUTING.md
vendored
|
@ -2,48 +2,72 @@
|
|||
|
||||
## Table of Contents
|
||||
|
||||
- [Welcome](#welcome)
|
||||
- [Contributing](#contributing)
|
||||
- [Preface](#preface)
|
||||
- [Contributing Process](#contributing-process)
|
||||
- [Code of Conduct](#code-of-conduct)
|
||||
|
||||
## Welcome
|
||||
## Preface
|
||||
|
||||
I'm glad you are thinking about contributing to nvf! If you're unsure about
|
||||
anything, just ask - or submit the issue or pull request anyway. The worst that
|
||||
can happen is you'll be politely asked to change something. Friendly
|
||||
contributions are always welcome.
|
||||
[LICENSE]: ../LICENSE
|
||||
|
||||
Before you contribute, I encourage you to read this project's CONTRIBUTING
|
||||
policy (you are here) and its [LICENSE](../LICENSE) to understand how your
|
||||
contributions are licensed.
|
||||
I am glad you are thinking about contributing to nvf! The project is shaped by
|
||||
contributors and user feedback, and all contributions are appreciated.
|
||||
|
||||
If you have any questions regarding those files, feel free to open an issue or
|
||||
[shoot me an email](mailto:me@notashelf.dev). Discussions tab is also available
|
||||
for more informal discussions.
|
||||
If you are unsure about anything, whether a change is necessary or if it would
|
||||
be accepted _had_ you created a PR, please just ask! Or submit the issue or pull
|
||||
request anyway, the worst that can happen is that you will be politely asked to
|
||||
change something. Friendly contributions are _always_ welcome.
|
||||
|
||||
## Contributing
|
||||
Before you contribute, I encourage you to read the rest of this document for our
|
||||
contributing policy and guidelines, followed by the [LICENSE] to understand how
|
||||
your contributions are licensed.
|
||||
|
||||
The contribution process is mostly documented in the
|
||||
[pull request template](PULL_REQUEST_TEMPLATE/pull_request_template.md). You
|
||||
will find a checklist of items to complete before submitting a pull request.
|
||||
Please make sure you complete it before submitting a pull request. If you are
|
||||
If you have any questions regarding those files, or would like to ask a question
|
||||
that is not covered by any of them, please feel free to open an issue!
|
||||
Discussions tab is also available for less formal discussions. You may also
|
||||
choose to contact me on Discord or Matrix if you would like to talk to me
|
||||
personally.
|
||||
|
||||
## Contributing Process
|
||||
|
||||
[pull request template]: ./PULL_REQUEST_TEMPLATE.md
|
||||
|
||||
The contribution process is mostly documented in the [pull request template].
|
||||
When you create a pull request, you will find a checklist of items to complete
|
||||
before it can be submitted. We ask that you please complete it before submitting
|
||||
a pull request to help maintainers provide more specific feedback. If you are
|
||||
unsure about any of the items, please ask.
|
||||
|
||||
### Guidelines
|
||||
|
||||
We provide instructions on a healthy contribution to neovim-flake - including
|
||||
styling, commit formats, how-to guides for adding new modules and options. You
|
||||
are very well recommended to read the contributing guidelines over at
|
||||
[the documentation](https://notashelf.github.io/nvf#hacking)
|
||||
We provide instructions for a healthy contribution to nvf. This includes
|
||||
**styling**, **commit formats**, **how-to guides for common contributions**. You
|
||||
are strongly encouraged to read the contributing guidelines in full over at
|
||||
[the documentation](https://notashelf.github.io/nvf#hacking).
|
||||
|
||||
A general gist of our requirements is that you must
|
||||
|
||||
1. Write clean Nix code
|
||||
2. Self-test your changes
|
||||
3. Document your changes
|
||||
|
||||
Though, please take a look at the manual for the complete contributing guide.
|
||||
Please also feel free to let us know if you feel that something is missing. We
|
||||
hope to provide clear, comprehensive instructions that make the contribution
|
||||
process a breeze.
|
||||
|
||||
### Code of Conduct
|
||||
|
||||
This project does not quite have a code of conduct yet. And to be perfectly
|
||||
honest, I'm not sure if I want one or if it will ever have one. I'm not
|
||||
expecting this project to be a hotbed of activity, but I do want to make sure
|
||||
that everyone who does contribute feels welcome and safe. As such, I will do my
|
||||
best to make sure that those who distrupt the project are dealt with swiftly and
|
||||
appropriately.
|
||||
This project does not have a formal code of conduct yet, and to be perfectly
|
||||
honest I am not entirely positive if I want one or if it will _ever_ have one.
|
||||
This project is not expected to be a hotbed of activity, and I trust my
|
||||
contributors to keep it civil and respectful.
|
||||
|
||||
I do, however, want to make sure that everyone who does contribute feels welcome
|
||||
and safe around project spaces. As such, I will do my best to make sure anyone
|
||||
who disrupts the project or engages in negative behaviour will are dealt with
|
||||
appropriately, and swiftly. You are invited to share any concerns that you have
|
||||
with the projects moderation, be it over public or private spaces.
|
||||
|
||||
If you feel that you are not being treated with respect, please contact me
|
||||
directly.
|
||||
|
|
11
.github/ISSUE_TEMPLATE/bug_report.yaml
vendored
11
.github/ISSUE_TEMPLATE/bug_report.yaml
vendored
|
@ -90,15 +90,6 @@ body:
|
|||
validations:
|
||||
required: true
|
||||
|
||||
- type: input
|
||||
id: nix-metadata
|
||||
attributes:
|
||||
label: "💻 Metadata"
|
||||
description: 'Please run `nix-shell -p nix-info --run "nix-info -m"` and paste the result.'
|
||||
placeholder: '[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"'
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: System Information
|
||||
|
@ -119,7 +110,7 @@ body:
|
|||
id: logs
|
||||
attributes:
|
||||
render: bash
|
||||
label: "📝 Relevant log output"
|
||||
label: "Relevant log output"
|
||||
description: >-
|
||||
Please copy and paste any relevant log output. This will be automatically formatted into code, so no need for backticks.
|
||||
|
||||
|
|
76
.github/ISSUE_TEMPLATE/feature_request.yaml
vendored
76
.github/ISSUE_TEMPLATE/feature_request.yaml
vendored
|
@ -1,58 +1,72 @@
|
|||
name: 🚀 Feature Request
|
||||
description: "Propose a new feature"
|
||||
#title: "[Feature] "
|
||||
title: "<short description of the desired addition>"
|
||||
labels: [feature-request]
|
||||
body:
|
||||
- type: checkboxes
|
||||
id: no-duplicate-issues
|
||||
attributes:
|
||||
label: "⚠️ Please verify that this feature request has NOT been suggested before."
|
||||
description: "Search in the issues sections by clicking [HERE](https://github.com/notashelf/neovim-flake/issues?q=)"
|
||||
label: I have verified that this feature request has not been made before
|
||||
description: >-
|
||||
Before opening a new issue for feature requests, please consider searching through currently
|
||||
open issues [here](https://github.com/notashelf/nvf/issues). If you would like to discuss a
|
||||
new addition beforehand, you may first want to create a new discussion threat and discuss it
|
||||
with the maintainers [on the discussions tab](https://github.com/notashelf/nvf/discussions)
|
||||
options:
|
||||
- label: "I checked and didn't find a similar feature request"
|
||||
required: true
|
||||
- required: true
|
||||
label: >-
|
||||
I have checked the [issues tab](https://github.com/notashelf/nvf/issues?q=is%3Aissue),
|
||||
and did not find a similar feature request. I understand that my issue will be closed
|
||||
if it is a duplicate.
|
||||
|
||||
- type: dropdown
|
||||
id: feature-area
|
||||
attributes:
|
||||
label: "🏷️ Feature Type"
|
||||
description: "What kind of a feature request is this?"
|
||||
label: Feature Type
|
||||
description: Please describe the kind of addition this is
|
||||
multiple: true
|
||||
options:
|
||||
- New Command
|
||||
- New Addon
|
||||
- API Additions
|
||||
- New Plugin
|
||||
- Update Request (Plugin/Nixpkgs)
|
||||
- Documentation Updates
|
||||
- Other
|
||||
validations:
|
||||
required: true
|
||||
|
||||
|
||||
- type: textarea
|
||||
id: feature-description
|
||||
attributes:
|
||||
label: Feature description
|
||||
description: >-
|
||||
Please provide a clear and concise description of the desired addition. If this is a plugin
|
||||
addition, please also include a link to the desired plugin and the reason why you think this
|
||||
is a good addition. Keep in mind that we may refuse plugin requests as nvf already provides
|
||||
appropriate methods of installing plugins in user configurations.
|
||||
placeholder: >-
|
||||
"nvf currently does [...], which really frustrates me" or "You should add [...] because I think
|
||||
[...]"
|
||||
validations:
|
||||
required: true
|
||||
attributes:
|
||||
label: "🔖 Feature description"
|
||||
description: "A clear and concise description of what your feature request is."
|
||||
placeholder: "'You should add [...]' or '[...] has always frustrated me' "
|
||||
- type: textarea
|
||||
id: solution
|
||||
validations:
|
||||
required: true
|
||||
attributes:
|
||||
label: "✔️ Solution"
|
||||
description: "A clear and concise description of what you want to happen."
|
||||
placeholder: "In my use-case, I would like [...]"
|
||||
|
||||
- type: textarea
|
||||
id: alternatives
|
||||
attributes:
|
||||
label: Alternatives
|
||||
description: >-
|
||||
If you have tried anything before creating this issue, please give us a clear and concise
|
||||
description of any alternative solutions or methods you have considered.
|
||||
placeholder: "I have considered [...]"
|
||||
validations:
|
||||
required: false
|
||||
attributes:
|
||||
label: "❓ Alternatives"
|
||||
description: "A clear and concise description of any alternative solutions or features you've considered."
|
||||
placeholder: "I have considered [...]"
|
||||
|
||||
- type: textarea
|
||||
id: additional-context
|
||||
attributes:
|
||||
label: Additional Context
|
||||
description: >-
|
||||
If there is anything else you would like to mention, such as additional context or screenshots
|
||||
demonstrating the requested feature, please add them here. This field is optional, but you may
|
||||
be requested to provide further context. Please ensure that your feature request clearly describes
|
||||
the requested feature in good detail.
|
||||
validations:
|
||||
required: false
|
||||
attributes:
|
||||
label: "📝 Additional Context"
|
||||
description: "Add any other context or screenshots about the feature request here."
|
||||
placeholder: "..."
|
||||
|
|
322
.github/README.md
vendored
322
.github/README.md
vendored
|
@ -1,322 +0,0 @@
|
|||
<div align="center">
|
||||
<img src="assets/nvf-logo-work.svg" alt="nvf Logo" width="200">
|
||||
<br/>
|
||||
<h1>nvf</h1>
|
||||
</div>
|
||||
|
||||
<div align="center">
|
||||
<p>
|
||||
<a href="https://github.com/NotAShelf/nvf/releases/latest">
|
||||
<img alt="Latest release" src="https://img.shields.io/github/v/release/NotAShelf/nvf?style=for-the-badge&logo=nixos&color=C9CBFF&logoColor=D9E0EE&labelColor=302D41" />
|
||||
</a>
|
||||
<a href="https://github.com/NotAShelf/nvf/pulse">
|
||||
<img alt="Last commit" src="https://img.shields.io/github/last-commit/NotAShelf/nvf?style=for-the-badge&logo=starship&color=8bd5ca&logoColor=D9E0EE&labelColor=302D41"/>
|
||||
</a>
|
||||
<a href="https://github.com/NotAShelf/nvf/blob/main/LICENSE">
|
||||
<img alt="License" src="https://img.shields.io/github/license/NotAShelf/nvf?style=for-the-badge&logo=nixos&color=ee999f&logoColor=D9E0EE&labelColor=302D41" />
|
||||
</a>
|
||||
<a href="https://github.com/NotAShelf/nvf/stargazers">
|
||||
<img alt="Stars" src="https://img.shields.io/github/stars/NotAShelf/nvf?style=for-the-badge&logo=nixos&color=c69ff5&logoColor=D9E0EE&labelColor=302D41" />
|
||||
</a>
|
||||
<a href="https://github.com/NotAShelf/nvf/issues">
|
||||
<img alt="Issues" src="https://img.shields.io/github/issues/NotAShelf/nvf?style=for-the-badge&logo=bilibili&color=F5E0DC&logoColor=D9E0EE&labelColor=302D41" />
|
||||
</a>
|
||||
<a href="https://github.com/NotAShelf/nvf">
|
||||
<img alt="Repo Size" src="https://img.shields.io/github/repo-size/NotAShelf/nvf?color=%23DDB6F2&label=SIZE&logo=codesandbox&style=for-the-badge&logoColor=D9E0EE&labelColor=302D41" />
|
||||
</a>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<p align="center">
|
||||
<img src="https://stars.medv.io/NotAShelf/nvf.svg", title="stars"/>
|
||||
</p>
|
||||
|
||||
<div align="center">
|
||||
<a>
|
||||
nvf is a highly modular, configurable, extensible and easy to use Neovim configuration
|
||||
in Nix. Designed for flexibility and ease of use, nvf allows you to easily configure
|
||||
your fully featured Neovim instance with a few lines of Nix.
|
||||
</a>
|
||||
</div>
|
||||
|
||||
---
|
||||
|
||||
<div align="center"><p>
|
||||
|
||||
[Features]: #features
|
||||
[Get Started]: #get-started
|
||||
[Documentation]: #documentation
|
||||
[Help]: #help
|
||||
[Contribute]: #contributing
|
||||
[FAQ]: #frequently-asked-questions
|
||||
[Credits]: #credits
|
||||
[License]: #license
|
||||
|
||||
**[<kbd><br> Features <br></kbd>][Features]**
|
||||
**[<kbd><br> Get Started <br></kbd>][Get Started]**
|
||||
**[<kbd><br> Documentation <br></kbd>][Documentation]**
|
||||
**[<kbd><br> Help <br></kbd>][Help]**
|
||||
**[<kbd><br> Contribute <br></kbd>][Contribute]**
|
||||
**[<kbd><br> FAQ <br></kbd>][FAQ]** **[<kbd><br> Credits <br></kbd>][Credits]**
|
||||
|
||||
</p></div>
|
||||
|
||||
---
|
||||
|
||||
## Features
|
||||
|
||||
[standalone]: https://notashelf.github.io/nvf/index.xhtml#ch-standalone-installation
|
||||
[NixOS module]: https://notashelf.github.io/nvf/index.xhtml#ch-standalone-nixos
|
||||
[Home-Manager module]: https://notashelf.github.io/nvf/index.xhtml#ch-standalone-hm
|
||||
[release notes]: https://notashelf.github.io/nvf/release-notes.html
|
||||
[discussions tab]: https://github.com/notashelf/nvf/discussions
|
||||
[FAQ section]: #frequently-asked-questions
|
||||
[DAG]: https://en.wikipedia.org/wiki/Directed_acyclic_graph
|
||||
|
||||
- **Simple**: One language to rule them all! Use Nix to configure everything,
|
||||
with optional Lua support for robust configurability!
|
||||
- **Reproducible**: Your configuration will behave the same _anywhere_. No
|
||||
surprises, promise!
|
||||
- **Portable**: nvf depends _solely_ on your Nix store, and nothing else. No
|
||||
more global binaries! Works on all platforms, without hassle.
|
||||
- Options to install [standalone], [NixOS module] or [Home-Manager module].
|
||||
- **Customizable**: There are _almost no defaults_ to annoy you. nvf is fully
|
||||
customizable through the Nix module system.
|
||||
- Not comfortable with a full-nix config or want to bring your Lua config? You
|
||||
can do just that, no unnecessary restrictions.
|
||||
- Lazyloading 💤? We got it! Lazyload both internal and external plugins at
|
||||
will.
|
||||
- nvf allows _ordering configuration bits_ using [DAG] (_Directed acyclic
|
||||
graph_)s. It has never been easier to construct an editor configuration
|
||||
deterministically!
|
||||
- nvf exposes everything you need to avoid a vendor lock-in. Which means you
|
||||
can add new modules, plugins and so on without relying on us adding a module
|
||||
for them! Though, of course, feel free to request them.
|
||||
- Use plugins from anywhere. Inputs, npins, nixpkgs... You name it.
|
||||
- Add your own modules, with ease. It's all built-in!
|
||||
- **Well-documented**: Documentation is priority. You will _never_ face
|
||||
undocumented, obscure behaviour.
|
||||
- Changes, breaking or otherwise, will be communicated in the [release notes]
|
||||
- Refer to the [FAQ section] for answers to common questions.
|
||||
- Your question not there? Head to the to the [discussions tab]!
|
||||
- **Idiomatic**: nvf does things ✨ _the right way_ ✨ - the codebase is, and
|
||||
will, remain maintainable for myself and any contributors.
|
||||
- **Community-Led**: we would like nvf to be fully capable of accomplishing what
|
||||
you really want it to do. If you have a use case that is not made possible by
|
||||
nvf, please open an issue (or a pull request!)
|
||||
- Your feedback is more than welcome! Feedback is what _drives_ nvf forward.
|
||||
If you have anything to say, or ask, please let us know.
|
||||
- Pull requests are _always_ welcome. If you think the project can benefit
|
||||
from something you did locally, but are not quite sure how to upstream,
|
||||
please feel free to contact us! We'll help you get it done.
|
||||
|
||||
## Get Started
|
||||
|
||||
[nvf manual]: https://notashelf.github.io/nvf/
|
||||
[issue tracker]: https://github.com/NotAShelf/nvf/issues
|
||||
|
||||
If you are not sold on the concepts of **nvf**, and would like to try out the
|
||||
default configuration before even _thinking about_ installing it, you may run
|
||||
the following in order to take **nvf** out for a spin.
|
||||
|
||||
```bash
|
||||
# Run the default package
|
||||
nix run github:notashelf/nvf
|
||||
```
|
||||
|
||||
This will get you a feel for the base configuration and UI design. Though, none
|
||||
of the configuration options are final as **nvf** is designed to be modular and
|
||||
configurable.
|
||||
|
||||
> [!TIP]
|
||||
> The flake exposes `#nix` as the default package, providing minimal language
|
||||
> support and various utilities. You may also use the `#nix` or `#maximal`
|
||||
> packages provided by the this flake to get try out different configurations.
|
||||
|
||||
It is as simple as changing the target output to get a different configuration.
|
||||
For example, to get a configuration with large language coverage, run:
|
||||
|
||||
```bash
|
||||
# Run the maximal package
|
||||
nix run github:notashelf/nvf#maximal
|
||||
```
|
||||
|
||||
Similar instructions will apply for `nix profile install`. However, you are
|
||||
recommended to instead use the module system as described in the manual.
|
||||
|
||||
> [!NOTE]
|
||||
> The `maximal` configuration is quite large, and might take a while to build.
|
||||
> To get a feel for the configuration, use the default `nix` configuration.
|
||||
> Should you choose to try out the `maximal` configuration, using the binary
|
||||
> cache as described in the manual is _strongly_ recommended.
|
||||
|
||||
If you are convinced, proceed to the next section to view the installation
|
||||
instructions.
|
||||
|
||||
## Documentation
|
||||
|
||||
### Installation
|
||||
|
||||
The _recommended_ way of installing nvf is using either the NixOS or the
|
||||
Home-Manager module, though it is completely possible and no less supported to
|
||||
install **nvf** as a standalone package, or a flake output.
|
||||
|
||||
See the rendered [nvf manual] for detailed and up-to-date installation guides,
|
||||
configurations, available options, release notes and more. Tips for installing
|
||||
userspace plugins is also contained in the documentation.
|
||||
|
||||
> [!TIP]
|
||||
> While using NixOS or Home-Manager modules,
|
||||
> `programs.nvf.enableManpages = true;` will allow you to view option
|
||||
> documentation from the comfort of your terminal via `man 5 nvf`. The more you
|
||||
> know.
|
||||
|
||||
Please create an issue on the [issue tracker] if you find the documentation
|
||||
lacking or confusing. Any improvements to the documentation through pull
|
||||
requests are also welcome, and appreciated.
|
||||
|
||||
## Getting Help
|
||||
|
||||
If you are confused, stuck or would like to ask a simple question; you may
|
||||
create an issue on the [issue tracker] to ask questions or report bugs.
|
||||
|
||||
We are not not yet on spaces like matrix or IRC, so please use the issue tracker
|
||||
for now.
|
||||
|
||||
## Contributing
|
||||
|
||||
I am always looking for new ways to help improve this flake. If you would like
|
||||
to contribute, please read the [contributing guide](CONTRIBUTING.md) before
|
||||
submitting a pull request. You can also create an issue on the [issue tracker]
|
||||
before submitting a pull request if you would like to discuss a feature or bug
|
||||
fix.
|
||||
|
||||
## Frequently Asked Questions
|
||||
|
||||
[issue template]: https://github.com/NotAShelf/nvf/issues/new/choose
|
||||
[list of branches]: https://github.com/NotAShelf/nvf/branches
|
||||
[list of open pull requests]: https://github.com/NotAShelf/nvf/pulls
|
||||
|
||||
**Q**: What platforms are supported?
|
||||
|
||||
**A**: nvf actively supports **Linux and Darwin** platforms using standalone
|
||||
Nix, NixOS or Home-Manager. It has been reported that **Android** is also
|
||||
supported through the Home-Manager module, or using standalone package. Please
|
||||
take a look at the [nvf manual] for available installation instructions.
|
||||
|
||||
**Q**: Can you add _X_?
|
||||
|
||||
**A**: Maybe! It is not one of our goals to support each and every Neovim
|
||||
plugin, however, I am always open to new modules and plugin setup additions to
|
||||
**nvf**. Use the appropriate [issue template] and I will consider a module
|
||||
addition. As mentioned before, pull requests to add new features are also
|
||||
welcome.
|
||||
|
||||
**Q**: A plugin I need is not available in **nvf**. What to do?
|
||||
|
||||
**A**: **nvf** exposes several APIs for you to be able to add your own plugin
|
||||
configurations! Please see the documentation on how you may do this.
|
||||
|
||||
**Q**: Main branch is awfully silent, is the project dead?
|
||||
|
||||
**A**: No! Sometimes we branch out (e.g. `v0.6`) to avoid breaking userspace and
|
||||
work in a separate branch until we make sure the new additions are implemented
|
||||
in the most comfortable way possible for the end user. If you have not noticed
|
||||
any activity on the main branch, consider taking a look at the
|
||||
[list of branches] or the [list of open pull requests]. You may also consider
|
||||
_testing_ those release branches to get access to new features ahead of time and
|
||||
better prepare to breaking changes.
|
||||
|
||||
**Q**: Will you support non-flake installations?
|
||||
|
||||
**A**: Quite possibly. **nvf** started as "neovim-flake", which does mean it is
|
||||
and will remain flakes-first but we might consider non-flakes compatibility.
|
||||
Though keep in mind that **nvf** under non-flake environments would lose
|
||||
customizability of plugin inputs, which is one of our primary features.
|
||||
|
||||
**Q**: I prefer working with Lua, can I use nvf as a plugin manager while I use
|
||||
an imperative path (e.g., `~/.config/nvim`) for my Neovim configuration instead
|
||||
of a configuration generated from Nix?
|
||||
|
||||
**A**: Yes! Add `"~/.config/nvim"` to `vim.additionalRuntimePaths = [ ... ]` and
|
||||
any plugins you want to load to `vim.startPlugins`. This will load your
|
||||
configuration from `~/.config/nvim`. You may still use `vim.*` to modify
|
||||
Neovim's behaviour with Nix.
|
||||
|
||||
## Credits
|
||||
|
||||
### Co-Maintainers
|
||||
|
||||
Alongside [myself](https://github.com/notashelf), nvf is developed by those
|
||||
talented folk. nvf would not be what it is today without their invaluable
|
||||
contributions.
|
||||
|
||||
- [**@horriblename**](https://github.com/horriblename)
|
||||
([Liberapay](https://liberapay.com/horriblename/))- For actively implementing
|
||||
planned features and quality of life updates.
|
||||
- [**@Soliprem**](https://github.com/soliprem) - For rigorously implementing
|
||||
missing features and excellent work on new language modules.
|
||||
|
||||
Please do remember to extend your thanks (financially or otherwise) if this
|
||||
project has been helpful to you.
|
||||
|
||||
### Contributors
|
||||
|
||||
[mnw]: https://github.com/gerg-l/mnw
|
||||
|
||||
nvf would not be what it is today without the awesome people below. Special,
|
||||
heart-felt thanks to
|
||||
|
||||
- [**@fufexan**](https://github.com/fufexan) - For the transition to flake-parts
|
||||
and invaluable Nix assistance.
|
||||
- [**@FlafyDev**](https://github.com/FlafyDev) - For getting Home-Manager module
|
||||
to work and Nix assistance.
|
||||
- [**@n3oney**](https://github.com/n3oney) - For making custom keybinds finally
|
||||
possible, great ideas and module additions.
|
||||
- [**@Yavko**](https://github.com/Yavko) - For the amazing **nvf** logo
|
||||
- [**@FrothyMarrow**](https://github.com/FrothyMarrow) - For seeing mistakes
|
||||
that I could not and contributing good ideas & code.
|
||||
- [**@Gerg-l**](https://github.com/gerg-l) 🐸 - For the modern Neovim wrapper,
|
||||
[mnw], and occasional improvements to the codebase.
|
||||
- [**@Diniamo**](https://github.com/Diniamo) - For actively submitting pull
|
||||
requests, issues and assistance with co-maintenance of nvf.
|
||||
|
||||
and everyone who has submitted issues or pull requests!
|
||||
|
||||
### Inspiration
|
||||
|
||||
This configuration borrows from, and is based on a few other configurations,
|
||||
including:
|
||||
|
||||
- [@jordanisaacs's](https://github.com/jordanisaacs)
|
||||
[**neovim-flake**](https://github.com/jordanisaacs/neovim-flake) that this
|
||||
flake is originally based on.
|
||||
- [@wiltaylor's](https://github.com/wiltaylor)
|
||||
[neovim-flake](https://github.com/wiltaylor/neovim-flake) for plugin and
|
||||
design ideas.
|
||||
- [@gvolpe's](https://github.com/gvolpe)
|
||||
[neovim-flake](https://github.com/gvolpe/neovim-flake) for plugin, design and
|
||||
nix concepts.
|
||||
- [@sioodmy's](https://github.com/sioodmy)
|
||||
[dotfiles](https://github.com/sioodmy/dotfiles) that inspired the design
|
||||
choices for UI and plugin defaults.
|
||||
|
||||
I am grateful for their previous work and inspiration, and I wholeheartedly
|
||||
recommend checking their work out.
|
||||
|
||||
## License
|
||||
|
||||
Following the license of
|
||||
[the original neovim-flake](https://github.com/jordanisaacs/neovim-flake), nvf
|
||||
has been made available under the [**MIT License**](LICENSE). However, all
|
||||
assets and documentation are published under the
|
||||
[**CC BY License**](https://github.com/NotAShelf/nvf/blob/main/.github/assets/LICENSE)
|
||||
under explicit permission by the author or authors.
|
||||
|
||||
<h6 align="center">Yes, this includes the logo work too. Stop taking artwork that is not yours!</h6>
|
||||
|
||||
---
|
||||
|
||||
<div align="right">
|
||||
<a href="#readme">Back to the Top</a>
|
||||
</div>
|
2
.github/workflows/backport.yml
vendored
2
.github/workflows/backport.yml
vendored
|
@ -17,7 +17,7 @@ jobs:
|
|||
if: |
|
||||
github.event.pull_request.merged == true && startsWith(github.event.label.name, 'backport-')
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v5
|
||||
with:
|
||||
ref: ${{ github.event.pull_request.head.sha }}
|
||||
token: ${{ steps.app-token.outputs.token }}
|
||||
|
|
2
.github/workflows/cachix.yml
vendored
2
.github/workflows/cachix.yml
vendored
|
@ -21,7 +21,7 @@ jobs:
|
|||
- nix
|
||||
- maximal
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v5
|
||||
name: Checkout
|
||||
|
||||
- name: Install Nix
|
||||
|
|
26
.github/workflows/check.yml
vendored
26
.github/workflows/check.yml
vendored
|
@ -17,7 +17,7 @@ jobs:
|
|||
if: "!contains(github.event.pull_request.title, '[skip ci]')"
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
|
||||
- name: Install Nix
|
||||
uses: DeterminateSystems/nix-installer-action@main
|
||||
|
@ -31,7 +31,7 @@ jobs:
|
|||
if: "!contains(github.event.pull_request.title, '[skip ci]')"
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
|
||||
- name: Install Nix
|
||||
uses: DeterminateSystems/nix-installer-action@main
|
||||
|
@ -39,13 +39,24 @@ jobs:
|
|||
- name: Check formatting via Alejandra
|
||||
run: nix run nixpkgs#alejandra -- --check . --exclude npins
|
||||
|
||||
- name: Check formatting via Deno
|
||||
run: nix run nixpkgs#deno -- fmt --check --ext md **/*.md
|
||||
|
||||
- if: ${{ failure() }}
|
||||
shell: bash
|
||||
run: |
|
||||
echo "::error:: Current codebase contains formatting errors that were caught by the CI!"
|
||||
echo "Please ensure that all Nix code is formatted with Alejandra, and Markdown with `deno fmt"
|
||||
echo "[skip ci] label may be added to the PR title if this is a one-time issue and is safe to ignore"
|
||||
exit 1
|
||||
|
||||
check-typos:
|
||||
name: "Check source tree for typos"
|
||||
runs-on: ubuntu-latest
|
||||
if: "!contains(github.event.pull_request.title, '[skip ci]')"
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
|
||||
- name: Check for typos
|
||||
uses: crate-ci/typos@master
|
||||
|
@ -76,7 +87,7 @@ jobs:
|
|||
uses: DeterminateSystems/nix-installer-action@main
|
||||
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
|
||||
- name: Set default git branch (to reduce log spam)
|
||||
run: git config --global init.defaultBranch main
|
||||
|
@ -104,7 +115,7 @@ jobs:
|
|||
uses: DeterminateSystems/nix-installer-action@main
|
||||
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
|
||||
- name: Build linkcheck package
|
||||
run: nix build .#docs-linkcheck -Lv
|
||||
|
@ -115,7 +126,7 @@ jobs:
|
|||
if: "!contains(github.event.pull_request.title, '[skip ci]')"
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
with:
|
||||
fetch-depth: 2 # slows down checkout, but we need to compare against the previous commit on push events
|
||||
|
||||
|
@ -142,7 +153,8 @@ jobs:
|
|||
- name: Checking Editorconfig conformance
|
||||
shell: bash
|
||||
run: |
|
||||
< "$HOME/changed_files" nix-shell -p editorconfig-checker --run 'xargs -r editorconfig-checker -disable-indent-size'
|
||||
< "$HOME/changed_files" nix-shell -p editorconfig-checker \
|
||||
--run 'xargs -r editorconfig-checker -disable-indent-size --exclude flake.lock'
|
||||
|
||||
- if: ${{ failure() }}
|
||||
shell: bash
|
||||
|
|
2
.github/workflows/cleanup.yml
vendored
2
.github/workflows/cleanup.yml
vendored
|
@ -14,7 +14,7 @@ jobs:
|
|||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: "Checkout"
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
|
||||
- name: "Delete old branches"
|
||||
uses: beatlabs/delete-old-branches-action@v0.0.11
|
||||
|
|
6
.github/workflows/docs-preview.yml
vendored
6
.github/workflows/docs-preview.yml
vendored
|
@ -28,7 +28,7 @@ jobs:
|
|||
uses: DeterminateSystems/nix-installer-action@main
|
||||
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
|
||||
- name: Set default git branch (to reduce log spam)
|
||||
run: git config --global init.defaultBranch main
|
||||
|
@ -127,7 +127,7 @@ jobs:
|
|||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
|
||||
- name: Delete preview for closed/merged PR
|
||||
run: |
|
||||
|
@ -164,7 +164,7 @@ jobs:
|
|||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
|
||||
- name: Double check preview directory deletion
|
||||
run: |
|
||||
|
|
4
.github/workflows/manual.yml
vendored
4
.github/workflows/manual.yml
vendored
|
@ -28,7 +28,7 @@ jobs:
|
|||
outputs:
|
||||
should_run: ${{ steps.should_run.outputs.should_run }}
|
||||
steps:
|
||||
- uses: actions/checkout@v4.1.7
|
||||
- uses: actions/checkout@v5
|
||||
- name: print latest_commit
|
||||
run: echo ${{ github.sha }}
|
||||
|
||||
|
@ -43,7 +43,7 @@ jobs:
|
|||
if: ${{ needs.check_date.outputs.should_run != 'false' }}
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4.1.7
|
||||
- uses: actions/checkout@v5
|
||||
- uses: DeterminateSystems/nix-installer-action@main
|
||||
- run: |
|
||||
nix build .#docs -Lv
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue