約 1,338,122 件
https://w.atwiki.jp/kobapan/pages/91.html
emacs/text-modeではタブをスペースに変換しない emacs/備忘録 emacs/emacs-evernote-modeのインストール emacs/mmm-modeのインストール emacs/install-elispのインストール emacs/auto-complete-modeのインストール emacs/折り返し表示 emacs/root用の.emacsファイル emacs/mewがCreating an SSL TLS connection...で固まる emacs/recentf-ext.el+anything.el emacs/対話的に確認しながら正規表現を構成して置換するvisual-regexp emacs/起動時に前回開いていたすべてのファイルを開き直す emacs/キーバインドの設定の仕方 emacs/cua-modeで矩形選択 emacs/texiファイルからinfoファイルを作成して使う emacs/eshell emacs/編集作業のキーバンド emacs/文字上書きOverwriteモード emacs/ctags
https://w.atwiki.jp/psy_ren/pages/255.html
Pacs(パックス) グリゴリ実験体05号、06号、07号の頭に接続されていた実験体を管理するためのヘッドギアのこと。 このPacsによって実験体のPSIの使用を抑制することで、第二次グリゴリ計画は進められていた。 Pacsが機能するためには、対象者に媒介用のナノマシンチップを頭に埋め込むことが必要である。 また、このナノマシンチップは破壊・起動コードを入力する事でチップを融解させる事ができる。 もしチップが融解すると脳の一部が拒否反応を起こし、その実験体のPSIを使用不可にさせる事ができるが、最悪の場合廃人にさせてしまう。 破壊コードはグリゴリ実験体05号、06号、07号の分が別々にあり、グリゴリ研究所にあるメインコンピュータおよびサブ通信システムによってコード入力が可能。 射場公一はコードを手帳に書き写し、それを封鎖されたグリゴリ研究所の彼のロッカーの裏に隠していた。 メインコンピュータは06号が脱走の際に破壊していたが、サブ通信ルームは無事であったため、チップを融解させるべく夜科アゲハ達は研究所に侵入した。 しかし、サブ通信ルームも遊坂葵のキャンディ・マンによって破壊されたため、融解することは不可能となってしまった。
https://w.atwiki.jp/ntemacs/pages/85.html
■ Windows Subsystem for Linux の Emacs で利用できる設定 【お知らせ】 2021/06/28 追記 proxy サーバ配下の環境にある PC で Remote-WSL を使った場合、WSL に接続するまでに時間が掛かる問題が発生していました。次のページで紹介してある設定を行ったところ改善しましたので、紹介しておきます。 https //github.com/microsoft/vscode-remote-release/issues/4888 2021/02/05 追記 本ページの内容は WSL2 でも動作します。DrvFs や VolFs の記載がある場合には、Windows 側のファイルシステム、WSL2 側のファイルシステムと読み替えてください。 2020/09/16 追記 WSL2 の対策を行いました。(UNC パスのディレクトリで C-u を前置して実行した際、正常に動作するようになります。wslpath2 コマンドを使うように見直ししています。) 2019/10/31 追記 code を cmd.exe からコールする場合の引数のエスケープ処理を追加しました。 2019/10/20 追記 本設定と逆方向の操作をしたい場合には、次の設定を参考としてください。 VSCode で開いているファイルを WSL の Emacs で開くための設定 2019/09/10 追記 本設定は次の情報に基づき、作成しています。 https //code.visualstudio.com/docs/editor/command-line https //cspotcode.com/posts/attach-vscode-to-container-from-cli 2019/09/10 追記 Remote Development に対応しました。 2019/03/13 追記 VSCode を Emacsキーバインドにするための新しい Extension、Awesome Emacs Keymap が出ているようです。 https //marketplace.visualstudio.com/items?itemName=tuttieee.emacs-mcx https //ganaware.hatenadiary.jp/entry/2019/01/02/235708 Command Palette 内での文字入力時に Emacsキーバインドが使えないのは変わっていないようです。 【本題】 Windows Subsystem for Linux で起動している Emacs から Visual Studio Code でファイルを開くための設定です。 1) Visual Studio Code の Windows版 をインストールする。 https //code.visualstudio.com/ 2) Remote-SSH を使う場合は、コマンドプロンプトから ssh コマンドが使えることを確認し、さらに Windows と WSL の ssh が同じホスト名で接続できるように設定を行う。(%USERPROFILE%/.ssh/config や ~/.ssh/config の設定を行うことで、ホスト名の略称が使える。)また、接続先と公開鍵認証で接続できるようにし、ssh-agent の設定をすることでパスフレースの入力を省略できるようにする。 ※ ssh-agent-wsl を利用すると、Windows 側の ssh-agent に WSL から秘密鍵を登録でき、また Windows の ssh-agent を WSL からも利用できるようになります。 https //qiita.com/q1701/items/3cdc2d7ef7a3539f351d 3) Remote-Containers を使う場合は、Docker の設定をし、コンテナを立ち上げておく。 4) 拡張機能 Remote Development をインストールする。 ※ Remote-WSL、Remote-SSH、Remote-Containers の機能を最初に利用する際にサーバモジュールがインストールされます。Remote-WSL、Remote-SSH のサーバモジュールは sh -c で起動されるスクリプト内で wget によりインターネットから取得されるため、接続環境によっては .wgetrc にプロキシの設定を行う必要があるようです。 5) PC を一旦ログインしなおす。(VSCode の再起動だけで良いようにも思いますが、念の為) 6) 次のリポジトリの内容を WSL/WSL2 にインストールし、コマンドパスがとおた状態で wslpath2 コマンドが動作するようにする。 https //github.com/smzht/wsl-utils 7) Emacs を立ち上げ、以下の設定を有効にする。 (defun vscode-cmd-escape (arg) (replace-regexp-in-string "[ | ^\"%]" "^\\ " arg)) (defun vscode-open-command (filename optional keep-position) (interactive) (let* ((filename (expand-file-name filename)) (default-directory "/mnt/c/") authority target command filepath) (cond ((file-remote-p filename) (setq command "cmd.exe /c code") (if (file-directory-p filename) (setq command (format "%s --folder-uri" command)) (setq command (format "%s --file-uri" command))) (let* ((vec (tramp-dissect-file-name filename)) (method (tramp-file-name-method vec)) (host (tramp-file-name-host vec)) (user (tramp-file-name-user vec)) (localname (tramp-file-name-localname vec))) (cond ((or (string= method "scp") (string= method "ssh")) (setq authority "ssh-remote") (setq target (if user (format "%s@%s" user host) host)) (setq filepath (format "vscode-remote //%s+%s%s" authority target localname))) ((string= method "docker") (setq authority "attached-container") (setq dockerid (shell-command-to-string (format "cmd.exe /c docker container ls --filter name=%s --format {{.ID}} " host))) (when (not (string= dockerid "")) (setq dockerid (substring dockerid 0 -1)) (setq target (mapconcat (lambda (x) (format "%02x" (aref x 0))) (split-string dockerid "" t) "")) (setq filepath (format "vscode-remote //%s+%s%s" authority target localname)) (setq filepath (vscode-cmd-escape filepath)) (setq filepath (vscode-cmd-escape filepath))))))) (t (cond (current-prefix-arg (setq command "cmd.exe /c code") (let ((winpath (shell-command-to-string (format "wslpath2 -w %s 2 /dev/null" (shell-quote-argument (file-truename filename)))))) (when (not (string= winpath "")) (setq filepath (substring winpath 0 -1)) (setq filepath (vscode-cmd-escape filepath)) (setq filepath (vscode-cmd-escape filepath))))) (t (setq command "code") (setq filepath filename))) (when keep-position (setq command (format "%s -g" command)) (setq filepath (format "%s %d %d" filepath (line-number-at-pos) (+ (- (point) (save-excursion (beginning-of-line) (point))) 1)))))) (if (null filepath) (message "VSCodeで開くことができません") (message (format "%s %s" command filepath)) (shell-command-to-string (format "%s %s" command (shell-quote-argument filepath)))))) ;; dired で開いているディレクトリを開く (define-key dired-mode-map (kbd "V") (lambda () (interactive) (save-some-buffers) (vscode-open-command (dired-current-directory) nil))) ;; dired でカーソルがある位置のファイルを開く (define-key dired-mode-map (kbd "C-c v") (lambda () (interactive) (save-some-buffers) (vscode-open-command (dired-get-file-for-visit)))) ;; 開いているファイルをカーソルの位置を維持して開く (global-set-key (kbd "C-c v") (lambda () (interactive) (save-some-buffers) (vscode-open-command buffer-file-name t))) ※ キーの設定は使いやすいように変更してご利用ください。 ※ キーから呼ばれるコマンド内で「(save-some-buffers)」を呼んでいます。これは、Emacs で編集中のファイルが VSCode から二重に編集されないようにするための対策です。不要であれば削除してご利用ください。 ※ Emacs 開いているファイルを VSCode で開く場合にカーソル位置を維持する機能をサポートしていますが、この機能は tramp での接続先のファイルを VSCode(の Remote-SSH、Remote-Containers)で開く際には機能しません。(ファイルの先頭にカーソルが位置します。) 8) Emacs から 7) で設定したキーを入力することにより、VSCode と連携する。 ※ Remote-SSH、Remote-Containers で接続した VSCode を起動したい場合には、Emacs から接続先に tramp で接続し、その状態で設定したキーを入力してください。 ※ tramp で Docker に接続するには、 docker-tramp.el が必要です。詳しくは、次のページの<2018/07/20 追記>の内容を参考としてください。 Docker_トピック ※ ローカルPC上では、数引数(C-u)を付けないで設定したキーを入力すると、Remote-WSL 機能を使って VSCode と連携します。(Windows 10 のバージョン関係なく、DrvFs、VolFs 上のどちらにあるファイルやディレクトリも開けます。) ※ ローカルPC上では、数引数(C-u)を付けて設定したキーを入力すると、Remote-WSL 機能を使わないで VSCode と連携します。(Windows 10 1809 までは、VolFs 上にあるファイルやディレクトリは開けません。) ※ Fakeymacs をインストールすると、Emacs から起動した VSCode との行き来を Alt-o のキーで行うことができるようになります。さらに VSCode に Emacs のキーバインドの機能拡張をインストールしておけば、VSCode のウィンドウを Emacs の一フレームのような感覚で利用することができます。 Windows の操作を Emacs のキーバインドで行うための設定 (Keyhac版) 変更履歴 2018/11/26 このページを作成した。 2019/08/23 パスにシンボリックリンクが含まれる場合の対策を行った。 2019/08/23 wslpath 変換時のエラー対策を行った。 2019/08/27 Remote-WSL に対応した。 2019/09/10 Remote-SSH、Remote-Containers に対応した。 2019/10/31 code を cmd.exe からコールする場合の引数のエスケープ処理を追加した。
https://w.atwiki.jp/nkym_memo/pages/27.html
Emacs インストール 移動および検索、置換 バッファ/ウィンドウ/フレーム .emacs(emacs設定ファイル) デフォルトのキーバインド一覧 各モードの設定 プログラミング Org-mode 設定ファイル(.emacs)の再読み込み .emacsのバッファにて M-x eval-current-buffer または、 M-x road-file で ~/.emacs を指定。 設定ファイル(.emacs)を読み込まないで起動 $emacs -q emacs23におけるフォントの変更 emacsを立ち上げてoptionsメニューの「Set Font/Fontset...」をクリック フォントサイズの変更は、C-x C-+ で拡大、C-x C--で縮小 emacsを端末内で起動する $emacs -nw ※いくつか使えないキーバインドがある 文字の折り返し M-x toggle-truncate-linesで折り返し。 一行の文字数を変える場合 http //www.serendip.ws/archives/1228 emacsclient シェルから現在のEmacsにアクセスする。Emacsの起動時間を省くことができる。 編集が終了したら C-x #(server-edit) .emacsに以下を追記 ;;; emacsclient (server-start) .bashrc(シェルの設定ファイル)に以下を追記 # emacs client export EDITOR=emacsclient export VISUAL=emacsclient リドゥの追加(redo+.el) やり直し(undoの逆)を追加する。ここではM-zとしてある。 インストール M-x install-elisp-from-emacswiki redo+.el .emacsに以下を追記 ;;; redo+.el ;; M-x install-elisp-from-emacswiki redo+.el (require 'redo+) (global-set-key (kbd "\M-z" ) 'redo) (setq undo-no-redo t); 過去のundoがredoされないようにする ;; 大量のundoに耐えられるようにする (setq undo-limit 600000) (setq undo-strong-limit 900000) Emacs Lispインストーラの利用(auto-install.el) インターネット上のEmacs Lispをインストールする作業を自動化する。 auto-install.elのインストールは手動で行う必要がある。 $mkdir -p ~/.emacs.d/auto-install $cd ~/.emacs.d/auto-install $wget http //www.emacswiki.org/emacs/download/auto-install.el $emacs --batch -Q -f batch-byte-compile auto-install.el .emacs に加える設定 ;;;Emacs Lispインストーラを利用 (add-to-list 'load-path "~/.emacs.d/auto-install") ;;(install-elisp-from-emacswiki "auto-install.el") (require 'auto-install) ;;起動時にEmacswikiのページを補完候補に加える (auto-install-update-emacswiki-package-name t) ;;install-elisp.el互換モード (auto-install-compatibility-setup) ;;ediff関連のバッファを一つのフレームにまとめる (setq ediff-window-setup-function 'ediff-setup-windows-plain) リモートマシンのファイルに透過的にアクセスする(tramp.el) リモートファイル名の書式 /METHOD USERNAME@HOSTNAME FILENAME METHOD:通信方法 ssh,rsh,telnet,su,sudo 例)ssh でユーザ「foo」がホスト「foonet」にある「~/.bashrc」を編集する C-x C-f /ssh foo@foonet ~/.bashrc ssh-agentやkeychainなどのパスワード入力を回避するプログラムを使っているならパスワードは聞かれない タブでファイル名の補完可能。 ファイル作成時にテンプレートを挿入する(autoinsert.el) 特定のディレクトリ内のファイルを、ファイル作成時に自動挿入する。 作成するときに「Perform \.c auto-jinsertion?(y or n)」と聞かれるので、挿入するならy 自動挿入するファイル、ディレクトリがない場合は事前に作成 .emacsに以下を追記 (auto-insert-mode) ;;最後の/は必須 (setq auto-insert-directory "~/.emacs.d/insert/");自動挿入するファイルのあるディレクトリ (define-auto-insert "\\.c" "c-template.c");自動挿入するファイル col-highlight.el vline についてのエラーはvline.elをインストール Emacsでmanを読む(woman※) M-x womanでmanをEmacsで読む M-x woman ミニバッファにて Manual Entry マニュアル名 移動方法 n/p セクション間を前後に移動 g セクション名の入力によるジャンプ s See Alsoセクションへジャンプ マニュアルにカーソルを合わせてrキーで該当マニュアルを別バッファでオープン ※manコマンドを使用せず、Emacsでマニュアルを表示するという、without man が由来。 参考文献 Emacsテクニックバイブル〜作業効率をカイゼンする200の技〜(るびきち,2010,技術評論社) 便利なツール Emacsらくらく入門(藤原誠,2004,技術評論社) Ubuntu Weekly Recipe 第145回 manのさまざまな使い方 私の .emacs で設定している項目(土屋 雅稔) ~/.emacsへの雑多な設定
https://w.atwiki.jp/sevenlives/pages/1187.html
GNU Emacs? XEmacs? Gosmacs FSF リチャード・ストールマン? ジェームズ・ゴスリング? TECO キー・バインディング? バッファ(emacs) ミニバッファ(emacs) ポイント(emacs)? モード(emacs) フレーム(emacs)? モード・ライン(emacs) エコー・エリア? メジャー・モード? マイナー・モード? ポイント(emacs)? マーク(emacs)? リージョン キルリング ヤンク Cask? El-Get? ELPA? MELPA? auto-install.el? load-path? Emacs lisp VC?
https://w.atwiki.jp/o230483/pages/14.html
目次 ダウンロード コマンドウインドウ操作 ファイル(バッファ)操作 編集 検索 その他 各種設定 解説 Ctrl-hの問題 howm (一人お手軽 Wiki もどき) Emacs で C 言語プログラミングを始める人へのイントロダクション ダウンロード Private Packages for Sharp Zaurus SL-C series コマンド ウインドウ操作 C-x 3 ウィンドウを左右 2 つに分割する C-x 2 ウィンドウを上下 2 つに分割する C-x 1 分割したウィンドウを 1 つに戻す ファイル(バッファ)操作 C-x C-f ファイルを開く C-x C-s ファイルをセーブする C-x C-w ファイルを別の名前で保存 C-x b 別バッファに移る C-x d ディレクトリを開く C-x k ファイルをセーブせずに閉じる C-x C-c Meadow を終了する C-x d ディレクトリを開く (ワイルドカードも使用可能, *.cpp でソースのみ表示などもできます) C-x i 別ファイルを挿入 編集 C-k 一行削除 C-a カーソルを行頭へ持っていく C-SPACE マークをセット C-w C-SPACE でセットした位置と今カーソルがある位置の間にあるテキストをカットする M-w C-SPACE でセットした位置と今カーソルがある位置の間にあるテキストをコピーする C-y テキストを張り付ける M- テキストの一番最初へ行く M- テキストの一番最後へ行く C-v 下方へ移動 M-v 上方へ移動 検索 日本語を検索するには工夫が必要 C-s 文字列を下方向に検索する C-r 文字列を上方向に検索する その他 M-x 関数の入力. [Tab] キーや [SPC] キーにより補完ができる C-x RET f 文字コードの変更 C-/(C-x u や C-_ も同じ) Undo 各種設定 Zaurus SL-C750 メモ(Zaurus で袖珍 Emacs 改め) .emacs設定集 日本語環境の設定 改行キーでオートインデントさせる BS キーを有効にする マシン毎に設定を切り替える ファイルの拡張子によってメジャーモードを切り替える スクリプトを編集するメジャーモードの設定 スクリプトを保存する時,自動的に chmod +x を行なうようにする 強調表示付き動的略称展開 概略表示付き yank-pop shell-command のコマンド入力に補完が効くようにする shell-mode を使う パスワードの入力を隠す エスケープシーケンスを処理する C のソースのインデント幅を変更する RCS で漢字を含んだファイルを扱うための設定 Perl スクリプトを編集するための設定 HTML 形式のファイルを編集するための設定 英和辞書を組み込む Emacs 上で w3m を使う an Emacs interface to w3m 関数・変数の説明文を参照するコマンド 個人用の Info を追加する方法 締め切りまでの時間をモード行に表示する dired を使う Emacs-Lisp をいじろうとする時に覚えておくと便利なコマンド Emacs Lisp の参考書籍 GNU Emacs Lisp リファレンス・マニュアル Emacs Lisp によるプログラミング - 初心者のための入門 Emacs20.6 日本語マニュアル 解説 GNU Emacsマニュアル Emacs 電子書棚 Ctrl-hの問題 Ctrl-hでBSとなる場合は、.bashrcに下記の記述を追加する。 case `tty` in /dev/tty*) stty erase ^? ;; *) ;; esac ※^?はCtrl-Shift-.です。 howm (一人お手軽 Wiki もどき) Emacs で断片的なメモをどんどんとるための環境です. ダウンロード Emacs で C 言語プログラミングを始める人へのイントロダクション clmemo@aka 目次 ソースの色付け インデント アラインメント コメント info マニュアル スペル・チェック タグ・ジャンプ 関数名の補完入力 コンパイルとエラー行ジャンプ ChangeLog ファイル
https://w.atwiki.jp/ntemacs/pages/44.html
■ Windows版 Emacs 共通の設定 【お知らせ】 2015/05/17 追記 Cygwin版 Emacs でも動作するように対応しました。 【本題】 Emacs で指定したファイルを Eclipse で開くための設定です。 (require dired) (require cc-mode) (defvar eclipse-home "/c/usr/local/eclipse_4.4") (defun eclipse-open (filename) (message "%s" (concat "cygstart eclipse " filename)) (let ((default-directory (expand-file-name "./" eclipse-home))) (shell-command-to-string (concat "cygstart eclipse " (shell-quote-argument (if (fboundp cygwin-convert-file-name-to-windows) (cygwin-convert-file-name-to-windows filename) filename)))))) (define-key dired-mode-map (kbd "C-c e") (lambda () (interactive) (eclipse-open (dired-get-filename nil t)))) (define-key java-mode-map (kbd "C-c e") (lambda () (interactive) (eclipse-open buffer-file-name))) eclipse-home 変数、バインドキーの設定は適宜変更してください。 上記の設定をすると、dired や java-mode で C-e を押下することで、対象のファイルを Eclipse で開くことができます。 また、「Windows の操作を Emacs のキーバインドで行うための設定 (Keyhac版)」と併用すると、Eclipse に移動した後、C-x o で Emacs に戻ることができ便利です。 (C-x o の設定は、Windows 8 以降では動作しなくなりました。また、Windows 7 の場合でも、Keyhac の設定で eclipse.exe を除外設定している場合は動きません。) 変更履歴 2014/09/29 このページを作成した。 2015/05/17 Cygwin版 Emacs でも動作するように対応した。
https://w.atwiki.jp/banrui/pages/29.html
.emacs .Emacs参考 emacsクイックリファレンス emacs設定ファイル speedbar 参考サイト 設定参考
https://w.atwiki.jp/ntemacs/pages/25.html
【お知らせ】が長くなってきているので、設定ファイルのあるリポジトリの URL を最初に掲示しておきます。 https //github.com/smzht/fakeymacs 【お知らせ】 ● Fakeymacs_お知らせ ← 以前に掲示した【お知らせ】をこちらにまとめています。Fakeymacs を使う上で大切な内容も書かれていますので、併せて確認ください!! 2016/10/28 追記 本設定を公開して4年が経過しようとしています。その間改善を続け、“Keyhac の config で XKeymacs の代わりになるものを実現する”という当初の目標は概ね達成できたのではないかと思っています。そこで、本設定にニックネームを付けることとしました。 nickname Fakeymacs 今後も末永くご利用いただければと思います。 2023/08/27 追記 Fakeymacs には概ね次の機能が取り込まれています。 alt-ime-ahk:https //github.com/karakaram/alt-ime-ahk ULE4JIS:https //github.com/dezz/ULE4JIS/blob/master/publish/Readme.txt IME indicator:https //forest.watch.impress.co.jp/docs/review/1405793.html Dual Monitor Tools の Supersize active window:https //dualmonitortool.sourceforge.net/ SpaceFN(拡張機能 space_fn で対応):https //geekhack.org/index.php?topic=51069.0 2023/06/29 追記 Emacs キーバインドを利用しないアプリで、メニューの操作用の Emacs キーバインドを設定する拡張機能を作成しました。Tera Term などのメニューを持ったアプリで利用することを想定しています。 https //github.com/smzht/fakeymacs/tree/master/fakeymacs_extensions/menu_key 2022/12/03 追記 日本語キーボードと英語キーボードの共存(Windows) https //tek2tech.com/different-language-settings-in-one-pc/ 2022/08/01 追記 github1s.com の Fakeymacs フルサポートを止めました。代わりに、github.dev をご利用ください。 2022/06/23 追記 日本語キーボードの設定がされている OS で、英語キーボードを使えるようにするための機能を追加しました。fc.use_usjis_keyboard_conversion 変数により、Fakeymacs 起動時にこの機能を有効にするかを指定できます。ランチャーメニューの一番最後に表示されるメニューから、手動で切り替えることもできます。お試しください。 2022/06/02 追記 Fakeymac で複数のウィンドウを行き来して利用する場合は、次のような操作で行うと便利です。 使わないウィンドウは閉じる(C-x C-c) 直ぐに使わないウィンドウは最小化(A-m)する 開いているウィンドウの切り替えは、ウィンドウめくり(A-n、A-p)か other_window(A-o)で行う(A-Esc と異なり、A-n、A-p は最小化しているウィンドウをめくりの対象外とする) other_window で切り替えの対象として使いたいウィンドウは、ウィンドウリスト(A-l)で選択する ウィンドウめくりの切り替え対象に加えたいウィンドウは、ウィンドウリスト(A-l)の m マークの行から選択する ブラウザに移動して検索したい場合には、browser_key Extension を利用する(C-A-l でブラウザが開いて、アドレスバーに移動する) 以上は複数の仮想デスクトップを跨いで機能します。 2022/05/17 追記 Fakeymacs では仮想デスクトップの機能を強化する SylphyHorn というソフトウェアと連携可能としています。このソフトウェアは Windows 11 では動作しませんが、Windows 11 でも動作可能にした SylphyHornPlus という Fork が有りましたので紹介しておきます。 https //github.com/hwtnb/SylphyHornPlusWin11 https //hoge-gadget.com/article/blog/windows11%E3%81%A7%E4%BB%AE%E6%83%B3%E3%83%87%E3%82%B9%E3%82%AF%E3%83%88%E3%83%83%E3%83%97%E5%BC%B7%E5%8C%96%E3%82%BD%E3%83%95%E3%83%88%E3%81%AEsylphyhorn%E3%82%92%E4%BD%BF%E3%81%86 2022/05/05 追記 IME の状態をテキスト カーソル インジケーターの色で表現する機能を追加しました。次のページを参考にしてテキスト カーソル インジケーターを有効にし、fc.use_ime_status_cursor_color 変数を True にしてご利用ください。 https //faq.nec-lavie.jp/qasearch/1007/app/servlet/relatedqa?QID=022081 2021/02/23 追記 VSCode で Emacs キーバインドを利用するにあたり、VSCode の Emacs Keymap Extension よりも Fakeymacs の方が便利だと思う点を挙げてみました。 VSCode のいたるところで Emacs キーバインドが使える(検索条件入力フィールド内で Ctrl+y(ヤンク)が使えたり、Side Bar に Ctrl+0 で移動して Ctrl+n で移動ができたりするなど、エディタ部以外でも Emacs キーバインドが使えます) Ctrl+q を先行入力する方法や、fc.side_of_ctrl_key 変数/fc.side_of_alt_key 変数で設定した側でない Ctrlキーや Altキーと組み合わせたキーを入力する方法により、VSCode デフォルトのショートカットキーも利用できる 日本語入力モードで Ctrl+x プレフィックスキーを利用したキー入力を行った場合の誤動作が発生しない(Ctrl+x o と入力すると「o」が「お」と漢字で入力されるなどが発生しません) 普段 Fakeymacs を使っていれば、そこで慣れたキー操作が VSCode でもほぼそのまま利用できる(A-k が使えるなど) redo が使える(C-/ で undo しているときに C-g を入力すると redo となります。これは Emacs の作法に則った機能です) キーボードマクロが使える(VSCode はマルチカーソルが使えるので、あまり活躍する場面は無いような気はします。また、VSCode には Keyboard Macro Beta という Extension もあります) 日本語入力時に、Emacs のキーバインドをベースとしている「ことえり」-like のキーバインドが使える(Fakeymacs では IME のキーバインドをカスタマイズすることもできます) マルチカーソルの機能が矩形選択の機能とシームレスに動作する(専用のキーバインドを割り当てることで実現しています) クリップボードリスト(A-y)、ランチャーリスト(A-l)の機能が使える 拡張機能 shell_command_on_region を有効にすることで、Emacs のコマンドの shell-command-on-region と同等の機能が使える(VSCode には shell-command-on-region と同等の機能を持つ、Filter Text という Extension もあります) vscode.dev(https //vscode.dev)、github.dev(https //github.dev)でも、Fakeymacs 側の設定のみで Emacs キーバインドが動作する 機能の拡張が容易にできる(Python でのコーディングとなります。Extension 構築時のパッケージングの作業が不要で、拡張した機能をすぐ試すことができます) 一方、Fakeymacs の方が劣っていると思う点としては次のようなものがあると思います。 VSCode の Emacs Keymap Extension でサポートしているが、Fakeymacs ではサポートしていない機能がある(paragraph や sexp の単位の移動など) Fakeymacs は VSCode の When を認識できないので、細かい制御ができない(Terminal の中だけで機能するショートカットキーが定義できないなど。ただし、Fakeymacs では fc.use_direct_input_in_vscode_terminal 変数を有効にすることでこの制約の回避策が機能するようにしています) 一部のキーに割り当てている機能を Command Palette 経由で実行しているため、多少動作が遅い機能がある(逆に言うと、Fakeymacs では Command Palette 経由で実行できることはなんでもキーに割当てができます) Windows でしか動かない(Mac 用の Keyhac もあるのである程度の機能の移植は可能と思います。ただし、私が Mac の環境を持っていないので対応できません) 2022/03/14 追記 Fakeymacsにウィンドウめくりの機能を追加しました。仮想デスクトップを跨ぎ、最小化されていないウィンドウを順に切り替えます。初期設定のキーバインドは、A-p と A-n です。 2022/01/05 追記 Fakeymacs に shell-command-on-region Extension を構築していますが、VSCode のみであれば以下の VSCode Extension の Filter Text が利用可能なようです。お試しください。 https //marketplace.visualstudio.com/items?itemName=yhirose.FilterText 2021/12/29 追記 次のページのコメントにも記載されている Microsoft Word のテキストボックスで発生する問題(Ctrl の押下によりレイアウトオプションのサブウィンドウが表示し、そこにカーソルが移動してしまう)について、Fakeymacs でも対策してみました。お試しください。 https //now-in-eternity.blogspot.com/2020/05/built-ergodash-keyboard-with-emacs-key-bindings.html 2021/11/12 更新 ブラウザで vscode.dev を指定した際に開く VSCode の画面では、Ctl-x b で発行している C-Tab がブラウザ側でキャッチされ、ブラウザのタブを切り替えてしまいます。 このため、fc.vscode_target 変数に指定したブラウザで vscode.dev を開き、Ctl-x b を実行した 場合には、コマンドパレットで Quick Open Privious Recently Used Editor in Group を実行する ようにし、VSCode の機能が働くようにしています。 C-Tab は 従来どおりブラウザで機能しますので、vscode.dev を利用する場合には、C-Tab と Ctl-x b を使い分けるようにしてください。 (この対応により、ブラウザで vscode.dev を開いていない場合に Ctl-x b を発行すると、 おかしな動き(F1 の実行により、ヘルプの画面が表示される)となります。ご留意ください。) 2021/11/12 更新 ブラウザで vscode.dev を指定した際に開く VSCode の画面では、M-k や Ctl-x k で 発行している C-F4 がブラウザ側でキャッチされ、ブラウザのタブを閉じようとしてしまいます。 このため、fc.vscode_target 変数に指定したブラウザで vscode.dev を開き、Ctl-x k を実行した 場合には、コマンドパレットで Close Editor を実行するようにし、VSCode の機能が働くように しています。 M-k は 従来どおり C-F4 を発行するのみの機能としていますので、vscode.dev を利用する場合 には、M-k と Ctl-x k を使い分けるようにしてください。 (この対応により、ブラウザで vscode.dev を開いていない場合に Ctl-x k を発行すると、 おかしな動き(F1 の実行により、ヘルプの画面が表示される)となります。ご留意ください。) 2021/10/21 追記 全ての機能は確認していませんが、Fakeymacs は https //vscode.dev/ でも動きます。VSCode 用に拡張したキーバインドを使うためには、fc.vscode_target 変数に利用するブラウザを設定する必要があります。 https //pc.watch.impress.co.jp/docs/news/1360273.html 2021/09/24 追記 半角と全角の入力を間違えた際、入力モードの切り替えと入力文字の変換を行う zenkaku_hankaku Extension を追加しました。 https //github.com/smzht/fakeymacs/tree/master/fakeymacs_extensions/zenkaku_hankaku 2021/09/10 追記 change_keyboard Extension の見直しを行いました。 https //w.atwiki.jp/ntemacs/pages/90.html https //github.com/smzht/fakeymacs/tree/master/fakeymacs_extensions/change_keyboard 2021/09/06 追記 60% US キーボードのキー不足(Delete キー、Backquote キー不足)の対策を行う compact_keybord Extension を追加しました。 https //github.com/smzht/fakeymacs/tree/master/fakeymacs_extensions/compact_keyboard 2021/08/19 追記 GitHub のリポジトリ画面で「.」(ドットキー)を押すとVisual Studio Codeが起動するそうです。 https //www.itmedia.co.jp/news/articles/2108/12/news145.html 2021/08/18 追記 Chromium 系ブラウザのバージョン 92 では、アドレスバーにカーソルを移動した際、強制的に ASCII入力モードに移行する不具合?が発生します。 https //did2memo.net/2021/07/22/chrome-japanese-ime-off-issue-chrome-92/ さらに Google日本語入力を利用している場合、keymap.getWindow().getImeStatus() の値が正しく返されないため、Emacs日本語入力モードの挙動がおかしくなります。この問題の対策を行いました。 ⇒(2021/09/17 追記)バージョン 93 で対策されました。再発する可能性もあるため、対策コードは残しておくこととしました。(有効の有無を切り替えるパラメータの追加で対応しました。) 2021/08/09 追記 Windows 11 でも動作することを確認しました(Windows Insider Program beta channel の Windows 11 で確認)。一部、config.py の見直しをしましたが、基本機能に問題はありませんでした。 2022/06/23 追記 QMK で Emacs キーバインドを実現した方が居ます。プロセスによって有効無効を切り分けることはできませんが、キーボードだけで Emacs キーバインドを実現できていることは興味深い試みと思います。 https //now-in-eternity.blogspot.com/2020/05/built-ergodash-keyboard-with-emacs-key-bindings.html https //github.com/orihikarna/qmk_ergodash_emacs_keymap 2021/05/08 追記 VSCode の機能に性能向上対策を行いました。また、VSCode の機能の説明文の集約・整理を行いました。 2021/05/05 追記 goto-line と VSCode の goto-error のサポートを行いました。 2021/04/23 追記 Google 日本語入力を選択している状態で、クリップボードリストからの文字列の選択を行うと、その文字列がテキスト入力エリアに反映されない場合があるようです。文字列が反映されない場合でも選択したその文字列がクリップボードに格納はされるので、yank(C-y)すると反映されます。この現象は、MS-IME を選択しているときには発生しないようです。また、Fakeymacs の設定によるものでないことは確認しています。 2021/04/19 追記 fc.not_clipboard_target_class 変数で、clipboard 監視の対象外とするウィンドウのクラスネームを指定できるようにしました。WPF アプリが clipboard 監視と相性が悪いため、HwndWrapper で始まるクラスネームを持つ WPF アプリを指定できるようにする対策です。 2021/04/11 追記 ウイルス対策ソフト Avast Free antivirus を利用していて keyhac.exe がウイルスとして検知される場合には、以下のページの内容に従い確認ください。 https //itojisan.xyz/trouble/17226/ ウイルスかどうかの判定は、次のサイトも利用できます。 https //www.virustotal.com/gui/home/upload 2021/01/14 追記 指定したキーを押下したときに IME の状態を表示する拡張機能を追加しました。 2021/01/14 追記 ウィンドウフォーカス変更時にIMEの状態を表示する機能を追加しました。 2021/01/05 追記 次の拡張機能をお試しください。一度利用し始めると、離れられなくなる拡張機能になると思います。 https //github.com/smzht/fakeymacs/tree/master/fakeymacs_extensions/browser_key 2020/12/13 追記 次のページの内容で、¥キーと変換キーへのスキャンコードの割当て方法を見直しました。 英語キーボード設定の OS で日本語キーボードを使うときの情報まとめ 関連して、次の設定も見直ししています。 https //github.com/smzht/fakeymacs/tree/master/fakeymacs_extensions/change_keyboard 2020/11/02 追記 Emacs のコマンド shell-command-on-region を実現する拡張機能 shell_command_on_region をリリースしました。詳細は次のページを参照してください。 https //github.com/smzht/fakeymacs/blob/master/fakeymacs_manuals/extensions.org 2020/09/06 追記 ショートカットキーが何のアプリで使われているかを調べられるサイトを見つけましたので紹介します。 https //defkey.com/ 2020/08/06 追記 お薦めの設定を最初に紹介しておきます。 HHKB の英語キーボードの場合、DIP スイッチで ◇ キーに Win キーを割り当てて ◇ キーと Alt キーを入れ替える設定(Pro2/HYBRID-US の場合、SW1 ON、SW2 OFF、SW4 OFF、SW5 ON)をし、KeySwap というソフトで RWin キー(キーの位置は、DIP スイッチの設定で右の Alt キーとなっている)に RCtrl キーを割り当てる。(LWin キーに RCtrl キーを割り当てる方法もあるので、お好みでどうぞ。その場合、config.py の fc.side_of_win_key 変数に "R" を設定する必要があります。) HHKB 以外のキーボードの場合、KeySwap というソフトで CapsLock キーに RCtrl キーを割り当て、config.py で fc.side_of_ctrl_key 変数に "R" を設定する。(LCtrl キーは Windows ショートカット用のキーとして利用できる。) その他は、config.py の最初の方にある変数設定の説明を読んで、適宜設定の調整をしてください。 2020/05/17 追記 IME の再変換を行う機能を追加しました。 キー設定の初期値は C-t としています。 日本語入力確定後に C-t を押すと、「確定取り消し」として機能します。(Windows 10 May 2020 Update の新しい Microsoft IME では「確定取り消し」のキー設定が見つからないので、「再変換」が機能するようにしています。) 文字列の選択(リージョンの設定)をして C-t を押すと、「再変換」が機能します。 文字列が選択されているか(リージョンが設定されているか)は fakeymacs.forward_direction が設定されているかで判断しているため、マウスではなくキーボードによる選択が必要です。 Microsoft IME の場合、文字列を選択せずに C-t を押すと、カーソル位置近くの文節で「再変換」が機能します。 Emacs日本語入力モードを有効にしている場合、「確定取り消し」や「再変換」の状態になると、Emacs日本語入力モードが機能するようにしています。 この機能の追加に合わせ、 fc.emacs_ime_mode_key 変数(Emacs日本語入力モードを利用する際に、IME のショートカットを置き換えるための変数)を「ことえり」のキーバインドで機能するように設定を有効化しています。 ⇒(2020/10/10 追記)VSCode では、IME の再変換の機能がうまく動かないようです。 2020/05/03 追記 次のページを作成しました。 英語キーボード設定の OS で日本語キーボードを使うときの情報まとめ 2020/04/28 追記 レジストリを用いたキーを置き換えるソフトには、KeySwap や Change Key というものがあります。KeySwap は US キーボード表記に対応している、Change Key はキーボード上に存在しないキーの設定ができるなど、一長一短がある状況です。私は KeySwap をメインとして利用し、数値でのスキャンコードの指定が必要な場合は Change Key を利用しています。Change Key で設定した内容は KeySwap でも参照できますので、相互利用する上での問題はありません。詳しくは次のページを参照してください。 https //up2me.hatenablog.com/entry/switching_japanese_ime_on_windows10 2020/04/26 追記 Fakeymacs は、カーソルキーの無い HHKB US版 を有効に利用するために作成しました。私も HHKB を使っており、キーボードの背面スイッチと KeySwap や Keyhac の設定により、次のとおりのキーの割り当てにして使っています。 左 ◇ キーに LAlt キーを割り当てる LAlt キーに LWin キーを割り当てる 右 ◇ キーに RAlt キーを割り当てる(Windows ショートカットキーを入力するために利用できます。Windows ショートカットキーを入力するためには、LCtrl+q + Alt キーを使う方法もあります。) RAlt キーに RCtrl キーを割り当てる(Windows ショートカットキーを入力するために利用できます。Windows ショートカットキーを入力するためには、LCtrl+q + Ctrl キーを使う方法もあります。) (使っている方は少ないと思いますが..)初代 HHKB で ◇ キーに Alt を割り当てるには、以下の方法が利用できます。 1) HHKB の Mode SW を 3 に設定する(HHKB 背面スイッチの説明:https //www.pfu.fujitsu.com/hhkeyboard/leaflet/hhkb_backview.html) 2) KeySwap を管理者権限で起動する 3) キーボード種別を一旦「日本語」にし、画面に表示されるキーボードを利用して 無変換キーを 左 Alt キーに、変換キーを 右 Alt キーに置き換える 4) キーボード種別を「英語」に戻し、左 Alt キーを 左 Win キーに、右 Alt キーを 右 Ctrl キーに置き換える 5) 一応ファイルに保存し、KeySwap を終了する 6) Windows をログインし直す なお、次のサイトに HHKB 誕生の経緯が書かれています。HHKB に Meta(◇)キーがある理由や HHKB が emacs での利用を想定して作られたキーボードであることなどが書かれてありますので、興味のある方は一読ください。 http //www.wide.ad.jp/About/report/pdf1995/part19.pdf http //member.wide.ad.jp/~wada/bit.hhkbd/hhkbd.html 2020/04/25 追記 次のページにも書かれていますが、JetBrains 製の IDE で Alt のワンショットモディファイアの機能を使って IME の切替えをする場合には、ツールボタンをオンにして利用する必要があるようです。 https //github.com/karakaram/alt-ime-ahk 設定は、View - Appearance - Tool Window Bars を有効にしてください。 2016/09/15 追記 ESC を素の ESC として使いたい場合は、fc.use_esc_as_meta 変数を False に設定してください。⇒(2020/10/16 追記)現在の初期値は False となっています。 C-v をペーストとして使いたい場合は、fc.scroll_key 変数を None に設定してください。 その他のカスタマイズ設定については、configure 関数の初めの方でカスタマイズ用の変数の設定をしていますので、そのコメントを参照してください。 【本題】 Windows の操作を Emacs のキーバインドで行うための設定(Keyhac版)です。次のリポジトリから必要なファイルをダウンロードしてお使いください。 https //github.com/smzht/fakeymacs 使い方は上記ページの README に記載しています。 Keyhac は XKeymacs と異なり、IME による日本語入力中であることを判定することができません。このため、日本語入力中に IME の変換操作を行う方法として、以下の2つの方法を提供しています。 1) Emacs日本語入力モード (利用するかは fc.use_emacs_ime_mode 変数で設定。初期値:True(使う)) IME が ON の時に文字(英数字か、スペースを除く特殊文字)を入力すると起動するモードです。(モードに入ると、▲のマークが表示されます。) Emacs日本語入力モードになると Emacsキーバインドとして利用できるキーが限定され、その他のキーは Windows にそのまま渡されるようになるため、IME のショートカットキーを利用できるようになります。詳しい仕様は、「Fakeymacs_お知らせ」の 2020/04/23 更新 の内容を参照ください。 2) その他の方法 (本設定の仕様としてデフォルトで利用可能) 本設定で置き換えしていないキーを入力する。(但し、Ctrl とアルファベットを組み合わせたキーは、ほぼ全て置き換えがされています。) fc.side_of_ctrl_key 変数や fc.side_of_alt_key 変数で設定した側でない Ctrlキーや Altキーと組み合わせたキーを使う。 入力するキーに先行して C-q を入力する。(Emacs日本語入力モードを使っていない場合に有効な方法です。) 認識はしているのですが対策できていない課題 として以下のものがあります。 powershell.exe では起動直後に C-w や C-k で切り取りをした際や、通常の利用時でも行の最終カラムで C-k を入力した際などにエラーとなる。これは既知の問題のようでもあり対策できていない。(Keyhac を利用していない状態でも、未入力の状態で C-a - C-x を入力すると発生します。) ⇒ (2019/04/01 追記)Windows 10 1809 で試したところ、この問題は改善されたようです。 コマンドプロンプトで漢字を入力した際、行末までの削除(C-k)の挙動がおかしくなる。漢字を含む行で End キーが正常に動作しない問題によるもの(コマンドプロンプトのバグ?)なので、対策は難しい状況である。 ⇒ (2019/07/18 追記)Windows 10 1903 で試したところ、この問題は改善されたようです。 Microsoft Edge で C-v が正常に機能しない。(C-v で PageDown キーを発行するようにしているが、これが C-PageDown と認識されているような気がします。) ⇒ (2020/01/16 追記)2020/01/15 にリリースされた Chromium版 Edge では、この問題が発生しないことを確認しました。 仮想デスクトップでの利用を踏まえ、ウィンドウの最小化は現在のデスクトップ内に表示しているウィンドウに対してのみ行われるようにしているが、最小化しているウィンドウのリストアは複数のデスクトップに渡って行われてしまう。 TeraPad で C-k による行末削除ができない。(対策は不可能と思われますので、C-d をお使いください。) Windows 7 から Windows 10 へアップデート後、Edge やコルタナなどで Google 日本語入力が利用できない場合は、次のページを参照してください。 https //productforums.google.com/forum/#!topic/ime-ja/5CCIenG_0Zw https //productforums.google.com/forum/#!topic/ime-ja/xBJLDHyJVw0 CapsLockキー への Ctrlキー の割当ては、次のページにある KeySwap というソフトが便利です。 http //www.vector.co.jp/soft/winnt/util/se228667.html fc.side_of_ctrl_key 変数を "R"(右)とし、CapsLockキーに RCtrlキーを割り当てることで、LCtrlキーで利用可能な Windowsショートカットキーとの共存が容易になると思います。(RCtrlキーも Windowsショートカット用のキーとして使いたい場合は、RCtrlキーに LCtrlキーを割り当てる必要があります。) また、Altキーは親指で操作できる場所のキーに割り当てると使い勝手が良いように思います。 変更履歴 Fakeymacs_変更履歴 ← 2017年以前の変更履歴をこちらにまとめました。 2018/02/23 clipboard 監視の対象外とするアプリケーションソフトで copy / cut した場合でも、クリップボードの内容をクリップボードリストに登録するように対策した。 2018/04/10 以前に行った clipboard 監視の対象外とするアプリのコピペ対策が Excel で正常に動作しない状況があったので、その改善を行った。 2018/06/01 kill-buffer に Ctl-x k とは別に M-k も割り当てた。 2019/03/27 キーボードマクロ記録と再生の開始時に IME を強制的に OFF にするようにした。 2019/03/27 数引数を指定してキーボードマクロを再生した際の再生再現性を高めた。 2019/07/06 checkWindow 関数のチェック方法を正規表現からワイルドカードに変更した。 2019/07/10 ウインドウが切り替わった後に最初に入力した文字が二回入力される現象の対策を行った。 2019/07/10 F2(編集モードに移行)を割り当てる方法を汎用化し、explorer.exe を追加した。 2019/07/17 reset_region 関数の見直しを行った。 2019/07/17 keyboard_quit 関数で Esc を発行するアプリの見直し等を行った。 2019/07/21 2019/07/10 に実施した文字が二回入力される対応の改善を行った。 2019/07/24 ウィンドウのリストアが最小化した順番の逆順にならなくなっていたのを対策した。 2019/11/20 Emacsシフトモードを利用していない場合、シフトキー+移動キーでリージョンの設定ができる機能をサポートした。 2020/01/07 設定の除外ターゲットにリモートデスクトップを追加した。 2020/03/13 Microsoft Excel 2019 のセル内の文字列の改行対策を行った。 2020/03/16 Microsoft PowerPoint でも Word と同様の改行対策を行った。 2020/03/13 「IME を無効にするキー」と「IME を有効にするキー」を設定できるように fc.set_input_method_key 変数を追加した。 2020/04/23 ワンショットモディファイアの機能を利用し、左右の Alt キーで IME を切替えられるようにする機能を追加した 2020/04/26 数引数の指定に Ctrl + 数字キーを使うかどうかを指定する変数を追加した。 2020/04/26 Alt + 数字キー列や Alt + Shift + 数字キー列によるファンクションキー入力機能を追加した。 (function(i,s,o,g,r,a,m){i[ GoogleAnalyticsObject ]=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document, script , //www.google-analytics.com/analytics.js , ga ); ga( create , UA-40267130-1 , atwiki.jp ); ga( send , pageview );
https://w.atwiki.jp/yuichi0619/pages/13.html
使用しているテキストエディタemacsについて mew(2008/6/9) sshでメールが見れるようにしたい。 なんで、emacsでメールを読めるようにする。 opensuseにはパッケージがないんで自分でビルド。mew-6.1を落としてくる。 まずは、 $ ./configure 次にmakeする前にopensuseはsite-lispが/usr/local/share/emacs/ではなく、/usr/share/emacs/にあるので、 prefix=/usr/local ↓ prefix=/usr とMakefileを書き換える。 その後、 $ make info $ make jinfo $ make install $ make install-jinfo とし、インストールを完了した。そして、.emacsに以下を追加した。 (autoload mew "mew" nil t) (autoload mew-send "mew" nil t) ;;; Makefile の etcdir で指定したディレクトリ (setq mew-icon-directory "/usr/local/lib/emacs/etc/Mew") (if (boundp read-mail-command) (setq read-mail-command mew)) (autoload mew-user-agent-compose "mew" nil t) (if (boundp mail-user-agent) (setq mail-user-agent mew-user-agent)) (if (fboundp define-mail-user-agent) (define-mail-user-agent mew-user-agent mew-user-agent-compose mew-draft-send-message mew-draft-kill mew-send-hook)) そして、.mew.elファイルを作った。内容は参考サイト参照。 参考サイト Mewのオフィシャルページ ttp //www.mew.org/index.html.ja scheme(2008/2/1) schemeを勉強するかもしれない。とりあえずemacsに環境を整えておこう。 以下を.emacsに追加。 ; scheme (setq scheme-program-name "/opt/local/bin/gosh") C-x C-eでgoshを起動。 コメントアウト(2008/1/28) comment-regionが便利な事に気がついた。 だからキーに割り当てた。 以下を.emacsに追加。 ;Ctrl c r を comment-regionのショートカットに ;Ctrl c u を uncomment-regionのショートカットに (global-set-key "\C-cr" comment-region) (global-set-key "\C-cu" uncomment-region) CarbonEmacsのメニューバーの消去(2008/1/28) carbonEmacsが起動する度メニューバーが出てくるのがうざい。 ぶっちゃけいらない。だから起動時に隠すようにした。 以下を.emacsに追加。 ;; メニューバーの消去 (tool-bar-mode -1) フレームの半透明化(2008/1/28) 何となくフレームを透けさせる。 だってかっこ良くない? 以下を.emacsに追加。 ;Emacsのフレームを透明に (modify-all-frames-parameters (list (cons alpha (80 40 50 30)))) 括弧の対応の色付(2007/7/23) 括弧の対応を色付け。 対応がわからんくてイライラするから色を付ける。 以下を.emacsに追加。 ;括弧の対応を色付 (show-paren-mode t) 全角スペースへの色付(2007/7/17) 全角スペースのせいでコンパイラが通らないことはよくあるが、 非常に見付けににくい。なんで全角スペースに色を付ける。 以下を.emacsに追加。 ;全角スペースに緑の色づけ。全角スペースは罠だよ =( (defface my-face-b-1 ((t ( background "green"))) nil) (defvar my-face-b-1 my-face-b-1) (defadvice font-lock-mode (before my-font-lock-mode ()) (font-lock-add-keywords major-mode ((" " 0 my-face-b-1 append) ))) (ad-enable-advice font-lock-mode before my-font-lock-mode) (ad-activate font-lock-mode) shortcut(2007/6/1) goto-lineを打ち込むのが面倒。 ショートカット化する。 以下を.emacsに追加。 ;Ctrl L を goto-lineのショートカットに (global-set-key "\C-l" goto-line) haskell-mode(2007/6/1) haskellの勉強をするために、haskell-modeの設定をする。 調べてみたが設定がわからなかったので、最新verでは無く、ver2.1を落とし、haskell-ghci.elを以下のように修正。 (if haskell-ghci-mode-map nil (setq haskell-ghci-mode-map (copy-keymap comint-mode-map))) ↓ (if nil ;haskell-ghci-mode-map nil (setq haskell-ghci-mode-map (copy-keymap comint-mode-map))) 更に以下の文を.emacsを追加。 意味はわかっていない。 ;haskell-modeのパスを定義 (setq load-path (cons "~/haskell/haskell-mode" load-path)) (setq auto-mode-alist (append auto-mode-alist (("\\.[hg]s$" . haskell-mode) ("\\.hi$" . haskell-mode) ("\\.l[hg]s$" . literate-haskell-mode)))) (autoload haskell-mode "haskell-mode" "Major mode for editing Haskell scripts." t) (autoload literate-haskell-mode "haskell-mode" "Major mode for editing literate Haskell scripts." t) (add-hook haskell-mode-hook turn-on-haskell-decl-scan) (add-hook haskell-mode-hook turn-on-haskell-doc-mode) (add-hook haskell-mode-hook turn-on-haskell-indent) (add-hook haskell-mode-hook turn-on-haskell-ghci) (setq haskell-literate-default latex) (setq haskell-doc-idle-delay 0) 追記(2007/8/5) haskell-mode ver2.3を導入。英語のれあdめを読んで導入する。 windowsでは以下の文を.emacsに追加した。前回入力したのはコメントアウト。 (load "~/haskell/haskell-mode/haskell-site-file") (add-hook haskell-mode-hook turn-on-haskell-doc-mode) (add-hook haskell-mode-hook turn-on-haskell-indent) (add-hook haskell-mode-hook font-lock-mode) (add-hook haskell-mode-hook turn-on-haskell-ghci) Debianではrootで、 $ apt-get install haskell-mode のみで、インストール完了。 .emacsには以下の文だけ追加。 (add-hook haskell-mode-hook turn-on-haskell-ghci) 追記(2008/1/9) macでは、carbonemacsには標準でhaskell-modeが入っているので、 .emacsに以下を追加。 (add-hook haskell-mode-hook turn-on-haskell-hugs) (add-hook haskell-mode-hook turn-on-haskell-doc-mode) (add-hook haskell-mode-hook turn-on-haskell-indent) 日本語化(2007/6/1) cannaは使いにくかったのでanthy化。 以下を.emacsに追加する。 意味はわかっていない。 ; 日本語をデフォルトにする。 (set-language-environment "Japanese") ; anthy.el をロードできるようにする (必要に応じて)。 (push "/usr/local/share/emacs/site-lisp/anthy/" load-path) ; anthy.el をロードする。 (load-library "anthy") ; japanese-anthy をデフォルトの input-method にする。 (setq default-input-method "japanese-anthy") 色付け(2007/6/1) Cやjavaのソースに色を付けるために、以下を.emacsに追加。 ;色を付ける (global-font-lock-mode t)