理工系研究者のための Mac OS X, Windows, Linux メモ
 
ホーム >> UNIX >> Emacs
このエントリーをはてなブックマークに追加

Emacsの便利な使い方

日本語入力

  1. インプットメソッドAnthyをインストールするには
  2. Anthyでの日本語入力切り替えキーを Shift-Space にするには
  3. インプットメソッド yc.el をインストールするには
  4. Anthyで句読点をコンマ,ピリオドにするには

フォント・文字コード

  1. 文字コードを指定してファイルを読み直すには
  2. 文字コードを指定してファイルを開くには
  3. フォントを設定するには
  4. デフォルトの文字コードや改行コードを設定するには
  5. 文字コードや改行コードを変更するには
  6. UNICODE(UTF-8)のファイルを作成するには

表示

  1. ウィンドウ左側に行番号を表示するには
  2. ツールバー、メニューバーを消すには
  3. 行番号、列番号を表示させるには
  4. 行間を広げるには
  5. タブ、行末の空白に色を付けるには
  6. FORTRANモードなどでキーワードに色をつけるには

機能拡張

  1. cc-modeの使い方は
  2. X-Symbolの使い方は
  3. flyspell.elを使ってインタラクティブにスペルチェックするには
  4. SDICをインストールして英辞郎などの辞書データを閲覧するには
  5. ispell.elを使うには
  6. ispellで日本語交じりの文章でスペルチェックするには
  7. タイピング練習ソフト trr を使うには
  8. YCを用いているときに単語登録する
  9. web-modeについて

