Closed desb42 closed 5 years ago
Turns out (as I am building dewiki html) that I have been over zealous in my trimming of the logic. It seems that the additional subdirectory can be delimited by a dot (.) or a slash (/) So the replacement should be:
for (int i = 0; i < fils_len; i++) {
Io_url fil = fils[i];
if (!String_.Eq(fil.Ext(), ".lua")) continue; // ignore readme.txt, readme
gplx.core.ios.Io_fil fil_itm = new gplx.core.ios.Io_fil(fil, null);
String fname = fil.Raw().substring(script_dir.Raw().length(), fil.Raw().length()-4).replace("\\", ".").replace("/", ".");
int dot = fname.indexOf('.');
if (dot > 0) {
// also add just the filename (no extension)
rv.Add_if_dupe_use_1st(fil.NameOnly(), fil_itm);
// also add using '/' instead of '.'
rv.Add_if_dupe_use_1st(String_.Replace(String_.DelEndIf(fil.GenRelUrl_orEmpty(script_dir), ".lua"), "\\", "/"), fil_itm);
}
rv.Add_if_dupe_use_1st(fname, fil_itm);
}
Nice! Great analysis, explanation, and code.
I pushed the commit above. I changed the code a little, but hopefully the comments and tests make the intent clear.
Thanks!
Reviewing the logs of an enwiki html build I came across this error
I tracked this down to Scrib_fsys_mgr.java It seems that Mediawik Lua allows for either
luabit.hex
orhex
to load a lua module (from disk) So I changed the logic in function libs_init from (L44)to
This seem to make it work