diff options
| author | Ralph Amissah <ralph@amissah.com> | 2018-05-04 21:22:39 -0400 | 
|---|---|---|
| committer | Ralph Amissah <ralph@amissah.com> | 2019-04-10 15:14:15 -0400 | 
| commit | 48ba380760b306077afa7a156a21d3ff98d26775 (patch) | |
| tree | 3385a7efddac04cb52fb08a93b245c89e958e83d /src/sdp/output/paths_source.d | |
| parent | link url matching (diff) | |
html & epub images in place (dimensions not & other issues)
Diffstat (limited to 'src/sdp/output/paths_source.d')
| -rw-r--r-- | src/sdp/output/paths_source.d | 32 | 
1 files changed, 25 insertions, 7 deletions
| diff --git a/src/sdp/output/paths_source.d b/src/sdp/output/paths_source.d index ac5e703..9f377bc 100644 --- a/src/sdp/output/paths_source.d +++ b/src/sdp/output/paths_source.d @@ -30,7 +30,7 @@ template PodManifest() {            _manifest_path = _pth;          } else if (_pth.match(rgx.src_pth_contents)          && exists(_pth)!=0 && _pth.isFile) { -          _manifest_path = dirName(_pth); +          _manifest_path = _pth.dirName;          } else if (_pth.match(rgx.src_pth_pod_sst_or_ssm)          && exists(_pth)!=0 && (_pth.isFile)) {            if (auto m = _pth.match(rgx.src_pth_pod_sst_or_ssm)) { @@ -480,7 +480,7 @@ template SiSUpathsSRC() {    static auto rgx = Rgx();    auto SiSUpathsSRC(D,Fn)(      D   _pwd, -    Fn  _fn_src_and_relative_path, +    Fn  _fn_src_and_path,    ) {      struct SisuSrcPaths {        auto pwd() { @@ -489,7 +489,7 @@ template SiSUpathsSRC() {        auto language() {          // use command line info as well?          string _k; -        if (auto m = _fn_src_and_relative_path.match(rgx.language_code_and_filename)) { +        if (auto m = _fn_src_and_path.match(rgx.language_code_and_filename)) {            _k = m.captures[1];          } else { /+ unknown until doc_meta read, (could provide & use command line info?) +/            _k = "xx"; // original default was "en" but is not known @@ -514,11 +514,29 @@ template SiSUpathsSRC() {        auto doc_src_fn_with_path_for_text_root_and_lng() {          return asNormalizedPath(text_root.chainPath(language)).array;        } -      auto doc_src_with_relative_path() { -        return asNormalizedPath(pwd.chainPath(_fn_src_and_relative_path)).array; -      }        auto doc_src_fn() { -        return asNormalizedPath(_fn_src_and_relative_path.baseName).array; +        return asNormalizedPath(_fn_src_and_path.baseName).array; +      } +      auto doc_src_with_path() { +        return asNormalizedPath(pwd.chainPath(_fn_src_and_path)).array; +      } +      auto src_image_root_with_path() { +        string[] _possible_img_pth = [ +          asNormalizedPath(pwd.chainPath((_fn_src_and_path).dirName ~ "/image")).array, +          asNormalizedPath(pwd.chainPath((_fn_src_and_path).dirName ~ "/../image")).array, +          asNormalizedPath(pwd.chainPath((_fn_src_and_path).dirName ~ "/../../image")).array, +        ]; +        string _img_pth_found = ""; +        foreach(_img_pth; _possible_img_pth) { +          if (exists(_img_pth)) { +            _img_pth_found = _img_pth; +            break; +          } +        } +        if (_img_pth_found.empty) { +          writeln("WARNING not image path found, searched: ", _possible_img_pth); +        } +        return _img_pth_found;        }      }      return SisuSrcPaths(); | 
