summaryrefslogtreecommitdiff
path: root/modules/devenv/languages/latex.nix
diff options
context:
space:
mode:
authorquentin@aristote.fr <quentin@aristote.fr>2023-09-17 19:35:30 +0200
committerquentin@aristote.fr <quentin@aristote.fr>2023-09-17 19:57:28 +0200
commit27e07c4c73eb952f59bfd85d80985a9865834dab (patch)
treea8fdf6240d591331f1fff1453d16185767e9bea5 /modules/devenv/languages/latex.nix
parent334179a2500615d617f315a8ad8764a2326ab589 (diff)
devenv: latex: debug
Diffstat (limited to 'modules/devenv/languages/latex.nix')
-rw-r--r--modules/devenv/languages/latex.nix31
1 files changed, 16 insertions, 15 deletions
diff --git a/modules/devenv/languages/latex.nix b/modules/devenv/languages/latex.nix
index 92614b4..70961e5 100644
--- a/modules/devenv/languages/latex.nix
+++ b/modules/devenv/languages/latex.nix
@@ -10,14 +10,14 @@
"pdflatex" = "1";
"ps2pdf" = "2";
"dvi2pdf" = "3";
- "lulatex" = "4";
+ "lualatex" = "4";
"xelatex" = "5";
};
dviModes = {
"latex" = "1";
"lualatex" = "2";
};
- latexmkrc = with cfg.latexmkrc; let
+ latexmkrc = with cfg.latexmk; let
pdfMode = with output.pdf;
if enable
then pdfModes."${mode}"
@@ -31,10 +31,10 @@
then "1"
else "0";
in ''
- set_tex_cmds('${extraFlags}');
- $pdf_mode=${pdfMode}
- $dvi_mode=${dviMode}
- $ps_mode=${psMode}
+ set_tex_cmds('${lib.concatStringsSep " " extraFlags}');
+ $pdf_mode=${pdfMode};
+ $dvi_mode=${dviMode};
+ $ps_mode=${psMode};
${extraConfig}
'';
@@ -46,14 +46,15 @@ in {
options.languages.texlive = {
enable = lib.mkEnableOption "TeX Live";
- base = lib.mkPackageOption pkgs "TeX Live" {
- default = ["texlive"];
+ base = lib.mkOption {
+ default = pkgs.texlive;
+ description = "TeX Live package set to use";
};
packages = lib.mkOption {
type = with lib.types;
functionTo (attrsOf (submodule {
- pkgs = lib.mkOption {
- type = listOf package;
+ options.pkgs = lib.mkOption {
+ type = listOf (either package (attrsOf anything));
};
}));
default = tl: {inherit (tl) scheme-medium;};
@@ -110,18 +111,18 @@ in {
}
(lib.mkIf cfg.latexmk.enable {
languages.texlive = {
- packages = tl: [{inherit (tl) latexmk;}];
+ packages = tl: {inherit (tl) latexmk;};
latexmk = {
- shellEscape.enable = lib.mkIf (lib.mkDefault packagesRequireShellEscape true);
- extraFlags = lib.optional cfg.latexmkrc.shellEscape.enable "-shell-escape";
+ shellEscape.enable = lib.mkDefault packagesRequireShellEscape;
+ extraFlags = lib.optional cfg.latexmk.shellEscape.enable "-shell-escape";
};
};
scripts.latexmk.exec = ''
- ${texlive}/bin/latexmk -r ${devenv.root}/.latexmkrc
+ ${texlive}/bin/latexmk -r ${config.devenv.root}/.latexmkrc $@
'';
- gitignore.LaTeX.uncomment = with cfg.latexmk.output; lib.optional pdf "*.pdf" ++ lib.optional dvi "*.dvi" ++ lib.optional ps "*.ps";
+ gitignore.LaTeX.uncomment = with cfg.latexmk.output; lib.optional pdf.enable "*.pdf" ++ lib.optional dvi.enable "*.dvi" ++ lib.optional ps.enable "*.ps";
dotfiles.".latexmkrc" = {
gitignore = lib.mkDefault false;