feat: more work on nvim config
This commit is contained in:
parent
860cb11bcc
commit
bcf4783d95
|
@ -4,11 +4,32 @@ local g = vim.g -- a table to access global variables
|
||||||
local opt = vim.opt -- to set options
|
local opt = vim.opt -- to set options
|
||||||
|
|
||||||
-- Basic options
|
-- Basic options
|
||||||
|
opt.joinspaces = false -- No double spaces with join
|
||||||
|
opt.list = true -- Show some invisible characters
|
||||||
|
|
||||||
opt.number = true -- Show line numbers
|
opt.number = true -- Show line numbers
|
||||||
opt.relativenumber = true -- Relative line numbers
|
opt.relativenumber = true -- Relative line numbers
|
||||||
|
|
||||||
|
opt.scrolloff = 4 -- Lines of context
|
||||||
|
opt.shiftround = true -- Round indent
|
||||||
|
opt.shiftwidth = 2 -- Size of an indent
|
||||||
|
opt.termguicolors = true -- True color support
|
||||||
|
|
||||||
|
opt.ignorecase = true -- Ignore case
|
||||||
|
opt.smartcase = true -- Do not ignore case with capitals
|
||||||
|
|
||||||
|
opt.smartindent = true -- Insert indents automatically
|
||||||
|
|
||||||
|
opt.splitbelow = true -- Put new windows below current
|
||||||
|
opt.splitright = true -- Put new windows right of current
|
||||||
|
|
||||||
|
opt.wrap = false -- Disable line wrap
|
||||||
|
opt.wildmode = {'list', 'longest'} -- Command-line completion mode
|
||||||
|
|
||||||
-- Set theme
|
-- Set theme
|
||||||
require('github-theme').setup()
|
require('github-theme').setup({
|
||||||
|
theme_style = "light"
|
||||||
|
})
|
||||||
|
|
||||||
-- Import my other files
|
-- Import my other files
|
||||||
require('my.keymaps').setup()
|
require('my.keymaps').setup()
|
||||||
|
|
|
@ -8,4 +8,6 @@ end
|
||||||
|
|
||||||
function M.setup()
|
function M.setup()
|
||||||
map("i", "jj", "<Esc>") -- Remap Esc to
|
map("i", "jj", "<Esc>") -- Remap Esc to
|
||||||
end
|
end
|
||||||
|
|
||||||
|
return M
|
82
flake.lock
82
flake.lock
|
@ -64,7 +64,38 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"flake-compat_2": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1641205782,
|
||||||
|
"narHash": "sha256-4jY7RCWUoZ9cKD8co0/4tFARpWB+57+r1bLLvXNJliY=",
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"rev": "b7547d3eed6f32d06102ead8991ec52ab0a4f1a7",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"flake-utils": {
|
"flake-utils": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1629481132,
|
||||||
|
"narHash": "sha256-JHgasjPR0/J1J3DRm4KxM4zTyAj4IOJY8vIl75v/kPI=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "997f7efcb746a9c140ce1f13c72263189225f482",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-utils_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1638122382,
|
"lastModified": 1638122382,
|
||||||
"narHash": "sha256-sQzZzAbvKEqN9s0bzWuYmRaA03v40gaJ4+iL1LXjaeI=",
|
"narHash": "sha256-sQzZzAbvKEqN9s0bzWuYmRaA03v40gaJ4+iL1LXjaeI=",
|
||||||
|
@ -115,6 +146,52 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"neovim-flake": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-utils": "flake-utils",
|
||||||
|
"nixpkgs": [
|
||||||
|
"neovim-nightly-overlay",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"dir": "contrib",
|
||||||
|
"lastModified": 1643521936,
|
||||||
|
"narHash": "sha256-qXtpIBP8wcUIAywqHehlxpaZnwG7spFsb36kDYQXCKQ=",
|
||||||
|
"owner": "neovim",
|
||||||
|
"repo": "neovim",
|
||||||
|
"rev": "9aaf7a2b4dfe9d3f9a1861e7ca85b6bbd4e34e05",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"dir": "contrib",
|
||||||
|
"owner": "neovim",
|
||||||
|
"repo": "neovim",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"neovim-nightly-overlay": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": "flake-compat",
|
||||||
|
"neovim-flake": "neovim-flake",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1643530359,
|
||||||
|
"narHash": "sha256-RdCG+OXV3j57BFTyJSXy/Ko1LAM571JV9DiAtIdo0HM=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "neovim-nightly-overlay",
|
||||||
|
"rev": "e2eaf9379b15c9ee017b0505e9282204b2f29f80",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "neovim-nightly-overlay",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nixos-unstable": {
|
"nixos-unstable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1642903813,
|
"lastModified": 1642903813,
|
||||||
|
@ -186,6 +263,7 @@
|
||||||
"easy-purescript-nix": "easy-purescript-nix",
|
"easy-purescript-nix": "easy-purescript-nix",
|
||||||
"githubNvimTheme": "githubNvimTheme",
|
"githubNvimTheme": "githubNvimTheme",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
|
"neovim-nightly-overlay": "neovim-nightly-overlay",
|
||||||
"nixos-unstable": "nixos-unstable",
|
"nixos-unstable": "nixos-unstable",
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs",
|
||||||
"nixpkgs-unstable": "nixpkgs-unstable",
|
"nixpkgs-unstable": "nixpkgs-unstable",
|
||||||
|
@ -195,8 +273,8 @@
|
||||||
},
|
},
|
||||||
"vim-extra-plugins": {
|
"vim-extra-plugins": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat",
|
"flake-compat": "flake-compat_2",
|
||||||
"flake-utils": "flake-utils",
|
"flake-utils": "flake-utils_2",
|
||||||
"nixpkgs": "nixpkgs_2"
|
"nixpkgs": "nixpkgs_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
|
|
15
flake.nix
15
flake.nix
|
@ -24,6 +24,9 @@
|
||||||
githubNvimTheme.url = "github:projekt0n/github-nvim-theme";
|
githubNvimTheme.url = "github:projekt0n/github-nvim-theme";
|
||||||
githubNvimTheme.flake = false;
|
githubNvimTheme.flake = false;
|
||||||
|
|
||||||
|
neovim-nightly-overlay.url = "github:nix-community/neovim-nightly-overlay";
|
||||||
|
neovim-nightly-overlay.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
||||||
vim-extra-plugins.url = "github:m15a/nixpkgs-vim-extra-plugins";
|
vim-extra-plugins.url = "github:m15a/nixpkgs-vim-extra-plugins";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -32,13 +35,23 @@
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
provideInputs =
|
provideInputs =
|
||||||
import ./modules/overlays/flakes.nix { inherit system; } inputs;
|
import ./modules/overlays/flakes.nix { inherit system; } inputs;
|
||||||
|
|
||||||
|
overlays = { ... }: {
|
||||||
|
nix.registry.nixpkgs.flake = nixpkgs;
|
||||||
|
nixpkgs.overlays = [
|
||||||
|
inputs.vim-extra-plugins.overlay
|
||||||
|
inputs.neovim-nightly-overlay.overlay
|
||||||
|
provideInputs
|
||||||
|
];
|
||||||
|
};
|
||||||
in {
|
in {
|
||||||
|
|
||||||
nixosConfigurations.nixos = nixpkgs.lib.nixosSystem {
|
nixosConfigurations.nixos = nixpkgs.lib.nixosSystem {
|
||||||
inherit system;
|
inherit system;
|
||||||
|
|
||||||
modules = [
|
modules = [
|
||||||
home-manager.nixosModules.home-manager
|
home-manager.nixosModules.home-manager
|
||||||
provideInputs
|
overlays
|
||||||
./hardware/laptop.nix
|
./hardware/laptop.nix
|
||||||
./configuration.nix
|
./configuration.nix
|
||||||
];
|
];
|
||||||
|
|
|
@ -15,6 +15,7 @@
|
||||||
./alacritty.nix
|
./alacritty.nix
|
||||||
./rofi.nix
|
./rofi.nix
|
||||||
./postgres.nix
|
./postgres.nix
|
||||||
|
./neovim.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -34,7 +34,6 @@
|
||||||
# vscodium
|
# vscodium
|
||||||
vscode
|
vscode
|
||||||
vim
|
vim
|
||||||
my-neovim
|
|
||||||
# emacs
|
# emacs
|
||||||
|
|
||||||
# chat apps
|
# chat apps
|
||||||
|
|
|
@ -1,14 +1,20 @@
|
||||||
{ wrapNeovim, neovim, tree-sitter, config-nvim, vimPlugins, vimExtraPlugins }:
|
{ pkgs, ... }:
|
||||||
|
let
|
||||||
|
config-nvim = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
||||||
|
name = "config-nvim";
|
||||||
|
src = ../../dotfiles/neovim;
|
||||||
|
};
|
||||||
|
in {
|
||||||
|
home-manager.users.adrielus.programs.neovim = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.neovim-nightly;
|
||||||
|
|
||||||
wrapNeovim neovim {
|
extraConfig = ''
|
||||||
configure = {
|
|
||||||
customRC = ''
|
|
||||||
let g:disable_paq = v:true
|
let g:disable_paq = v:true
|
||||||
luafile ${config-nvim}/init.lua
|
luafile ${config-nvim}/init.lua
|
||||||
'';
|
'';
|
||||||
|
|
||||||
packages.default = with vimExtraPlugins; {
|
plugins = with pkgs.vimExtraPlugins; [ config-nvim github-nvim-theme ];
|
||||||
start = [ config-nvim vimExtraPlugins.github-nvim-theme ];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1 @@
|
||||||
{ pkgs, ... }: {
|
{ pkgs, ... }: { nixpkgs.overlays = [ (import ./tweakSources.nix) ]; }
|
||||||
nixpkgs.overlays = [
|
|
||||||
(import ./tweakSources.nix)
|
|
||||||
# neovim with my own config baked in
|
|
||||||
(import ./neovim.nix)
|
|
||||||
];
|
|
||||||
}
|
|
||||||
|
|
|
@ -1,32 +1,25 @@
|
||||||
{ system }:
|
{ system }:
|
||||||
{ home-manager, nixpkgs, nixpkgs-unstable, nixos-unstable, easy-purescript-nix
|
{ home-manager, nixpkgs, nixpkgs-unstable, nixos-unstable, easy-purescript-nix
|
||||||
, easy-dhall-nix, z, agnoster, githubNvimTheme, vim-extra-plugins, ... }:
|
, easy-dhall-nix, z, agnoster, githubNvimTheme, vim-extra-plugins, ... }:
|
||||||
({ pkgs, ... }: {
|
(self: super: {
|
||||||
nix.registry.nixpkgs.flake = nixpkgs;
|
unstable = import nixpkgs-unstable {
|
||||||
nixpkgs.overlays = [
|
inherit system;
|
||||||
vim-extra-plugins.overlay
|
config.allowUnfree = true;
|
||||||
(self: super: {
|
config.allowBroken = true;
|
||||||
# inherit nixos-unstable;
|
};
|
||||||
unstable = import nixpkgs-unstable {
|
|
||||||
inherit system;
|
|
||||||
config.allowUnfree = true;
|
|
||||||
config.allowBroken = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
easy-purescript-nix = import easy-purescript-nix { inherit pkgs; };
|
easy-purescript-nix = self.callPackage easy-purescript-nix { };
|
||||||
easy-dhall-nix = import easy-dhall-nix { inherit pkgs; };
|
easy-dhall-nix = self.callPackage easy-dhall-nix { };
|
||||||
|
|
||||||
z = {
|
z = {
|
||||||
src = z;
|
src = z;
|
||||||
name = "z";
|
name = "z";
|
||||||
};
|
};
|
||||||
|
|
||||||
agnoster = {
|
agnoster = {
|
||||||
src = agnoster;
|
src = agnoster;
|
||||||
name = "agnoster";
|
name = "agnoster";
|
||||||
};
|
};
|
||||||
|
|
||||||
githubNvimTheme = githubNvimTheme;
|
githubNvimTheme = githubNvimTheme;
|
||||||
})
|
|
||||||
];
|
|
||||||
})
|
})
|
||||||
|
|
|
@ -1,14 +0,0 @@
|
||||||
final: prev:
|
|
||||||
|
|
||||||
let
|
|
||||||
config-nvim = final.vimUtils.buildVimPluginFrom2Nix {
|
|
||||||
name = "config-nvim";
|
|
||||||
src = ../../dotfiles/neovim;
|
|
||||||
};
|
|
||||||
|
|
||||||
in {
|
|
||||||
my-neovim = final.callPackage ../applications/neovim.nix {
|
|
||||||
neovim = final.neovim-nightly;
|
|
||||||
inherit config-nvim;
|
|
||||||
};
|
|
||||||
}
|
|
Loading…
Reference in a new issue