Vine Linux バグトラッキングシステム - Vine Linux
課題の詳細を表示
0001186Vine Linux2 proposed-updates公開2011-08-08 19:092012-10-04 13:53
anonymous 
munepi 
不明 
完了実装済 
6.0 
 
x86_64
なし
0001186: [proposed-updates] emacsでyatexをloadできない
emacsで拡張子.texのファイルをloadしようとすると、
File mode specification error: (file-error "Cannot open load file" "yatex")
と言われます。yatexはインストールしてあります。
.emacsには次のように書いてあります。
(setq auto-mode-alist
      (cons (cons "\\.tex$" 'yatex-mode) auto-mode-alist))
(autoload 'yatex-mode "yatex" "Yet Another LaTeX mode" t)

; 3=EUC
; 4=UTF-8
(setq YaTeX-kanji-code 4)
設定されていません。
課題の履歴
2011-08-08 19:09anonymous新規課題
2011-08-08 20:19munepi担当者 => munepi
2011-08-08 20:19munepiコメント追加: 0000596
2011-08-11 08:23anonymousコメント追加: 0000597
2011-08-11 09:28munepi状態新規 => 担当者決定
2011-08-11 09:28munepiコメント追加: 0000598
2011-08-12 07:37anonymousコメント追加: 0000599
2011-08-14 10:03munepi状態担当者決定 => 完了
2011-08-14 10:03munepi解決状況不明 => 次回更新時対応
2011-08-14 10:03munepiコメント追加: 0000600
2012-02-14 00:21munepi概要emacsでyatexをloadできない => [proposed-updates] emacsでyatexをloadできない
2012-02-14 00:21munepi状態完了 => テスト待ち
2012-02-14 00:21munepicategory_id2 => 6
2012-02-14 00:21munepi解決状況次回更新時対応 => 不明
2012-02-14 00:21munepiコメント追加: 0000601
2012-10-04 13:53iwamotoコメント追加: 0007355
2012-10-04 13:53iwamoto状態テスト待ち => 完了
2012-10-04 13:53iwamoto解決状況不明 => 実装済
2012-10-04 13:53iwamoto詳細更新bug_revision_view_page.php?rev_id=60#r60

コメント
(0000596)
munepi   
2011-08-08 20:19   
結論を先に申し上げますと,
本件はバグでないと考えられます.

> emacsで拡張子.texのファイルをloadしようとすると、
> File mode specification error: (file-error "Cannot open load file"
> "yatex")
> と言われます。yatexはインストールしてあります。

手元の Vine Linux 6 x86_64(i686 でも同様)で,
なんとか再現できました.
再現方法は以下の通りです.

 1. auctex パッケージと yatex パッケージをともにインストールしている
 2. ~/.emacs.d/emacs23-vine-default.el に
    (setq vine-default-yatex nil)
    (setq vine-default-yahtml nil)
 しか記述していない
 3. ~/.emacs に以下の設定を記述する

 > .emacsには次のように書いてあります。
 > (setq auto-mode-alist
 > (cons (cons "\\.tex$" 'yatex-mode) auto-mode-alist))
 > (autoload 'yatex-mode "yatex" "Yet Another LaTeX mode" t)
 >
 > ; 3=EUC
 > ; 4=UTF-8
 > (setq YaTeX-kanji-code 4)

上記の設定のみだと,AUCTeX を使おうとします.
また,AUCTeX を通常使う場合には,.tex ファイルを開いたら,
auctex のモードが期待されるでしょうから,
vine-default-auctex.el にはそのように設定しています.

ここで,auctex と yatex を同時にインストールした環境があったとします.
ワークステーションのような複数のユーザが共存する環境で,
ある人は AUCTeX をつかい,別の人は YaTeX を使う場合があるでしょう.
そのような環境で vine-default を使う場合に,
互いに衝突する機能のパスを呼ばないように,
vine-default-auctex と vine-default-yatex に仕込んでいます.
本件に関する説明は,
「Emacs 利用ガイド」の 3.5.4. AUCTeX と YaTeX の共存
 http://www.vinelinux.org/docs/vine6/emacs-guide/vine-default-customize.html [^]
に記述しております.合わせてご参照ください.

もし auctex と yatex をともに入れた環境で,
独自の auctex の設定,もしくは,yatex の設定をしたい場合は,
 (setq vine-default-yatex nil
       vine-default-yahtml nil
       vine-default-auctex nil
       vine-default-preview-latex nil)
を ~/.emacs.d/emacs23-vine-default.el に記述し,
ユーザ初期設定ファイル(投稿者の環境の場合は,~/.emacs)に
独自の auctex の設定,もしくは,yatex の設定を記述してください.
投稿者 1 の ~/.emacs の例の場合だと、以下のようになります.
 (require 'yatex)
 (setq auto-mode-alist
      (cons (cons "\\.tex$" 'yatex-mode) auto-mode-alist))
 (autoload 'yatex-mode "yatex" "Yet Another LaTeX mode" t)
 
 ; 3=EUC
 ; 4=UTF-8
 (setq YaTeX-kanji-code 4)

ちなみに,vine-default-yatex.el には,
投稿者 1 の ~/.emacs に記述した設定を含む,
やてふの設定があらかじめ組み込まれています.
詳細な vine-default-yatex の設定は,
 /usr/share/emacs-23.3/site-lisp/yatex/vine-default-yatex.el
を参照くださいませ.
また、vine-default を一切使いたくない場合は、
Emacs 利用ガイド の 3.1.1. vine-default をすべて無効にする
 http://www.vinelinux.org/docs/vine6/emacs-guide/vine-default-usage.html [^]
などを参考に設定してください。


Vine Linux 6 以降,デフォルトのユーザ初期設定ファイルの場所は,
 ~/.emacs.d/init.el
になっております
(「Emacs 利用ガイド」の 2.3.2. ユーザ初期設定ファイル
 http://www.vinelinux.org/docs/vine6/emacs-guide/per-user-configuration.html [^]
を参照).
なお,Vine Linux 6 の Emacs について,
Emacs 利用ガイド
 http://www.vinelinux.org/docs/vine6/emacs-guide/vine-emacs-guide.html [^]
に記述しております.とくに
 2. Vine Linux 6 の Emacs 環境
 3. Vine Linux のデフォルト設定:vine-default
 4.4. 複数バージョンの管理
 A. Vine Linux 4.2 の Emacs 環境
あたりに,Vine Linux の Emacs 環境に関する
事柄を説明をしておりますので,
どうぞご参考くださいませ.

以上により,本件はバグでないと考えます.
いかがでしょうか?
(0000597)
anonymous   
2011-08-11 08:23   
詳細なリプライをいただき、ありがとうございます。
インストールメディアはCDでした。
auctexパッケージはインストールしていません。
~/.emacs.d/emacs23-vine-default.el には何も変更を加えていません。
このファイルの中を見ると
;; マクロサーチパスの追加
と書いてあったので、
(add-to-list 'load-path "/usr/share/emacs/site-lisp/yatex")
としたらyatexが動くようになりました。
(0000598)
munepi   
2011-08-11 09:28   
山本@千葉です。

> インストールメディアはCDでした。

情報提供をありがとうございます。
これでようやく原因が分かりました。
投稿者の不具合の再現方法は、以下のとおりです。
 1. Vine60-CD インストーラから「デスクトップ」としてインストール
 2. すぐに emacsと yatex をインストール
 3. emacs を立ち上げても、やてふが立ち上がらない

原因は、yatex のインストール中に
make コマンドを必要とすることでした。
make が入っていないので、yatex のインストール中に
行われている
 install/yatex: Byte-compiling for emacs-23.3 ... done.
が失敗に終わります。
 /usr/share/emacs-23.3/site-lisp/yatex/CompilationLog
を見ると、make コマンドがありませんと記録されていました。
 //usr/lib/emacsen-common/packages/install/yatex: 行 42: make: コマンドが見つかりません

本件は、yatex 側か emacsen-commmon 側のどちらかで、
make パッケージを依存させるように対応します。

> ~/.emacs.d/emacs23-vine-default.el には何も変更を加えていません。
> このファイルの中を見ると
> ;; マクロサーチパスの追加
> と書いてあったので、
> (add-to-list 'load-path "/usr/share/emacs/site-lisp/yatex")
> としたらyatexが動くようになりました。

はい、現時点での投稿者さんの環境では、
そのようにすれば動くようになりますが、
Vine Linux の Emacs の使い方としては、
好ましくありません。
 (add-to-list 'load-path "/usr/share/emacs/site-lisp/yatex")
を削除なさることを推奨します。

したがいまして、現時点での投稿者さんの環境において、
vine-default-yatex を生かした設定をする場合、
以下のようにご対応いただけますでしょうか?
 1. $ sudo apt-get install make
 2. $ sudo apt-get remove yatex
 3. $ sudo apt-get install yatex
 4. ユーザ初期設定ファイルから、
    やてふに関する設定を取り除く。
    また、~/.emacs.d/emacs23-vine-default.el から
    (add-to-list 'load-path "/usr/share/emacs/site-lisp/yatex")
    を取り除く。
 5. $ emacs /tmp/hoge.tex で Emacs を起動して、
    やてふモードが動くことを確認する。
なお、独自にやてふの設定をなさる場合は、この限りではありません。
(0000599)
anonymous   
2011-08-12 07:37   
素早い対応、ありがとうございます。
0000004に書かれている操作で動くようになりました。
(0000600)
munepi   
2011-08-14 10:03   
通常、self-build-setup がインストールされる想定において、
本件は軽微な不具合だと思います。
状態を「次回更新時対応」に変更します。
(0000601)
munepi   
2012-02-14 00:21   
> 通常、self-build-setup がインストールされる想定において、
> 本件は軽微な不具合だと思います。
> 状態を「次回更新時対応」に変更します。

proposed-updates/6 へ
  yatex-1.74-8vl6.{noarch,src}.rpm
を put しました。

状態を「テスト中」へ変更します。
(0007355)
iwamoto   
2012-10-04 13:53   
yatex-1.76-2vl6 @ Vine6.1 で実装済みです。
完了とします。