mirror of
https://github.com/gnosygnu/xowa.git
synced 2026-03-02 03:49:30 +00:00
'v3.3.4.1'
This commit is contained in:
@@ -24,7 +24,7 @@ public class Xop_tblw_tb_tkn extends Xop_tkn_itm_base implements Xop_tblw_tkn {
|
||||
atrs_bgn = atrs_end = bgn;
|
||||
}
|
||||
@Override public byte Tkn_tid() {return Xop_tkn_itm_.Tid_tblw_tb;}
|
||||
public int Tblw_tid() {return Xop_xnde_tag_.Tid_table;}
|
||||
public int Tblw_tid() {return Xop_xnde_tag_.Tid__table;}
|
||||
public int Atrs_bgn() {return atrs_bgn;} private int atrs_bgn = Xop_tblw_wkr.Atrs_null;
|
||||
public int Atrs_end() {return atrs_end;} private int atrs_end = -1;
|
||||
public void Atrs_rng_set(int bgn, int end) {this.atrs_bgn = bgn; this.atrs_end = end;}
|
||||
|
||||
@@ -19,7 +19,7 @@ package gplx.xowa.parsers.tblws; import gplx.*; import gplx.xowa.*; import gplx.
|
||||
import gplx.xowa.parsers.xndes.*; import gplx.xowa.parsers.htmls.*;
|
||||
public class Xop_tblw_tc_tkn extends Xop_tkn_itm_base implements Xop_tblw_tkn {
|
||||
@Override public byte Tkn_tid() {return Xop_tkn_itm_.Tid_tblw_tc;}
|
||||
public int Tblw_tid() {return Xop_xnde_tag_.Tid_caption;}
|
||||
public int Tblw_tid() {return Xop_xnde_tag_.Tid__caption;}
|
||||
public int Atrs_bgn() {return atrs_bgn;} private int atrs_bgn = Xop_tblw_wkr.Atrs_null;
|
||||
public int Atrs_end() {return atrs_end;} private int atrs_end = -1;
|
||||
public void Atrs_rng_set(int bgn, int end) {this.atrs_bgn = bgn; this.atrs_end = end;}
|
||||
|
||||
@@ -19,7 +19,7 @@ package gplx.xowa.parsers.tblws; import gplx.*; import gplx.xowa.*; import gplx.
|
||||
import gplx.xowa.parsers.xndes.*; import gplx.xowa.parsers.htmls.*;
|
||||
public class Xop_tblw_td_tkn extends Xop_tkn_itm_base implements Xop_tblw_tkn {
|
||||
@Override public byte Tkn_tid() {return Xop_tkn_itm_.Tid_tblw_td;}
|
||||
public int Tblw_tid() {return Xop_xnde_tag_.Tid_td;}
|
||||
public int Tblw_tid() {return Xop_xnde_tag_.Tid__td;}
|
||||
public int Atrs_bgn() {return atrs_bgn;} private int atrs_bgn = Xop_tblw_wkr.Atrs_null;
|
||||
public int Atrs_end() {return atrs_end;} private int atrs_end = -1;
|
||||
public void Atrs_rng_set(int bgn, int end) {this.atrs_bgn = bgn; this.atrs_end = end;}
|
||||
|
||||
@@ -19,7 +19,7 @@ package gplx.xowa.parsers.tblws; import gplx.*; import gplx.xowa.*; import gplx.
|
||||
import gplx.xowa.parsers.xndes.*; import gplx.xowa.parsers.htmls.*;
|
||||
public class Xop_tblw_th_tkn extends Xop_tkn_itm_base implements Xop_tblw_tkn {
|
||||
@Override public byte Tkn_tid() {return Xop_tkn_itm_.Tid_tblw_th;}
|
||||
public int Tblw_tid() {return Xop_xnde_tag_.Tid_th;}
|
||||
public int Tblw_tid() {return Xop_xnde_tag_.Tid__th;}
|
||||
public int Atrs_bgn() {return atrs_bgn;} private int atrs_bgn = Xop_tblw_wkr.Atrs_null;
|
||||
public int Atrs_end() {return atrs_end;} private int atrs_end = -1;
|
||||
public void Atrs_rng_set(int bgn, int end) {this.atrs_bgn = bgn; this.atrs_end = end;}
|
||||
|
||||
@@ -24,7 +24,7 @@ public class Xop_tblw_tr_tkn extends Xop_tkn_itm_base implements Xop_tblw_tkn {
|
||||
atrs_bgn = atrs_end = bgn;
|
||||
}
|
||||
@Override public byte Tkn_tid() {return Xop_tkn_itm_.Tid_tblw_tr;}
|
||||
public int Tblw_tid() {return Xop_xnde_tag_.Tid_tr;}
|
||||
public int Tblw_tid() {return Xop_xnde_tag_.Tid__tr;}
|
||||
public int Atrs_bgn() {return atrs_bgn;} private int atrs_bgn = Xop_tblw_wkr.Atrs_null;
|
||||
public int Atrs_end() {return atrs_end;} private int atrs_end = -1;
|
||||
public void Atrs_rng_set(int bgn, int end) {this.atrs_bgn = bgn; this.atrs_end = end;}
|
||||
|
||||
@@ -211,8 +211,8 @@ public class Xop_tblw_wkr implements Xop_ctx_wkr {
|
||||
}
|
||||
else {
|
||||
if (!tbl_is_xml) // only for "\n|" not <td>
|
||||
ctx.Para().Process_nl(ctx, root, src, bgn_pos, bgn_pos + 1); // simulate "\n"; DATE:2014-02-20; ru.w:;[[Help:Download]]; DATE:2014-02-20
|
||||
ctx.Para().Process_block__bgn_y__end_n(Xop_xnde_tag_.Tag_td); // <td>
|
||||
ctx.Para().Process_nl(ctx, root, src, bgn_pos, bgn_pos + 1); // simulate "\n"; DATE:2014-02-20; ru.w:;home/wiki/Dashboard/Image_databases; DATE:2014-02-20
|
||||
ctx.Para().Process_block__bgn_y__end_n(Xop_xnde_tag_.Tag__td); // <td>
|
||||
ctx.Stack_pop_til(root, src, ctx.Stack_idx_typ(prv_tid), true, bgn_pos, bgn_pos, Xop_tkn_itm_.Tid_tblw_td);
|
||||
}
|
||||
break;
|
||||
@@ -311,11 +311,11 @@ public class Xop_tblw_wkr implements Xop_ctx_wkr {
|
||||
switch (wlxr_type) {
|
||||
case Tblw_type_tb:
|
||||
case Tblw_type_tr:
|
||||
ctx.Para().Process_block__bgn_y__end_n(Xop_xnde_tag_.Tag_tr);
|
||||
ctx.Para().Process_block__bgn_y__end_n(Xop_xnde_tag_.Tag__tr);
|
||||
break;
|
||||
case Tblw_type_td:
|
||||
case Tblw_type_th:
|
||||
ctx.Para().Process_block__bgn_n__end_y(Xop_xnde_tag_.Tag_td);
|
||||
ctx.Para().Process_block__bgn_n__end_y(Xop_xnde_tag_.Tag__td);
|
||||
break;
|
||||
}
|
||||
return cur_pos;
|
||||
@@ -383,7 +383,7 @@ public class Xop_tblw_wkr implements Xop_ctx_wkr {
|
||||
Xop_tblw_tb_tkn tb = (Xop_tblw_tb_tkn)ctx.Stack_pop_til(root, src, tb_idx, false, bgn_pos, bgn_pos, Xop_tkn_itm_.Tid_tblw_td); // NOTE: need to pop manually in order to set all intermediate node ends to bgn_pos, but tb ent to cur_pos; EX: for stack of "tb,tr,td" tr and td get End_() of bgn_pos but tb gets End_() of cur_pos
|
||||
tb.Subs_move(root);
|
||||
tb.Src_end_(cur_pos);
|
||||
ctx.Para().Process_block__bgn_n__end_y(Xop_xnde_tag_.Tag_table); // NOTE: must clear block state that was started by <tr>; code implicitly relies on td clearing block state, but no td was created
|
||||
ctx.Para().Process_block__bgn_n__end_y(Xop_xnde_tag_.Tag__table); // NOTE: must clear block state that was started by <tr>; code implicitly relies on td clearing block state, but no td was created
|
||||
return cur_pos;
|
||||
}
|
||||
int acs_typeId = typeId;
|
||||
@@ -418,11 +418,11 @@ public class Xop_tblw_wkr implements Xop_ctx_wkr {
|
||||
Xop_tblw_tkn bgn_tkn = (Xop_tblw_tkn)ctx.Stack_pop_til(root, src, acs_pos, false, bgn_pos, cur_pos, Xop_tkn_itm_.Tid_tblw_td);
|
||||
switch (wlxr_type) {
|
||||
case Tblw_type_tb:
|
||||
ctx.Para().Process_block__bgn_n__end_y(Xop_xnde_tag_.Tag_table);
|
||||
ctx.Para().Process_block__bgn_n__end_y(Xop_xnde_tag_.Tag__table);
|
||||
break;
|
||||
case Tblw_type_td:
|
||||
case Tblw_type_th:
|
||||
ctx.Para().Process_block__bgn_y__end_n(Xop_xnde_tag_.Tag_td);
|
||||
ctx.Para().Process_block__bgn_y__end_n(Xop_xnde_tag_.Tag__td);
|
||||
break;
|
||||
}
|
||||
bgn_tkn.Subs_move(root);
|
||||
@@ -538,7 +538,7 @@ public class Xop_tblw_wkr implements Xop_ctx_wkr {
|
||||
break;
|
||||
case Xop_tkn_itm_.Tid_xnde:
|
||||
if (ws_tkn.Src_bgn() == ws_tkn.Src_end() // NOTE: para_wkr inserts <br/>. these should be disabled in Ignore_ws_rng; they are identified as having bgn == end; normal <br/>s will have bgn < end
|
||||
&& ((Xop_xnde_tkn)ws_tkn).Tag().Id() == Xop_xnde_tag_.Tid_br)
|
||||
&& ((Xop_xnde_tkn)ws_tkn).Tag().Id() == Xop_xnde_tag_.Tid__br)
|
||||
ws_tkn.Ignore_y_grp_(ctx, root, cur);
|
||||
break;
|
||||
default:
|
||||
|
||||
@@ -18,7 +18,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
package gplx.xowa.parsers.tblws; import gplx.*; import gplx.xowa.*; import gplx.xowa.parsers.*;
|
||||
import org.junit.*;
|
||||
public class Xop_tblw_wkr__para_tst {
|
||||
@Before public void init() {fxt.Reset(); fxt.Init_para_y_();} private final Xop_fxt fxt = new Xop_fxt();
|
||||
@Before public void init() {fxt.Reset(); fxt.Init_para_y_();} private final Xop_fxt fxt = new Xop_fxt();
|
||||
@After public void term() {fxt.Init_para_n_();}
|
||||
@Test public void Para() { // PURPOSE: para causing strange breaks; SEE:[[John F. Kennedy]] and "two Supreme Court appointments"
|
||||
fxt.Test_parse_page_wiki_str(String_.Concat_lines_nl_skip_last
|
||||
@@ -58,7 +58,7 @@ public class Xop_tblw_wkr__para_tst {
|
||||
)
|
||||
);
|
||||
}
|
||||
@Test public void Unnecessary_para() { // PURPOSE: tblw causes unnecessary <p>; [[Help:Download]]; DATE:2014-02-20
|
||||
@Test public void Unnecessary_para() { // PURPOSE: tblw causes unnecessary <p>; home/wiki/Dashboard/Image_databases; DATE:2014-02-20
|
||||
fxt.Test_parse_page_wiki_str(String_.Concat_lines_nl_skip_last
|
||||
( "{|"
|
||||
, "|-"
|
||||
|
||||
@@ -34,24 +34,24 @@ public class Xop_tblw_ws_itm {
|
||||
trie_itm(rv, Type_tc, Xop_tblw_lxr_ws.Hook_tc);
|
||||
trie_itm(rv, Type_td, Byte_ascii.Pipe_bry);
|
||||
trie_itm(rv, Type_nl, Byte_ascii.Nl_bry);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag_table);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag_tr);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag_td);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag_th);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag_blockquote);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag_h1);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag_h2);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag_h3);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag_h4);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag_h5);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag_h6);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag_pre);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag_p);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag_div);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag_hr);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag_li);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag_ul);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag_ol);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag__table);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag__tr);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag__td);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag__th);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag__blockquote);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag__h1);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag__h2);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag__h3);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag__h4);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag__h5);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag__h6);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag__pre);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag__p);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag__div);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag__hr);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag__li);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag__ul);
|
||||
trie_itm_xnde(rv, Xop_xnde_tag_.Tag__ol);
|
||||
return rv;
|
||||
}
|
||||
private static void trie_itm(Btrie_slim_mgr trie, byte type, byte[] bry) {trie.Add_obj(bry, new Xop_tblw_ws_itm(type, bry.length));}
|
||||
|
||||
Reference in New Issue
Block a user