Ubuntu Weekly Recipe

第235回Ubuntu 12.04でEmacs 24.1を使う

皆様はじめまして。EmacsとPCキーボードをこよなく愛するLinux使いの濱野と申します。

「Emacs 24.1がリリースされたのにUbuntu Weekly Recipeでまだ紹介されていない。これは由々しき事態だ! でも、Ubuntu Japanese Teamメンバーは多忙で手がはなせない!」とのことで、今回、私が紹介させていただくく運びとなりました。どうぞよろしくお願いします。

はじめに

2012年の6月10日に、Emacs 24.1がリリースされました。Emacs 23.1のリリースは、2009年7月29日ですので、およそ3年ぶりのEmacsのメジャーバージョン更新となりました[1]⁠。

本稿では、その最新のEmacsをUbuntuの最新リリースである12.04に導入する方法と、Emacs 24.1での主要な変更点の紹介をします。

Emacs とは

Emacsについては、過去の本連載にて数多くの紹介があります。⁠Emacsとは何か」を一言で説明すると、テキストの編集も、メールの読み書きも、Webのブラウジングもできる超高機能なテキストエディタ[2]です。Emacsの詳細については、第73回「Emacs事はじめ」第116回第117回第118回「UbuntuとEmacsでプログラミングをはじめよう」などを参照してください。

Emacs 24.1の導入

Emacs 24.1をUbuntu 12.04に導入する方法を説明します。ここでは、PPAからEmacs 24.1のビルド済バイナリを導入する方法と、自分の手でソースコードからビルドする方法を紹介します。

PPAから導入

PPAで提供されているEmacs 24.1のバイナリのインストール方法を紹介します。ここではcassouさんが提供しているPPAを利用し、Emacs 24.1をインストールします。

以下のコマンドで、PPAを追加し、Emacs 24.1をインストールします。なお、以降のサンプルにある「$」記号は、端末のプロンプト文字列を示します。

$ sudo add-apt-repository ppa:cassou/emacs
$ sudo apt-get update
$ sudo apt-get install emacs24 emacs24-el

あとは、以下のようにemacsと打てば、PPAよりインストールしたemacsが起動します。

$ emacs

自分でビルド

ソースコードからEmacs 24.1をビルドする方法を紹介します。ソースコードからのビルドは、全て端末上で行います。Gnome-Terminal等を開いてそこで作業してください。

まず、Emacs 24.1をビルドするために必要なライブラリを導入します。以下のようにapt-getコマンドを用いてインストールします。

$ sudo apt-get build-dep emacs
$ sudo apt-get install libmagickwand-dev libselinux1-dev libgnutls-dev libxml2-dev

作業用のディレクトリを作成し、そこに移動します。ここでは作業用のディレクトリをホームディレクトリ以下のworkというディレクトリにしています。適宜、好きなディレクトリに置き換えて作業してください。

$ mkdir work
$ cd work

Emacsのソースコードのアーカイブのダウンロードと展開を行い、展開してできたディレクトリに移動します。

$ wget ftp://ftp.ring.gr.jp/pub/GNU/emacs/emacs-24.1.tar.bz2
$ tar xvjf emacs-24.1.tar.bz2
$ cd emacs-24.1

configureスクリプトを実行します。configureスクリプトに特定の引数を渡すと、Emacsで有効とする機能や無効とする機能の設定ができます[3]⁠。ここでは、何も引数を渡さず、デフォルトの状態でビルドしています[4]⁠。

$ ./configure

Emacsをビルドします。ちょっと時間がかかりますので、お茶でも飲んでゆっくりと待ってください。

$ make bootstrap

最後にビルドしたEmacsをシステムにインストールします。ここでのインストールディレクトリは、/usr/localディレクトリ以下となります。

$ sudo make install

あとは、端末から以下のようにemacsと打てばビルドしたemacsが起動します。

$ emacs

Emacs 24.1の新機能

