2883 htmlize-convert-nonascii-to-entities nil) |
2883 htmlize-convert-nonascii-to-entities nil) |
2884 |
2884 |
2885 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
2885 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
2886 (message "html") |
2886 (message "html") |
2887 |
2887 |
2888 (defun html-charref-escape-region (start end) |
2888 (defun my-html-charref-escape-region (start end) |
2889 (interactive "r") |
2889 (interactive "r") |
2890 (save-excursion |
2890 (save-excursion |
2891 (save-restriction |
2891 (save-restriction |
2892 (narrow-to-region start end) |
2892 (narrow-to-region start end) |
2893 (goto-char (point-min)) |
2893 (goto-char (point-min)) |
2896 (replace-string "<" "<") |
2896 (replace-string "<" "<") |
2897 (goto-char (point-min)) |
2897 (goto-char (point-min)) |
2898 (replace-string ">" ">") |
2898 (replace-string ">" ">") |
2899 ))) |
2899 ))) |
2900 |
2900 |
2901 (defun html-charref-from-char (char) |
2901 (defun my-html-charref-from-char (char) |
2902 (format "&#%d;" char) |
2902 (format "&#%d;" char) |
2903 ) |
2903 ) |
2904 |
2904 |
2905 (defun html-charref-from-string (string) |
2905 (defun my-html-charref-from-string (string) |
2906 (let ((res "")) |
2906 (let ((res "")) |
2907 (mapc |
2907 (mapc |
2908 (lambda (char) (setq res (concat res (html-charref-from-char char)))) |
2908 (lambda (char) (setq res (concat res (my-html-charref-from-char char)))) |
2909 string) |
2909 string) |
2910 res |
2910 res |
2911 ) ) |
2911 ) ) |
2912 |
2912 |
2913 (defun html-charref-escape-region2 (begin end &optional prefix) |
2913 (defun my-html-charref-escape-region2 (begin end &optional prefix) |
2914 (interactive "r\nP") |
2914 (interactive "r\nP") |
2915 (if prefix |
2915 (if prefix |
2916 (save-excursion |
2916 (save-excursion |
2917 (goto-char begin) |
2917 (goto-char begin) |
2918 (insert (html-charref-from-string (delete-and-extract-region begin end)))) |
2918 (insert (my-html-charref-from-string (delete-and-extract-region begin end)))) |
2919 (html-charref-from-string (buffer-substring begin end)) |
2919 (my-html-charref-from-string (buffer-substring begin end)) |
2920 )) |
2920 )) |
2921 |
2921 |
2922 (defun html-charref-to-string (html) |
2922 (defun my-html-charref-to-string (html) |
2923 (let ((res "") (pos 0)) |
2923 (let (str) |
2924 (while (string-match "&#\\([[:digit:]]+\\);" html pos) |
2924 (with-temp-buffer |
2925 (setq res (concat res (string (string-to-int (substring html (match-beginning 1) (match-end 1)) 10)))) |
2925 (insert html) |
2926 (setq pos (match-end 0)) |
2926 (goto-char (point-min)) |
2927 ) |
2927 (while (search-forward-regexp "&\\(?:#\\([[:digit:]]+\\)\\|\\(lt\\|gt\\|amp\\)\\);" nil t) |
2928 res |
2928 (setq str (or (match-string 1) (match-string 2))) |
2929 ) ) |
2929 (cond |
2930 |
2930 ((equal str "lt") |
2931 (defun html-charref-unescape-region (begin end &optional prefix) |
2931 (replace-match "<" t t)) |
|
2932 ((equal str "gt") |
|
2933 (replace-match ">" t t)) |
|
2934 ((equal str "amp") |
|
2935 (replace-match "&" t t)) |
|
2936 ((> (string-to-number str) 0) |
|
2937 (replace-match (string (string-to-number str 10)) t t)))) |
|
2938 (buffer-string)))) |
|
2939 |
|
2940 (defun my-html-charref-unescape-region (begin end &optional prefix) |
2932 (interactive "r\nP") |
2941 (interactive "r\nP") |
2933 (if prefix |
2942 (if prefix |
2934 (save-excursion |
2943 (save-excursion |
2935 (goto-char begin) |
2944 (goto-char begin) |
2936 (insert (html-charref-to-string (delete-and-extract-region begin end)))) |
2945 (insert (my-html-charref-to-string (delete-and-extract-region begin end)))) |
2937 (html-charref-to-string (buffer-substring begin end)) |
2946 (my-html-charref-to-string (buffer-substring begin end)) |
2938 )) |
2947 )) |
2939 |
2948 |
2940 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
2949 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
2941 (message "nxml") |
2950 (message "nxml") |
2942 |
2951 |