入力支援

  1. YaTeXモードでコメントアウトのショートカットを設定するには
  2. ESCキーは C-[ で代用できる
  3. 単語省略モードを使って長いセンテンスの省略形を作る
  4. etagsでC言語プログラミング支援
  5. 動的略称展開を使いたい
  6. OSXクリップボード内容をEmacsに取り込む
  7. Carbon Emacsにmmm-modeをインストールする
  8. PHP-modeのインストール
  9. HTML-helper-modeのインストール

ファイル

  1. バックアップファイル・オートセーブファイルを作成しないようにしたい
  2. 拡張子に関係なく、ファイルをFortranモードで開くようにする(2002.1.12)
  3. .emacsを読み込まずにemacsを起動する
  4. .f だけでなくて、他の拡張子でもデフォルトで FORTRAN mode で起動させたい(2001.11.23)

初期設定

  1. emacs-lispファイルの検索パスの指定
  2. Emacsの初期設定ファイルの変更をすぐに反映させるには
  3. 起動時に表示されるメッセージ画面を表示しないようにするには

バッファ操作

  1. バッファを読み取り専用にするには

その他

  1. Emacs上でコンパイルを実行したい
  2. Emacsのバージョンを調べたい
  3. no windowモードのemacsを新しいkterm上で開く
  4. コマンドラインでemacs-lispのバイトコンパイル
  5. モードの変更

ウインドウの左側に行番号を表示したい

作成日:2007.4.16

wb-line-numberを使うと、ウインドウ左側に行番号を表示することができる。 wb-line-number開発者のサイトからwb-line-number.elを取得し、emacs-lispのパスの通った所に収納する。

.emacsには次の設定を追記する。

(require 'wb-line-number)
必要な時にM-x wb-line-number-toggle とすれば起動できる。 Emacsの起動時から使う場合は、
(wb-line-number-toggle)
も追加する。

文字コードを指定してファイルを読み直すには

作成日:2007.3.18

ファイルを単に読み直すには

C-x C-v (M-x find-alternate-file)
ファイルの文字コードを指定して、読み直すには
C-x RET c (M-x universal-coding-system-argument)
 C-x C-v

▼参考サイト or 参考文献

UNICODE(UTF-8)のファイルを作成するには

更新日:2009.5.11
作成日:2007.3.18

ユニコード形式(UTF-8)のファイルを作成したり、編集するためにはmule-ucsをインストールするとよい。 ソースは白井氏のウェブサイトから取得できる。

ソースを取得したらtarで展開し、コンパイルする。

$ tar zxvf mule-ucs.tar.gz
$ cd mule-ucs-20061127-1/
$ emacs -batch -l mucs-comp.el
UTF-8への変換データベースが大きいので、3行目で行っているバイトコンパイルは実行しておいた方が良いです。

el, elcファイルをパスの通った適切な場所にコピーする。

$ cp lisp/*.el lisp/*.elc /usr/share/emacs/site-lisp/
そして.emacsに次のように追記する。
(require 'un-define)
(require 'un-tools)
文字コードをUTF-8に変換するには C-x RET C-f と打って、UTF-8-UNIXなどを選択する。

Mac OS X の場合で、パッケージマネージャーとしてFinkを使っている場合には、

$ sudo apt-get install mule-ucs
としてインストールすることができる。

YaTeXモードでコメントアウトのショートカットを設定するには

作成日:2005.1.12
環境:GNU Emacs 21.3.50.1 (powerpc-apple-darwin7.0.0, X toolkit)

c-modeではC-c C-cでコメントアウトになっているので、これに合わせてYaTeXモードでもコメントアウトに対応させることにする。 Emacsの初期設定ファイルに次のように追記する。

(add-hook 'yatex-mode-hook
          '(lambda ()
             (local-set-hook "\C-c\C-c" 'comment-region)
             (local-set-hook "\C-c\C-u" 'uncomment-region) ))

yatex.el の中身を見ると、

(run-hooks 'yatex-mode-hook)
と書いてある部分がある。ここでフックが実行されるので、フックに実行したい設定を登録するには、上記のようにadd-hookを用いると良い。

ちなみに、ある特定のモードに対してではなくて、全てのモードに対して適用するには、グローバルマップに割り当てるとよい。例えば、すべてのモードでM-gをgoto-lineに割り当てるには、

(global-set-key "\M-g" 'goto-line)
とすればよい。

▼参考サイト or 参考文献

Anthyでの日本語入力切り替えキーを Shift-Space にするには

環境:GNU Emacs 21.3.50.1

.emacsに次のように追記する。

;(global-set-key "\C-o" 'anthy-mode) ; 従来の方法 Control-o -> コメントアウト
(global-set-key [?\S- ] 'anthy-mode) ; 新しく shift-space に設定

cc-modeの使い方は

作成日:2004.1.18

字下げ

字下げなどのスタイルを自動的に適用するには、適用する範囲をリージョンとして定義して(選択して)

ESC C-\ (indent-region)
とタイプする。

自動改行

auto-newlineを使うと ;{を入力すると自動的に改行されるようになる。 これを有効にするには

C-c C-a (c-toggle-auto-state)
とタイプする。 この機能をデフォルトでONにしたいなら初期設定ファイルに次のように書いておく。
(add-hook 'c-mode-hook
     '(lambda ()
          (c-toggle-auto-state)))

コメント入力

コメントの入力のためには

ESC ;
とタイプする。

ある領域をまとめてコメントにしたいときは、リージョンを選択して

ESC x comment-region
とする。 このコメントマークを外したい時には
ESC x uncomment-region
とする。

▼参考サイト or 参考文献

  • Debra Cameron著『入門 Emacs』(オライリー・ジャパン)

ESCキーは C-[ で代用できる

作成日:2004.1.15

ESCキーはホームポジションから離れた所にあり打ちにくいが C-[ で代用できる。M-x なら C-[ x と打てばよい。

インプットメソッドAnthyをインストールするには

作成日:2003.11.2
ここの記述は古いのでCygwinのページのAnthyのインストールを参考にしてください。

Sourceforgeから、anthy-4300.tar.gz を取得する。 インストールは次の手順で行う。

(cshでの例)
% tar zxvf anthy-4300.tar.gz
% setenv CPPFLAGS -no-cpp-precomp
% ./configure --disable-shared
% make
% sudo make install
.emacs には次のように追記する。
(load-library "anthy")
(setq default-input-method 'japanese-anthy)
;C-oでanthy-modeにするための設定
(global-set-key "\C-o" 'anthy-mode)
anthy-modeのときにqを押すとカタカナ入力、l(エル)は英数モード、L(大文字のエル)は全角英字入力モードになる。日本語モードに戻すときは Control-j と打つ。

▼参考サイト or 参考文献

Anthyで句読点をコンマ,ピリオドにするには

作成日:2010.2.1

.emacsに次のように記述する.

(anthy-load-hiragana-map anthy-alt-char-map)

単語省略モードを使って長いセンテンスの省略形を作る

作成日:2003.9.22

単語省略モードを使うと、単語やセンテンスなどの略称を定義することで入力を省くことができる。 また、スペルミスしやすい単語に対して、間違ったスペルの略称として正しいスペルを登録することで自動的にスペルミスを修正するような使い方もできる。

略称を登録するためには、まず単語略称モードに移行する。

ESC x abbrev-mode
モード行に abbrev と表示されているのを確認する。略称にはグローバル略称とローカル略称がある。 ローカル略称として定義した略称は、そのモードでのみ有効となる。例えば c-mode で使っている時にローカル略称を定義した場合には、その略称は c-mode でのみ有効になる。 グルーバル略称は全てのモードに対して有効となる。

略称を定義するにはまず、emacs上に略称を入力する。カーソルがその略称のすぐ後にある状態で、

C-x aig   (add-inverse-globalの略)
と入力する。ローカル略称の場合は、
C-x ail   (add-inverse-localの略)
とする。 するとその展開形を聞いてくるので入力する。それ以降、その略称を入力して、空白または句読点を打つ度に略称展開するようになる。

次に、起動時に略称展開モードを有効にし、また略称をファイルに登録する方法を述べる。次の行を ~/.emacs.el に記入しておく。

(setq-default abbrev-mode t)
(read-abbrev-file "~/.abbrev_file")
(setq save-abbrevs t)
~/.emacs.el をセーブしたら ~/.abbrev-file を作るためにターミナルで
% touch ~/.abbrev-file
としておく。そして emacs を終了して、再起動する。上記した方法で再度略称を登録する。

pfl
C-x aig
Global expansion for "pfl": printf("%s %d: ", __FILE__,__LINE__);

好きなだけ登録したら、それらをファイルに記録しておく。記録するには、

ESC x write-abbrev-file
この時、ファイル名を聞かれるので、

Write abbrev file: ~/.abbrev-file
と答える。するとファイルに略称とその展開形が登録される。 定義した略称を削除するには、まず始めに
ESC x edit-abbrevs
と打つ。その中から不要な略称の行の先頭で
C-k
として行を削除する。そして C-x C-s でセーブしておく。ここでは略称の編集や追加は行わない方が良い。編集したいならば、不要な行を削除して上記の C-x aig による方法で再度追加する。

略称展開されてしまったものを元に戻したい時には、

ESC x unexpand-abbrev
と打つと良い。最後の略称展開を元に戻すことができる。 そのセッションにおいて略称を無効にしたい時は
ESC x kill-all-abbrevs
とする。

etagsでC言語プログラミング支援

作成日:2003.8.31

etagsを用いると、C言語の関数の定義されている部分にショートカットで飛ぶことができる。

etagsを利用するにはあらかじめタグテーブルを作成しておく必要がある。

$ etags *.[ch]
もしくはemacsからESC-!でetagsコマンドを実行することもできる。 これで、カレントディレクトリにあるソースファイル *.c とヘッダファイル *.h のタグ情報をまとめて作成することができる。デフォルトではカレントディレクトリに TAGS というタグ情報を書いたファイル(タグテーブル)が作成される。

タグ情報を作成した後、そのタグテーブルを emacs に教える必要がある。

ESC x visit-tag table
デフォルトで TAGS になっているので多くの場合、そのままリターンキーを押せば良い。

タグジャンプ機能を使うには、

ESC .   (find-tag,括弧内はコマンド名)
で検索したい関数定義の関数名を入力する。あらかじめカーソルを関数上に於いておくと、それがデフォルトになるので便利。関数名を指定してリターンキーを押すと関数定義が書かれたファイルが開かれ、関数定義の位置にカーソルが移動する。戻るには、
ESC *
とする。
C-x 4 .   (find-tag-other-window)
とすると、画面が上下に分割されて関数定義はもう一つのウインドウに表示される。もし、複数の関数定義が存在する場合には
ESC ,
でファイル名の順に検索する。

タグテーブルを利用して複数ファイルに渡る検索置換なども便利に行うことができる(この検索は関数名に限らず一般の文字列に適用される)。

ESC x tags-search
というコマンドを実行すると正規表現を入力することができ、ここで指定した文字列をタグテーブルに含まれる全てのファイルから順に検索してくれる(普通の検索コマンドでは一つのファイル内でしか検索してくれない)。

検索だけでなく置換を行いたい場合には、

ESC x tags-query-replace
とする。タグテーブルに書かれているファイル名全てに渡って確認置換することができる。 例えば、fprintf を除外して printfだけを検索したい時は C-u を付けると良い。
C-u ESC x tags-query-replace
これは普通の query-replace-regexp コマンドでも使える。

文字コードを指定してファイルを開くには

作成日:2003.8.25

文字コードを指定してファイルを開くには、

C-x C-m c "文字コード"<RET>
C-x C-f "ファイル名"
とする。

Emacs上でコンパイルを実行したい

作成日:2003.8.15

emacs上でプログラムをコンパイルするには、

ESC x compile
と打つ。デフォルトでは、
Compile command: make -k
となっているので make を使うならリターンキーを押すだけでいい。オプション -k は、あるターゲットでエラーが発生しても、他のターゲットの構築は続けるためのオプション。

このコンパイルコマンドを例えば ESC p に割り当てるならば、

(global-set-key "\M-p" 'compile)
と ~/.emacs に書いておく。

コンパイルをして、エラーメッセージの出た行に飛ぶには、

C-x `
とする。

動的略称展開を使いたい

作成日:2003.7.29

長い単語などを途中まで打って,

ESC-/
と押すと,そのバッファ内から同じつづりの単語を探して来て,補完してくれる。

バックアップファイル・オートセーブファイルを作成しないようにしたい

作成日:2003.2.23

ファイルを編集してセーブすると、ファイル名に ~ を付けたバックアップファイルが作成される。 このファイルは、一つ前にセーブしたファイルと同じ内容。バックアップファイルを作成したくないときは .emacs に

(setq make-backup-files nil)
と書いておく。

また、ファイルを編集中に自動的にセーブする機能がemacsには付いている。このファイルは #filename# という名前でセーブされている。ファイルが正常にセーブされた時にはこのファイルは削除される。この機能が必要なければ、

(setq auto-save-default nil)
と書いておく。

X-Symbolの使い方は

作成日:2003.1.25

EmacsでLaTeX書類の作成を行う時に入力支援をしたり、ギリシャ文字、上付き下付きなどをグラフィカルに表示してくれるパッケージ。

本家のサイトから x-symbol-4.43-pkg.tar.gz をダウンロードし、安宅氏のサイト(リンク切れ) からパッチをとってくる。 パッチは、

Makefile.xsymbol
x-symbol.diff
の2つ。 これらのパッチを適用する。
$ cd x-symbol-4.43-pkg
$ patch -p1 < x-symbol.diff
次に、Makefile.xsymbol のを開いて、次のように修正する。
PREFIX = /sw
そして、Makefile.xsymbolをx-symbol-4.43-pkg/Makefile.xsymbol に置いて、
% make -f Makefile.xsymbol
% sudo make -f Makefile.xsymbol install
を実行。 そして.emacsに次のように書いておく。 (http://x-symbol.sourceforge.net/news.html を参考に。)

;;--------------------------------
;;  X-Symbol mode customization
;;--------------------------------
(defvar x-symbol-root-directory (expand-file-name "/sw/share/emacs"))
(defvar x-symbol-lisp-directory
        (expand-file-name "site-lisp/x-symbol" x-symbol-root-directory))
(setq load-path (cons x-symbol-lisp-directory load-path))
(setq x-symbol-data-directory
      (expand-file-name "etc/x-symbol" x-symbol-root-directory))
(load (expand-file-name "auto-autoloads" x-symbol-lisp-directory))
(x-symbol-initialize)

▼参考サイト or 参考文献

Emacsのバージョンを調べたい

作成日:2003.1.25
ESC x emacs-version

emacsでタブ、行末の空白、全角空白に色を付けるには

作成日:2002.9.14

Emacsの初期設定ファイルに次の様に記述する。

(defface my-face-b-1 '((t (:background "gray"))) nil)
(defface my-face-b-2 '((t (:background "gray26"))) nil)
(defface my-face-u-1 '((t (:foreground "SteelBlue" :underline t))) nil)
(defvar my-face-b-1 'my-face-b-1)
(defvar my-face-b-2 'my-face-b-2)
(defvar my-face-u-1 'my-face-u-1)

(defadvice font-lock-mode (before my-font-lock-mode ())
  (font-lock-add-keywords
   major-mode
   '(("\t" 0 my-face-b-2 append)
     (" " 0 my-face-b-1 append)
     ("[ \t]+$" 0 my-face-u-1 append)
     )))
(ad-enable-advice 'font-lock-mode 'before 'my-font-lock-mode)
(ad-activate 'font-lock-mode)

▼参考サイト or 参考文献

ツールバー、メニューバーを消すには

作成日:2002.9.14

.emacs に次のように追記する。

;メニューバーを消す
(menu-bar-mode -1)
;ツールバー(アイコン)を消す
(tool-bar-mode -1)

起動中に表示の ON OFF を切り替えるには、それぞれ

M-x menu-bar-mode
M-x tool-bar-mode
と打てば良い。

flyspell.el を使ってインタラクティブにスペルチェックするには

作成日:2002.9.14

(2011.9.5)以下の情報は古い。flyspellは最近のEmacsには同梱されている。

flyspellではispellを用いるので、ispellをあらかじめインストールしておく。 Mac OS XのパッケージマネージャーFink を使うなら、

% fink install ispell
とすればよい。 flyspell.el は http://kaolin.unice.fr/~serrano/emacs/emacs.html(リンク切れ) から取得できる。 このファイルをemacs-lispのパスの通ったディレクトリに置き初期設定ファイルには次のように追記する。
(autoload 'flyspell-mode "flyspell" "On-the-fly spelling checking" t)
(setq ispell-parser 'tex)
一行目は、flyspell を読み込むための記述。 二行目は TeX のコマンドをスペルチェックしないようにするための記述。 flyspellモードを起動するためには emacs から、
M-x flyspell-mode
と打てば良い。 マウスの中ボタンクリックで、スペルの修正や辞書登録ができる。

▼参考サイト or 参考文献

SDICをインストールして英辞郎などの辞書データを閲覧するには

作成日:2002.8.26

SDICというemacs-lispを使って、無料の辞書データのいくつかをemacsから閲覧することができる。 SDICは土屋 雅稔氏によって開発され、次のウエブサイトから取得できる。

sdic-2.1.3.tar.gz が最新版。また、辞書データは、次のところから取得できる。 英辞郎の辞書データは分割されているので、合体させて、SDIC形式に変換する。
% cat eiji54ad.txt eiji54ej.txt eiji54kp.txt eiji54qz.txt > eiji54all.txt
% nkf -SXe eiji54all.txt | perl eijirou.perl > eijirou.sdic
% sudo mkdir /usr/local/share/dict
% sudo cp eijirou.sdic /usr/local/share/dict/
eijirou.perl は、
sdic-2.1.3/contrib/eijirou.perl
にある。

SDICのコンパイルは以下の通り。

./configure
make install
make install-info
make dict
make install-dict
Emacsの初期設定ファイルには
sdic-2.1.3/lisp/sample.emacs
の中身を書き写しておく。 また、JEDICTを読ませるために、初期設定ファイルの中に
(setq sdic-waei-dictionary-list
    '((sdicf-client "/usr/local/share/dict/jedict.sdic")))
を書いておく。 使い方は、C-c wと押して、単語を入れれば良い。M-x sdicでも良い。

▼参考サイト or 参考文献

emacs-lispファイルの検索パスの指定

参考:千葉大松田氏のウエブサイト

emacs-lisp ファイルを自分のホームディレクトリに置きたい時には,そこにパスを通す必要がある。例えば

~/Library/emacs-lisp/

に置く事にする。この場合 .emacs.el に次のように書いておく。

(setq load-path (cons "~/Library/emacs-lisp/" load-path))

複数のディレクトリを追加したい場合には,次のように書くと良い。

(setq load-path
(append '("~/Library/emacs-lisp/" "~/lisp/" "~/temp/emacs-lisp/")
    load-path))

OSXクリップボード内容をEmacsに取り込む

作成日:2002.4.20

引用元を忘れてしまいました。以下、引用です。(作者の方,すみません。)

クリップボードにある内容を ~/clipboard.txt に書き込み,それをemacsで読み込む。 .emacs に次の emacs-lisp を追加する。ESC-V でペーストできるようになる。

(global-set-key "\M-V" 'paste-from-mac)
(defun paste-from-mac()
   (interactive)
   (shell-command "pbpaste > ~/clipboard.txt")
   (insert-file "~/clipboard.txt"))

(2003.8.16追記)逆に、xtermやemacsからOSXのアプリケーションにペーストするには、xclipboardを経由する。

% xclipboard &

で起動し、xtermなどから xclipboard にコピーする。そして xclipboard上のテキストを選択した後に、OSXのアプリケーションにペーストすれば良い。(追記ここまで)

ispellで日本語交りの文章でスペルチェックするには

作成日:2002.4.14

.emacs に

(eval-after-load "ispell"
  '(setq ispell-skip-region-alist (cons '("[^\000-\377]")
    ispell-skip-region-alist)))

と記述しておくと、日本語混じりの文章のスペルチェックもできる。

▼参考サイト or 参考文献

フォントを設定するには

作成日:2002.4.14

始めにフォントセットを作る。このフォントセットは、

半角英数字フォント(ascii)
全角漢字(japanese-jisx0208.1983)
半角かな(japanese-jisx0201.1976)
から成る。 それぞれのフォントセットには自由に名前を付けることができる。 例えば、12ピクセルの要町フォントから成るフォントセットを作成するには ~/.Xresources 又は ~/.Xdefaults に次のように書く。
Emacs.Fontset-0: -*-fixed-medium-r-*--*-*-*-*-*-*-fontset-kaname12,\
  ascii:-*-fixed-medium-r-semicondensed--13-*-*-*-*-*-iso8859-1,\
  japanese-jisx0208.1983:-mnkaname-fixed-medium-r-normal--12-110-75-75-c-120-jisx0208.1983-0,\
初めの「Emacs.Fontset-0」は、これがフォントセットの定義であることを示している。 数字の0の部分は、0以上の連続した整数を書かなければ成らない。 数字が連続していないと、それ以降は無視される。次の「:」の右には、フォントセット名を書く。
-*-fixed-medium-r-*--*-*-*-*-*-*-fontset-kaname12
1から12項目までは、下に並べるフォント名を全て含むように指定する。 ただし、13項目は「fontset」と書く。また14項目は任意の英数字列である。

フォントセットを定義したら、どのフォントセットを使うのかを記述する。 Emacsで使用したいフォントセット名を指定するには ~/.Xresources又は ~/.Xdefaults

Emacs.font: -*-fixed-medium-r-*--*-*-*-*-*-*-fontset-kaname12
または、
Emacs.font: fontset-kaname12
のように書けば良い。一般に、フォント名は、
% xlsfonts
として出てくるフォント名を書けば良いが、様々な環境で汎用的に使える ~/.Xresources にしようと思えば、最低限の部分だけ項目を指定して後はワイルドカード "*" ににておくと良い。その場合は、適当なものが選ばれる。どのフォントが選ばれるかは、
% xfontsel
で確認できる。もしフォント名を指定しなければ、フォントセット名から適当なフォントが選択される。

フォント名の指定で、次の所を

ascii:-*-fixed-medium-...
TABでそろえようとして、
ascii:<TAB>-*-fixed-medium-...
としたらエラーになるので注意。

no windowモードのemacsを新しいkterm上で開く

作成日:2002.2.16

kterm で -e オプションをつけて起動する。

kterm -e emacs &

コマンドラインでemacs-lispのバイトコンパイル

作成日:2002.2.16
% emacs -batch -f batch-byte-compile yc.el

YCを用いているときに単語登録する

作成日:2002.6.8

単語登録をするには、変換中に C-t を入力するか、または変換していない状態のときに region を設定して

M-x yc-touroku-region

で単語登録する。

インプットメソッド yc.el をインストールするには

作成日:2002.1.28

yc.elのある場所:YCの部屋

上のリンクから、yc.el-3.3.4.gz をダウンロードする。 展開後、名前を yc.el に変更する。これを、

/usr/local/share/emacs/site-lisp/

に配置する。.emacsには次のように書く。

;;YCの設定------------------
;フェンスモードで使用可能にする
(load "yc")
;ANK-漢字変換を有効にする
(global-yc-mode)
;変換中に色を付ける
(setq yc-use-color t)
;Xモードでなければフェンスを付ける
(setq yc-use-fence (not (eq window-system 'x)))
; ???
(global-set-key "\M-\ " 'yc-mode)

タイピング練習ソフト trr のインストールを使うには

作成日:2002.1.24

ソースコードをSoftware Distributionから取得する。

圧縮されたソースコードを展開し、Makefileの次の箇所を修正する。

# Your Full name or E-mail address
installer = hoge@hoge.com
# Default message type (t or nil)
japanese = t
# Where TRR directory is found
trrdir = /usr/local/lib/emacs/site-lisp/trr
# Where info files go.
infodir = /usr/local/info
#infodir = /usr/local/lib/emacs/info
# Where TRR binary files go.
bindir = /usr/local/bin
修正箇所の意味は自分のメールアドレス、説明を日本語にするか(t)英語にするか(nil)、trr.elc 等を入れるディレクトリの位置、info ファイルを入れるディレクトリ、trrのバイナリファイルを入れるディレクトリ。

次に、trr.el.base を trr.el という名でコピーして、trr.elを編集する。

(defconst TRR:default-directory "/usr/local/lib/emacs/site-lisp/trr"
"*Default directory for TRR elc files.")
(defconst TRR:default-bin-directory "/usr/local/bin"
"*Default directory for TRR binary files.")
(defconst TRR:default-japanese t
"* if t, TRR displays its messages in Japanese by default.")
(defconst TRR:installator "hoge@hogehoge.ac.jp"
"instllators name or e-mail address")
編集箇所の意味は順にtrr.elc 等を入れるディレクトリの位置、trrのバイナリを入れるディレクトリ、説明を日本語にするか(t)英語にするか(nil)、自分のメールアドレス。

そして、コンパイルとインストールを行う。

$ make all
$ sudo make install

タイピングで使いたいテキストファイルは、site-lispディレクトリに入れておく。

/usr/local/lib/emacs/site-lisp/trr/text/

さらに

/usr/local/lib/emacs/site-lisp/trr/CONTENTS
にそのテキストの情報を書き込む。 Emacsの初期設定ファイルには
(autoload 'trr "/usr/local/lib/emacs/site-lisp/trr/trr.elc" nil t)

と書いておけば設定終了。

起動するには、M-x trr と打つ。

▼参考サイト or 参考文献

拡張子に関係なく、ファイルをFortranモードで開くようにする

例えば、ヘッダファイルを hoge.h にようなファイル名にするとemacsは C-mode 開きます。 M-x fortran mode RET で変更しても良いのですが、そのファイルの先頭に、

C -*- fortran -*-

と書いておきます。(先頭のCはfortranファイル中でコメントアウトするため。)

その他のモードにするときも同様に書けばいいです。(// -*- c++ -*- とか。)

.emacsを読み込まずにemacsを起動する

作成日:2002.1.6

起動時に q オプションを付ける。

% emacs -q

デフォルトの文字コードや改行コードを設定するには

作成日:2002.1.5

デフォルトの文字コードをEUC-JP、改行コードをLFにするには.emacsに次のように書いておく。

(set-default-coding-systems 'euc-jp-unix)

文字コードや改行コードを変更するには

作成日:2002.1.5

まず、

M-x set-buffer-file-coding-system

又は、

C-x RET f

とすると、下に

Coding system for visited file (default, nil):

と出るで、

文字コードをEUC-JP、改行コードをLFにするなら、:euc-jp-unix
文字コードをShift_JIS、改行コードをCRにするなら、:sjis-mac
文字コードをJIS、改行コードをLFCRにするなら、:old-jis-dos

等とすればよい。tabキーによる補完が効くのでそれを用いると良い。

ispell.elを使うには

作成日:2002.1.4
最近のEmacsではispellが含まれており、下記の手順でインストールする必要はありません。(2012/11/21)

最新版 ispell.el-3.5 (Released:11-Jul-01)をIspell.el Homeから取得し、emacs-lispのパスが通っているディレクトリに配置する。 次に、このispell.elファイルをバイトコンパイルする。 Emacs で開き、メニューバーの Emacs-Lisp からByte-compile This Fileを選択するか、

M-x byte-compile-file
とすると拡張子 *.elc の中間コードファイルが出来る。 これを emacs に読み込ませるには、初期設定ファイルに
(load-file "ispell")
と書いておく。

<2002.9.13追記>起動時に読み込ませるのではなくて、使う時に読み込ませるならば、

(autoload 'ispell-buffer "ispell" nil t)
とかいておく。 この場合、M-x ispell-bufferと入力した時に読み込まれる。

モードの変更

作成日:2002.1.4

例えばTeXモードに変更する場合、

M-x tex-mode

その他、fortran-mode, c-mode, c++-mode, text-mode, yatex-mode 等。

.f だけでなくて、他の拡張子でも FORTRAN mode で起動させたい

たとえば .f90 もFORTRAN モードでemacsを起動させたいならば、.emacsに次のように書いておく。
情報元は、「FAQ & ANSWERS

(setq auto-mode-alist
(append auto-mode-alist
(list '("\\.f90$" . fortran-mode))
))

FORTRANモードなどでキーワードに色をつけるには

作成日:2001.11.23
環境:GNU Emacs 21.0.103.1

初期設定ファイルに次のように記述する。

(cond (window-system
(require 'font-lock)
(global-font-lock-mode t)))

▼参考サイト or 参考文献

行番号、列番号を表示させるには

作成日:2001.11.13

.emacs に、次のように書く。

(line-number-mode t) ; 行番号をモードラインに表示する(TRUE)
(column-number-mode t) ; 列番号をモードラインに表示する(TRUE)

▼参考サイト or 参考文献

行間を広げるには

更新日:2012.11.23
作成日:2001.10.4
環境:GNU Emacs 21.0.103.1

$ emacs -lsp 2 test.tex
とすると、2pixelぶんだけ行間が開く。

デフォルトの設定とするには、初期設定ファイルに

(setq-default line-spacing 2)
と記述する。

Carbon Emacsにmmm-modeをインストールする

作成日:2011/9/3
環境:Carbon Emacs 1.6.0

mmm-modeはPHP-modeとHTML-Helper-modeを組み合わせるモードで、HTML部分はHTMLHelper-modeによる色付け、PHP部分はPHP-modeによる色付けを行うことができる。カーソルの位置がどこにあるかでモードが切り替わる。

Carbon Emacsのsite-lispは

/Applocations/Emacs.app/Contents/Resources/site-lisp/
にあるので、mmm-modeのemacs lispファイルもここにインストールする。

現時点の最新版はmmm-mode 0.4.8なのでmmm-mode-0.4.8.tar.gzを取得する。 そして展開からコンパイル、インストールまで次の手順で行う。

$ tar zxvf mmm-mode-0.4.8.tar.gz
$ cd mmm-mode-0.4.8/
$ EMACS=/Applications/Emacs.app/Contents/MacOS/Emacs \
> ./configure --with-lispdir=/Applications/Emacs.app/Contents/Resources/site-lisp
$ make
$ sudo make install
インストールが終われば、初期設定ファイル~/Emacs.elに次のように記述する。
;; mmm-mode用の設定
(require 'mmm-mode)
(setq mmm-global-mode 'maybe)
(set-face-background 'mmm-default-submode-face nil)
(mmm-add-mode-ext-class nil "\\.php?\\'" 'html-php)
(mmm-add-mode-ext-class nil "\\.cont?\\'" 'html-php) ;拡張子が.contのファイルもmmm-mode
(mmm-add-classes
  '((html-php
  :submode php-mode
  :front "<\\?\\(php\\)?"
  :back "\\?>")))
(add-to-list 'auto-mode-alist '("\\.php?\\'" . html-helper-mode))
(add-to-list 'auto-mode-alist '("\\.cont?\\'" . html-helper-mode))
この設定では、拡張子が.phpのファイルをhtml-helper-modeで開き、 カーソルが<?phpと?>の間に来たらphp-modeに変更される。

PHP-modeのインストール

作成日:2012.1.6

PHP-modeのプロジェクトサイトからphp-mode-1.5.0.zipを取得する。ファイルを解凍するとなかにphp-mode.elが含まれている。

php-mode.elは次のようにバイトコンパイルしておく。

$ emacs -batch -f batch-byte-compile php-mode.el
そして、Emacsが読み込むsite-lispディレクトリに入れておく。
$ cp php-mode.el php-mode.elc /usr/share/emacs/site-lisp/
~/.emacs.elには次のように書き込む。
(load-library "php-mode")
(require 'php-mode)
以上で設定終了。

HTML-helper-modeのインストール

HTML helper mode betaのウェブサイトから、 html-helper-mode.elとtempo.elを取得する。 必要ならバイトコンパイルし、site-lispディレクトリに入れる。

$ cp html-helper-mode.el tempo.el /usr/share/emacs/site-lisp/

~/.emacs.elには次のように追記する。

(autoload 'html-helper-mode "html-helper-mode" "Yay HTML" t)
(setq auto-mode-alist (cons '("\\.html$" . html-helper-mode) auto-mode-alist))

バッファを読み取り専用にするには

C-x C-qを押すと、そのバッファは読み取り専用になる。 このとき、モード行の左側にパーセント記号(%)が2個表示される。 もし何かを追記しようとすると、ミニバッファに「Buffer is read-only」と表示される。

書き換え可能なバッファに戻すにはもう一度C-x C-qを押せばよい。

起動時に表示されるメッセージ画面を表示しないようにするには

起動時に表示されるスタートアップメッセージ画面を表示しないようにするには,

(setq inhibit-startup-message t)
~/.emacs.d/init.elに書いておけば良い。