mirror of
https://github.com/gnosygnu/xowa.git
synced 2026-03-02 03:49:30 +00:00
v2.6.5.1
This commit is contained in:
@@ -22,8 +22,8 @@ public class Xol_csv_parser {
|
||||
for (int i = 0; i < len; i++) {
|
||||
byte b = src[i];
|
||||
switch (b) {
|
||||
case Byte_ascii.CarriageReturn: bfr.Add_byte(Byte_ascii.Backslash); bfr.Add_byte(Byte_ascii.Ltr_r); break;
|
||||
case Byte_ascii.NewLine: bfr.Add_byte(Byte_ascii.Backslash); bfr.Add_byte(Byte_ascii.Ltr_n); break;
|
||||
case Byte_ascii.Cr: bfr.Add_byte(Byte_ascii.Backslash); bfr.Add_byte(Byte_ascii.Ltr_r); break;
|
||||
case Byte_ascii.Nl: bfr.Add_byte(Byte_ascii.Backslash); bfr.Add_byte(Byte_ascii.Ltr_n); break;
|
||||
case Byte_ascii.Tab: bfr.Add_byte(Byte_ascii.Backslash); bfr.Add_byte(Byte_ascii.Ltr_t); break;
|
||||
case Byte_ascii.Backslash: bfr.Add_byte(Byte_ascii.Backslash); bfr.Add_byte(Byte_ascii.Backslash); break;
|
||||
case Byte_ascii.Pipe: bfr.Add(Bry_pipe); break;
|
||||
@@ -42,8 +42,8 @@ public class Xol_csv_parser {
|
||||
byte nxt_byte = src[nxt_pos];
|
||||
switch (nxt_byte) {
|
||||
case Byte_ascii.Backslash: bfr.Add_byte(Byte_ascii.Backslash); break;
|
||||
case Byte_ascii.Ltr_r: bfr.Add_byte(Byte_ascii.CarriageReturn); break;
|
||||
case Byte_ascii.Ltr_n: bfr.Add_byte(Byte_ascii.NewLine); break;
|
||||
case Byte_ascii.Ltr_r: bfr.Add_byte(Byte_ascii.Cr); break;
|
||||
case Byte_ascii.Ltr_n: bfr.Add_byte(Byte_ascii.Nl); break;
|
||||
case Byte_ascii.Ltr_t: bfr.Add_byte(Byte_ascii.Tab); break;
|
||||
case Byte_ascii.Ltr_u:
|
||||
int utf_len = 1;
|
||||
|
||||
@@ -38,7 +38,7 @@ public class Xol_lang_ {
|
||||
case Byte_ascii.Num_0: case Byte_ascii.Num_1: case Byte_ascii.Num_2: case Byte_ascii.Num_3: case Byte_ascii.Num_4:
|
||||
case Byte_ascii.Num_5: case Byte_ascii.Num_6: case Byte_ascii.Num_7: case Byte_ascii.Num_8: case Byte_ascii.Num_9:
|
||||
return Char_tid_num;
|
||||
case Byte_ascii.Space: case Byte_ascii.NewLine: case Byte_ascii.Tab: case Byte_ascii.CarriageReturn:
|
||||
case Byte_ascii.Space: case Byte_ascii.Nl: case Byte_ascii.Tab: case Byte_ascii.Cr:
|
||||
return Char_tid_ws;
|
||||
default:
|
||||
return Char_tid_misc;
|
||||
|
||||
@@ -24,14 +24,14 @@ public class Xol_lang_srl {
|
||||
List_adp rv = List_adp_.new_(); Xol_csv_parser csv_parser = Xol_csv_parser._;
|
||||
while (true) {
|
||||
boolean last = pos == src_len; // NOTE: logic occurs b/c of \n}~-> dlm which gobbles up last \n
|
||||
byte b = last ? Byte_ascii.NewLine : src[pos];
|
||||
byte b = last ? Byte_ascii.Nl : src[pos];
|
||||
switch (b) {
|
||||
case Byte_ascii.Pipe:
|
||||
cur_id = Bry_.Xto_int_or(src, fld_bgn, pos, Int_.MinValue);
|
||||
if (cur_id == Int_.MinValue) throw Err_mgr._.fmt_(GRP_KEY, "invalid_id", "invalid_id: ~{0}", String_.new_u8(src, fld_bgn, pos));
|
||||
fld_bgn = pos + 1;
|
||||
break;
|
||||
case Byte_ascii.NewLine:
|
||||
case Byte_ascii.Nl:
|
||||
byte[] cur_name = csv_parser.Load(src, fld_bgn, pos);
|
||||
Xow_ns ns = new Xow_ns(cur_id, Xow_ns_case_.Id_1st, cur_name, false);
|
||||
rv.Add(ns);
|
||||
@@ -53,7 +53,7 @@ public class Xol_lang_srl {
|
||||
Xol_csv_parser csv_parser = Xol_csv_parser._;
|
||||
while (true) {
|
||||
boolean last = pos == src_len; // NOTE: logic occurs b/c of \n}~-> dlm which gobbles up last \n
|
||||
byte b = last ? Byte_ascii.NewLine : src[pos];
|
||||
byte b = last ? Byte_ascii.Nl : src[pos];
|
||||
switch (b) {
|
||||
case Byte_ascii.Pipe:
|
||||
switch (fld_idx) {
|
||||
@@ -77,7 +77,7 @@ public class Xol_lang_srl {
|
||||
cur_words.Add(word);
|
||||
fld_bgn = pos + 1;
|
||||
break;
|
||||
case Byte_ascii.NewLine:
|
||||
case Byte_ascii.Nl:
|
||||
if (cur_words.Count() > 0) { // guard against blank line wiping out entries; EX: "toc|0|toc1\n\n"; 2nd \n will get last grp and make 0 entries
|
||||
int cur_id = Xol_kwd_grp_.Id_by_bry(cur_key); if (cur_id == -1) throw Err_mgr._.fmt_(GRP_KEY, "invalid_keyword", "key does not have id: ~{0}", cur_id);
|
||||
Xol_kwd_grp grp = keyword_mgr.Get_or_new(cur_id);
|
||||
@@ -101,13 +101,13 @@ public class Xol_lang_srl {
|
||||
Xol_csv_parser csv_parser = Xol_csv_parser._;
|
||||
while (true) {
|
||||
boolean last = pos == src_len; // NOTE: logic occurs b/c of \n}~-> dlm which gobbles up last \n
|
||||
byte b = last ? Byte_ascii.NewLine : src[pos];
|
||||
byte b = last ? Byte_ascii.Nl : src[pos];
|
||||
switch (b) {
|
||||
case Byte_ascii.Pipe:
|
||||
cur_key = csv_parser.Load(src, fld_bgn, pos);
|
||||
fld_bgn = pos + 1;
|
||||
break;
|
||||
case Byte_ascii.NewLine:
|
||||
case Byte_ascii.Nl:
|
||||
byte[] cur_val = csv_parser.Load(src, fld_bgn, pos);
|
||||
Xol_msg_itm itm = msg_mgr.Itm_by_key_or_new(cur_key).Src_(Xol_msg_itm.Src_lang); // NOTE: this proc should only be called when loading lang.gfs
|
||||
Xol_msg_itm_.update_val_(itm, cur_val);
|
||||
@@ -127,13 +127,13 @@ public class Xol_lang_srl {
|
||||
Xol_csv_parser csv_parser = Xol_csv_parser._;
|
||||
while (true) {
|
||||
boolean last = pos == src_len; // NOTE: logic occurs b/c of \n}~-> dlm which gobbles up last \n
|
||||
byte b = last ? Byte_ascii.NewLine : src[pos];
|
||||
byte b = last ? Byte_ascii.Nl : src[pos];
|
||||
switch (b) {
|
||||
case Byte_ascii.Pipe:
|
||||
cur_key = csv_parser.Load(src, fld_bgn, pos);
|
||||
fld_bgn = pos + 1;
|
||||
break;
|
||||
case Byte_ascii.NewLine:
|
||||
case Byte_ascii.Nl:
|
||||
byte[] cur_val_raw = csv_parser.Load(src, fld_bgn, pos);
|
||||
byte[][] cur_vals = Bry_.Split(cur_val_raw, Byte_ascii.Tilde);
|
||||
special_mgr.Add(cur_key, cur_vals);
|
||||
|
||||
Reference in New Issue
Block a user