Perlスクリプトの編集に適したテキストエディタの紹介

改版履歴

2001/07/11(Wed) 「テキストエディタ」がオープンソースプロジェクトにより「サクラディタ」として開発継続されていたので、若干追記・改訂
2001/12/31(Mon) サクラエディタ関係の記述を新バージョンに合わせて大幅に改訂、そのほかも若干見直し

概要と経緯

この文書は、Windowsユーザーで、とくに自分が使うテキストエディタ(以下、エディタと略します)が確立されていない方向けに、一般的に配布されているPerlスクリプト(CGI用など)の編集に適したエディタいくつか紹介するものです。Perlスクリプトの編集を行なうための設定方法も簡単に解説します。

僕の作成したCGIスクリプト「MyWebSearch」のユーザーさんから、「中を覗いてみようとしたけれど文字化けして読めない」というメールをいただいたのをきっかけに作成しました。

この文書の想定読者

お断り

エディタの選定基準

ここは読み飛ばしても構いません(笑)。

漢字コード(EUC、JIS、Shift-JIS)の自動判別に対応していること

CGIスクリプトの中には日本語の漢字コードにEUCまたはJISが使われてるものがあります(ここでは内部処理で、という意味ではなくスクリプト――すなわちテキストファイルそのものの、という意味です)。これらを解釈できるのはもちろん、ファイルを開く際に漢字コードを自動判別できることを必須条件とします。

UNICODEに関しては、Perl 5.6で対応したこともあり今後は増えるかもしれませんが、現状では使われている「一般向けの」CGIスクリプトは皆無なので必須条件としません。一応、表には項目を加えました。いわゆるUNICODEと呼ばれるものにはいくつかの種類があるので、詳細は各エディタのドキュメントを参照してください。

色分けが行なえること

ダウンロードしたCGIの設定値(たいていはファイルの先頭にあります)を書き換えるくらいなら必要ないかもしれませんが、メッセージを書き換えたりといった、ちょっとした改造をするにあたっては、色分けができたほうが便利です。

必要ないという方もいるかもしれませんが、色分けには単に見やすくなる、画面がにぎやかになる(笑)というだけでなく、スペルミスや文字列を囲む引用符の閉じ忘れなどを防ぐ実利的な効果があります。そのため、必須要素としました。

コメント、組込み関数、変数、予約語、文字列の5つについて、それぞれできるかどうかを調べました。

汎用エディタであること

ここまで来るとほとんど趣味の世界ですが(笑)、編集対象によってエディタを使い分け、それぞれの操作を習得する、というのは僕としてはあまり効率的とは思えません。そこで、「Perl用の〜」とは銘打ちつつも、基本的にメインのエディタとしても十分利用可能な、汎用エディタを選びました。

Perl専用にこだわる方は、Vectorの「Windows > ユーティリティ > テキストファイル用 > Perl」などにいくつかツールがあるようですので、こちらを参考にするとよいでしょう。

フリーソフトであること(とりあえず必須?・でも実は結果論)

僕自身は、よいソフトならフリーソフトもシェアウェアも市販ソフトも関係無くなんでも使いますが、主に初心者を対象とするにあたって、フリーソフト以外は敷居が高いと判断しました。

……なんて書いていますが、実際のところは、僕が前から知っていて、これはいいな、と思ったエディタが、たまたまフリーソフトだったという話もあります。メインではかなり「濃い」エディタ(WZ EDITOR)を使っているため、手軽に使えるエディタを選んだから、というのもあるでしょうが……。

そのほか

Grep機能、正規表現検索、画面分割、マクロなどがあると便利ですので、表には加えました。必須というわけではないと思います。

各エディタ機能一覧表

◎はインストール直後の標準状態でそのまま機能する場合、○は比較的簡単な設定により実現が可能な場合を示します。
順不同、アルファベット+五十音順
漢字コード
自動判別
UNICODE
対応
色分けGrep正規表現分割マクロ
コメント関数変数予約語文字列
K2 Editor -
TeraPad - - - - -
サクラエディタ

各エディタの紹介・設定方法

紹介と言っても、基本的にPerl関係――とくに色分けまわりのことしか書きません。それ以外は作者のWebサイトなどを参考にしてください。

K2 Editor

作者 K2さん
URL http://web.kyoto-inet.or.jp/people/koyabu/
記事作成時バージョン r.1.1.40

正規表現が使用可能な色分け、キーワードマクロなどが特徴のテキストエディタです。diffを利用したファイルの差分管理機能は、スクリプトの履歴管理などに便利です。

