mirror of
https://github.com/gnosygnu/xowa.git
synced 2026-03-02 03:49:30 +00:00
v2.1.4.1
This commit is contained in:
@@ -105,7 +105,7 @@ public class Xop_xnde_tkn extends Xop_tkn_itm_base implements Xop_tblw_tkn {
|
||||
for (int i = 0; i < subs_len; i++) // always evaluate subs; handle <poem>{{{1}}}</poem>; DATE:2014-03-03
|
||||
this.Subs_get(i).Tmpl_evaluate(ctx, src, caller, bfr);
|
||||
bfr.Add_mid(src, tag_close_bgn, tag_close_end); // write tag_end
|
||||
if (tag_close_bgn == Int_.MinValue) {// xtn is unclosed; add a </xtn> else rest of page will be gobbled; DATE:2014-11-13
|
||||
if (tag_close_bgn == Int_.MinValue) {// xtn is unclosed; add a </xtn> else rest of page will be gobbled; PAGE:en.w:Provinces_and_territories_of_Canada DATE:2014-11-13
|
||||
bfr.Add(tag.XtnEndTag());
|
||||
bfr.Add(Byte_ascii.Gt_bry);
|
||||
}
|
||||
|
||||
@@ -105,7 +105,7 @@ public class Xop_xnde_wkr implements Xop_ctx_wkr {
|
||||
if (ctx.Parse_tid() == Xop_parser_.Parse_tid_page_wiki) {
|
||||
if (ctx_cur_tid_is_tblw_atr_owner) // unknown_tag is occurring inside tblw element (EX: {| style='margin:1em<f'); just add to txt tkn
|
||||
return ctx.Lxr_make_txt_(cur_pos);
|
||||
else { // unknown_tag is occurring anyhwere else; escape < to < and resume from character just after it;
|
||||
else { // unknown_tag is occurring anywhere else; escape < to < and resume from character just after it;
|
||||
ctx.Subs_add(root, Make_bry_tkn(tkn_mkr, src, bgn_pos, cur_pos));
|
||||
return cur_pos;
|
||||
}
|
||||
@@ -634,19 +634,23 @@ public class Xop_xnde_wkr implements Xop_ctx_wkr {
|
||||
case Xop_xnde_tag_.Tid_imageMap: xnde_xtn = tkn_mkr.Xnde_imageMap(); break;
|
||||
case Xop_xnde_tag_.Tid_hiero: xnde_xtn = tkn_mkr.Xnde_hiero(); break;
|
||||
case Xop_xnde_tag_.Tid_inputBox: xnde_xtn = tkn_mkr.Xnde_inputbox(); break;
|
||||
case Xop_xnde_tag_.Tid_pages: {
|
||||
case Xop_xnde_tag_.Tid_dynamicPageList:
|
||||
case Xop_xnde_tag_.Tid_pages: {
|
||||
switch (tag_id) {
|
||||
case Xop_xnde_tag_.Tid_pages: xnde_xtn = tkn_mkr.Xnde_pages(); break;
|
||||
case Xop_xnde_tag_.Tid_dynamicPageList: xnde_xtn = tkn_mkr.Xnde_dynamicPageList(); break;
|
||||
}
|
||||
boolean enabled = ctx.Wiki().Xtn_mgr().Xtn_proofread().Enabled();
|
||||
if (enabled)
|
||||
xnde_xtn = tkn_mkr.Xnde_pages();
|
||||
else
|
||||
if (!enabled) { // if Page / Index ns does not exist, disable xtn and escape content; DATE:2014-11-28
|
||||
escaped = true;
|
||||
xnde_xtn = null;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case Xop_xnde_tag_.Tid_pagequality: xnde_xtn = tkn_mkr.Xnde_pagequality(); break;
|
||||
case Xop_xnde_tag_.Tid_pagelist: xnde_xtn = tkn_mkr.Xnde_pagelist(); break;
|
||||
case Xop_xnde_tag_.Tid_section: xnde_xtn = tkn_mkr.Xnde_section(); break;
|
||||
case Xop_xnde_tag_.Tid_categoryList: xnde_xtn = tkn_mkr.Xnde_categoryList(); break;
|
||||
case Xop_xnde_tag_.Tid_dynamicPageList: xnde_xtn = tkn_mkr.Xnde_dynamicPageList(); break;
|
||||
case Xop_xnde_tag_.Tid_syntaxHighlight: xnde_xtn = tkn_mkr.Xnde_syntaxHighlight(); break;
|
||||
case Xop_xnde_tag_.Tid_score: xnde_xtn = tkn_mkr.Xnde_score(); break;
|
||||
case Xop_xnde_tag_.Tid_translate: xnde_xtn = tkn_mkr.Xnde_translate(); break;
|
||||
|
||||
@@ -181,4 +181,18 @@ public class Xop_xnde_wkr__err_dangling_tst {
|
||||
@Test public void Underline() { // PURPOSE: 2nd <u> should auto-close; PAGE:en.b:Textbook_of_Psychiatry/Alcoholism_and_Psychoactive_Substance_Use_Disorders DATE:2014-09-05
|
||||
fxt.Test_html_full_str("a<u>b<u>c", "a<u>b</u>c");
|
||||
}
|
||||
@Test public void Xtn_template() { // PURPOSE: dangling xtns within templates should be auto-closed inside template, not in calling page; PAGE:en.w:Provinces_and_territories_of_Canada DATE:2014-11-13
|
||||
fxt.Init_page_create("Template:A", "<poem>A");
|
||||
fxt.Test_parse_page_all_str(String_.Concat_lines_nl_skip_last
|
||||
( "{{A}}"
|
||||
, " b" // poem should not extend to " b"
|
||||
), String_.Concat_lines_nl_skip_last
|
||||
( "<div class=\"poem\">"
|
||||
, "<p>"
|
||||
, "A"
|
||||
, "</p>"
|
||||
, "</div>" // poem ends here
|
||||
, " b"
|
||||
));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -122,4 +122,23 @@ public class Xop_xnde_wkr__nowiki_tst {
|
||||
( "<nowiki>[</nowiki>[[A]]<nowiki>]</nowiki>"
|
||||
, "[<a href=\"/wiki/A\">A</a>]"); // was showing up as [[[A]]]
|
||||
}
|
||||
@Test public void Tblw_tr() { // PURPOSE: dash should be escaped in nowiki PAGE:de.w:Liste_von_Vereinen_und_Vereinigungen_von_Gläubigen_(römisch-katholische_Kirche) DATE:2015-01-08
|
||||
fxt.Test_parse_page_all_str(String_.Concat_lines_nl_skip_last
|
||||
( "{|"
|
||||
, "|-"
|
||||
, "|a"
|
||||
, "|<nowiki>-</nowiki>" // do not treat as "|-"
|
||||
, "|}"
|
||||
), String_.Concat_lines_nl_skip_last
|
||||
( "<table>"
|
||||
, " <tr>"
|
||||
, " <td>a"
|
||||
, " </td>"
|
||||
, " <td>-" // "|" creates <td>; "-" is rendered literally
|
||||
, " </td>"
|
||||
, " </tr>"
|
||||
, "</table>"
|
||||
, ""
|
||||
));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user