2024-02-10 17:04:22 +00:00
|
|
|
{
|
2024-09-03 15:40:46 +01:00
|
|
|
lib,
|
2024-02-10 17:04:22 +00:00
|
|
|
pkgs,
|
|
|
|
...
|
|
|
|
}:
|
2024-09-27 05:39:06 +01:00
|
|
|
let
|
|
|
|
inherit (lib.nixvim) defaultNullOpts;
|
|
|
|
in
|
|
|
|
lib.nixvim.vim-plugin.mkVimPlugin {
|
2024-02-10 17:04:22 +00:00
|
|
|
name = "committia";
|
2024-02-13 23:25:13 +01:00
|
|
|
originalName = "committia.vim";
|
2024-09-02 14:05:11 +01:00
|
|
|
package = "committia-vim";
|
2024-02-10 17:04:22 +00:00
|
|
|
globalPrefix = "committia_";
|
|
|
|
|
2024-09-27 05:28:00 +01:00
|
|
|
maintainers = [ lib.maintainers.alisonjenkins ];
|
2024-02-10 17:04:22 +00:00
|
|
|
|
|
|
|
settingsOptions = {
|
2024-09-27 05:39:06 +01:00
|
|
|
open_only_vim_starting = defaultNullOpts.mkFlagInt 1 ''
|
2024-09-08 13:52:18 +01:00
|
|
|
If `0`, committia.vim always attempts to open committia's buffer when `COMMIT_EDITMSG` buffer is opened.
|
|
|
|
If you use `vim-fugitive`, I recommend to set this value to `1`.
|
2024-02-10 17:04:22 +00:00
|
|
|
'';
|
|
|
|
|
2024-09-27 05:39:06 +01:00
|
|
|
use_singlecolumn = defaultNullOpts.mkStr "always" ''
|
2024-02-10 17:04:22 +00:00
|
|
|
If the value is 'always', `committia.vim` always employs single column mode.
|
|
|
|
'';
|
|
|
|
|
2024-09-27 05:39:06 +01:00
|
|
|
min_window_width = defaultNullOpts.mkUnsignedInt 160 ''
|
2024-02-10 17:04:22 +00:00
|
|
|
If the width of window is narrower than the value, `committia.vim` employs single column mode.
|
|
|
|
'';
|
|
|
|
|
2024-09-27 05:39:06 +01:00
|
|
|
status_window_opencmd = defaultNullOpts.mkStr "belowright split" ''
|
2024-02-10 17:04:22 +00:00
|
|
|
Vim command which opens a status window in multi-columns mode.
|
|
|
|
'';
|
|
|
|
|
2024-09-27 05:39:06 +01:00
|
|
|
diff_window_opencmd = defaultNullOpts.mkStr "botright vsplit" ''
|
2024-02-10 17:04:22 +00:00
|
|
|
Vim command which opens a diff window in multi-columns mode.
|
|
|
|
'';
|
|
|
|
|
2024-09-27 05:39:06 +01:00
|
|
|
singlecolumn_diff_window_opencmd = defaultNullOpts.mkStr "belowright split" ''
|
2024-02-10 17:04:22 +00:00
|
|
|
Vim command which opens a diff window in single-column mode.
|
|
|
|
'';
|
|
|
|
|
2024-09-27 05:39:06 +01:00
|
|
|
edit_window_width = defaultNullOpts.mkUnsignedInt 80 ''
|
2024-02-10 17:04:22 +00:00
|
|
|
If `committia.vim` is in multi-columns mode, specifies the width of the edit window.
|
|
|
|
'';
|
|
|
|
|
2024-09-27 05:39:06 +01:00
|
|
|
status_window_min_height = defaultNullOpts.mkUnsignedInt 0 ''
|
2024-02-10 17:04:22 +00:00
|
|
|
Minimum height of a status window.
|
|
|
|
'';
|
|
|
|
};
|
2024-08-29 14:56:01 -05:00
|
|
|
|
|
|
|
extraOptions = {
|
2024-09-03 15:40:46 +01:00
|
|
|
gitPackage = lib.mkPackageOption pkgs "git" {
|
|
|
|
nullable = true;
|
2024-08-29 14:56:01 -05:00
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
extraConfig = cfg: {
|
|
|
|
extraPackages = [ cfg.gitPackage ];
|
|
|
|
};
|
2024-02-10 17:04:22 +00:00
|
|
|
}
|