X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=ew-scan-m.el;h=d8dbf85456558e09f957f24f3d288c1599a64325;hb=eb9783f46dee7de4c9372e428a26e384e04d60f8;hp=8d73479d9fe7399d2f27d5fce9b8c67ad268dfca;hpb=b3e2c1ff1d03652370fe0d286f4669c5058b1f1b;p=elisp%2Fflim.git diff --git a/ew-scan-m.el b/ew-scan-m.el index 8d73479..d8dbf85 100644 --- a/ew-scan-m.el +++ b/ew-scan-m.el @@ -20,141 +20,141 @@ type (,scan str p q - ([" \t"] 'ew:wsp-tok) - (?< 'ew:lt-tok) - (?> 'ew:gt-tok) - (?@ 'ew:at-tok) - (?, 'ew:comma-tok) - (?\; 'ew:semicolon-tok) - (?: 'ew:colon-tok) - (?/ 'ew:slash-tok) - (?? 'ew:question-tok) - (?= 'ew:equal-tok) - ((?\r ?\n [" \t"]) 'ew:fold-tok) + ([" \t"] 'ew:wsp) + (?< 'ew:lt) + (?> 'ew:gt) + (?@ 'ew:at) + (?, 'ew:comma) + (?\; 'ew:semicolon) + (?: 'ew:colon) + (?/ 'ew:slash) + (?? 'ew:question) + (?= 'ew:equal) + ((?\r ?\n [" \t"]) 'ew:fold) ((?\r ?\n [^ " \t"]) - (setq p q) 'ew:err-tok) + (setq p q) 'ew:*err*) ((+ [(?a ?z) (?A ?Z) (?0 ?9) "!#$%&'*+-.^_`{|}~" non-ascii]) - 'ew:token-tok) - (?\" (setq mode 'quoted-string) 'ew:qs-begin-tok) - (?\[ (setq mode 'domain-literal) 'ew:dl-begin-tok) + 'ew:token) + (?\" (setq mode 'quoted-string) 'ew:qs-begin) + (?\[ (setq mode 'domain-literal) 'ew:dl-begin) (?\( (setq mode 'comment nest 1) - 'ew:cm-begin-tok) - (() (setq p q) 'ew:err-tok))) + 'ew:cm-begin) + (() (setq p q) 'ew:*err*))) (ew-add-frag res r p type)) ((eq mode 'quoted-string) (setq type (,scan str p q - (?\" (setq mode 'token) 'ew:qs-end-tok) - ((?\\ ?\r ?\n [" \t"]) 'ew:qs-qfold-tok) + (?\" (setq mode 'token) 'ew:qs-end) + ((?\\ ?\r ?\n [" \t"]) 'ew:qs-qfold) ((?\\ ?\r ?\n [^ " \t"]) - (setq p q) 'ew:err-tok) + (setq p q) 'ew:*err*) (((* [^ "\"\\ \t\r"]) (* (+ ?\r) [^ "\"\\ \t\r\n"] (* [^ "\"\\ \t\r"])) (* ?\r) (?\r ?\n [" \t"])) (when (< r (- p 3)) - (ew-add-frag res r (- p 3) 'ew:qs-texts-tok) + (ew-add-frag res r (- p 3) 'ew:qs-texts) (setq r (- p 3))) - 'ew:qs-fold-tok) + 'ew:qs-fold) (((* [^ "\"\\ \t\r"]) (* (+ ?\r) [^ "\"\\ \t\r\n"] (* [^ "\"\\ \t\r"])) (* ?\r) (?\r ?\n [^ " \t"])) (when (< r (- p 3)) - (ew-add-frag res r (- p 3) 'ew:qs-texts-tok) + (ew-add-frag res r (- p 3) 'ew:qs-texts) (setq r (- p 3))) - (setq p q) 'ew:err-tok) + (setq p q) 'ew:*err*) ((?\\ (any)) - 'ew:qs-qpair-tok) + 'ew:qs-qpair) ([" \t"] - 'ew:qs-wsp-tok) + 'ew:qs-wsp) (((* [^ "\"\\ \t\r"]) (* (+ ?\r) [^ "\"\\ \t\r\n"] (* [^ "\"\\ \t\r"])) (* ?\r)) (if (< r p) - 'ew:qs-texts-tok - (progn (setq p q) 'ew:err-tok))))) + 'ew:qs-texts + (progn (setq p q) 'ew:*err*))))) (ew-add-frag res r p type)) ((eq mode 'domain-literal) (setq type (,scan str p q - (?\] (setq mode 'token) 'ew:dl-end-tok) + (?\] (setq mode 'token) 'ew:dl-end) ((?\\ ?\r ?\n [" \t"]) - 'ew:dl-qfold-tok) + 'ew:dl-qfold) ((?\\ ?\r ?\n [^ " \t"]) - (setq p q) 'ew:err-tok) + (setq p q) 'ew:*err*) (((* [^ "[]\\ \t\r"]) (* (+ ?\r) [^ "[]\\ \t\r\n"] (* [^ "[]\\ \t\r"])) (* ?\r) (?\r ?\n [" \t"])) (when (< r (- p 3)) - (ew-add-frag res r (- p 3) 'ew:dl-texts-tok) + (ew-add-frag res r (- p 3) 'ew:dl-texts) (setq r (- p 3))) - 'ew:dl-fold-tok) + 'ew:dl-fold) (((* [^ "[]\\ \t\r"]) (* (+ ?\r) [^ "[]\\ \t\r\n"] (* [^ "[]\\ \t\r"])) (* ?\r) (?\r ?\n [^ " \t"])) (when (< r (- p 3)) - (ew-add-frag res r (- p 3) 'ew:dl-texts-tok) + (ew-add-frag res r (- p 3) 'ew:dl-texts) (setq r (- p 3))) - (setq p q) 'ew:err-tok) + (setq p q) 'ew:*err*) ((?\\ (any)) - 'ew:dl-qpair-tok) + 'ew:dl-qpair) ([" \t"] - 'ew:dl-wsp-tok) + 'ew:dl-wsp) (((* [^ "[]\\ \t\r"]) (* (+ ?\r) [^ "[]\\ \t\r\n"] (* [^ "[]\\ \t\r"])) (* ?\r)) (if (< r p) - 'ew:dl-texts-tok - (progn (setq p q) 'ew:err-tok))))) + 'ew:dl-texts + (progn (setq p q) 'ew:*err*))))) (ew-add-frag res r p type)) ((eq mode 'comment) (setq type (,scan str p q - (?\( (setq nest (1+ nest)) 'ew:cm-nested-begin-tok) + (?\( (setq nest (1+ nest)) 'ew:cm-nested-begin) (?\) (setq nest (1- nest)) (if (zerop nest) - (progn (setq mode 'token) 'ew:cm-end-tok) - 'ew:cm-nested-end-tok)) + (progn (setq mode 'token) 'ew:cm-end) + 'ew:cm-nested-end)) ((?\\ ?\r ?\n [" \t"]) - 'ew:cm-qfold-tok) + 'ew:cm-qfold) ((?\\ ?\r ?\n [^ " \t"]) - (setq p q) 'ew:err-tok) + (setq p q) 'ew:*err*) (((* [^ "()\\ \t\r"]) (* (+ ?\r) [^ "()\\ \t\r\n"] (* [^ "()\\ \t\r"])) (* ?\r) (?\r ?\n [" \t"])) (when (< r (- p 3)) - (ew-add-frag res r (- p 3) 'ew:cm-texts-tok) + (ew-add-frag res r (- p 3) 'ew:cm-texts) (setq r (- p 3))) - 'ew:cm-fold-tok) + 'ew:cm-fold) (((* [^ "()\\ \t\r"]) (* (+ ?\r) [^ "()\\ \t\r\n"] (* [^ "()\\ \t\r"])) (* ?\r) (?\r ?\n [^ " \t"])) (when (< r (- p 3)) - (ew-add-frag res r (- p 3) 'ew:cm-texts-tok) + (ew-add-frag res r (- p 3) 'ew:cm-texts) (setq r (- p 3))) - (setq p q) 'ew:err-tok) + (setq p q) 'ew:*err*) ((?\\ (any)) - 'ew:cm-qpair-tok) + 'ew:cm-qpair) ([" \t"] - 'ew:cm-wsp-tok) + 'ew:cm-wsp) (((* [^ "()\\ \t\r"]) (* (+ ?\r) [^ "()\\ \t\r\n"] (* [^ "()\\ \t\r"])) (* ?\r)) (if (< r p) - 'ew:cm-texts-tok - (progn (setq p q) 'ew:err-tok))))) + 'ew:cm-texts + (progn (setq p q) 'ew:*err*))))) (ew-add-frag res r p type)))) (ew-terminate res) res))