mirror of
https://github.com/nix-community/nixvim.git
synced 2025-11-09 03:56:05 +01:00
plugins/chadtree: migrate to mkNeovimPlugin
This commit is contained in:
parent
ea14727f4c
commit
ffc4d73814
3 changed files with 475 additions and 610 deletions
|
|
@ -1,506 +1,29 @@
|
||||||
{
|
{
|
||||||
lib,
|
lib,
|
||||||
helpers,
|
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
with lib;
|
lib.nixvim.plugins.mkNeovimPlugin {
|
||||||
let
|
name = "chadtree";
|
||||||
cfg = config.plugins.chadtree;
|
|
||||||
mkListStr = helpers.defaultNullOpts.mkNullable (types.listOf types.str);
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.plugins.chadtree = lib.nixvim.plugins.neovim.extraOptionsOptions // {
|
|
||||||
enable = mkEnableOption "chadtree";
|
|
||||||
|
|
||||||
package = lib.mkPackageOption pkgs "chadtree" {
|
maintainers = [ lib.maintainers.GaetanLepage ];
|
||||||
default = [
|
|
||||||
"vimPlugins"
|
|
||||||
"chadtree"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
options = {
|
# TODO introduced 2025-09-24: remove after 26.05
|
||||||
follow = helpers.defaultNullOpts.mkBool true ''
|
deprecateExtraOptions = true;
|
||||||
CHADTree will highlight currently open file, and open all its parents.
|
optionsRenamedToSettings = import ./renamed-options.nix;
|
||||||
'';
|
|
||||||
|
|
||||||
lang = helpers.mkNullOrOption types.str ''
|
callSetup = false;
|
||||||
CHADTree will guess your locale from unix environmental variables.
|
settingsDescription = "Options provided as `vim.api.nvim_set_var('chadtree_settings', settings)`.";
|
||||||
Set to `c` to disable emojis.
|
extraConfig = cfg: {
|
||||||
'';
|
plugins.chadtree.luaConfig.content = ''
|
||||||
|
vim.api.nvim_set_var("chadtree_settings", ${lib.nixvim.toLuaObject cfg.settings})
|
||||||
mimetypes = {
|
'';
|
||||||
warn =
|
|
||||||
mkListStr
|
|
||||||
[
|
|
||||||
"audio"
|
|
||||||
"font"
|
|
||||||
"image"
|
|
||||||
"video"
|
|
||||||
]
|
|
||||||
''
|
|
||||||
Show a warning before opening these datatypes.
|
|
||||||
'';
|
|
||||||
|
|
||||||
allowExts = mkListStr [ ".ts" ] ''
|
|
||||||
Skip warning for these extensions.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
pageIncrement = helpers.defaultNullOpts.mkInt 5 ''
|
|
||||||
Change how many lines `{` and `}` scroll.
|
|
||||||
'';
|
|
||||||
|
|
||||||
pollingRate = helpers.defaultNullOpts.mkNum 2.0 ''
|
|
||||||
CHADTree's background refresh rate.
|
|
||||||
'';
|
|
||||||
|
|
||||||
session = helpers.defaultNullOpts.mkBool true ''
|
|
||||||
Save & restore currently open folders.
|
|
||||||
'';
|
|
||||||
|
|
||||||
showHidden = helpers.defaultNullOpts.mkBool false ''
|
|
||||||
Hide some files and folders by default. By default this can be toggled using the `.` key.
|
|
||||||
see `chadtree_settings.ignore` for more details.
|
|
||||||
'';
|
|
||||||
|
|
||||||
versionControl = helpers.defaultNullOpts.mkBool true ''
|
|
||||||
Enable version control. This can also be toggled. But unlike `show_hidden`, does not have a default keybind.
|
|
||||||
'';
|
|
||||||
|
|
||||||
ignore = {
|
|
||||||
nameExact =
|
|
||||||
mkListStr
|
|
||||||
[
|
|
||||||
".DS_Store"
|
|
||||||
".directory"
|
|
||||||
"thumbs.db"
|
|
||||||
".git"
|
|
||||||
]
|
|
||||||
''
|
|
||||||
Files whose name match these exactly will be ignored.
|
|
||||||
'';
|
|
||||||
|
|
||||||
nameGlob = mkListStr [ ] ''
|
|
||||||
Files whose name match these glob patterns will be ignored.
|
|
||||||
ie. `*.py` will match all python files
|
|
||||||
'';
|
|
||||||
|
|
||||||
pathGlob = mkListStr [ ] ''
|
|
||||||
Files whose full path match these glob patterns will be ignored.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
view = {
|
|
||||||
openDirection =
|
|
||||||
helpers.defaultNullOpts.mkEnum
|
|
||||||
[
|
|
||||||
"left"
|
|
||||||
"right"
|
|
||||||
]
|
|
||||||
"left"
|
|
||||||
''
|
|
||||||
Which way does CHADTree open?
|
|
||||||
'';
|
|
||||||
|
|
||||||
sortBy =
|
|
||||||
mkListStr
|
|
||||||
[
|
|
||||||
"is_folder"
|
|
||||||
"ext"
|
|
||||||
"file_name"
|
|
||||||
]
|
|
||||||
''
|
|
||||||
CHADTree can sort by the following criterion.
|
|
||||||
Reorder them if you want a different sorting order.
|
|
||||||
legal keys: some of
|
|
||||||
`["is_folder" "ext" "file_name"]`
|
|
||||||
'';
|
|
||||||
|
|
||||||
width = helpers.defaultNullOpts.mkInt 40 ''
|
|
||||||
How big is CHADTree when initially opened?
|
|
||||||
'';
|
|
||||||
|
|
||||||
windowOptions =
|
|
||||||
helpers.defaultNullOpts.mkAttributeSet
|
|
||||||
''
|
|
||||||
{
|
|
||||||
cursorline = true;
|
|
||||||
number = false;
|
|
||||||
relativenumber = false;
|
|
||||||
signcolumn = "no";
|
|
||||||
winfixwidth = true;
|
|
||||||
wrap = false;
|
|
||||||
}
|
|
||||||
''
|
|
||||||
''
|
|
||||||
Set of window local options to for CHADTree windows.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
theme = {
|
|
||||||
highlights = {
|
|
||||||
ignored = helpers.defaultNullOpts.mkStr "Comment" ''
|
|
||||||
These are used for files that are ignored by user supplied pattern
|
|
||||||
in `chadtree.ignore` and by version control.
|
|
||||||
'';
|
|
||||||
|
|
||||||
bookmarks = helpers.defaultNullOpts.mkStr "Title" ''
|
|
||||||
These are used to show bookmarks.
|
|
||||||
'';
|
|
||||||
|
|
||||||
quickfix = helpers.defaultNullOpts.mkStr "Label" ''
|
|
||||||
These are used to notify the number of times a file / folder appears in the `quickfix` list.
|
|
||||||
'';
|
|
||||||
|
|
||||||
versionControl = helpers.defaultNullOpts.mkStr "Comment" ''
|
|
||||||
These are used to put a version control status beside each file.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
iconGlyphSet =
|
|
||||||
helpers.defaultNullOpts.mkEnum
|
|
||||||
[
|
|
||||||
"devicons"
|
|
||||||
"emoji"
|
|
||||||
"ascii"
|
|
||||||
"ascii_hollow"
|
|
||||||
]
|
|
||||||
"devicons"
|
|
||||||
''
|
|
||||||
Icon glyph set to use.
|
|
||||||
'';
|
|
||||||
|
|
||||||
textColourSet =
|
|
||||||
helpers.defaultNullOpts.mkEnum
|
|
||||||
[
|
|
||||||
"env"
|
|
||||||
"solarized_dark_256"
|
|
||||||
"solarized_dark"
|
|
||||||
"solarized_light"
|
|
||||||
"solarized_universal"
|
|
||||||
"nord"
|
|
||||||
"trapdoor"
|
|
||||||
"nerdtree_syntax_light"
|
|
||||||
"nerdtree_syntax_dark"
|
|
||||||
]
|
|
||||||
"env"
|
|
||||||
''
|
|
||||||
On `unix`, the command `ls` can produce coloured results based on the `LS_COLORS` environmental variable.
|
|
||||||
|
|
||||||
CHADTree can pretend it's `ls` by setting `chadtree.theme.textColourSet` to `env`.
|
|
||||||
|
|
||||||
If you are not happy with that, you can choose one of the many others.
|
|
||||||
'';
|
|
||||||
|
|
||||||
iconColourSet =
|
|
||||||
helpers.defaultNullOpts.mkEnum
|
|
||||||
[
|
|
||||||
"github"
|
|
||||||
"none"
|
|
||||||
]
|
|
||||||
"github"
|
|
||||||
''
|
|
||||||
Right now you all the file icons are coloured according to Github colours.
|
|
||||||
|
|
||||||
You may also disable colouring if you wish.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
keymap = {
|
|
||||||
windowManagement = {
|
|
||||||
quit = mkListStr [ "q" ] ''
|
|
||||||
Close CHADTree window, quit if it is the last window.
|
|
||||||
'';
|
|
||||||
|
|
||||||
bigger =
|
|
||||||
mkListStr
|
|
||||||
[
|
|
||||||
"+"
|
|
||||||
"="
|
|
||||||
]
|
|
||||||
''
|
|
||||||
Resize CHADTree window bigger.
|
|
||||||
'';
|
|
||||||
|
|
||||||
smaller =
|
|
||||||
mkListStr
|
|
||||||
[
|
|
||||||
"-"
|
|
||||||
"_"
|
|
||||||
]
|
|
||||||
''
|
|
||||||
Resize CHADTree window smaller.
|
|
||||||
'';
|
|
||||||
|
|
||||||
refresh = mkListStr [ "<c-r>" ] ''
|
|
||||||
Refresh CHADTree.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
rerooting = {
|
|
||||||
changeDir = mkListStr [ "b" ] ''
|
|
||||||
Change vim's working directory.
|
|
||||||
'';
|
|
||||||
|
|
||||||
changeFocus = mkListStr [ "c" ] ''
|
|
||||||
Set CHADTree's root to folder at cursor. Does not change working directory.
|
|
||||||
'';
|
|
||||||
|
|
||||||
changeFocusUp = mkListStr [ "C" ] ''
|
|
||||||
Set CHADTree's root one level up.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
openFileFolder = {
|
|
||||||
primary = mkListStr [ "<enter>" ] ''
|
|
||||||
Open file at cursor.
|
|
||||||
'';
|
|
||||||
|
|
||||||
secondary = mkListStr [ "<tab> <2-leftmouse>" ] ''
|
|
||||||
Open file at cursor, keep cursor in CHADTree's window.
|
|
||||||
'';
|
|
||||||
|
|
||||||
tertiary =
|
|
||||||
mkListStr
|
|
||||||
[
|
|
||||||
"<m-enter>"
|
|
||||||
"<middlemouse>"
|
|
||||||
]
|
|
||||||
''
|
|
||||||
Open file at cursor in a new tab.
|
|
||||||
'';
|
|
||||||
|
|
||||||
vSplit = mkListStr [ "w" ] ''
|
|
||||||
Open file at cursor in vertical split.
|
|
||||||
'';
|
|
||||||
|
|
||||||
hSplit = mkListStr [ "W" ] ''
|
|
||||||
Open file at cursor in horizontal split.
|
|
||||||
'';
|
|
||||||
|
|
||||||
openSys = mkListStr [ "o" ] ''
|
|
||||||
Open file with GUI tools using `open` or `xdg open`.
|
|
||||||
This will open third party tools such as Finder or KDE Dolphin or GNOME nautilus, etc.
|
|
||||||
Depends on platform and user setup.
|
|
||||||
'';
|
|
||||||
|
|
||||||
collapse = mkListStr [ "o" ] ''
|
|
||||||
Collapse all subdirectories for directory at cursor.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
cursor = {
|
|
||||||
refocus = mkListStr [ "~" ] ''
|
|
||||||
Put cursor at the root of CHADTree.
|
|
||||||
'';
|
|
||||||
|
|
||||||
jumpToCurrent = mkListStr [ "J" ] ''
|
|
||||||
Position cursor in CHADTree at currently open buffer, if the buffer points to a location visible under CHADTree.
|
|
||||||
'';
|
|
||||||
|
|
||||||
stat = mkListStr [ "K" ] ''
|
|
||||||
Print `ls --long` stat for file under cursor.
|
|
||||||
'';
|
|
||||||
|
|
||||||
copyName = mkListStr [ "y" ] ''
|
|
||||||
Copy paths of files under cursor or visual block.
|
|
||||||
'';
|
|
||||||
|
|
||||||
copyBasename = mkListStr [ "Y" ] ''
|
|
||||||
Copy names of files under cursor or visual block.
|
|
||||||
'';
|
|
||||||
|
|
||||||
copyRelname = mkListStr [ "<c-y>" ] ''
|
|
||||||
Copy relative paths of files under cursor or visual block.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
filtering = {
|
|
||||||
filter = mkListStr [ "f" ] ''
|
|
||||||
Set a glob pattern to narrow down visible files.
|
|
||||||
'';
|
|
||||||
|
|
||||||
clearFilter = mkListStr [ "F" ] ''
|
|
||||||
Clear filter.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
bookmarks = {
|
|
||||||
bookmarkGoto = mkListStr [ "m" ] ''
|
|
||||||
Goto bookmark `A-Z`.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
selecting = {
|
|
||||||
select = mkListStr [ "s" ] ''
|
|
||||||
Select files under cursor or visual block.
|
|
||||||
'';
|
|
||||||
|
|
||||||
clearSelection = mkListStr [ "S" ] ''
|
|
||||||
Clear selection.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
fileOperations = {
|
|
||||||
new = mkListStr [ "a" ] ''
|
|
||||||
Create new file at location under cursor. Files ending with platform specific path separator will be folders.
|
|
||||||
|
|
||||||
Intermediary folders are created automatically.
|
|
||||||
|
|
||||||
ie. `uwu/owo/` under unix will create `uwu/` then `owo/` under it. Both are folders.
|
|
||||||
'';
|
|
||||||
|
|
||||||
link = mkListStr [ "A" ] ''
|
|
||||||
Create links at location under cursor from selection.
|
|
||||||
|
|
||||||
Links are always relative.
|
|
||||||
|
|
||||||
Intermediary folders are created automatically.
|
|
||||||
'';
|
|
||||||
|
|
||||||
rename = mkListStr [ "r" ] ''
|
|
||||||
Rename file under cursor.
|
|
||||||
'';
|
|
||||||
|
|
||||||
toggleExec = mkListStr [ "X" ] ''
|
|
||||||
Toggle all the `+x` bits of the selected / highlighted files.
|
|
||||||
|
|
||||||
Except for directories, where `-x` will prevent reading.
|
|
||||||
'';
|
|
||||||
|
|
||||||
copy = mkListStr [ "p" ] ''
|
|
||||||
Copy the selected files to location under cursor.
|
|
||||||
'';
|
|
||||||
|
|
||||||
cut = mkListStr [ "x" ] ''
|
|
||||||
Move the selected files to location under cursor.
|
|
||||||
'';
|
|
||||||
|
|
||||||
delete = mkListStr [ "d" ] ''
|
|
||||||
Delete the selected files. Items deleted cannot be recovered.
|
|
||||||
'';
|
|
||||||
|
|
||||||
trash = mkListStr [ "t" ] ''
|
|
||||||
Trash the selected files using platform specific `trash` command, if they are available.
|
|
||||||
Items trashed may be recovered.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
toggles = {
|
|
||||||
toggleHidden = mkListStr [ "." ] ''
|
|
||||||
Toggle show_hidden on and off. See `chadtree.showHidden` for details.
|
|
||||||
'';
|
|
||||||
|
|
||||||
toggleFollow = mkListStr [ "u" ] ''
|
|
||||||
Toggle `follow` on and off. See `chadtree.follow` for details.
|
|
||||||
'';
|
|
||||||
|
|
||||||
toggleVersionControl = mkListStr [ "i" ] ''
|
|
||||||
Toggle version control integration on and off.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
config =
|
settingsExample = {
|
||||||
let
|
view.window_options.relativenumber = true;
|
||||||
setupOptions = with cfg; {
|
theme = {
|
||||||
xdg = true;
|
icon_glyph_set = "devicons";
|
||||||
options = with cfg.options; {
|
text_colour_set = "nerdtree_syntax_dark";
|
||||||
inherit follow;
|
|
||||||
inherit lang;
|
|
||||||
mimetypes = with mimetypes; {
|
|
||||||
inherit warn;
|
|
||||||
allow_exts = allowExts;
|
|
||||||
};
|
|
||||||
page_increment = pageIncrement;
|
|
||||||
polling_rate = pollingRate;
|
|
||||||
inherit session;
|
|
||||||
show_hidden = showHidden;
|
|
||||||
version_control = versionControl;
|
|
||||||
ignore = with ignore; {
|
|
||||||
name_exact = nameExact;
|
|
||||||
name_glob = nameGlob;
|
|
||||||
path_glob = pathGlob;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
view = with view; {
|
|
||||||
open_direction = openDirection;
|
|
||||||
sort_by = sortBy;
|
|
||||||
inherit width;
|
|
||||||
window_options = windowOptions;
|
|
||||||
};
|
|
||||||
theme = with theme; {
|
|
||||||
highlights = with highlights; {
|
|
||||||
inherit ignored;
|
|
||||||
inherit bookmarks;
|
|
||||||
inherit quickfix;
|
|
||||||
version_control = versionControl;
|
|
||||||
};
|
|
||||||
icon_glyph_set = iconGlyphSet;
|
|
||||||
text_colour_set = textColourSet;
|
|
||||||
icon_colour_set = iconColourSet;
|
|
||||||
};
|
|
||||||
keymap =
|
|
||||||
with keymap;
|
|
||||||
with windowManagement;
|
|
||||||
with rerooting;
|
|
||||||
with openFileFolder;
|
|
||||||
with cursor;
|
|
||||||
with filtering;
|
|
||||||
with bookmarks;
|
|
||||||
with selecting;
|
|
||||||
with fileOperations;
|
|
||||||
with toggles;
|
|
||||||
{
|
|
||||||
inherit quit;
|
|
||||||
inherit bigger;
|
|
||||||
inherit smaller;
|
|
||||||
inherit refresh;
|
|
||||||
change_dir = changeDir;
|
|
||||||
change_focus = changeFocus;
|
|
||||||
change_focus_up = changeFocusUp;
|
|
||||||
inherit primary;
|
|
||||||
inherit secondary;
|
|
||||||
inherit tertiary;
|
|
||||||
v_split = vSplit;
|
|
||||||
h_split = hSplit;
|
|
||||||
open_sys = openSys;
|
|
||||||
inherit collapse;
|
|
||||||
inherit refocus;
|
|
||||||
jump_to_current = jumpToCurrent;
|
|
||||||
inherit stat;
|
|
||||||
copy_name = copyName;
|
|
||||||
copy_basename = copyBasename;
|
|
||||||
copy_relname = copyRelname;
|
|
||||||
inherit filter;
|
|
||||||
clear_filter = clearFilter;
|
|
||||||
bookmark_goto = bookmarkGoto;
|
|
||||||
inherit select;
|
|
||||||
clear_selection = clearSelection;
|
|
||||||
inherit new;
|
|
||||||
inherit link;
|
|
||||||
inherit rename;
|
|
||||||
toggle_exec = toggleExec;
|
|
||||||
inherit copy;
|
|
||||||
inherit cut;
|
|
||||||
inherit delete;
|
|
||||||
inherit trash;
|
|
||||||
toggle_hidden = toggleHidden;
|
|
||||||
toggle_follow = toggleFollow;
|
|
||||||
toggle_version_control = toggleVersionControl;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
in
|
|
||||||
mkIf cfg.enable {
|
|
||||||
extraPlugins = [ cfg.package ];
|
|
||||||
|
|
||||||
extraConfigLua = ''
|
|
||||||
vim.api.nvim_set_var("chadtree_settings", ${lib.nixvim.toLuaObject setupOptions})
|
|
||||||
'';
|
|
||||||
};
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
322
plugins/by-name/chadtree/renamed-options.nix
Normal file
322
plugins/by-name/chadtree/renamed-options.nix
Normal file
|
|
@ -0,0 +1,322 @@
|
||||||
|
[
|
||||||
|
# OPTIONS
|
||||||
|
[
|
||||||
|
"options"
|
||||||
|
"follow"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"options"
|
||||||
|
"lang"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"options"
|
||||||
|
"mimetypes"
|
||||||
|
"warn"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"options"
|
||||||
|
"mimetypes"
|
||||||
|
"allowExts"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"options"
|
||||||
|
"pageIncrement"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"options"
|
||||||
|
"pollingRate"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"options"
|
||||||
|
"session"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"options"
|
||||||
|
"showHidden"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"options"
|
||||||
|
"versionControl"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"options"
|
||||||
|
"ignore"
|
||||||
|
"nameExact"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"options"
|
||||||
|
"ignore"
|
||||||
|
"nameGlob"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"options"
|
||||||
|
"ignore"
|
||||||
|
"pathGlob"
|
||||||
|
]
|
||||||
|
|
||||||
|
# VIEW
|
||||||
|
[
|
||||||
|
"view"
|
||||||
|
"openDirection"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"view"
|
||||||
|
"sortBy"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"view"
|
||||||
|
"width"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"view"
|
||||||
|
"windowOptions"
|
||||||
|
]
|
||||||
|
|
||||||
|
# THEME
|
||||||
|
[
|
||||||
|
"theme"
|
||||||
|
"highlights"
|
||||||
|
"ignored"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"theme"
|
||||||
|
"highlights"
|
||||||
|
"bookmarks"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"theme"
|
||||||
|
"highlights"
|
||||||
|
"quickfix"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"theme"
|
||||||
|
"highlights"
|
||||||
|
"versionControl"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"theme"
|
||||||
|
"iconGlyphSet"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"theme"
|
||||||
|
"textColourSet"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"theme"
|
||||||
|
"iconColourSet"
|
||||||
|
]
|
||||||
|
|
||||||
|
# KEYMAP
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"windowManagement"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"rerooting"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"openFileFolder"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"cursor"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"filtering"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"bookmarks"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"selecting"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"fileOperations"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"quit"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"bigger"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"smaller"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"refresh"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"changeDir"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"changeFocus"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"changeFocusUp"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"primary"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"secondary"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"tertiary"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"vSplit"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"hSplit"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"openSys"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"collapse"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"refocus"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"jumpToCurrent"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"stat"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"copyName"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"copyBasename"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"copyRelname"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"filter"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"clearFilter"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"bookmarkGoto"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"select"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"clearSelection"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"new"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"link"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"rename"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"toggle_Exec"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"copy"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"cut"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"delete"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"trash"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"toggleHidden"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"toggleFollow"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"keymap"
|
||||||
|
"toggles"
|
||||||
|
"toggleVersionControl"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
|
@ -6,130 +6,150 @@
|
||||||
example = {
|
example = {
|
||||||
plugins = {
|
plugins = {
|
||||||
web-devicons.enable = true;
|
web-devicons.enable = true;
|
||||||
|
|
||||||
chadtree = {
|
chadtree = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
||||||
options = {
|
settings = {
|
||||||
follow = true;
|
view.window_options.relativenumber = true;
|
||||||
mimetypes = {
|
theme = {
|
||||||
warn = [
|
icon_glyph_set = "devicons";
|
||||||
"audio"
|
text_colour_set = "nerdtree_syntax_dark";
|
||||||
"font"
|
|
||||||
"image"
|
|
||||||
"video"
|
|
||||||
];
|
|
||||||
allowExts = [ ".ts" ];
|
|
||||||
};
|
|
||||||
pageIncrement = 5;
|
|
||||||
pollingRate = 2.0;
|
|
||||||
session = true;
|
|
||||||
showHidden = false;
|
|
||||||
versionControl = true;
|
|
||||||
ignore = {
|
|
||||||
nameExact = [
|
|
||||||
".DS_Store"
|
|
||||||
".directory"
|
|
||||||
"thumbs.db"
|
|
||||||
".git"
|
|
||||||
];
|
|
||||||
nameGlob = [ ];
|
|
||||||
pathGlob = [ ];
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
view = {
|
};
|
||||||
openDirection = "left";
|
};
|
||||||
sortBy = [
|
};
|
||||||
"is_folder"
|
|
||||||
"ext"
|
bigExample = {
|
||||||
"file_name"
|
plugins = {
|
||||||
];
|
web-devicons.enable = true;
|
||||||
width = 40;
|
chadtree = {
|
||||||
windowOptions = {
|
enable = true;
|
||||||
cursorline = true;
|
|
||||||
number = false;
|
settings = {
|
||||||
relativenumber = false;
|
options = {
|
||||||
signcolumn = "no";
|
follow = true;
|
||||||
winfixwidth = true;
|
mimetypes = {
|
||||||
wrap = false;
|
warn = [
|
||||||
|
"audio"
|
||||||
|
"font"
|
||||||
|
"image"
|
||||||
|
"video"
|
||||||
|
];
|
||||||
|
allowExts = [ ".ts" ];
|
||||||
|
};
|
||||||
|
page_increment = 5;
|
||||||
|
polling_rate = 2.0;
|
||||||
|
session = true;
|
||||||
|
show_hidden = false;
|
||||||
|
version_control = true;
|
||||||
|
ignore = {
|
||||||
|
name_exact = [
|
||||||
|
".DS_Store"
|
||||||
|
".directory"
|
||||||
|
"thumbs.db"
|
||||||
|
".git"
|
||||||
|
];
|
||||||
|
name_glob = [ ];
|
||||||
|
path_glob = [ ];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
view = {
|
||||||
theme = {
|
open_direction = "left";
|
||||||
highlights = {
|
sort_by = [
|
||||||
ignored = "Comment";
|
"is_folder"
|
||||||
bookmarks = "Title";
|
"ext"
|
||||||
quickfix = "Label";
|
"file_name"
|
||||||
versionControl = "Comment";
|
|
||||||
};
|
|
||||||
iconGlyphSet = "devicons";
|
|
||||||
textColourSet = "env";
|
|
||||||
iconColourSet = "github";
|
|
||||||
};
|
|
||||||
keymap = {
|
|
||||||
windowManagement = {
|
|
||||||
quit = [ "q" ];
|
|
||||||
bigger = [
|
|
||||||
"+"
|
|
||||||
"="
|
|
||||||
];
|
];
|
||||||
smaller = [
|
width = 40;
|
||||||
"-"
|
window_options = {
|
||||||
"_"
|
cursorline = true;
|
||||||
];
|
number = false;
|
||||||
refresh = [ "<c-r>" ];
|
relativenumber = false;
|
||||||
|
signcolumn = "no";
|
||||||
|
winfixwidth = true;
|
||||||
|
wrap = false;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
rerooting = {
|
theme = {
|
||||||
changeDir = [ "b" ];
|
highlights = {
|
||||||
changeFocus = [ "c" ];
|
ignored = "Comment";
|
||||||
changeFocusUp = [ "C" ];
|
bookmarks = "Title";
|
||||||
|
quickfix = "Label";
|
||||||
|
versionControl = "Comment";
|
||||||
|
};
|
||||||
|
icon_glyph_set = "devicons";
|
||||||
|
text_colour_set = "env";
|
||||||
|
icon_colour_set = "github";
|
||||||
};
|
};
|
||||||
openFileFolder = {
|
keymap = {
|
||||||
primary = [ "<enter>" ];
|
window_management = {
|
||||||
secondary = [
|
quit = [ "q" ];
|
||||||
"<tab>"
|
bigger = [
|
||||||
"<2-leftmouse>"
|
"+"
|
||||||
];
|
"="
|
||||||
tertiary = [
|
];
|
||||||
"<m-enter>"
|
smaller = [
|
||||||
"<middlemouse>"
|
"-"
|
||||||
];
|
"_"
|
||||||
vSplit = [ "w" ];
|
];
|
||||||
hSplit = [ "W" ];
|
refresh = [ "<c-r>" ];
|
||||||
openSys = [ "o" ];
|
};
|
||||||
collapse = [ "o" ];
|
rerooting = {
|
||||||
};
|
change_dir = [ "b" ];
|
||||||
cursor = {
|
change_focus = [ "c" ];
|
||||||
refocus = [ "~" ];
|
change_focus_up = [ "C" ];
|
||||||
jumpToCurrent = [ "J" ];
|
};
|
||||||
stat = [ "K" ];
|
open_file_folder = {
|
||||||
copyName = [ "y" ];
|
primary = [ "<enter>" ];
|
||||||
copyBasename = [ "Y" ];
|
secondary = [
|
||||||
copyRelname = [ "<c-y>" ];
|
"<tab>"
|
||||||
};
|
"<2-leftmouse>"
|
||||||
filtering = {
|
];
|
||||||
filter = [ "f" ];
|
tertiary = [
|
||||||
clearFilter = [ "F" ];
|
"<m-enter>"
|
||||||
};
|
"<middlemouse>"
|
||||||
bookmarks = {
|
];
|
||||||
bookmarkGoto = [ "m" ];
|
v_split = [ "w" ];
|
||||||
};
|
h_split = [ "W" ];
|
||||||
selecting = {
|
open_sys = [ "o" ];
|
||||||
select = [ "s" ];
|
collapse = [ "o" ];
|
||||||
clearSelection = [ "S" ];
|
};
|
||||||
};
|
cursor = {
|
||||||
fileOperations = {
|
refocus = [ "~" ];
|
||||||
new = [ "a" ];
|
jump_to_current = [ "J" ];
|
||||||
link = [ "A" ];
|
stat = [ "K" ];
|
||||||
rename = [ "r" ];
|
copy_name = [ "y" ];
|
||||||
toggleExec = [ "X" ];
|
copy_basename = [ "Y" ];
|
||||||
copy = [ "p" ];
|
copy_relname = [ "<c-y>" ];
|
||||||
cut = [ "x" ];
|
};
|
||||||
delete = [ "d" ];
|
filtering = {
|
||||||
trash = [ "t" ];
|
filter = [ "f" ];
|
||||||
};
|
clear_filter = [ "F" ];
|
||||||
toggles = {
|
};
|
||||||
toggleHidden = [ "." ];
|
bookmarks = {
|
||||||
toggleFollow = [ "u" ];
|
bookmark_goto = [ "m" ];
|
||||||
toggleVersionControl = [ "i" ];
|
};
|
||||||
|
selecting = {
|
||||||
|
select = [ "s" ];
|
||||||
|
clear_selection = [ "S" ];
|
||||||
|
};
|
||||||
|
file_operations = {
|
||||||
|
new = [ "a" ];
|
||||||
|
link = [ "A" ];
|
||||||
|
rename = [ "r" ];
|
||||||
|
toggle_exec = [ "X" ];
|
||||||
|
copy = [ "p" ];
|
||||||
|
cut = [ "x" ];
|
||||||
|
delete = [ "d" ];
|
||||||
|
trash = [ "t" ];
|
||||||
|
};
|
||||||
|
toggles = {
|
||||||
|
toggle_hidden = [ "." ];
|
||||||
|
toggle_follow = [ "u" ];
|
||||||
|
toggle_version_control = [ "i" ];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue