Add %u spec to reslist paragraph format to output either local file path (with file:// stripped) or url). Fixes issue #254

This commit is contained in:
Jean-Francois Dockes 2015-06-06 16:08:54 +02:00
parent 7e2db42988
commit d184361e79

View File

@ -167,6 +167,13 @@ void ResListPager::displayDoc(RclConfig *config, int i, Rcl::Doc& doc,
string url;
printableUrl(config->getDefCharset(), doc.url, url);
// Same as url, but with file:// possibly stripped. output by %u instead
// of %U.
string urlOrLocal;
urlOrLocal = fileurltolocalpath(url);
if (urlOrLocal.empty())
urlOrLocal = url;
// Make title out of file name if none yet
string titleOrFilename;
string utf8fn;
@ -301,6 +308,7 @@ void ResListPager::displayDoc(RclConfig *config, int i, Rcl::Doc& doc,
subs["T"] = maybeEscapeHtml(titleOrFilename);
subs["t"] = maybeEscapeHtml(doc.meta[Rcl::Doc::keytt]);
subs["U"] = url;
subs["u"] = urlOrLocal;
// Let %(xx) access all metadata. HTML-neuter everything:
for (map<string,string>::iterator it = doc.meta.begin();