Emacs 24.1には、様々な新機能の追加や既存機能の改修があります。以下にEmacs 24.1での主要な変更点を挙げます。

  • パッケージシステムpackage.elの追加
  • カスタムテーマシステムの改良
  • Emacs-Lispでlexicalスコープのサポート
  • bidirectionalテキストの表示・編集のサポート[5]
  • GnuTLS、GTK+3、ImageMagick、SELinux、Libxml2のビルトインサポート

本稿ででは、この中から一般ユーザへの恩恵が高い、パッケージシステムとカスタムテーマについて紹介します。

パッケージシステム package.el

パッケージシステムpackage.elがEmacs 24.1より追加となりました。

package.elとは、Emacs Lispパッケージのパッケージマネージャです。Emacs Lispパッケージのインストール、アップグレード、アンインストールができます。M-x list-packages[6]とコマンドを入力することで、パッケージ管理用のインタフェースが開きます。

図1 list-packagesの実行結果
図1 list-packagesの実行結果

M-x list-packagesのインタフェースで利用する主要なキーを以下の表に示します。

list-packages で利用可能なキー
キー
説明
エンター現在行のパッケージの説明を分割したウィンドウに表示する[7]
?同上
i現在行のパッケージをインストールするパッケージとして、マークをつける
d現在行のパッケージをアンインストールするパッケージとして、マークをつける
u現在行のパッケージにつけたマークを取り消す
U更新のあるパッケージにマークをつける[8]
xマークをつけた候補に対して、インストール・アンインストールを実際に実行する

操作例を以下の図に示します。行の一番左に「I」の文字がある行がインストール候補のパッケージです。行の一番左に「D」の文字がある行がアンインストール候補のパッケージです。

図2 list-packagesの操作例
図2 list-packagesの操作例

パッケージ取得をするためのアーカイブサイトとして、package.elにデフォルトで登録してあるサイトは、http://elpa.gnu.org/packages/ですが、数がまだまだ少ないです。

そこで、有志が管理しているサイトをアーカイブサイトとして登録することで、導入できるパッケージ数を増やすことができます。有志が管理しているサイトは、marmaladeやMELPAが有名です。

marmaladeとMELPAをアーカイブサイトとして登録するには、Emacsの設定ファイル[9]に以下の行を追加します。

(require 'package)
(add-to-list 'package-archives '("marmalade" . "http://marmalade-repo.org/packages/"))
(add-to-list 'package-archives '("melpa" . "http://melpa.milkbox.net/packages/"))
(package-initialize)

marmaladeとMELPAをアーカイブサイトとして追加した後に、M-x list-packagesと実行した結果が以下です。

図3 アーカイブサイトにmarmaladeとMELPAを追加した際のlist-packagesの結果
図3 アーカイブサイトにmarmaladeとMELPAを追加した際のlist-packagesの結果

カスタムテーマ customize-themes

テーマの有効・無効を切り替えるためのインタフェースであるcustomize-themesコマンドが追加されました[10]⁠。

テーマとは、Emacsの見た目の設定を指します。customize-themesコマンドでは、このテーマを切り替えることができます。以下がcustomize-themesのインタフェースです。

図4
図4

左のチェックボックスの上にポイントを置き、⁠エンター」キーを押すことでテーマを切り替えることができます。テーマを変更した例が以下です。

図5
図5

画像上部にある「Save Theme Settings」ボタンを押すことで、次回、Emacsを起動したときも、今回変更したテーマを使用するように変更できます。このボタンを押すと、Emacsが~/.emacsファイルに設定を書き込みます。

画像を見て分かるようにテーマの数はまだまだ少ないですが、一部、MarmaladeやMELPAより有志の作成したテーマのインストールができます[11]⁠。

おわりに

いかがだったでしょうか。本稿では、Emacs 24.1の導入方法と、その主要な新機能について紹介しました。今回紹介したEmacs 24.1の新機能はほんの一部に過ぎません。すべての変更点について知りたいという方は、是非ともNEWSファイルを参照してください。すべての変更点がそこにあります。

おすすめ記事

記事・ニュース一覧