Compare commits

...

5 commits

Author SHA1 Message Date
Ching Pei Yang
0d2c3a600d
docs: fix markdown formatting (#1117) 2025-08-30 12:22:07 +02:00
Valter Schütz
8ab27a131e
languages/python: add formatter that combines ruff format with ruff check --fix (#1072)
* languages/python: add formatting option for `ruff check --fix`

* docs: remove unrelated changes

---------

Co-authored-by: Valter Schütz <valterschutz@proton.me>
Co-authored-by: Ching Pei Yang <59727193+horriblename@users.noreply.github.com>
2025-08-30 12:15:38 +02:00
Ching Pei Yang
d2ceb1b610
Merge pull request #1101 from gmvar/lsp/harper-ls
lsp/harper-ls: init
2025-08-30 12:05:39 +02:00
Ching Pei Yang
3f974fbe60
Merge branch 'v0.8' into lsp/harper-ls 2025-08-30 12:02:48 +02:00
gmvar
c752aaa24f lsp/harper-ls: init 2025-08-25 09:22:16 -07:00
8 changed files with 88 additions and 2 deletions

View file

@ -31,6 +31,7 @@ isMaximal: {
lspSignature.enable = !isMaximal; # conflicts with blink in maximal
otter-nvim.enable = isMaximal;
nvim-docs-view.enable = isMaximal;
harper-ls.enable = isMaximal;
};
debugger = {

View file

@ -43,7 +43,8 @@ languages have sections under the `vim.languages` attribute.
- Scala: [vim.languages.scala.enable](#opt-vim.languages.scala.enable)
- Svelte: [vim.languages.svelte.enable](#opt-vim.languages.svelte.enable)
- Tailwind: [vim.languages.tailwind.enable](#opt-vim.languages.tailwind.enable)
- Terraform: [vim.languages.terraform.enable](#opt-vim.languages.terraform.enable)
- Terraform:
[vim.languages.terraform.enable](#opt-vim.languages.terraform.enable)
- Typst: [vim.languages.typst.enable](#opt-vim.languages.typst.enable)
- Vala: [vim.languages.vala.enable](#opt-vim.languages.vala.enable)
- WGSL: [vim.languages.wgsl.enable](#opt-vim.languages.wgsl.enable)

View file

@ -113,7 +113,8 @@
[sjcobb2022](https://github.com/sjcobb2022):
- Migrate all current lsp configurations to `vim.lsp.server` and remove internal dependency on `nvim-lspconfig`
- Migrate all current lsp configurations to `vim.lsp.server` and remove internal
dependency on `nvim-lspconfig`
[amadaluzia](https://github.com/amadaluzia):
@ -528,6 +529,18 @@
- Fixed `typescript` treesitter grammar not being included by default.
[valterschutz](https://github.com/valterschutz):
[ruff]: (https://github.com/astral-sh/ruff)
- Add [ruff-fix] as a formatter option in `vim.languages.python.format.type`.
[gmvar](https://github.com/gmvar):
[harper-ls]: https://github.com/Automattic/harper
- Add [harper-ls] to the `vim.lsp` module.
[derethil](https://github.com/derethil):
- Fix `vim.lazy.plugins.<name>.enabled` Lua evaluation.

View file

@ -149,6 +149,16 @@
'';
};
};
ruff-check = {
package = pkgs.writeShellApplication {
name = "ruff-check";
runtimeInputs = [pkgs.ruff];
text = ''
ruff check --fix --exit-zero -
'';
};
};
};
defaultDebugger = "debugpy";

View file

@ -7,6 +7,7 @@
./lspconfig
./lspsaga
./null-ls
./harper-ls
# lsp plugins
./lspsaga

View file

@ -0,0 +1,19 @@
{
config,
lib,
pkgs,
...
}: let
inherit (lib.modules) mkIf;
inherit (lib.meta) getExe;
cfg = config.vim.lsp;
in {
config = mkIf (cfg.enable && cfg.harper-ls.enable) {
vim.lsp.servers.harper-ls = {
root_markers = [".git"];
cmd = [(getExe pkgs.harper) "--stdio"];
settings = {harper-ls = cfg.harper-ls.settings;};
};
};
}

View file

@ -0,0 +1,6 @@
{
imports = [
./harper-ls.nix
./config.nix
];
}

View file

@ -0,0 +1,35 @@
{lib, ...}: let
inherit (lib.options) mkOption mkEnableOption;
inherit (lib.types) anything attrsOf;
in {
options.vim.lsp.harper-ls = {
enable = mkEnableOption "Harper grammar checking LSP";
settings = mkOption {
type = attrsOf anything;
default = {};
example = {
userDictPath = "";
workspaceDictPath = "";
fileDictPath = "";
linters = {
BoringWords = true;
PossessiveNoun = true;
SentenceCapitalization = false;
SpellCheck = false;
};
codeActions = {
ForceStable = false;
};
markdown = {
IgnoreLinkTitle = false;
};
diagnosticSeverity = "hint";
isolateEnglish = false;
dialect = "American";
maxFileLength = 120000;
ignoredLintsPath = {};
};
description = "Settings to pass to harper-ls";
};
};
}