お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2009-12-29 16:36:54

kamuycikap
メンバ
登録日: 2008-11-21

Emacs22の文字化け対策

UbuntuLinux 9.10

Emacs22を愛用しています。
日本語の入力を行う際、→や○等の記号が□で表示されてしまいます。
メニューから「Option」→「Font Set/Setfont...」を選択し、様々に試してみたのですが□ばかり表示されます。
geditでは正しく表示されるのですが、Emacsでは表示されません。

これは何故なんでしょうか??
どこをどのように設定すれば表示されるようになるのでしょうか?

オフライン

 

#2 2009-12-29 19:17:09

hmatsue
アドバイザ
登録日: 2009-03-10

Re: Emacs22の文字化け対策

.emacsの設定が悪いとか?
あるいはファイルエンコーディングを誤認識しているとか?

オフライン

 

#3 2009-12-29 20:41:25

weyk
メンバ
登録日: 2009-04-03

Re: Emacs22の文字化け対策

憶測ですが、実は、内部エンコードの関係で、23なら大丈夫・・・ということはないですかね?
# 完全Unicode(UTF8)なら、問題ないはず・・・なんだけど、どうしてだろう?

オフライン

 

#4 2009-12-29 21:09:29

kamuycikap
メンバ
登録日: 2008-11-21

Re: Emacs22の文字化け対策

hmatsue による投稿:

.emacsの設定が悪いとか?
あるいはファイルエンコーディングを誤認識しているとか?

書き込みありがとうございます。
僕の.emacsは以下のとおりです。
得にフォントの設定とかはしていない感じなのですが。。。。なぜでしょうか??

;;; 初期フレームの設定
(setq initial-frame-alist
      (append
       '((top                 . 22)    ; フレームの Y 位置(ピクセル数)
     (left                . 600)   ; フレームの X 位置(ピクセル数)
     (width               . 100)    ; フレーム幅(文字数)
     (height              . 50))   ; フレーム高(文字数)
       initial-frame-alist))

;;; 新規フレームのデフォルト設定
(setq default-frame-alist
      (append
       '((width               . 100)    ; フレーム幅(文字数)
     (height              . 50))    ; フレーム高(文字数)   
       default-frame-alist))

;行数とカラムをモードラインに表示させる
(line-number-mode 1)
(column-number-mode 1)

;モードラインに時刻を表示させる
(display-time-mode 1)

;Rubyモード設定
(autoload 'ruby-mode "ruby-mode"
  "Mode for editing ruby source files" t)