標準の色分け設定ファイルには組込み関数は含まれていません。必要なら、ほかのエディタのものなどを流用するとよいでしょう。

設定方法

Perl用の設定を新設し、キーワードなどの設定を行ないます。

  1. メニューの「その他」-「ファイルタイプ別の設定」を開く
  2. 「タイプリストの編集」で「Perl」を新規作成
  3. 「ファイルタイプ」ドロップダウンリストで作成した「Perl」を選択(このタイプに対して設定を行ないます)
  4. 「表示」タブで、「タブの文字数」を4に設定
  5. 「色」タブで、「文字列」の色を標準(黒)以外に変更
  6. 「キーワード」タブで「キーワードの強調表示」をONにした上で、「読み込み」ボタンを押し、「perl.hil」ファイルを読み込み
  7. 「関連付け」タブで、「.pl」、「.pm」、「.cgi」を追加
  8. お好みで「入力・移動」タブの「オートインデント」にもチェックを付けるとよいでしょう

設定後のスクリーンショット

K2 Editorの画面

TeraPad

作者 寺尾 進さん
URL http://www2s.biglobe.ne.jp/‾t-susumu/toclip/
記事作成時バージョン Ver.0.72

シンプルながら、一般的に必要な機能はきっちりおさえたエディタです。外部ツールが登録可能で、作者自身やユーザーによるツールが多数制作されているのも特徴の一つとなっています。

Perl用の設定はあらかじめ用意されており、とくにめんどうな設定を行なうことなく利用できます。

設定方法

Perl(ほか各言語)の設定自体は本体に埋め込まれているので、難しい設定は必要ありません。基本的には、漢字コードの自動認識が標準ではOFFなのでこれをONにするだけです。

  1. メニューの「表示」-「オプション」を開く
  2. 「基本」タブで、「タブの文字数」を4に設定
  3. 「ウィンドウ/漢字コード」タブで、「漢字/改行コードを自動認識する」にチェックを入れ、「保存時の漢字コード」と「保存時の改行コード」をそれぞれ「読込時の〜と同じ」に
  4. 「色」タブで、標準では「Perlキーワード」の色が文字色と同じ(黒)になっているので、好きな色に変更してもよいでしょう

設定後のスクリーンショット

TeraPadの画面

サクラエディタ

作者 Norio Nakataniさんほか多数
URL http://members.tripod.co.jp/sakura_editor/
記事作成時バージョン Ver. 1.2.104.1

基本的な編集機能をおさえた上、ウィンドウの縦横四分割、入力補完、キーワードヘルプ、正規表現による色分けなどの特徴的な機能を持つエディタです。もともとは「テキストエディタ」という名称で、Norio Nakataniさん個人が開発しているソフトでしたが、現在ではオープンソースプロジェクトとして開発が続けられています。

正規表現がPerl準拠な点も、Perlスクリプト学習者にとってはありがたいところです。

設定方法

Perl用の設定は最初から用意されているため、とくに設定を行なう必要はありません。お好みで以下の設定を行なってもよいでしょう。

設定後のスクリーンショット

テキストエディタの画面

右上の小さいウィンドウは、アウトライン解析機能によるものです。ソース内の関数一覧を表示することができます。

お勧めのエディタは?

基本的に、書いているうちに「これはお勧め!」というもの以外は省いてしまったので、どれもお勧めということになりますが、あえて「こういう場合はこれ」と決めるなら……。

右も左も分からない、という人は、とくにTeraPadがお勧めです。漢字コード関係の設定さえ行なえば、あとは難しいことを考えずに使えちゃいます。インストールから使いこなし、FAQまでかなり詳しく説明されているオンラインヘルプが用意されているのもポイントです。

K2 Editorとサクラエディタは、甲乙付けがたいと言うか、ほとんど趣味の問題になってくると思います。両方使ってみて自分に合ったほうを選ぶとよいでしょう。僕の所感としては、サクラエディタは機能がてんこ盛りな感じ、K2 Editorはそれよりは多少シンプルですが、整形関係が充実しているようです。Perlスクリプト編集には直接関係ありませんが、汎用エディタとして考えればメール書きなどに便利でしょう。

ことPerl関連では、標準でPerlスクリプト用の設定を持ち、色分けにPerlの組み込み関数も含まれているサクラエディタに分があります。ただし、これらはK2 Editorでも、追加設定を行なえばよいのでそれほど問題ではありません。

Copyright©1998-2005 Yujiro Nakamura All rights reserved.
本サイトに関するご連絡の方法はreadmeをご参照ください。
本Webページの無断引用、本Webページへの無断リンクを歓迎します(笑)。