mieki256's diary



2020/01/11() [n年前の日記]

#1 [emacs] Emacs 26.3が動くようになった

Windows10 x64 1909上で、Emacs 24.5 (NTEmacs) が動かなくなっていたので、せっかくだからと Emacs 26.3 64bit版を導入して設定ファイルを書き直していたのだけど。なんとか動く状態になってくれた。

以前の設定ファイルで動かなかった原因は…結局分からなかった。もしかすると、25.2用の設定を一部でうっかり書いてしまっていたせいかもしれないし、あるいは package関連のURLが変わってしまっていたのかもしれない、とは思っているけれど…。まあ、今回なんとか動く状態になってくれたからいいか、と。

今までは ~/.emacs から ~/.emacs.d/init.el を呼び出すようにしながら設定していたけれど。この際だから ~/.emacs は無くして、~/.emacs.d/init.el だけで設定するようにしてみた。

タスクバー上のアイコンが二重になる問題。 :

Windows上で NTEmacs をタスクバーに登録すると、アイコンが二重になってしまう。AppIDとやらを変更して対処。

_mieki256's diary - NTEmacs 24.4をインストール

runemacs.exe のショートカットファイルを作成して、
Win7AppId1.1.exe ショートカットファイル.lnk GNU.Emacs
を実行。そのショートカットファイルをタスクバーに追加。

anythingの導入でハマった。 :

今までは 2014/01/02頃に入手した anything を動かしていたけれど、この際だから現行バージョンを入れてみようとして、ちょっとハマった。

今現在、anything は GNU ELPA とやらには登録されてなくて、github に置いてある状態らしい。

_emacs-jp/anything

git を使って入手。
git clone https://github.com/emacs-jp/anything.git

これを ~/.emacs.d/anything/ として置いて、init.el 内で以下のように設定。

;; ----------------------------------------
;; anything

(add-to-list 'load-path "~/.emacs.d/anything/")
(add-to-list 'load-path "~/.emacs.d/anything/extensions/")
(add-to-list 'load-path "~/.emacs.d/anything/contrib/")
(require 'anything)
(require 'anything-config)
(require 'anything-complete)
(setq anything-sources (list
                        anything-c-source-buffers-list
                        ;; anything-c-source-buffers+
                        anything-c-source-recentf
                        anything-c-source-bookmarks
                        anything-c-source-files-in-current-dir+
                        anything-c-source-imenu
                        anything-c-source-file-name-history
                        anything-c-source-locate
                        anything-c-source-kill-ring
                        ))

(global-set-key (kbd "C-;") 'anything)

(define-key anything-map (kbd "C-p") 'anything-previous-line)
(define-key anything-map (kbd "C-n") 'anything-next-line)
(define-key anything-map (kbd "C-v") 'anything-next-source)
(define-key anything-map (kbd "M-v") 'anything-previous-source)

;; M-y で kill-ring を表示
(global-set-key "\M-y" 'anything-show-kill-ring)

(setq anything-enable-shortcuts 'prefix)
(define-key anything-map (kbd "@") 'anything-select-with-prefix-shortcut)

;; C-x b に anything-mini or anything-for-files を設定
(global-set-key (kbd "C-x b") 'anything-mini)

これで、C-; を叩くと、バッファ一覧や履歴一覧が表示されて、絞り込み検索ができるようになった。

しかし、以前は M-x を叩くとコマンド一覧の絞り込み検索ができたのに、新しい版ではできなくなった…。

古い版(2014/01/02頃に入手)に戻して、キー割り当てを確認。

C-;           anything
<execute>     anything-execute-extended-command
<menu>        anything-execute-extended-command
C-x b         anything-mini
C-x c         anything-command-map
M-x           anything-execute-extended-command
M-y           anything-show-kill-ring
C-x c SPC     anything-execute-anything-command
C-x c #       anything-emms
C-x c F       anything-select-xfont
C-x c a       anything-c-apropos
C-x c c       anything-colors
C-x c e       anything-c-etags-select
C-x c f       anything-for-files
C-x c i       anything-imenu
C-x c l       anything-locate
C-x c m       anything-man-woman
C-x c p       anything-list-emacs-process
C-x c r       anything-regexp
C-x c s       anything-surfraw
C-x c t       anything-top
C-x c w       anything-w3m-bookmarks
C-x c x       anything-firefox-bookmarks
C-x c C-,     anything-calcul-expression
C-x c C-:     anything-eval-expression-with-eldoc
C-x c <tab>    anything-lisp-completion-at-point
C-x c h g     anything-info-gnus
C-x c h i     anything-info-at-point
C-x c h r     anything-info-emacs
C-x c C-c C-b    anything-browse-code
C-x c C-c C-x    anything-c-run-external-command
C-x c C-c SPC    anything-all-mark-rings
C-x c C-c f    anything-recentf
C-x c C-c g    anything-google-suggest
C-x c M-x     anything-M-x
C-x c M-y     anything-show-kill-ring
C-x c M-s o    anything-occur
C-x c M-g s    anything-do-grep
C-x c C-x C-b    anything-buffers-list
C-x c C-x C-f    anything-find-files
C-x c C-x C-w    anything-write-file
C-x c C-x i    anything-insert-file
C-x c C-x r b    anything-c-pp-bookmarks
C-x c C-x r i    anything-register

基本的には、C-x c に続けて何かしらを打てば anything の何かしらの機能が使える、と思っておけばいいのだろうか…。

さておき、新版では、anything-execute-extended-command とやらが M-x に割り当てられてない、ということなのかなと。

以下の設定をしてみたら、新版でも M-x で一覧が検索できるようになった。

(global-set-key "\M-x" 'anything-execute-extended-command)

しかし、キー一覧を表示する M-x describe-bindings を実行しても、anything が働かない…。

ググってみたところ、その場合は descbinds-anything.el が必要になるっぽい。

_[Home] descbinds-anything.el

入手して、load-path の通ったどこかに置いて、以下を init.el に記述。
(require 'descbinds-anything)
(descbinds-anything-install)

以上、1 日分です。

過去ログ表示

Prev - 2020/01 - Next
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project