mirror of
https://github.com/NotAShelf/neovim-flake.git
synced 2024-12-24 19:19:48 +01:00
54 lines
1.8 KiB
Nix
54 lines
1.8 KiB
Nix
{
|
|
pkgs,
|
|
config,
|
|
lib,
|
|
...
|
|
}:
|
|
with builtins;
|
|
with lib; let
|
|
cfg = config.vim.dashboard.startify;
|
|
|
|
mkVimBool = val:
|
|
if val
|
|
then "1"
|
|
else "0";
|
|
in {
|
|
config = mkIf (cfg.enable) {
|
|
vim.startPlugins = with pkgs.neovimPlugins; [vim-startify];
|
|
|
|
vim.globals = {
|
|
"startify_custom_header" =
|
|
if cfg.customHeader == []
|
|
then null
|
|
else cfg.customHeader;
|
|
"startify_custom_footer" =
|
|
if cfg.customFooter == []
|
|
then null
|
|
else cfg.customFooter;
|
|
"startify_bookmarks" = cfg.bookmarks;
|
|
"startify_lists" = cfg.lists;
|
|
"startify_change_to_dir" = mkVimBool cfg.changeToDir;
|
|
"startify_change_to_vcs_root" = mkVimBool cfg.changeToVCRoot;
|
|
"startify_change_cmd" = cfg.changeDirCmd;
|
|
"startify_skiplist" = cfg.skipList;
|
|
"startify_update_oldfiles" = mkVimBool cfg.updateOldFiles;
|
|
"startify_session_autoload" = mkVimBool cfg.sessionAutoload;
|
|
"startify_commands" = cfg.commands;
|
|
"startify_files_number" = cfg.filesNumber;
|
|
"startify_custom_indices" = cfg.customIndices;
|
|
"startify_disable_at_vimenter" = mkVimBool cfg.disableOnStartup;
|
|
"startify_enable_unsafe" = mkVimBool cfg.unsafe;
|
|
"startify_padding_left" = cfg.paddingLeft;
|
|
"startify_use_env" = mkVimBool cfg.useEnv;
|
|
"startify_session_before_save" = cfg.sessionBeforeSave;
|
|
"startify_session_persistence" = mkVimBool cfg.sessionPersistence;
|
|
"startify_session_delete_buffers" = mkVimBool cfg.sessionDeleteBuffers;
|
|
"startify_session_dir" = cfg.sessionDir;
|
|
"startify_skiplist_server" = cfg.skipListServer;
|
|
"startify_session_remove_lines" = cfg.sessionRemoveLines;
|
|
"startify_session_savevars" = cfg.sessionSavevars;
|
|
"startify_session_savecmds" = cfg.sessionSavecmds;
|
|
"startify_session_sort" = mkVimBool cfg.sessionSort;
|
|
};
|
|
};
|
|
}
|