[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]

Re: ファイル保存時のcodingについて



Tatsuya Kinoshita <tats@xxxxxxxxxxxxx> writes:

>> 新しいファイルを開いてアルファベットのみを入力して保存、ファイルを閉じた後、ファイルを開いて
>> 日本語を入力して保存すると、iso-2022-jpとなってしまいます。
>> 
>> この時に、sjisとして保存したいのですが、どの様にすれば良いのでしょうか?
>
> set-language-environmentのあとで
> (prefer-coding-system 'shift_jis-dos)
> としておくとどうでしょうか。

Emacs 21.1 の lisp/language/japan-util.el を見ると、

(defun setup-japanese-environment-internal ()
  (cond ((eq system-type 'ms-dos)
	 (prefer-coding-system 'japanese-shift-jis))
	((eq system-type 'usg-unix-v)
	 (prefer-coding-system 'japanese-iso-8bit)))
  (setq sentence-end-save sentence-end)
  (setq sentence-end (concat sentence-end "\\|[。?!]")))

というのがあって、system-type が ms-dos の場合
(set-language-environment "Japanese") を行うと
(prefer-coding-system 'shift_jis-dos) も行ってくれるようですね。
CVS 版だと以下のようになっています。

(defun setup-japanese-environment-internal ()
  ;; By default, we use 'japanese-iso-8bit for file names.  But, the
  ;; following prefer-coding-system will override it.
  (if (memq system-type '(windows-nt ms-dos cygwin))
      (prefer-coding-system 'japanese-shift-jis)
    (prefer-coding-system 'japanese-iso-8bit)))

-- 
Hiroshi Fujishima