Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/f1zm0/hypervim
modular configuration that extends Neovim into a modern code editor with IDE-like features
https://github.com/f1zm0/hypervim
dotfiles lua neovim neovim-config neovim-dotfiles rice ricing vim
Last synced: 8 days ago
JSON representation
modular configuration that extends Neovim into a modern code editor with IDE-like features
- Host: GitHub
- URL: https://github.com/f1zm0/hypervim
- Owner: f1zm0
- License: gpl-3.0
- Created: 2022-08-17T17:41:49.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-12-29T09:44:20.000Z (11 months ago)
- Last Synced: 2023-12-29T10:36:11.977Z (11 months ago)
- Topics: dotfiles, lua, neovim, neovim-config, neovim-dotfiles, rice, ricing, vim
- Language: Lua
- Homepage:
- Size: 1.84 MB
- Stars: 8
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
Hypervim is a modular and rice-friendly configuration written in Lua, that extends Neovim into a modern code editor with IDE-like features, while maintaining its speed.
Features •
Installation •
Keymaps## ☄️ Showcase
## ✨ Features
- 💡 Linting, Completion and formatting with [native LSP](https://neovim.io/doc/user/lsp.html), [nvim-cmp](https://github.com/hrsh7th/nvim-cmp) and [null-ls](https://github.com/jose-elias-alvarez/null-ls.nvim)
- 🩺 Diagnostics and quickfixes with [Trouble](https://github.com/folke/trouble.nvim)
- 🔀 Git integration with [gitsigns](https://github.com/lewis6991/gitsigns.nvim), [diffview](https://github.com/indrets/diffview.nvim) and [Neogit](https://github.com/TimUntersberger/neogit)
- ⚙️ Pain-free management of LSP servers, formatters and DAG adapters with [Mason](https://github.com/williamboman/mason.nvim)
- ✂️ Code snippets powered by [LuaSnip](https://github.com/sirverL3MON4D3/LuaSnip)
- 📁 Simple file browsing with [NvimTree](https://github.com/nvim-tree/nvim-tree.lua)
- 🪟 Session management with [auto-sessions](https://github.com/rmagatti/auto-session) and [session-lens](https://github.com/rmagatti/session-lens)
- 🌐 Live preview of md files with [MarkdownPreview](https://github.com/iamcco/markdown-preview.nvim)
- 👁️ Global statusline and Winbar with [lualine](https://github.com/nvim-lualine/lualine.nvim)
- 🤖 Copilot support with [copilot.lua](https://github.com/zbirenbaum/copilot.lua)## 🚀 Quickstart
### Requirements
The following tools are required:
- `nvim` (v0.8.0+)
- `node` (< v18.x.x if you use copilot), `npm`, `yarn`
- `curl`
- `ripgrep`
- `gcc` or `clang`
- `make`
- `unzip`
- a [nerdfont](https://www.nerdfonts.com/font-downloads)### Installation
Install Hypervim configuration with:
```sh
bash <(curl -s https://raw.githubusercontent.com/f1zm0/Hypervim/main/setup.sh)
```This process may take a few minutes. The setup script will take care of:
- cloning the config to `~/.config/hvim` (so that your current neovim config is not overwritten)
- installing Packer and the required plugins
- Creating a `hvim` launcher so you can run `hvim` for `Hypervim`, and keep `nvim` command for Neovim with standard or current config> **Note**
> Hypervim is alpha software. I'll do my best to keep the main branch as stable as possible and the documentation up-to-date, but this may not always be guaranteed at this stage.## ⌨️ Keymaps
Below are some of the most important keymaps. For a more comprehensive list of core and plugin-specific keymaps check out [defaults.lua](lua/hvim/defaults.lua)
Leader key: `,`
Basic Keymaps
🗺️| Function | Keymap |
| ------------------------- | ----------------------------------------- |
| Close everything and exit | leaderq |
| Sync packages | leaderps |
| Delete buffer | leaderd |
| Close window | leaderc |
| Expand window | leaderz |
| Open file explorer | leadere |
Navigation
🧭| Function | Keymap |
| ------------------------- | ------------------------------ |
| Navigate to left window | Ctrlh |
| Navigate to right window | Ctrll |
| Navigate to top window | Ctrlk |
| Navigate to bottom window | Ctrlj |
| Horizontal split | \\ |
| Vertical split | \| |
| Next buffer | Tab |
| Previous buffer | ShiftTab |
Telescope
🔭| Function | Keymap |
| ----------------------- | ----------------------------------------- |
| Find files (fzf syntax) | leaderff |
| Find buffers | leaderfb |
| Find notifications | leaderfn |
| Find with ripgrep | leaderfg |
| Next result | Ctrln |
| Previous result | Ctrlp |
Completion
✨| Function | Keymap |
| -------------------- | ------------------------------- |
| Open completion menu | CtrlSpace |
| Next suggestion | Ctrln |
| Previous suggestion | Ctrlp |
| Accept suggestion | Enter |
LSP
⚙️| Function | Keymap |
| ---------------------------- | -------------------------------- |
| Go to definition | gd |
| Go to declaration | gD |
| Show references | gr |
| Rename hovered item | rn |
| Show info about hovered item | K |
Diagnostics
🩺| Function | Keymap |
| ---------------------------------------- | ----------------------------------------- |
| Toggle (trouble) diagnostics panel | leadertt |
| Show error or warning at hovered line | T |
| Toggle preview of hovered trouble item | P |
| Open hovered trouble item in a new split | Ctrlx |
| Open hovered trouble item in a new tab | Ctrlt |
Markdown
📜| Function | Keymap |
| ---------------- | ----------------------------------------- |
| :MarkdownPreview | leadermp |
| :GenTOCGFM | leadermt |## 🤖 Copilot support
When you want to start using Copiot, you first need to run `:Copilot auth` command, and complete the authentication process.
For more info refer to the [plugin documentation](https://github.com/zbirenbaum/copilot.lua)
## 🛠️ Troubleshooting
### Markdown-Preview dependencies
If you run `:MarkdownPreview` and get an error message saying that `tslib` is not installed, you may need to install its dependencies manually, by going into `~/.local/share/nvim/site/pack/packer/start/markdown-preview.nvim` and running `yarn install`.
The issue is tracked here: [iamcco/markdown-preview/issues/188](https://github.com/iamcco/markdown-preview.nvim/issues/188)
## 🤝 Contributing
Any kind of contribution is welcome.
If you have any suggestions, ideas or bug reports, please open an issue.
## 🙏 Acknowledgements
Big shout-out to the Neovim community and to the creators of the following projects that have inspired this configuration:
- [LunarVim by Chris Chiarulli & contributors](https://github.com/LunarVim/LunarVim)
- [NvChad by siduck & contributors](https://github.com/NvChad/NvChad)
- All [plugins](lua/hvim/packer.lua#35) authors and contributors## 📖 License
This project is licensed under the GPL 3.0 License - see the [LICENSE](LICENSE) file for details.