Mercurial > hg > xemacs-beta
comparison lisp/unicode.el @ 4551:6812571bfcb9
Fix some bugs.
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Thu, 13 Mar 2008 10:21:01 +0100 |
parents | 68d1ca56cffa |
children | 017044266245 |
comparison
equal
deleted
inserted
replaced
4550:1217f19ce196 | 4551:6812571bfcb9 |
---|---|
622 (check-argument-type #'integer-or-marker-p begin) | 622 (check-argument-type #'integer-or-marker-p begin) |
623 (check-argument-type #'integer-or-marker-p end) | 623 (check-argument-type #'integer-or-marker-p end) |
624 (let* ((skip-chars-arg unicode-query-coding-skip-chars-arg) | 624 (let* ((skip-chars-arg unicode-query-coding-skip-chars-arg) |
625 (ranges (make-range-table)) | 625 (ranges (make-range-table)) |
626 (looking-at-arg (concat "[" skip-chars-arg "]")) | 626 (looking-at-arg (concat "[" skip-chars-arg "]")) |
627 fail-range-start fail-range-end previous-fail char-after | 627 fail-range-start fail-range-end previous-fail char-after failed |
628 failed extent) | 628 extent) |
629 (save-excursion | 629 (save-excursion |
630 (when highlightp | |
631 (map-extents #'(lambda (extent ignored-arg) | |
632 (when (eq 'query-coding-warning-face | |
633 (extent-face extent)) | |
634 (delete-extent extent))) buffer begin end)) | |
630 (goto-char begin buffer) | 635 (goto-char begin buffer) |
631 (skip-chars-forward skip-chars-arg end buffer) | 636 (skip-chars-forward skip-chars-arg end buffer) |
632 (while (< (point buffer) end) | 637 (while (< (point buffer) end) |
633 (message | 638 ; (message |
634 "fail-range-start is %S, previous-fail %S, point is %S, end is %S" | 639 ; "fail-range-start is %S, previous-fail %S, point is %S, end is %S" |
635 fail-range-start previous-fail (point buffer) end) | 640 ; fail-range-start previous-fail (point buffer) end) |
636 (setq char-after (char-after (point buffer) buffer) | 641 (setq char-after (char-after (point buffer) buffer) |
637 fail-range-start (point buffer)) | 642 fail-range-start (point buffer)) |
638 (while (and | 643 (while (and |
639 (< (point buffer) end) | 644 (< (point buffer) end) |
640 (not (looking-at looking-at-arg)) | 645 (not (looking-at looking-at-arg)) |
644 (setq char-after (char-after (point buffer) buffer) | 649 (setq char-after (char-after (point buffer) buffer) |
645 failed t)) | 650 failed t)) |
646 (if (= fail-range-start (point buffer)) | 651 (if (= fail-range-start (point buffer)) |
647 ;; The character can actually be encoded by the coding | 652 ;; The character can actually be encoded by the coding |
648 ;; system; check the characters past it. | 653 ;; system; check the characters past it. |
649 (forward-char 1 buffer) | 654 (forward-char 1 buffer) |
650 ;; Can't be encoded; note this. | 655 ;; Can't be encoded; note this. |
651 (when errorp | 656 (when errorp |
652 (error 'text-conversion-error | 657 (error 'text-conversion-error |
653 (format "Cannot encode %s using coding system" | 658 (format "Cannot encode %s using coding system" |
654 (buffer-substring fail-range-start (point buffer) | 659 (buffer-substring fail-range-start (point buffer) |