2013年6月6日木曜日

Sublime Text 2で最初につまずくことなど

去年ほどから日本でも話題になっているテキストエディタのSublime Text 2
現在、3がベータ公開されている。
標準で基本的なvimとEmacsのキーバインディングが使えること、クロスプラットフォームなこと、拡張性に優れていることなどから、本格利用ができそうなので、安定版のSublime Text 2を使うことにした。
シェアウェアで$70。Sublime Text 2ユーザは、3までは使えるが、4ではupgrade料金がでるかも、とFAQにある。 試用期間である30日を過ぎても、機能制限がかからないところが良心的。
さて、導入にあたり様々な方がHowToを書いてくれているが、それでもMacとWindowsに導入するにあたり、ちょっとだけ躓いたところをまとめておく。

1.Sublimeのダウンロード

以下からダウンロードする。
http://www.sublimetext.com/2
公式ドキュメントはこちら。
http://www.sublimetext.com/docs/2/ インストールは、ダウンロードしたものを、素直にMacなりWindowsなりの作法で入れれば良い。

(2.Windowsの場合はPythonのダウンロードとインストール)

Windowsの場合、Pythonの実行環境が必要である。開発系の方であれば当たり前に入れているのだろうが、そうでない場合は、以下からPython2.x系をダウンロードしてインストール。
http://www.python.org/download/
その後、環境変数にpathを設定する。
C:¥Python27;C:¥Python27¥tools¥scripts;
Macでは、Pythonは標準で使えるので問題ない。
なお、Sublime Text 3は、Python3.x系になるらしい。

3. 複数のconfigファイル

Sublime Text 2は、システムとして共通に持つdefaultの設定ファイルと、ユーザごとに持つconfigファイルにわかれている。Linuxでいう/etc/bashrcと~/.bashrcのようなものだ。
さらにユーザごとのconfigはコーティングする文法によるものや、Distraction Free ModeというUIを非表示にしたものもあるようだ。
基本的にdefaultを変更する必要はなく、Settings Userを編集し、パラメータを上書きするだけで良い。

4.最初にやること

どのサイトをみても、機能拡張のためのパッケージ管理ツールpackage controllerを最初に入れることになっている。
このサイトが配布元。
http://wbond.net/sublime_packages/package_control/installation#ST3
python consoleに以下のコマンドを入れて実行すれば、インストールされるとある。
Pythonコマンドである。Pythonインタープリターが入っていなければならない。
import urllib2,os; pf='Package Control.sublime-package'; ipp=sublime.installed_packages_path(); os.makedirs(ipp) if not os.path.exists(ipp) else None; urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler())); open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read()); print('Please restart Sublime Text to finish installation')
紛らわしいのだが、Sublime Text 2には、コマンドを入れる枠が出てくる箇所が2つある。
  1. コマンドパレット: cmd+shift+p (cmd+P)
  2. python コンソール: shift+ctrl+@ (ctrl+`)
間違って、コマンドパレットのほうに入れてもなにも起こらない。python consoleのほうに入れること。
うまくpackage controllerが入ると、preferencesメニュー内の一番下にPackage controlというのができる。
もしうまくいかないようであれば、viewメニューからshow consoleを出して、デバッグする必要がある。
python consoleの入力欄にprint "a"とか打って、pythonの対話モードが動くか確認しよう。

5.proxyの設定

Proxyを経由して外部サイトを参照する利用環境の場合、Package Controllerが使うProxyを指定する必要がある。
preferences-->Packages Settings-->Packages Control-->Settings Userに以下のように書く。Settings-User Preferenceに書いても有功にならないので注意。
{
    "http_proxy": "192.168.201.1:3128",
    "https_proxy": "192.168.201.1:3128"
}
preferences-->Settings Userに書いても効果がないので気をつけること。

6.Packagesのインストール

めでたくPackage Controllerが導入できたら、preference-->Package Controlを起動し、installと入力すると、install packagesというコマンドがサジェストされる。それを実行し、パッケージ目録をダウンロードし、パッケージの選択ができる。
最低限、以下は入れたほうがいいだろう。 IMESupport(Windows版のみ)
IMEからの入力をカーソル行に表示し、日本語入力をインラインで行えるようになる。 MacのSublime Text 2には不要のようだ。

ConvertToUTF8
Sublime Text 2は、UTF8しか読み込めない。SJISやEUCの漢字コードを取り扱う場合は、これが必要。

7.参考サイト

ここまでできれば、だいぶSublime Text 2の感触もわかると思うので、あとはいじり倒すだけである。

初期のSettings default に何が書いてあるのかを解説してあるページ。
http://blue-ham-cake1024.hatenablog.com/entry/2012/09/07/Sublime_Text_2_のDefault設定ファイルを眺める

Mac版ショートカット一覧
http://blog.layer8.sh/ja/2012/04/16/sublime-text-2のキーボードショートカット一覧-mac-os-x/

MacとWindowsでショートカットの統一
http://hirsky.com/226.html

SublimeText2のキーバインドを、ちょっと突っ込んで解説
http://qiita.com/items/dc18f2dfc91e36adb208

8.vim化するにあたり

vim化するにあたり、最低限以下を行ったほうがいい。

(1)パッケージは、無視パッケージリストからvintageを削除する。Settings Userに以下のように書く。
{
    "ignored_packages": []
}
(2)Package ControlでVintageExを入れる。これで、:qが効くようになる。(他にもあるが)
(3)インサートモードから抜ける際に、IMEをoffにする。
MacはKeyRemap4MacBookを使って、ESCを押すと、IME offにするコードも同時発行するようにする。
Windowsについては、解決策はみつかっていない。今後の課題である。
windowsについては、以下に記事を書いた。
windows版Sublime Text 2 VintgeでIMEをOFFにする

vintageでの初期設定でのキーバインドの一部をリスト化した。
Sublime Text 2 Vintageモード ショートカットキー一覧( Mac/Windows)

0 件のコメント:

コメントを投稿