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

v2.10.3.1

This commit is contained in:
gnosygnu
2015-10-18 22:17:57 -04:00
parent 8e18af05b6
commit 4f43f51b18
1935 changed files with 12500 additions and 12889 deletions

View File

@@ -17,7 +17,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package gplx.xowa.xtns.proofreadPage; import gplx.*; import gplx.xowa.*; import gplx.xowa.xtns.*;
import gplx.core.primitives.*;
import gplx.xowa.nss.*;
import gplx.xowa.wikis.nss.*;
import gplx.xowa.parsers.*; import gplx.xowa.parsers.logs.*; import gplx.xowa.parsers.xndes.*; import gplx.xowa.parsers.lnkis.*; import gplx.xowa.parsers.tmpls.*;
class Pp_index_parser {
public static Pp_index_page Parse(Xowe_wiki wiki, Xop_ctx ctx, Xoa_ttl index_ttl, int ns_page_id) {

View File

@@ -16,10 +16,10 @@ You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package gplx.xowa.xtns.proofreadPage; import gplx.*; import gplx.xowa.*; import gplx.xowa.xtns.*;
import gplx.xowa.html.*;
import gplx.xowa.parsers.*; import gplx.xowa.parsers.logs.*; import gplx.xowa.parsers.xndes.*;
public class Pp_pagelist_nde implements Xox_xnde, Xop_xnde_atr_parser { // TODO:
public void Xatr_parse(Xowe_wiki wiki, byte[] src, Xop_xatr_itm xatr, Object xatr_key_obj) {}
import gplx.xowa.htmls.*;
import gplx.xowa.parsers.*; import gplx.xowa.parsers.logs.*; import gplx.xowa.parsers.xndes.*; import gplx.xowa.parsers.htmls.*;
public class Pp_pagelist_nde implements Xox_xnde { // TODO:
public void Xatr__set(Xowe_wiki wiki, byte[] src, Mwh_atr_itm xatr, Object xatr_id_obj) {}
public void Xtn_parse(Xowe_wiki wiki, Xop_ctx ctx, Xop_root_tkn root, byte[] src, Xop_xnde_tkn xnde) {
boolean log_wkr_enabled = Log_wkr != Xop_log_basic_wkr.Null; if (log_wkr_enabled) Log_wkr.Log_end_xnde(ctx.Cur_page(), Xop_log_basic_wkr.Tid_hiero, src, xnde);
} public static Xop_log_basic_wkr Log_wkr = Xop_log_basic_wkr.Null;

View File

@@ -16,7 +16,7 @@ You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package gplx.xowa.xtns.proofreadPage; import gplx.*; import gplx.xowa.*; import gplx.xowa.xtns.*;
import gplx.xowa.html.*;
import gplx.xowa.htmls.*;
import gplx.xowa.parsers.*; import gplx.xowa.parsers.xndes.*;
public class Pp_pagequality_nde implements Xox_xnde {
public void Xtn_parse(Xowe_wiki wiki, Xop_ctx ctx, Xop_root_tkn root, byte[] src, Xop_xnde_tkn xnde) {} // FUTURE: noop for now so it doesn't show (since it's useless)

View File

@@ -17,12 +17,12 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package gplx.xowa.xtns.proofreadPage; import gplx.*; import gplx.xowa.*; import gplx.xowa.xtns.*;
import gplx.core.primitives.*;
import gplx.xowa.cfgs.*;
import gplx.xowa.html.*;
import gplx.xowa.nss.*;
import gplx.xowa.xtns.lst.*; import gplx.xowa.pages.*; import gplx.xowa.wikis.data.tbls.*;
import gplx.xowa.parsers.*; import gplx.xowa.parsers.amps.*; import gplx.xowa.parsers.xndes.*; import gplx.xowa.parsers.lnkis.*; import gplx.xowa.parsers.tmpls.*;
public class Pp_pages_nde implements Xox_xnde, Xop_xnde_atr_parser {
import gplx.xowa.apps.cfgs.*;
import gplx.xowa.htmls.*;
import gplx.xowa.wikis.nss.*;
import gplx.xowa.xtns.lst.*; import gplx.xowa.wikis.pages.*; import gplx.xowa.wikis.data.tbls.*;
import gplx.xowa.parsers.*; import gplx.xowa.parsers.amps.*; import gplx.xowa.parsers.xndes.*; import gplx.xowa.parsers.htmls.*; import gplx.xowa.parsers.lnkis.*; import gplx.xowa.parsers.tmpls.*;
public class Pp_pages_nde implements Xox_xnde, Mwh_atr_itm_owner {
private boolean xtn_literal = false;
private Xop_root_tkn xtn_root;
private byte[] index_ttl_bry, bgn_page_bry, end_page_bry, bgn_sect_bry, end_sect_bry;
@@ -36,23 +36,23 @@ public class Pp_pages_nde implements Xox_xnde, Xop_xnde_atr_parser {
private Xoae_app app; private Xowe_wiki wiki; private Xop_ctx ctx; private Gfo_usr_dlg usr_dlg;
private byte[] src; private Xop_xnde_tkn xnde_tkn;
private Xoa_ttl cur_page_ttl;
public void Xatr_parse(Xowe_wiki wiki, byte[] src, Xop_xatr_itm xatr, Object xatr_key_obj) {
if (xatr_key_obj == null) return;
Byte_obj_val xatr_key = (Byte_obj_val)xatr_key_obj;
switch (xatr_key.Val()) {
case Xatr_index_ttl: index_ttl_bry = xatr.Val_as_bry(src); break;
case Xatr_bgn_page: bgn_page_bry = xatr.Val_as_bry(src); break;
case Xatr_end_page: end_page_bry = xatr.Val_as_bry(src); break;
case Xatr_bgn_sect: bgn_sect_bry = xatr.Val_as_bry(src); break;
case Xatr_end_sect: end_sect_bry = xatr.Val_as_bry(src); break;
case Xatr_include: include = xatr.Val_as_bry(src); break;
case Xatr_exclude: exclude = xatr.Val_as_bry(src); break;
case Xatr_step: step_bry = xatr.Val_as_bry(src); break;
case Xatr_onlysection: onlysection = xatr.Val_as_bry(src); break;
case Xatr_header: header = xatr.Val_as_bry(src); break;
case Xatr_toc_cur: toc_cur = xatr.Val_as_bry(src); break;
case Xatr_toc_prv: toc_prv = xatr.Val_as_bry(src); break;
case Xatr_toc_nxt: toc_nxt = xatr.Val_as_bry(src); break;
public void Xatr__set(Xowe_wiki wiki, byte[] src, Mwh_atr_itm xatr, Object xatr_id_obj) {
if (xatr_id_obj == null) return;
Byte_obj_val xatr_id = (Byte_obj_val)xatr_id_obj;
switch (xatr_id.Val()) {
case Xatr_index_ttl: index_ttl_bry = xatr.Val_as_bry(); break;
case Xatr_bgn_page: bgn_page_bry = xatr.Val_as_bry(); break;
case Xatr_end_page: end_page_bry = xatr.Val_as_bry(); break;
case Xatr_bgn_sect: bgn_sect_bry = xatr.Val_as_bry(); break;
case Xatr_end_sect: end_sect_bry = xatr.Val_as_bry(); break;
case Xatr_include: include = xatr.Val_as_bry(); break;
case Xatr_exclude: exclude = xatr.Val_as_bry(); break;
case Xatr_step: step_bry = xatr.Val_as_bry(); break;
case Xatr_onlysection: onlysection = xatr.Val_as_bry(); break;
case Xatr_header: header = xatr.Val_as_bry(); break;
case Xatr_toc_cur: toc_cur = xatr.Val_as_bry(); break;
case Xatr_toc_prv: toc_prv = xatr.Val_as_bry(); break;
case Xatr_toc_nxt: toc_nxt = xatr.Val_as_bry(); break;
}
}
public void Xtn_parse(Xowe_wiki wiki, Xop_ctx ctx, Xop_root_tkn root, byte[] src, Xop_xnde_tkn xnde) {
@@ -82,7 +82,7 @@ public class Pp_pages_nde implements Xox_xnde, Xop_xnde_atr_parser {
private boolean Init_vars(Xowe_wiki wiki, Xop_ctx ctx, byte[] src, Xop_xnde_tkn xnde) {
this.wiki = wiki; this.ctx = ctx; app = wiki.Appe(); usr_dlg = app.Usr_dlg();
this.src = src; this.xnde_tkn = xnde; cur_page_ttl = ctx.Cur_page().Ttl();
Xop_xatr_itm.Xatr_parse(app, this, xtn_atrs, wiki, src, xnde);
Xox_xnde_.Xatr__set(wiki, this, xatrs_hash, src, xnde);
Xop_amp_mgr amp_mgr = wiki.Appe().Parser_amp_mgr();
index_ttl_bry = amp_mgr.Decode_as_bry(index_ttl_bry);
bgn_page_bry = amp_mgr.Decode_as_bry(bgn_page_bry);
@@ -134,13 +134,13 @@ public class Pp_pages_nde implements Xox_xnde, Xop_xnde_atr_parser {
full_bfr.Add_byte_pipe()
.Add(caption)
.Add(Xop_tkn_.Lnki_end);
return full_bfr.Xto_bry_and_clear();
return full_bfr.To_bry_and_clear();
}
private byte[] Get_caption(Bry_bfr full_bfr, byte[] index_page_src, Xop_lnki_tkn lnki) {
byte[] rv = Bry_.Empty;
try {
wiki.Html_mgr().Html_wtr().Write_tkn(full_bfr, ctx, Xoh_wtr_ctx.Basic, index_page_src, null, -1, lnki.Caption_tkn());
rv = full_bfr.Xto_bry_and_clear();
rv = full_bfr.To_bry_and_clear();
}
catch (Exception e) {
wiki.Appe().Usr_dlg().Warn_many("", "", "failed to write caption: page=~{0} lnki=~{1} err=~{2}", ctx.Cur_page().Ttl().Full_db(), String_.new_u8(index_page_src, lnki.Src_bgn(), lnki.Src_end()), Err_.Message_gplx_full(e));
@@ -205,9 +205,9 @@ public class Pp_pages_nde implements Xox_xnde, Xop_xnde_atr_parser {
.Add(arg.Val())
;
}
full_bfr.Add(Xoa_consts.Invk_end);
full_bfr.Add(gplx.xowa.parsers.tmpls.Xop_curly_end_lxr.Hook);
full_bfr.Add(rv);
return full_bfr.Xto_bry_and_clear();
return full_bfr.To_bry_and_clear();
}
private Xoa_ttl[] Get_ttls_from_xnde_args() {
if (!Chk_step()) return Ttls_null;
@@ -306,7 +306,7 @@ public class Pp_pages_nde implements Xox_xnde, Xop_xnde_atr_parser {
.Add(index_ttl_bry) // EX: 'File.djvu'
.Add_byte(Byte_ascii.Slash) // EX: '/'
.Add_int_variable(page.Val()); // EX: '123'
rv[rv_idx++] = Xoa_ttl.parse(wiki, ttl_bfr.Xto_bry_and_clear());
rv[rv_idx++] = Xoa_ttl.parse(wiki, ttl_bfr.To_bry_and_clear());
}
ttl_bfr.Mkr_rls();
return rv;
@@ -359,7 +359,7 @@ public class Pp_pages_nde implements Xox_xnde, Xop_xnde_atr_parser {
}
page_bfr.Mkr_rls();
ctx.Tmpl_output_(null);
return full_bfr.Xto_bry_and_clear();
return full_bfr.To_bry_and_clear();
}
private Xop_root_tkn Bld_root_nde(Bry_bfr page_bfr, Hash_adp_bry lst_page_regy, byte[] wikitext) {
Xop_ctx tmp_ctx = Xop_ctx.new_sub_page_(wiki, ctx, lst_page_regy);
@@ -371,7 +371,7 @@ public class Pp_pages_nde implements Xox_xnde, Xop_xnde_atr_parser {
tmp_parser.Parse_text_to_wdom(rv, tmp_ctx, tmp_ctx.Tkn_mkr(), wikitext, Xop_parser_.Doc_bgn_bos);
return rv;
}
private static Hash_adp_bry xtn_atrs = Hash_adp_bry.ci_a7() // NOTE: these do not seem to be i18n'd; no ProofreadPage.magic.php; ProofreadPage.i18n.php only has messages; ProofreadPage.body.php refers to names literally
private static Hash_adp_bry xatrs_hash = Hash_adp_bry.ci_a7() // NOTE: these do not seem to be i18n'd; no ProofreadPage.magic.php; ProofreadPage.i18n.php only has messages; ProofreadPage.body.php refers to names literally
.Add_str_obj("index" , Byte_obj_val.new_(Pp_pages_nde.Xatr_index_ttl))
.Add_str_obj("from" , Byte_obj_val.new_(Pp_pages_nde.Xatr_bgn_page))
.Add_str_obj("to" , Byte_obj_val.new_(Pp_pages_nde.Xatr_end_page))

View File

@@ -16,11 +16,11 @@ You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package gplx.xowa.xtns.proofreadPage; import gplx.*; import gplx.xowa.*; import gplx.xowa.xtns.*;
import org.junit.*; import gplx.xowa.cfgs.*;
import org.junit.*; import gplx.xowa.apps.cfgs.*;
public class Pp_pages_nde_basic_tst {
private Xop_fxt fxt = new Xop_fxt();
@Before public void Init() {
Io_mgr.I.InitEngine_mem();
Io_mgr.Instance.InitEngine_mem();
fxt.Wiki().Xtn_mgr().Xtn_proofread().Enabled_y_();
fxt.Wiki().Db_mgr().Load_mgr().Clear(); // must clear; otherwise fails b/c files get deleted, but wiki.data_mgr caches the Xowd_regy_mgr (the .reg file) in memory;
fxt.Wiki().Ns_mgr().Add_new(Xowc_xtn_pages.Ns_page_id_default, "Page").Add_new(Xowc_xtn_pages.Ns_index_id_default, "Index").Init();

View File

@@ -16,11 +16,11 @@ You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package gplx.xowa.xtns.proofreadPage; import gplx.*; import gplx.xowa.*; import gplx.xowa.xtns.*;
import org.junit.*; import gplx.xowa.cfgs.*;
import org.junit.*; import gplx.xowa.apps.cfgs.*;
public class Pp_pages_nde_hdr_tst {
private Xop_fxt fxt = new Xop_fxt();
@Before public void Init() {
Io_mgr.I.InitEngine_mem();
Io_mgr.Instance.InitEngine_mem();
fxt.Wiki().Xtn_mgr().Xtn_proofread().Enabled_y_();
fxt.Wiki().Cache_mgr().Page_cache().Free_mem_all();
fxt.Wiki().Db_mgr().Load_mgr().Clear(); // must clear; otherwise fails b/c files get deleted, but wiki.data_mgr caches the Xowd_regy_mgr (the .reg file) in memory;

View File

@@ -16,11 +16,11 @@ You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package gplx.xowa.xtns.proofreadPage; import gplx.*; import gplx.xowa.*; import gplx.xowa.xtns.*;
import org.junit.*; import gplx.xowa.cfgs.*;
import org.junit.*; import gplx.xowa.apps.cfgs.*;
public class Pp_pages_nde_index_tst {
private Xop_fxt fxt = new Xop_fxt();
@Before public void Init() {
Io_mgr.I.InitEngine_mem();
Io_mgr.Instance.InitEngine_mem();
fxt.Wiki().Xtn_mgr().Xtn_proofread().Enabled_y_();
fxt.Wiki().Db_mgr().Load_mgr().Clear(); // must clear; otherwise fails b/c files get deleted, but wiki.data_mgr caches the Xowd_regy_mgr (the .reg file) in memory;
fxt.Wiki().Ns_mgr().Add_new(Xowc_xtn_pages.Ns_page_id_default, "Page").Add_new(Xowc_xtn_pages.Ns_index_id_default, "Index").Init();

View File

@@ -24,6 +24,6 @@ public class Pp_xtn_mgr extends Xox_mgr_base {
@Override public Xox_mgr Clone_new() {return new Pp_xtn_mgr();}
@Override public void Xtn_init_by_wiki(Xowe_wiki wiki) {
if (!this.Enabled_manually())
this.Enabled_(wiki.Domain_tid() == Xow_domain_type_.Int__wikisource); // only enable for wikisource
this.Enabled_(wiki.Domain_tid() == Xow_domain_tid_.Int__wikisource); // only enable for wikisource
}
}