1
0
mirror of https://github.com/gnosygnu/xowa.git synced 2026-03-02 03:49:30 +00:00

'v3.4.4.1'

This commit is contained in:
gnosygnu
2016-04-24 22:05:38 -04:00
parent ad140a93fe
commit 5ce4ea2a08
103 changed files with 1767 additions and 340 deletions

View File

@@ -18,8 +18,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
package gplx.xowa.htmls.bridges; import gplx.*; import gplx.xowa.*; import gplx.xowa.htmls.*;
import gplx.langs.jsons.*;
public class Bridge_cmd_mgr {
private final Json_parser parser;
private final Hash_adp_bry cmd_hash = Hash_adp_bry.cs();
private final Json_parser parser;
private final Hash_adp_bry cmd_hash = Hash_adp_bry.cs();
public Bridge_cmd_mgr(Json_parser parser) {this.parser = parser;}
public void Add(Bridge_cmd_itm cmd) {cmd_hash.Add_bry_obj(cmd.Key(), cmd);}
public String Exec(GfoMsg m) {
@@ -36,5 +36,5 @@ public class Bridge_cmd_mgr {
try {return cmd.Exec(msg.Get(Key_data));}
catch (Exception e) {throw Err_.new_exc(e, "bridge.cmds", "exec json failed", "json", jdoc_bry);}
}
private static final byte[] Key_cmd = Bry_.new_a7("cmd"), Key_data = Bry_.new_a7("data");
private static final byte[] Key_cmd = Bry_.new_a7("cmd"), Key_data = Bry_.new_a7("data");
}

View File

@@ -31,22 +31,28 @@ public class Xoh_lnke_data implements Xoh_data_itm {
public int Capt_bgn() {return capt_bgn;} private int capt_bgn;
public int Capt_end() {return capt_end;} private int capt_end;
public boolean Capt_exists() {return capt_exists;} private boolean capt_exists;
public int Title_bgn() {return title_bgn;} private int title_bgn;
public int Title_end() {return title_end;} private int title_end;
public boolean Title_exists() {return title_end > title_bgn;}
public void Clear() {
capt_exists = false;
lnke_tid = Byte_ascii.Max_7_bit;
src_bgn = src_end = href_bgn = href_end = capt_bgn = capt_end = auto_id = -1;
src_bgn = src_end = href_bgn = href_end = capt_bgn = capt_end = auto_id = title_bgn = title_end = -1;
}
public void Init_by_decode(byte lnke_tid, int auto_id, int href_bgn, int href_end, int capt_bgn, int capt_end, boolean capt_exists) {
public void Init_by_decode(byte lnke_tid, int auto_id, int href_bgn, int href_end, int capt_bgn, int capt_end, boolean capt_exists, int title_bgn, int title_end) {
this.lnke_tid = lnke_tid; this.auto_id = auto_id; this.href_bgn = href_bgn; this.href_end = href_end;
this.capt_bgn = capt_bgn; this.capt_end = capt_end; this.capt_exists = capt_exists;
this.title_bgn = title_bgn; this.title_end = title_end;
}
public boolean Init_by_parse(Xoh_hdoc_wkr hdoc_wkr, Xoh_hdoc_ctx hctx, Gfh_tag_rdr tag_rdr, byte[] src, Gfh_tag anch_head, Gfh_tag unused) {
this.src_bgn = anch_head.Src_bgn();
Gfh_atr href_atr = anch_head.Atrs__get_by_or_fail(Gfh_atr_.Bry__href); // get href; "EX: href='http://a.org'"
Gfh_atr href_atr = anch_head.Atrs__get_by_or_fail(Gfh_atr_.Bry__href); // get href; "EX: href='http://a.org'"
this.href_bgn = href_atr.Val_bgn(); this.href_end = href_atr.Val_end();
this.lnke_tid = anch_head.Atrs__cls_find_or_fail(Xoh_lnke_dict_.Hash); // get type by class; EX: "class='external free'"
this.capt_bgn = anch_head.Src_end();
Gfh_tag anch_tail = tag_rdr.Tag__move_fwd_tail(Gfh_tag_.Id__a); // find '</a>'
Gfh_atr title_atr = anch_head.Atrs__get_by_or_empty(Gfh_atr_.Bry__title);
this.title_bgn = title_atr.Val_bgn(); this.title_end = title_atr.Val_end();
Gfh_tag anch_tail = tag_rdr.Tag__move_fwd_tail(Gfh_tag_.Id__a); // find '</a>'
this.capt_end = anch_tail.Src_bgn();
switch (lnke_tid) {
case Xoh_lnke_dict_.Type__free:

View File

@@ -24,35 +24,40 @@ public class Xoh_lnke_hzip implements Xoh_hzip_wkr, Gfo_poolable_itm {
public byte[] Hook() {return hook;} private byte[] hook;
public Gfo_poolable_itm Encode1(Xoh_hzip_bfr bfr, Xoh_hdoc_wkr hdoc_wkr, Xoh_hdoc_ctx hctx, Xoh_page hpg, boolean wkr_is_root, byte[] src, Object data_obj) {
Xoh_lnke_data data = (Xoh_lnke_data)data_obj;
boolean title_exists = flag_bldr.Set_as_bool(Flag__title_exists , data.Title_exists());
boolean auto_exists = flag_bldr.Set_as_bool(Flag__auto_exists , data.Auto_exists());
boolean capt_exists = flag_bldr.Set_as_bool(Flag__capt_exists , data.Capt_exists());
byte lnke_tid = flag_bldr.Set_as_byte(Flag__lnke_tid , data.Lnke_tid());
bfr.Add(hook);
bfr.Add_hzip_int(1, flag_bldr.Encode()); // add flag
bfr.Add_hzip_mid(src, data.Href_bgn(), data.Href_end()); // add href
if (auto_exists) bfr.Add_hzip_int(1, data.Auto_id()); // add autonumber
if (capt_exists) bfr.Add_hzip_mid(src, data.Capt_bgn(), data.Capt_end()); // add caption
bfr.Add_hzip_int(1, flag_bldr.Encode()); // add flag
bfr.Add_hzip_mid(src, data.Href_bgn(), data.Href_end()); // add href
if (auto_exists) bfr.Add_hzip_int(1, data.Auto_id()); // add autonumber
if (capt_exists) bfr.Add_hzip_mid(src, data.Capt_bgn(), data.Capt_end()); // add caption
if (title_exists) bfr.Add_hzip_mid(src, data.Title_bgn(), data.Title_end()); // add title
hctx.Hzip__stat().Lnke_add(lnke_tid);
return this;
}
public void Decode1(Bry_bfr bfr, Xoh_hdoc_wkr hdoc_wkr, Xoh_hdoc_ctx hctx, Xoh_page hpg, Bry_rdr rdr, byte[] src, int src_bgn, int src_end, Xoh_data_itm data_itm) {
int flag = rdr.Read_hzip_int(1); flag_bldr.Decode(flag);
boolean title_exists = flag_bldr.Get_as_bool(Flag__title_exists);
boolean auto_exists = flag_bldr.Get_as_bool(Flag__auto_exists);
boolean capt_exists = flag_bldr.Get_as_bool(Flag__capt_exists);
byte lnke_tid = flag_bldr.Get_as_byte(Flag__lnke_tid);
int href_bgn = rdr.Pos(); int href_end = rdr.Find_fwd_lr();
int auto_id = -1, capt_bgn = -1, capt_end = -1;
int auto_id = -1, capt_bgn = -1, capt_end = -1, title_bgn = -1, title_end = -1;
if (auto_exists) auto_id = rdr.Read_hzip_int(1);
if (capt_exists) {capt_bgn = rdr.Pos(); capt_end = rdr.Find_fwd_lr();}
if (capt_exists) {capt_bgn = rdr.Pos(); capt_end = rdr.Find_fwd_lr();}
if (title_exists) {title_bgn = rdr.Pos(); title_end = rdr.Find_fwd_lr();}
Xoh_lnke_data data = (Xoh_lnke_data)data_itm;
data.Init_by_decode(lnke_tid, auto_id, href_bgn, href_end, capt_bgn, capt_end, capt_exists);
data.Init_by_decode(lnke_tid, auto_id, href_bgn, href_end, capt_bgn, capt_end, capt_exists, title_bgn, title_end);
}
public void Pool__rls () {pool_mgr.Rls_fast(pool_idx);} private Gfo_poolable_mgr pool_mgr; private int pool_idx;
public Gfo_poolable_itm Pool__make (Gfo_poolable_mgr mgr, int idx, Object[] args) {Xoh_lnke_hzip rv = new Xoh_lnke_hzip(); rv.pool_mgr = mgr; rv.pool_idx = idx; rv.hook = (byte[])args[0]; return rv;}
private final Int_flag_bldr flag_bldr = new Int_flag_bldr().Pow_ary_bld_ (1, 1, 2);
private final Int_flag_bldr flag_bldr = new Int_flag_bldr().Pow_ary_bld_ (1, 1, 1, 2);
private static final int // SERIALIZED
Flag__auto_exists = 0
, Flag__capt_exists = 1
, Flag__lnke_tid = 2 // "free", "autonumber", "text"
Flag__title_exists = 0
, Flag__auto_exists = 1
, Flag__capt_exists = 2
, Flag__lnke_tid = 3 // "free", "autonumber", "text"
;
}

View File

@@ -18,7 +18,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
package gplx.xowa.htmls.core.wkrs.lnkes; import gplx.*; import gplx.xowa.*; import gplx.xowa.htmls.*; import gplx.xowa.htmls.core.*; import gplx.xowa.htmls.core.wkrs.*;
import org.junit.*; import gplx.xowa.htmls.core.hzips.*;
public class Xoh_lnke_hzip_tst {
private final Xoh_hzip_fxt fxt = new Xoh_hzip_fxt();
private final Xoh_hzip_fxt fxt = new Xoh_hzip_fxt();
@Test public void Free() {
fxt.Test__bicode("~#!http://a.org~", Xoh_lnke_html__hdump__tst.Html__free);
}
@@ -41,6 +41,11 @@ public class Xoh_lnke_hzip_tst {
@Test public void Text() {
fxt.Test__bicode("~#'http://a.org~a~", Xoh_lnke_html__hdump__tst.Html__text);
}
@Test public void Wikivoyage__sleep() {
fxt.Test__bicode
( "~#7http://a.org~c~b~"
, "<a href='http://a.org' rel='nofollow' class='external text' title='b'>c</a>");
}
// @Test public void Xwiki__exists() {
// String hzip = "~#'https://en.wiktionary.org/wiki/A~A~";
// String html_https = "<a href='https://en.wiktionary.org/wiki/A' rel='nofollow' class='external text'>A</a>";

View File

@@ -20,25 +20,27 @@ import gplx.core.brys.*; import gplx.core.primitives.*; import gplx.core.brys.fm
import gplx.langs.htmls.*; import gplx.xowa.htmls.core.wkrs.bfr_args.*;
import gplx.xowa.htmls.core.hzips.*;
public class Xoh_lnke_wtr implements gplx.core.brys.Bfr_arg, Xoh_wtr_itm {
private final Bfr_arg__bry anch_href = Bfr_arg__bry.New_empty(), anch_cls = Bfr_arg__bry.New_empty(), anch_content = Bfr_arg__bry.New_empty();
private final Bfr_arg__bry anch_href = Bfr_arg__bry.New_empty(), anch_cls = Bfr_arg__bry.New_empty(), anch_content = Bfr_arg__bry.New_empty();
private final Bfr_arg__hatr_bry anch_title = new Bfr_arg__hatr_bry(Gfh_atr_.Bry__title);
public boolean Init_by_decode(Xoh_page hpg, Xoh_hdoc_ctx hctx, byte[] src, Xoh_data_itm data_itm) {
Bfr_arg_.Clear(anch_href, anch_cls,anch_content);
Xoh_lnke_data data = (Xoh_lnke_data)data_itm;
anch_href.Set_by_mid(src, data.Href_bgn(), data.Href_end());
anch_cls.Set_by_val(Xoh_lnke_dict_.To_html_class(data.Lnke_tid()));
if (data.Title_exists()) anch_title.Set_by_mid(src, data.Title_bgn(), data.Title_end());
if (data.Auto_exists()) anch_content.Set_by_arg(Xoh_lnke_wtr_arg__autonum.Instance.Set_by_auto_id(data.Auto_id()));
else if (data.Capt_exists()) anch_content.Set_by_mid(src, data.Capt_bgn(), data.Capt_end());
else anch_content.Set_by_mid(src, data.Href_bgn(), data.Href_end());
return true;
}
public void Bfr_arg__add(Bry_bfr bfr) {
fmtr.Bld_bfr_many(bfr, anch_href, anch_cls, anch_content);
fmtr.Bld_bfr_many(bfr, anch_href, anch_cls, anch_content, anch_title);
}
public void Pool__rls () {pool_mgr.Rls_fast(pool_idx);} private Gfo_poolable_mgr pool_mgr; private int pool_idx;
public Gfo_poolable_itm Pool__make (Gfo_poolable_mgr mgr, int idx, Object[] args) {Xoh_lnke_wtr rv = new Xoh_lnke_wtr(); rv.pool_mgr = mgr; rv.pool_idx = idx; return rv;}
private static final Bry_fmtr fmtr = Bry_fmtr.new_
( "<a href=\"~{href}\" rel=\"nofollow\" class=\"external ~{cls}\">~{content}</a>"
, "href", "cls", "content");
private static final Bry_fmtr fmtr = Bry_fmtr.new_
( "<a href=\"~{href}\" rel=\"nofollow\" class=\"external ~{cls}\"~{title}>~{content}</a>"
, "href", "cls", "content", "title");
}
class Xoh_lnke_wtr_arg__autonum implements Bfr_arg {
private int auto_id;
@@ -46,5 +48,5 @@ class Xoh_lnke_wtr_arg__autonum implements Bfr_arg {
public void Bfr_arg__add(Bry_bfr bfr) {
bfr.Add_byte(Byte_ascii.Brack_bgn).Add_int_variable(auto_id).Add_byte(Byte_ascii.Brack_end);
}
public static final Xoh_lnke_wtr_arg__autonum Instance = new Xoh_lnke_wtr_arg__autonum(); Xoh_lnke_wtr_arg__autonum() {}
public static final Xoh_lnke_wtr_arg__autonum Instance = new Xoh_lnke_wtr_arg__autonum(); Xoh_lnke_wtr_arg__autonum() {}
}

View File

@@ -23,7 +23,7 @@ public class Xoh_lnki_data {
private byte[] src;
private int href_ns_id; private byte[] href_ns_name; private int href_ns_name_len;
private byte[] capt_src; private int capt_bgn, capt_end;
private final Bry_rdr rdr = new Bry_rdr();
private final Bry_rdr rdr = new Bry_rdr();
public int Src_bgn() {return src_bgn;} private int src_bgn;
public int Src_end() {return src_end;} private int src_end;
public boolean Capt_has_ns() {return capt_has_ns;} private boolean capt_has_ns;
@@ -42,8 +42,8 @@ public class Xoh_lnki_data {
public int Title_bgn() {return title_bgn;} private int title_bgn;
public int Title_end() {return title_end;} private int title_end;
public byte Cls_tid() {return cls_tid;} private byte cls_tid;
public Xoh_anch_href_data Href_itm() {return href_itm;} private final Xoh_anch_href_data href_itm = new Xoh_anch_href_data();
public Xoh_anch_capt_itm Capt_itm() {return capt_itm;} private final Xoh_anch_capt_itm capt_itm = new Xoh_anch_capt_itm();
public Xoh_anch_href_data Href_itm() {return href_itm;} private final Xoh_anch_href_data href_itm = new Xoh_anch_href_data();
public Xoh_anch_capt_itm Capt_itm() {return capt_itm;} private final Xoh_anch_capt_itm capt_itm = new Xoh_anch_capt_itm();
private void Init(byte[] src) {
this.src = href_src = capt_src = src;
capt_has_ns = title_missing_ns = false;

View File

@@ -21,7 +21,7 @@ import gplx.xowa.htmls.core.hzips.*; import gplx.xowa.htmls.core.wkrs.lnkis.anch
import gplx.langs.htmls.*; import gplx.xowa.htmls.hrefs.*; import gplx.xowa.wikis.ttls.*;
import gplx.xowa.wikis.nss.*; import gplx.xowa.parsers.lnkis.*;
public class Xoh_lnki_hzip implements Xoh_hzip_wkr, Gfo_poolable_itm {
private final Bry_bfr tmp_bfr = Bry_bfr.new_(32);
private final Bry_bfr tmp_bfr = Bry_bfr.new_(32);
public int Tid() {return Xoh_hzip_dict_.Tid__lnki;}
public String Key() {return Xoh_hzip_dict_.Key__lnki;}
public byte[] Hook() {return hook;} private byte[] hook;
@@ -157,11 +157,12 @@ public class Xoh_lnki_hzip implements Xoh_hzip_wkr, Gfo_poolable_itm {
bfr.Add(href_bry);
byte[] cls_bry = null;
switch (cls_tid) {
case Xoh_anch_cls_.Tid__ctg_main: cls_bry = Xoh_anch_cls_.Bry__ctg_main; break;
case Xoh_anch_cls_.Tid__ctg_tree: cls_bry = Xoh_anch_cls_.Bry__ctg_tree; break;
case Xoh_anch_cls_.Tid__ctg_xnav: cls_bry = Xoh_anch_cls_.Bry__ctg_xnav; break;
case Xoh_anch_cls_.Tid__media_info: cls_bry = Xoh_anch_cls_.Bry__media_info; break;
case Xoh_anch_cls_.Tid__media_play: cls_bry = Xoh_anch_cls_.Bry__media_play; break;
case Xoh_anch_cls_.Tid__ctg_main: cls_bry = Xoh_anch_cls_.Bry__ctg_main; break;
case Xoh_anch_cls_.Tid__ctg_tree: cls_bry = Xoh_anch_cls_.Bry__ctg_tree; break;
case Xoh_anch_cls_.Tid__ctg_xnav: cls_bry = Xoh_anch_cls_.Bry__ctg_xnav; break;
case Xoh_anch_cls_.Tid__media_info: cls_bry = Xoh_anch_cls_.Bry__media_info; break;
case Xoh_anch_cls_.Tid__media_play: cls_bry = Xoh_anch_cls_.Bry__media_play; break;
case Xoh_anch_cls_.Tid__voyage__email: cls_bry = Xoh_anch_cls_.Bry__voyage_email; break;
}
if (cls_bry != null) bfr.Add(Gfh_bldr_.Bry__cls__nth).Add(cls_bry);
if (!hctx.Mode_is_diff())
@@ -178,7 +179,7 @@ public class Xoh_lnki_hzip implements Xoh_hzip_wkr, Gfo_poolable_itm {
}
public void Pool__rls () {pool_mgr.Rls_fast(pool_idx);} private Gfo_poolable_mgr pool_mgr; private int pool_idx;
public Gfo_poolable_itm Pool__make (Gfo_poolable_mgr mgr, int idx, Object[] args) {Xoh_lnki_hzip rv = new Xoh_lnki_hzip(); rv.pool_mgr = mgr; rv.pool_idx = idx; rv.hook = (byte[])args[0]; return rv;}
private final Int_flag_bldr flag_bldr = new Int_flag_bldr().Pow_ary_bld_ (3, 1 , 1, 1, 2, 1 , 1, 2, 2, 2);
private final Int_flag_bldr flag_bldr = new Int_flag_bldr().Pow_ary_bld_ (3, 1 , 1, 1, 2, 1 , 1, 2, 2, 2);
private static final int // SERIALIZED
Flag__cls_tid = 0
, Flag__title_missing_ns = 1

View File

@@ -18,7 +18,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
package gplx.xowa.htmls.core.wkrs.lnkis; import gplx.*; import gplx.xowa.*; import gplx.xowa.htmls.*; import gplx.xowa.htmls.core.*; import gplx.xowa.htmls.core.wkrs.*;
import org.junit.*;
public class Xoh_lnki_hzip__site__tst {
private final Xoh_hzip_fxt fxt = new Xoh_hzip_fxt().Init_mode_diff_y_();
private final Xoh_hzip_fxt fxt = new Xoh_hzip_fxt().Init_mode_diff_y_();
@Test public void Basic() { // EX: [[wikt:A]]
fxt.Test__bicode("~${$3en.wiktionary.org~A~wikt:A~" , "<a href='/site/en.wiktionary.org/wiki/A' title='wikt:A'>wikt:A</a>");
}
@@ -76,4 +76,9 @@ public class Xoh_lnki_hzip__site__tst {
@Test public void Main_page() { // EX: [[wikt:]]
fxt.Test__bicode("~${<<en.wiktionary.org~~wikt:~" , "<a href='/site/en.wiktionary.org/wiki/' title='wikt:'>wikt:</a>");
}
@Test public void Wikivoyage__email() {
fxt.Test__bicode
( "$|)%6mailto:ab"
, "<a href='mailto:a' class='email'>b</a>");
}
}

View File

@@ -18,27 +18,30 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
package gplx.xowa.htmls.core.wkrs.lnkis.anchs; import gplx.*; import gplx.xowa.*; import gplx.xowa.htmls.*; import gplx.xowa.htmls.core.*; import gplx.xowa.htmls.core.wkrs.*; import gplx.xowa.htmls.core.wkrs.lnkis.*;
import gplx.core.btries.*;
public class Xoh_anch_cls_ {
public static final byte
Tid__none = 0
, Tid__unknown = 1
, Tid__media_play = 1
, Tid__media_info = 2
, Tid__ctg_main = 3
, Tid__ctg_tree = 4
, Tid__ctg_xnav = 5
public static final byte // SERIALIZED
Tid__none = 0
, Tid__unknown = 1
, Tid__media_play = 6 // NOTE: was 1; DATE:2016-04-21
, Tid__media_info = 2
, Tid__ctg_main = 3
, Tid__ctg_tree = 4
, Tid__ctg_xnav = 5
, Tid__voyage__email = 7
;
public static final byte[]
Bry__media_play = Bry_.new_a7("xowa_media_play")
, Bry__media_info = Bry_.new_a7("xowa_media_info")
, Bry__ctg_main = Bry_.new_a7("internal")
, Bry__ctg_tree = gplx.xowa.wikis.ctgs.Xoa_ctg_mgr.Html__cls__bry
, Bry__ctg_xnav = Bry_.new_a7("xowa_nav")
public static final byte[]
Bry__media_play = Bry_.new_a7("xowa_media_play")
, Bry__media_info = Bry_.new_a7("xowa_media_info")
, Bry__ctg_main = Bry_.new_a7("internal")
, Bry__ctg_tree = gplx.xowa.wikis.ctgs.Xoa_ctg_mgr.Html__cls__bry
, Bry__ctg_xnav = Bry_.new_a7("xowa_nav")
, Bry__voyage_email = Bry_.new_a7("email")
;
public static final Btrie_slim_mgr Trie = Btrie_slim_mgr.cs()
.Add_bry_byte(Bry__media_play , Tid__media_play)
.Add_bry_byte(Bry__media_info , Tid__media_info)
.Add_bry_byte(Bry__ctg_main , Tid__ctg_main)
.Add_bry_byte(Bry__ctg_tree , Tid__ctg_tree)
.Add_bry_byte(Bry__ctg_xnav , Tid__ctg_xnav)
public static final Btrie_slim_mgr Trie = Btrie_slim_mgr.cs()
.Add_bry_byte(Bry__media_play , Tid__media_play)
.Add_bry_byte(Bry__media_info , Tid__media_info)
.Add_bry_byte(Bry__ctg_main , Tid__ctg_main)
.Add_bry_byte(Bry__ctg_tree , Tid__ctg_tree)
.Add_bry_byte(Bry__ctg_xnav , Tid__ctg_xnav)
.Add_bry_byte(Bry__voyage_email , Tid__voyage__email)
;
}

View File

@@ -25,8 +25,8 @@ public class Xoh_thm_data implements Gfh_style_wkr {
public boolean Rng_valid() {return rng_valid;} private boolean rng_valid;
public byte Div_0_align() {return div_0_align;} private byte div_0_align;
public int Div_1_width() {return div_1_width;} private int div_1_width;
public Xoh_img_data Img_data() {return img_data;} private final Xoh_img_data img_data = new Xoh_img_data();
public Xoh_thm_caption_data Capt_data() {return capt_data;} private final Xoh_thm_caption_data capt_data = new Xoh_thm_caption_data();
public Xoh_img_data Img_data() {return img_data;} private final Xoh_img_data img_data = new Xoh_img_data();
public Xoh_thm_caption_data Capt_data() {return capt_data;} private final Xoh_thm_caption_data capt_data = new Xoh_thm_caption_data();
public void Clear() {
rng_valid = false;
capt_data.Clear();
@@ -70,7 +70,7 @@ public class Xoh_thm_data implements Gfh_style_wkr {
this.div_1_width = -1;
return true;
}
public static final byte[]
public static final byte[]
Atr__class__thumb = Bry_.new_a7("thumb")
, Atr__class__thumbinner = Bry_.new_a7("thumbinner")
, Atr__id__xowa_media_div = Bry_.new_a7("xowa_media_div")

View File

@@ -18,7 +18,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
package gplx.xowa.htmls.core.wkrs.thms; import gplx.*; import gplx.xowa.*; import gplx.xowa.htmls.*; import gplx.xowa.htmls.core.*; import gplx.xowa.htmls.core.wkrs.*;
import org.junit.*; import gplx.langs.htmls.*; import gplx.xowa.htmls.core.hzips.*;
public class Xoh_thm_hzip_tst {
private final Xoh_hzip_fxt fxt = new Xoh_hzip_fxt().Init_mode_diff_y_();
private final Xoh_hzip_fxt fxt = new Xoh_hzip_fxt().Init_mode_diff_y_();
@Before public void setup() {fxt.Clear();}
@Test public void Image() {
fxt.Test__bicode("~&3abc~abc~!uA.png~)#Sabc~", String_.Concat_lines_nl_skip_last
@@ -311,7 +311,7 @@ public class Xoh_thm_hzip_tst {
// fxt.Wiki().Ns_mgr().Init();
//
// fxt.Init_mode_is_b256_(Bool_.N);
// fxt.Exec_write_to_fsys(Io_url_.new_dir_("J:\\xowa\\research\\html\\"), "debug.html");
// fxt.Exec_write_to_fsys(Io_url_.new_dir_("C:\\xowa\\debug\\html\\"), "hzip.html");
// fxt.Init_mode_is_b256_(Bool_.N);
// }
}