home: tmux: refactor 'mkTerminalFlags'
I'm about to add a similar helper for `terminal-overrides`, hence making `mkTerminalFlags` the helper and `mkTerminalFeatures` the new function.
This commit is contained in:
parent
0152907536
commit
b95efbc4f2
1 changed files with 6 additions and 4 deletions
|
|
@ -6,13 +6,15 @@ let
|
||||||
(config.my.home.wm.windowManager != null)
|
(config.my.home.wm.windowManager != null)
|
||||||
];
|
];
|
||||||
|
|
||||||
mkTerminalFlags = opt: flag:
|
mkTerminalFlags = tmuxVar: opt: flag:
|
||||||
let
|
let
|
||||||
mkFlag = term: ''set -as terminal-features ",${term}:${flag}"'';
|
mkFlag = term: ''set -as ${tmuxVar} ",${term}:${flag}"'';
|
||||||
enabledTerminals = lib.filterAttrs (_: v: v.${opt}) cfg.terminalFeatures;
|
enabledTerminals = lib.filterAttrs (_: v: v.${opt}) cfg.terminalFeatures;
|
||||||
terminals = lib.attrNames enabledTerminals;
|
terminals = lib.attrNames enabledTerminals;
|
||||||
in
|
in
|
||||||
lib.concatMapStringsSep "\n" mkFlag terminals;
|
lib.concatMapStringsSep "\n" mkFlag terminals;
|
||||||
|
|
||||||
|
mkTerminalFeatures = mkTerminalFlags "terminal-features";
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options.my.home.tmux = with lib; {
|
options.my.home.tmux = with lib; {
|
||||||
|
|
@ -123,9 +125,9 @@ in
|
||||||
}
|
}
|
||||||
|
|
||||||
# Force OSC8 hyperlinks for each relevant $TERM
|
# Force OSC8 hyperlinks for each relevant $TERM
|
||||||
${mkTerminalFlags "hyperlinks" "hyperlinks"}
|
${mkTerminalFeatures "hyperlinks" "hyperlinks"}
|
||||||
# Force 24-bit color for each relevant $TERM
|
# Force 24-bit color for each relevant $TERM
|
||||||
${mkTerminalFlags "trueColor" "RGB"}
|
${mkTerminalFeatures "trueColor" "RGB"}
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue