mcomplete.elのバグ発見

*Completions*バッファ中でのアイテム選択がサブストリングマッチだと失敗するというバグ。

GNU Emacs24.1 Windows7で確認

mcompleteモードが有効な状態で、M-x でミニバッファに行って、substringマッチモードにする。conと入力したあと?で*Completions*バッファを表示させる。*Completions*バッファの中のiconifty-frameをマウスクリックすると、coniconifty-frameコマンドはないというエラーがでる。

今日、一日中このバグをつぶそうとがんばったが失敗。

mcomplete.elはいまでも使われているのか?

2ch プログラム技術板 Emacs Lisp 3スレッド より

948 :デフォルトの名無しさん:2012/07/26(木) 02:25:27.85
elispパッケージのパッケージの話題はここでいいのかな。
mcomplete.elというパッケージの作者です。
しばらくelispから離れていたんですが、昨日あたりからemacs24.1をWindows7にインストールして復帰をもくろんでいます。

mcomplete.elは以前は多少は使ってくれている人がいたんですが、最近の様子はどうなんでしょう。
すでに機能的にobsoleteなpackageになってしまったのか他のpackageがとって替わったとか、
そこらへんの状況を教えていただけないでしょうか。

もし需要があるようならelispのリハビリもかねて何かアップデートしようかなと思っています。

http://homepage1.nifty.com/bmonkey/emacs/index.html

949 :デフォルトの名無しさん:2012/07/26(木) 09:15:05.59
23あたりで補完絡みが色々かわってて、
completion-styles に自分で使いたい補完の種類をいれるみたいになったみたい。
completion-styles-alist に設定出来るスタイルを説明付きでいれるんだけど、
partial-completion-mode みたいなのはここで設定するようになったってのと、
lch ->> list-command-history なんて補完も出来るようになったのが違いか。

kogikuはここらへんの変更についていけなくなってて追加された機能を一部殺さないと使えなくなった。
mcompleteも更新するんであればここら辺の仕様に則って更新してくれると嬉しいなぁ

950 :デフォルトの名無しさん:2012/07/26(木) 13:33:31.21
>>949 レスありがとうございます。とりあえずEmacsのcompletion周りの変更を勉強してみます。
gnu.emacs.helpにも似たような質問を投稿したんですが、Emacs24にバンドルされているidoが
mcompleteと機能的にかぶっているということと。helm、iciclesっていう補完パッケージがあるってことが
分かりました。いまのところあっちではいまでもmcomplete使っているって人はいませんでした。

951 :デフォルトの名無しさん:2012/07/26(木) 13:35:28.26
helmことanythingはmcompleteとは趣が結構ことなるものだよね
個人的にはiciclesとかmcompleteみたいなemacsの元々の性質生かしてるようなのが好きだなあ

GNU Emacs 24.1をWindows7へインストール

8月1日に全面的に書き直し。

CapsLockキーがControlになるようにする。Windows7ではマイクロソフトが配布しているCtrl2Capでできる。

GNUのオフィシャルページで配布しているWindows用バイナリが入ったZipは、日本語IMEに対応していないのでWindowsで使っているIMEでは日本語のインライン入力ができない。このため、日本語IMEに対応するパッチのあたったEmacsのバイナリを配布しているGNUPACKからダウンロードしてくる。

展開でほぼインストール終了。bin/addpm.exeでスタートメニューに登録。bin/runemacs.exe実行ですでに使える状態でEmacsが立ち上がる。

Windowsでは、.emacsファイルが~/.emacs.d/init.elになったとのこと。

2chソフトウェア板のNTEmacsスレより以下のコードをゲット。

.emacs.d/init.el —————————————————

(set-language-environment "Japanese")
(set-default-coding-systems ‘utf-8)
(set-keyboard-coding-system ‘japanese-cp932) ;; おまじないかも

;;; IME の設定
(setq default-input-method "W32-IME")
(setq-default w32-ime-mode-line-state-indicator "[–]") ;; おこのみで
(setq w32-ime-mode-line-state-indicator-list ‘("[–]" "[あ]" "[–]")) ;; おこのみで
(w32-ime-initialize)

;;; IME ON/OFF 時にカーソル色を変える。
(setq ime-activate-cursor-color "#00a000")
(setq ime-inactivate-cursor-color "#000000")
(set-cursor-color ime-inactivate-cursor-color)
;; ※input-method-activate-hook, input-method-inactivate-hook じゃない方がいい感じになる。
(add-hook ‘w32-ime-on-hook
          (function (lambda ()
                      (set-cursor-color ime-activate-cursor-color))))
(add-hook ‘w32-ime-off-hook
          (function (lambda ()
                      (set-cursor-color ime-inactivate-cursor-color))))
—————————————————————–

GNUのNEWSによるといろいろ24.1で機能が強化されたみたいであとで調べる必要あり。

個人的にはCompletionまわりが気になるところ。substringマッチがCompletionに加わったらしい。iswitchb.elの機能が一部取り込まれたようで、switch-to-bufferコマンドがデフォルトでsubstringマッチを使う。

あとgtk3.0に対応とか書いてあったけど、どんな対応の仕方をしたのか気になる。

総じてずいぶんWindowsでもインストールと設定が簡単になったなという印象。