diff options
Diffstat (limited to 'src/doc_reform/output/paths_output.d')
-rw-r--r-- | src/doc_reform/output/paths_output.d | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/src/doc_reform/output/paths_output.d b/src/doc_reform/output/paths_output.d index 615a666..305aa17 100644 --- a/src/doc_reform/output/paths_output.d +++ b/src/doc_reform/output/paths_output.d @@ -331,6 +331,35 @@ template DocReformPathsODT() { return _PathsStruct(); } } +template DocReformPathsLaTeX() { + mixin DocReformRgxInit; + static auto rgx = Rgx(); + auto DocReformPathsLaTeX(M)( + M doc_matters, + ) { + struct _PathsStruct { + string base_filename(string fn_src) { + return fn_src.baseName.stripExtension; + } + string base() { + auto out_pth = DocReformOutPaths!()(doc_matters.output_path, doc_matters.src.language); + string base_dir = "latex"; + return asNormalizedPath((out_pth.output_root).chainPath(base_dir)).array; + } + string latex_path_stuff() { + return asNormalizedPath(base.chainPath(base_filename(doc_matters.src.filename))).array; + } + string latex_file_with_path() { + return asNormalizedPath(base.chainPath(base_filename(doc_matters.src.filename) ~ "." ~ doc_matters.src.language ~ ".tex")).array; + } + string images() { + string image_dir = "image"; + return asNormalizedPath((base).chainPath(image_dir)).array; + } + } + return _PathsStruct(); + } +} template DocReformPathsSQLiteDiscrete() { mixin DocReformRgxInit; static auto rgx = Rgx(); |