mirror of
https://github.com/nix-community/home-manager
synced 2024-09-11 22:06:31 +02:00
Previously, users cannot enable boolean flags like `--show-all` in bat's config since all options were expected to be either a string, or a list of strings. With this commit boolean flags are simply appended to the end of the config if they are set to `true`, and discarded otherwise. For example, the config { theme = "TwoDark"; show-all = true; lessopen = false; } would produce a config file that looks like --theme='TwoDark' --show-all Fixes #4657
59 lines
1.5 KiB
Nix
59 lines
1.5 KiB
Nix
{ config, lib, pkgs, ... }:
|
|
|
|
with lib;
|
|
|
|
{
|
|
config = {
|
|
programs.bat = {
|
|
enable = true;
|
|
|
|
config = {
|
|
theme = "TwoDark";
|
|
pager = "less -FR";
|
|
map-syntax = [ "*.jenkinsfile:Groovy" "*.props:Java Properties" ];
|
|
show-all = true;
|
|
|
|
# False boolean options should not appear in the config
|
|
lessopen = false;
|
|
};
|
|
|
|
themes.testtheme.src = pkgs.writeText "testtheme.tmTheme" ''
|
|
This is a test theme.
|
|
'';
|
|
|
|
syntaxes.testsyntax.src = pkgs.writeText "testsyntax.sublime-syntax" ''
|
|
This is a test syntax.
|
|
'';
|
|
};
|
|
|
|
test.stubs.bat = { };
|
|
|
|
nmt.script = ''
|
|
assertFileExists home-files/.config/bat/config
|
|
assertFileContent home-files/.config/bat/config ${
|
|
pkgs.writeText "bat.expected" ''
|
|
--map-syntax='*.jenkinsfile:Groovy'
|
|
--map-syntax='*.props:Java Properties'
|
|
--pager='less -FR'
|
|
--theme='TwoDark'
|
|
--show-all
|
|
''
|
|
}
|
|
|
|
assertFileExists home-files/.config/bat/themes/testtheme.tmTheme
|
|
assertFileContent home-files/.config/bat/themes/testtheme.tmTheme ${
|
|
pkgs.writeText "bat.expected" ''
|
|
This is a test theme.
|
|
''
|
|
}
|
|
|
|
assertFileExists home-files/.config/bat/syntaxes/testsyntax.sublime-syntax
|
|
assertFileContent home-files/.config/bat/syntaxes/testsyntax.sublime-syntax ${
|
|
pkgs.writeText "bat.expected" ''
|
|
This is a test syntax.
|
|
''
|
|
}
|
|
'';
|
|
};
|
|
}
|