(setq auto-mode-alist
      (append '(("\\.rb$" . ruby-mode)) auto-mode-alist))
(setq interpreter-mode-alist (append '(("ruby" . ruby-mode))
                                     interpreter-mode-alist))
(autoload 'run-ruby "inf-ruby"
  "Run an inferior Ruby process")
(autoload 'inf-ruby-keys "inf-ruby"
  "Set local key defs for inf-ruby in ruby-mode")
(add-hook 'ruby-mode-hook
          '(lambda ()
            (inf-ruby-keys)))

;; Perl デバッガの設定
(autoload 'perl-debug "perl-debug" nil t)
(autoload 'perl-debug-lint "perl-debug" nil t)

;; Ruby デバッガの設定
(autoload 'rubydb "rubydb3x"
  "run rubydb on program file in buffer *gud-file*.
the directory containing file becomes the initial working directory
and source-file directory for your debugger." t)

;; スクロールバー位置を右側にする
(set-scroll-bar-mode 'right) ;; 右側

;; ソースコードのカラー表示
(if window-system (progn

(set-face-foreground 'font-lock-comment-face "MediumSeaGreen")
(set-face-foreground 'font-lock-string-face  "purple")
(set-face-foreground 'font-lock-keyword-face "blue")
(set-face-foreground 'font-lock-function-name-face "red")
(set-face-bold-p 'font-lock-function-name-face t)
(set-face-bold-p 'font-lock-keyword-face t)
(set-face-foreground 'font-lock-variable-name-face "black")
(set-face-foreground 'font-lock-type-face "LightSeaGreen")
(set-face-foreground 'font-lock-builtin-face "purple")
(set-face-foreground 'font-lock-constant-face "black")
(set-face-foreground 'font-lock-warning-face "blue")
(set-face-bold-p 'font-lock-warning-face nil)

))

;; 画面の色設定
(if window-system (progn

  ;; 文字の色を設定します。
  (add-to-list 'default-frame-alist '(foreground-color . "gray10"))
  ;; 背景色を設定します。
  (add-to-list 'default-frame-alist '(background-color . "white"))
  ;; カーソルの色を設定します。
  (add-to-list 'default-frame-alist '(cursor-color . "SlateBlue2"))
  ;; マウスポインタの色を設定します。
  (add-to-list 'default-frame-alist '(mouse-color . "SlateBlue2"))
  ;; モードラインの文字の色を設定します。
  (set-face-foreground 'modeline "white")
  ;; モードラインの背景色を設定します。
  (set-face-background 'modeline "MediumPurple2")
  ;; 選択中のリージョンの色を設定します。
  (set-face-background 'region "LightSteelBlue1")
  ;; モードライン(アクティブでないバッファ)の文字色を設定します。
  (set-face-foreground 'mode-line-inactive "gray30")
  ;; モードライン(アクティブでないバッファ)の背景色を設定します。
  (set-face-background 'mode-line-inactive "gray85")

))


;; スクリプトファイルを保存時、自動的に実行属性をつけて保存する
(add-hook 'after-save-hook
          'executable-make-buffer-file-executable-if-script-p)


;; -----------------------------------------------------------------------------
;; ライブラリに自分のEmacsLispライブラリディレクトリを追加し、ライブラリ内にあるコマンドを読み込む
;; -----------------------------------------------------------------------------
(setq load-path (append (list (expand-file-name "~/myemacs_lisp/")) load-path)) ; 自分用のライブラリディレクトリをライブラリに追加する
(autoload 'my-previous-window "my_window" "1つ前のウィンドウに戻る" t) ; my_window.el読み込み
(global-set-key "\C-xp" 'my-previous-window)                       ; my-previous-windowコマンドをC-xpに割り当てる

オフライン

 

#5 2009-12-29 21:24:47

kamuycikap
メンバ
登録日: 2008-11-21

Re: Emacs22の文字化け対策

weyk による投稿:

憶測ですが、実は、内部エンコードの関係で、23なら大丈夫・・・ということはないですかね?
# 完全Unicode(UTF8)なら、問題ないはず・・・なんだけど、どうしてだろう?

Ubuntu9.10はクリーンインストールではなく、Ubuntu8.xxのバージョンから、synapticでバージョンアップを重ねております。
それが原因なんでしょうか????

オフライン

 

#6 2009-12-30 00:45:01

yama
メンバ
登録日: 2006-10-23

Re: Emacs22の文字化け対策

適切なフォントを指定していないためです。適切なフォントを設定してあげてください。
以下設定例:

コード:

(cond ((string-match "^22\." emacs-version)
       (cond (window-system
              (set-default-font "-*-fixed-medium-r-normal--18-*-*-*-*-*-*-*")
              (progn
                (set-face-font 'default "-shinonome-gothic-medium-r-normal--18-*-*-*-*-*-*-*")
                (set-face-font 'bold "-shinonome-gothic-bold-r-normal--18-*-*-*-*-*-*-*")
                (set-face-font 'italic "-shinonome-gothic-medium-i-normal--18-*-*-*-*-*-*-*")
                (set-face-font 'bold-italic "-shinonome-gothic-bold-i-normal--18-*-*-*-*-*-*-*"))))))

東雲フォントを設定しています。入っていない場合は、

コード:

sudo apt-get install xfonts-shinonome

として入れてください。

# 私自身はEmacs23に移行してしまっているので、Emacs22の設定には詳しくはありません。
# ちなみにEmacs23の方がアンチエイリアスで綺麗でフォントの設定も楽です。

オフライン

 

#7 2009-12-30 14:32:01

kamuycikap
メンバ
登録日: 2008-11-21

Re: Emacs22の文字化け対策

yama による投稿:

適切なフォントを指定していないためです。適切なフォントを設定してあげてください。
以下設定例:

コード:

(cond ((string-match "^22\." emacs-version)
       (cond (window-system
              (set-default-font "-*-fixed-medium-r-normal--18-*-*-*-*-*-*-*")
              (progn
                (set-face-font 'default "-shinonome-gothic-medium-r-normal--18-*-*-*-*-*-*-*")
                (set-face-font 'bold "-shinonome-gothic-bold-r-normal--18-*-*-*-*-*-*-*")
                (set-face-font 'italic "-shinonome-gothic-medium-i-normal--18-*-*-*-*-*-*-*")
                (set-face-font 'bold-italic "-shinonome-gothic-bold-i-normal--18-*-*-*-*-*-*-*"))))))

東雲フォントを設定しています。入っていない場合は、

コード:

sudo apt-get install xfonts-shinonome

として入れてください。

# 私自身はEmacs23に移行してしまっているので、Emacs22の設定には詳しくはありません。
# ちなみにEmacs23の方がアンチエイリアスで綺麗でフォントの設定も楽です。

回答頂いた内容を.emacsに記述する事で、無事に表示されました。
正直に.....書いてあるLispの意味を全て理解できてはいません。
これは、Emacs-Lispによるフォンとの設定方法のサンプルとして大切にします。

Emacs23についてgoogle検索したところ、Emacs23ではなくてスナップショットバージョンの情報をみつけました。
そして、つい先ほどEmacsのSnapshotをインストールしてみました。
実行したコマンドは以下のとおりです

sudo apt-get install emacs-snapshot

下記のコマンドで実行できました。
emacs-snapshot

もしも、Emacs23がパッケージとして存在するならば教えていただきたいです。
おかげさまで○△→も無事に表示出来るようになりましたし、新しいEmacsも体験することが出来ました。
ありがとうございました。

オフライン

 

#8 2009-12-31 14:00:24

sakanade
新しいメンバ
登録日: 2009-12-19

Re: Emacs22の文字化け対策

9.10ならapt-get intall emacs23でいけると思います。

オフライン

 

#9 2010-01-03 14:46:24

kamuycikap
メンバ
登録日: 2008-11-21

Re: Emacs22の文字化け対策

sakanade による投稿:

9.10ならapt-get intall emacs23でいけると思います。

kamuycikapです。

synapticからEmacs23のインストール出来ました。
情報をありがとうございます。
synapticでemacsの単語を検索していたはずなんですが.....探し方が悪かったようです。

現在、Emacs22とEmacs23スナップショット、そしてEmacs23が同居している状態です。
なにかしら同居による問題がありますでしょうか?
なければ、このまましばらく同居して使ってみようかと思います。

オフライン

 

#10 2010-01-04 09:02:50

sakanade
新しいメンバ
登録日: 2009-12-19

Re: Emacs22の文字化け対策

私も22と23を同居させています。
$ sudo update-alternatives --config emacs
でemacs23を指定して使ってます。

オフライン

 

Board footer

Powered by FluxBB