mirror of
https://github.com/NotAShelf/nvf.git
synced 2026-02-04 02:45:53 +00:00
fun/syntax-gaslighting: add plugin
This commit is contained in:
parent
92854bd0ea
commit
b74e2f4c4e
7 changed files with 109 additions and 0 deletions
|
|
@ -174,6 +174,10 @@
|
|||
|
||||
- Added Makefile support via `languages.make`.
|
||||
|
||||
- Didn't Add
|
||||
[`syntax-gaslighting`](https://github.com/NotAShelf/syntax-gaslighting.nvim),
|
||||
you're crazy.
|
||||
|
||||
[vagahbond](https://github.com/vagahbond): [codewindow.nvim]:
|
||||
https://github.com/gorbit99/codewindow.nvim
|
||||
|
||||
|
|
|
|||
|
|
@ -47,6 +47,7 @@
|
|||
"ui"
|
||||
"utility"
|
||||
"visuals"
|
||||
"fun"
|
||||
];
|
||||
|
||||
# The neovim wrapper, used to build a wrapped neovim package
|
||||
|
|
|
|||
5
modules/plugins/fun/default.nix
Normal file
5
modules/plugins/fun/default.nix
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
imports = [
|
||||
./syntax-gaslighting
|
||||
];
|
||||
}
|
||||
20
modules/plugins/fun/syntax-gaslighting/config.nix
Normal file
20
modules/plugins/fun/syntax-gaslighting/config.nix
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
inherit (lib.modules) mkIf;
|
||||
inherit (lib.nvim.dag) entryAnywhere;
|
||||
inherit (lib.nvim.lua) toLuaObject;
|
||||
|
||||
cfg = config.vim.fun.syntax-gaslighting;
|
||||
in {
|
||||
config = mkIf cfg.enable {
|
||||
vim = {
|
||||
startPlugins = ["syntax-gaslighting"];
|
||||
pluginRC.colorful-menu-nvim = entryAnywhere ''
|
||||
require("syntax-gaslighting").setup(${toLuaObject cfg.setupOpts})
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
||||
6
modules/plugins/fun/syntax-gaslighting/default.nix
Normal file
6
modules/plugins/fun/syntax-gaslighting/default.nix
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
imports = [
|
||||
./syntax-gaslighting.nix
|
||||
./config.nix
|
||||
];
|
||||
}
|
||||
|
|
@ -0,0 +1,60 @@
|
|||
{lib, ...}: let
|
||||
inherit (lib.options) mkOption mkEnableOption;
|
||||
inherit (lib.types) int str nullOr listOf bool;
|
||||
inherit (lib.nvim.types) mkPluginSetupOption;
|
||||
in {
|
||||
options.vim.fun = {
|
||||
syntax-gaslighting = {
|
||||
enable = mkEnableOption "Thats no even a real option, you're crazy.";
|
||||
|
||||
setupOpts = mkPluginSetupOption "syntax-gaslighting" {
|
||||
gaslighting_chance = mkOption {
|
||||
type = nullOr int;
|
||||
default = 5;
|
||||
description = "Set the chance of gaslighting per line (1-100%).";
|
||||
};
|
||||
|
||||
min_line_length = mkOption {
|
||||
type = nullOr int;
|
||||
default = 10;
|
||||
description = "Minimum line length to apply gaslighting.";
|
||||
};
|
||||
|
||||
messages = mkOption {
|
||||
type = nullOr (listOf str);
|
||||
default = null;
|
||||
description = "Custom messages for gaslighting.";
|
||||
};
|
||||
|
||||
merge_messages = mkOption {
|
||||
type = bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Merge user messages with the default ones.
|
||||
If disabled, the messages table will override default messages.
|
||||
'';
|
||||
};
|
||||
|
||||
debounce_delay = mkOption {
|
||||
type = nullOr int;
|
||||
default = 500;
|
||||
description = "Debounce delay for updates in milliseconds.";
|
||||
};
|
||||
|
||||
auto_update = mkOption {
|
||||
type = bool;
|
||||
default = true;
|
||||
description = "Auto-update on buffer events.";
|
||||
};
|
||||
|
||||
filetypes_to_ignore = mkOption {
|
||||
type = nullOr (listOf str);
|
||||
default = [
|
||||
"netrw"
|
||||
];
|
||||
description = "List of filetypes to ignore.";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -2528,6 +2528,19 @@
|
|||
"url": "https://github.com/supermaven-inc/supermaven-nvim/archive/07d20fce48a5629686aefb0a7cd4b25e33947d50.tar.gz",
|
||||
"hash": "sha256-1z3WKIiikQqoweReUyK5O8MWSRN5y95qcxM6qzlKMME="
|
||||
},
|
||||
"syntax-gaslighting": {
|
||||
"type": "Git",
|
||||
"repository": {
|
||||
"type": "GitHub",
|
||||
"owner": "NotAShelf",
|
||||
"repo": "syntax-gaslighting.nvim"
|
||||
},
|
||||
"branch": "main",
|
||||
"submodules": false,
|
||||
"revision": "4cee4c0550e82b31e07424e0c44379920d716d79",
|
||||
"url": "https://github.com/NotAShelf/syntax-gaslighting.nvim/archive/4cee4c0550e82b31e07424e0c44379920d716d79.tar.gz",
|
||||
"hash": "sha256-sRg6UlK4hQubxf3ycGnMLi+tNvX3zvKgnHYVuZgmvOc="
|
||||
},
|
||||
"tabular": {
|
||||
"type": "Git",
|
||||
"repository": {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue