Compare commits

...

6 commits

Author SHA1 Message Date
ppenguin
5952e60f0f
add language HCL
Terraform doesn't register hcl and doesn't offer good DX if manually set
for editing e.g. nomad HCL files.

Incl. reformat with alejandra
2024-08-30 16:31:44 +02:00
c757d28ff7
flake: update nixpkgs input
Some checks failed
Set up binary cache / cachix (default) (push) Has been cancelled
Set up binary cache / cachix (maximal) (push) Has been cancelled
Set up binary cache / cachix (nix) (push) Has been cancelled
Validate flake & check formatting / Validate Flake (push) Has been cancelled
Validate flake & check formatting / Formatting via Alejandra (push) Has been cancelled
2024-08-27 22:27:51 +03:00
Ching Pei Yang
e949a51c55
rust/clang: update lldb binary name (#365)
Some checks failed
Set up binary cache / cachix (default) (push) Has been cancelled
Set up binary cache / cachix (maximal) (push) Has been cancelled
Set up binary cache / cachix (nix) (push) Has been cancelled
Validate flake & check formatting / Validate Flake (push) Has been cancelled
Validate flake & check formatting / Formatting via Alejandra (push) Has been cancelled
2024-08-24 17:48:20 +00:00
Ching Pei Yang
473ebea4cf
theme: fix broken function signatures (#364)
Some checks are pending
Set up binary cache / cachix (default) (push) Waiting to run
Set up binary cache / cachix (maximal) (push) Waiting to run
Set up binary cache / cachix (nix) (push) Waiting to run
Validate flake & check formatting / Validate Flake (push) Waiting to run
Validate flake & check formatting / Formatting via Alejandra (push) Waiting to run
2024-08-24 12:12:20 +00:00
Gerg-L
fc2e5998e7
flake.lock: Update (#363)
Flake lock file updates:

• Updated input 'mnw':
    'github:Gerg-L/mnw/e06b48c51291cc1df08adcd34a8796f86d5b235e?narHash=sha256-qimVBdes%2B2gNRRcyFoIUA1RyOKV0Ee40hUaVVf7ZsNs%3D' (2024-08-22)
  → 'github:Gerg-L/mnw/c261925dbbf02f523af0e8add844df64fddf0359?narHash=sha256-SMgnviF6ofBPbyV3%2BrljPGcX0Hn9HBOhgXE10Cyjaic%3D' (2024-08-23)
2024-08-24 10:47:26 +00:00
Gerg-L
25fe1c4625
flake.lock: Update (#362)
Some checks failed
Set up binary cache / cachix (default) (push) Has been cancelled
Set up binary cache / cachix (maximal) (push) Has been cancelled
Set up binary cache / cachix (nix) (push) Has been cancelled
Validate flake & check formatting / Validate Flake (push) Has been cancelled
Validate flake & check formatting / Formatting via Alejandra (push) Has been cancelled
Flake lock file updates:

• Updated input 'mnw':
    'github:Gerg-L/mnw/c7b289f3f5a31b6e744be37d83fc231816621231?narHash=sha256-YF//iMALbrd2Ni9aju7w8NniH16Qz6RFTRD6md5UkDc%3D' (2024-07-28)
  → 'github:Gerg-L/mnw/e06b48c51291cc1df08adcd34a8796f86d5b235e?narHash=sha256-qimVBdes%2B2gNRRcyFoIUA1RyOKV0Ee40hUaVVf7ZsNs%3D' (2024-08-22)
2024-08-22 23:42:51 +00:00
6 changed files with 2107 additions and 2022 deletions

View file

@ -69,11 +69,11 @@
}, },
"mnw": { "mnw": {
"locked": { "locked": {
"lastModified": 1722191188, "lastModified": 1724456641,
"narHash": "sha256-YF//iMALbrd2Ni9aju7w8NniH16Qz6RFTRD6md5UkDc=", "narHash": "sha256-SMgnviF6ofBPbyV3+rljPGcX0Hn9HBOhgXE10Cyjaic=",
"owner": "Gerg-L", "owner": "Gerg-L",
"repo": "mnw", "repo": "mnw",
"rev": "c7b289f3f5a31b6e744be37d83fc231816621231", "rev": "c261925dbbf02f523af0e8add844df64fddf0359",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -84,7 +84,10 @@
}, },
"naersk": { "naersk": {
"inputs": { "inputs": {
"nixpkgs": ["rnix-lsp", "nixpkgs"] "nixpkgs": [
"rnix-lsp",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1655042882, "lastModified": 1655042882,
@ -102,8 +105,12 @@
}, },
"nil": { "nil": {
"inputs": { "inputs": {
"flake-utils": ["flake-utils"], "flake-utils": [
"nixpkgs": ["nixpkgs"], "flake-utils"
],
"nixpkgs": [
"nixpkgs"
],
"rust-overlay": "rust-overlay" "rust-overlay": "rust-overlay"
}, },
"locked": { "locked": {
@ -122,11 +129,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1722141560, "lastModified": 1724395761,
"narHash": "sha256-Ul3rIdesWaiW56PS/Ak3UlJdkwBrD4UcagCmXZR9Z7Y=", "narHash": "sha256-zRkDV/nbrnp3Y8oCADf5ETl1sDrdmAW6/bBVJ8EbIdQ=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "038fb464fcfa79b4f08131b07f2d8c9a6bcc4160", "rev": "ae815cee91b417be55d43781eb4b73ae1ecc396c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1932,8 +1939,14 @@
}, },
"rust-overlay": { "rust-overlay": {
"inputs": { "inputs": {
"flake-utils": ["nil", "flake-utils"], "flake-utils": [
"nixpkgs": ["nil", "nixpkgs"] "nil",
"flake-utils"
],
"nixpkgs": [
"nil",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1714529851, "lastModified": 1714529851,

View file

@ -57,7 +57,7 @@
dapConfig = '' dapConfig = ''
dap.adapters.lldb = { dap.adapters.lldb = {
type = 'executable', type = 'executable',
command = '${cfg.dap.package}/bin/lldb-vscode', command = '${cfg.dap.package}/bin/lldb-dap',
name = 'lldb' name = 'lldb'
} }
dap.configurations.cpp = { dap.configurations.cpp = {

View file

@ -8,6 +8,7 @@ in {
./css.nix ./css.nix
./elixir.nix ./elixir.nix
./go.nix ./go.nix
./hcl.nix
./html.nix ./html.nix
./java.nix ./java.nix
./lua.nix ./lua.nix

View file

@ -0,0 +1,71 @@
{
config,
pkgs,
lib,
...
}: let
inherit (lib.options) mkEnableOption mkOption;
inherit (lib.modules) mkIf mkMerge;
inherit (lib.types) package;
inherit (lib.nvim.types) mkGrammarOption;
cfg = config.vim.languages.hcl;
in {
options.vim.languages.hcl = {
enable = mkEnableOption "HCL support";
treesitter = {
enable = mkEnableOption "HCL treesitter" // {default = config.vim.languages.enableTreesitter;};
package = mkGrammarOption pkgs "hcl";
};
lsp = {
enable = mkEnableOption "HCL LSP support (terraform-ls)" // {default = config.vim.languages.enableLSP;};
# TODO: it would be cooler to use vscode-extensions.hashicorp.hcl probably, shouldn't be too hard
# TODO: formatter, suppied by above or ...
# FIXME: or should we somehow integrate this:
#` https://git.mzte.de/nvim-plugins/null-ls.nvim/commit/e1fb7e2b2e4400835e23b9603a19813be119852b ??
package = mkOption {
description = "HCL ls package (terraform-ls)";
type = package;
default = pkgs.terraform-ls;
};
};
};
config = mkIf cfg.enable (mkMerge [
{
vim.pluginRC.hcl = ''
vim.api.nvim_create_autocmd("FileType", {
pattern = "hcl",
callback = function(opts)
local bo = vim.bo[opts.buf]
bo.tabstop = 2
bo.shiftwidth = 2
bo.softtabstop = 2
end
})
local ft = require('Comment.ft')
ft
.set('hcl', '#%s')
'';
}
(mkIf cfg.treesitter.enable {
vim.treesitter.enable = true;
vim.treesitter.grammars = [cfg.treesitter.package];
})
(mkIf cfg.lsp.enable {
vim.lsp.lspconfig.enable = true;
vim.lsp.lspconfig.sources = lib.optionalAttrs (! config.vim.languages.terraform.lsp.enable) {
terraform-ls = ''
lspconfig.terraformls.setup {
capabilities = capabilities,
on_attach=default_on_attach,
cmd = {"${cfg.lsp.package}/bin/terraform-ls", "serve"},
}
'';
};
})
]);
}

View file

@ -173,7 +173,7 @@ in {
dap = { dap = {
adapter = { adapter = {
type = "executable", type = "executable",
command = "${cfg.dap.package}/bin/lldb-vscode", command = "${cfg.dap.package}/bin/lldb-dap",
name = "rustacean_lldb", name = "rustacean_lldb",
}, },
}, },

View file

@ -6,7 +6,7 @@
inherit (lib.trivial) boolToString warnIf; inherit (lib.trivial) boolToString warnIf;
in { in {
onedark = { onedark = {
setup = {style ? "dark"}: '' setup = {style ? "dark", ...}: ''
-- OneDark theme -- OneDark theme
require('onedark').setup { require('onedark').setup {
style = "${style}" style = "${style}"
@ -30,7 +30,7 @@ in {
}; };
dracula = { dracula = {
setup = {transparent}: '' setup = {transparent, ...}: ''
require('dracula').setup({ require('dracula').setup({
transparent_bg = ${boolToString transparent}, transparent_bg = ${boolToString transparent},
}); });