Skip to content

octocron/megavim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

👊 Thank You!!

🌆 Preview



📖 Resources

RTFM
NüschtOS
NVIM Options

🔌 Features

Codium: with ability to connect project context to your account.
Hardtime: For forcing you to learn vim, and get hint of better ways.
Precognition: For vim suggestions.
Glow: To toggle markdown preview.
LazyGit: For easy git management.
Linting, formatting, syntax highlighting, etc...for most languages.
Keep context for deeply nested code.

A Nix version of Neovim.
Nixvim input is locked to prevent breaking changes but updated every few months.

🕹️ Commands

For the bufferline tabs use alt+h | alt+l to toggle between tabs.
These commands are also used with spacebar menu list.
Just to list to make you aware of them.

:h holy-grail                   # see everything vim can do
:Telescope keymaps              # search set keymaps

🔩 How to Run

If using nix you can try with either gitlab or github:

nix run gitlab:megacron/megavim

nix run github:octocron/megavim

💾 Direct Install

You can also plug this into a flake to include it into a system configuration.
Make sure that neovim is UNINSTALLED!! Otherwise megavim cannot set itself as default!

# flake.nix use with ref to ensure it pulls from the correct branch with latest.
{
  inputs = {
    megavim.url = "gitlab:megacron/megavim?ref=nixvim";
  };
}
# configuration.nix // choose either NixOS or home-manager
{ inputs, system, ... }:
{
  # NixOS
  environment.systemPackages = [ inputs.megavim.packages.${pkgs.system}.default ];
  # home-manager
  home.packages = [ inputs.megavim.packages.${pkgs.system}.default ];
}

When installed this way there may come a time you want to update megavim without
updating the whole system (flake). We can pick a single input this way:

# Check for and update only megavim
nix flake lock --update-input megavim

# if the lock file update just do a rebuild
sudo nixos-rebuild switch --flake ~/some/path/

📌 Overlay

This input can then be used as an overlay to replace the default neovim.
This means that we DO install neovim, then overlay it.

{ megavim, ... }:
{
  overlays = (final: prev: {
    neovim = megavim.packages.${prev.system}.default;
  });
}

🔮 In devShell

devShells.default = nixpkgs.mkShell {
  nativeBuildInputs = [ megavim.packages.${pkgs.system}.default ];
};

You can find more information on building your own flake
here.

About

Contains a branch for a build in both lua and nix.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages