はじめに

戯言

そもそもこの投稿の目的は27日の投稿の解説というか、適当な例がないと理解できたもんじゃないだろうなぁと思ってのこと。
なので題材としては別にPythonだって良かったワケだが、大抵のRubyのパッケージにはSciTEが同封されている、また私自身がRubyを触ろうとして「気に入ったテキストエディタが見つからず」断念した経緯もあって今回Rubyを対象とした。と思ったら今PCに入ってるActive RubyにはSciTE入ってねぇの。ワロス

SciTEについて

超軽量でカスタマイズ製に富んだプログラマテキストエディタです。慣れると開発環境の重さに、普通のテキストエディタの自動補完機能の無さに絶望したくなってくる。…といってもオレ開発者じゃないですが?

導入手順

モジュールの入手

これで必要なものはそろった。
こいつらを適当なフォルダに展開する。ここでは例として「c:\tools\scite」に本体・api共に解凍したものとして話を進める。

apiファイルをSciTEに読み込ませる

apiファイルをSciTEのフォルダへ置いてやったはいいが、このままではSciTEは彼の存在に気付くことは無い。彼にapiの存在を気付かせる手続きを踏む。

  1. まずSciTEインストールフォルダ内の「ruby.properties」(c:\tools\scite\ruby.properties)を開く。これはSciTEを使ってでもいいし、他のでもいい。
  2. ruby.propertiesファイル内のケツに以下を追加する。
api.$(file.patterns.rb)=$(SciteDefaultHome)\ruby.api;
autocomplete.ruby.ignorecase=1
autocomplete.ruby.start.characters=$(chars.alpha)$(chars.numeric)

これで最低限の部分は終わった。以後.rbファイルを開き適当な文字列を叩いた瞬間候補が表示されることになる。
早速の使用感はどうだろう?ノートパッドで やらないか? よりははるかにマシになっただろう。F5を押せば当然のように実行も出来る。

SciTEをもう少し使いやすくする

  • SciTEは標準では日本語を表示でききるよう設定されていない。のでこれを設定する必要がある。
    1. SciTEを開き「Option」メニューより「Global Options File」を開く。
    2. キーワード「japanese」で検索をかけると「# Japanese input code page 932 and ShiftJIS character set 128」というコメント行にたどり着く。
    3. コメント行の直後にある以下の2行から # を取り除く。
#code.page=932
#character.set=128
    1. 「Ctrl+s」を押し変更を保存する。これで日本語を文字化けなく表示できるようになった。
  • 最近使ったファイルの履歴を保存する。
    1. 上と同様の手順で「Global Options File」を開く。
    2. save.recent=1のコメントアウトを外す(#マークを削除する)
  • 最後に開いていたドキュメントをSciTE起動時に自動的に開く
    1. 上と同様の手順で「Global Options File」を開く。
    2. save.session=1のコメントアウトを外す(#マークを削除する)

んなとこですかね?

最後に

今回の投稿では Lua を使った拡張、というモノが登場しなかった。結局 Lua を使うと何が出来るのか、という答えにコレだ!という大げさなものは思いつかないが例えば then と入力した直後に 改行 をした場合、勝手に end を補完してくれたら便利かもしれない。Caseの後はインデントを下げたいかもしれない。まあそんなことも出来る。
これらについてはまた今度気が向いたら書くかもしれないし書かないかもしれない。そもそもオレがRubyを知らないのでいい例題も思いつくわけが無く、なんともいえない。
とにかくコレを使えるようになれば、たとえ誰も聞いたことがないプログラム言語でさえ、むしろあなたが作成したプログラム言語(しかも とびっきりユニークな文法)にも対応させることは可能なのだ。