Function: japanese-zenkaku-region

japanese-zenkaku-region is an autoloaded, interactive and byte-compiled function defined in japan-util.el.gz.

Signature

(japanese-zenkaku-region FROM TO &optional KATAKANA-ONLY)

Documentation

Convert hankaku' chars in the region to Japanese zenkaku chars.

Zenkaku chars belong to japanese-jisx0208 Hankaku chars belong to ascii or japanese-jisx0201-kana. Optional argument KATAKANA-ONLY non-nil means to convert only KATAKANA char.

Key Bindings

Source Code

;; Defined in /usr/src/emacs/lisp/language/japan-util.el.gz
;;;###autoload
(defun japanese-zenkaku-region (from to &optional katakana-only)
  "Convert hankaku' chars in the region to Japanese `zenkaku' chars.
`Zenkaku' chars belong to `japanese-jisx0208'
`Hankaku' chars belong to `ascii' or `japanese-jisx0201-kana'.
Optional argument KATAKANA-ONLY non-nil means to convert only KATAKANA char."
  (interactive "r\nP")
  (save-restriction
    (narrow-to-region from to)
    (save-excursion
      (goto-char (point-min))
      (while (or (and katakana-only
		      (re-search-forward "\\ck" nil t))
		 (and (not katakana-only)
		      (re-search-forward "\\ca\\|\\ck" nil t)))
	(let* ((hankaku (preceding-char))
	       (composition (get-char-code-property hankaku 'kana-composition))
	       slot) ;; next
	  (if (and composition (setq slot (assq (following-char) composition)))
	      (japanese-replace-region (match-beginning 0) (1+ (point))
				       (cdr slot))
	    (let ((zenkaku (japanese-zenkaku hankaku)))
	      (if zenkaku
		  (japanese-replace-region (match-beginning 0) (match-end 0)
					   zenkaku)))))))))