読者です 読者をやめる 読者になる 読者になる

console.lealog();

@leader22のWeb系に関する勉強めもブログですのだ

Coda2を捨ててVimmerになら(れ)ないわけ

Web

はてさて、今年の夏から某社でマークアップエンジニアとして働いてるわけです。
それはもう一日の大半をかけてhtmlファイルと向きあいます。

作業時間のほとんどはテキストエディタでのファイル編集。
そんな私のメインエディタはCoda 2です。

ただ業務内容上、ターミナルからVimでファイルをいじれたら楽やのに・・と思うことがちょくちょくあって、それこそいっそVimmerになっちまおうかと思ったりもしました。

でも、結論としてやめました。
そうなるに至った経緯と、エディタ選びにあたっての観点をメモ。

もしかしたらVimを覚えるかどうかで悩んでる人もおるかもしらんし。
どっちかというとエディタ選びについての試行錯誤のまとめです。

最近のブコメを見て気付きました。
おかげさまで昨夏より晴れてVimmerになりました!
参考:Coda 2を捨てて、この度Vimmerになりました - console.lealog();

どういう作業をするか

エディタはあくまでファイル編集の手段。
「目的に沿った道具選びを」ということで、まずは自分の仕事内容をリストアップ。

  • 主な作業は.htmlファイルの編集
  • SPだけじゃなく、FP端末のコーディングもします(=半角カタカナ多用)
  • ファイルによっては記号や機種依存文字だらけ
  • 文字コードUtf-8だけじゃなくSJISもあり
  • 細かい文言修正がすごく多い
  • クラス名やシソーラス(文言)の一括置換をよくする
  • 基本的にありものを編集するので、0からDOMを考えて書く機会がほとんどない
  • 編集したファイルを表示確認するために、CUIからコンパイルコマンドを叩く必要あり
  • 作業ディレクトリがまちまちで、頻繁に階層を移動する

ふむ、次。

道具選びの考え方

あれこれ使うのは好きじゃないので、できれば一刀流でいきたいところ。
どうしようもないケースがあって、二刀流が最適と判断されるなら、それでも。
修得するのに時間がかかったとしても、それが最も効率の良いやり方なら覚える。

基本的に、一途なんです。

作業内容から見る必須の要件は、

  • CUIでサーバーに繋げられる(=ターミナルに準ずる機能がある)
  • ありとあらゆるファイルを編集できる
  • 文字の検索・置換機能が強い(正規表現は必須)
  • 独自拡張子のファイルにもシンタックスを当てられる

くらいかしら。

あとは・・、

  • カスタマイズできる部分が多少なりともある
  • いけてるカラースキームがある
  • 重くない(≠軽い)

かな!w

他に検討したエディタ

Sublime Text 2

最近すっごい流行ってますよね。
そこそこ軽い+プラグイン、カラースキームなどなど、カスタマイズしやすいのはポイント高し!

けど、SJISがデフォルトで読めない。
seanliang/ConvertToUTF8ってプラグインはあるけど。
一番痛かったのは、機種依存文字が表示できなかったところ。
このへんバージョンアップで解消されたりせんかしら。。

Brackets

こないだ知った!気になる!
けど、Sublimeと同じデメリットがある気がする。
今の仕事の性質上、海外産は基本的にダメなのかも。

CotEditor

ザ・テキストエディタ
すっごい軽い!意外と知られてないけど、実は入力補完とかできます。
動作は軽いけど、テキストを長く打ってくるとなんだかモタついてくる気が?

開けないファイルもほとんどないし、なんだかんだ欠点少ないよねー。

Dreamweaver CS6

重い、却下。
会社で買ってるライセンスはあるけども、個人で使うには高いし。

「他人の開いたファイルを後勝ちで開ける+ファイルを破壊し真っ白にする」みたいな暗黒魔術が使えるのはDWだけ!

という感じで、結局いつも通りCoda 2で落ち着き・・そうになるんですけど。

Coda 2か、Vim

今回Vimmerになろうか迷った一番のワケは、ターミナルを使うことが多くなってきたから。

編集したテンプレートファイルはコンパイルのコマンドを叩かないとブラウザで確認できないため、CUIでのコマンド入力は業務上必須なのです。
その上、yamlのファイルなども編集するので、編集結果反映のために

sudo apachectl graceful

とかするわけです。

あとはクラス名をgrepしたり、システム担当の人たちの編集するPerlのモジュールを覗き見たり、サーバーが激重いときに、topコマンドやらしちゃうんです。

そして作業環境も複数あるので、screenであちこち飛び回ったりし・・てるんです!

ほらもう、Vimmerになるしかない!w
って思ってきたのが理由です。

それでも悩むのは

今のまま=自分の知ってるVimでは、できないことがあるからです。

CUIの宿命?日本語もといマルチバイト文字にめっぽう弱い

機種依存文字や太い記号のある行でカーソルがズレるとか詰みすぎです。

set ambiwidth=double

とかしてもダメなパターンです。

あとは、どう頑張っても化け化けで読めないファイルがいます。
素直にCotEditorしちゃうパターン。

オリジナルのエンコーディングを保ちながらファイル編集して、そのまま保存されてるかが心配になるのも、まだまだな証拠なんでしょうね・・。

モード切り替えに慣れない

MacなのでCommand+矢印キーとか、Alt+矢印キーをよく使います。
Vimのショートカットキーより早い、もしくは同等な気がしてます。

ヴィジュアルモードより、マウスでぐいっと範囲選択する方が早く感じる!

日本語の検索

そもそもターミナルで日本語を扱うあたりの情報を知らないのが悪いんですが・・。
lgrepなるものもあるようですが、なんだか上手くいかなかった!

もっとbashやら覚えたらこのへん解決できるんかな?

Coda 2のダメなところ

メインのエディタはCoda 2に落ち着きます。
でも最近のCoda 2さんへの不満が噴出してきてて。

重い

出社してから帰るまで起動しっぱなしなせいだと思いますが、やっぱリッチなUIなだけに重いです。
特にブラウザからアクティブなアプリを切り替える時、遅い時は10秒くらい待たされます。
おそらく原因はSambaでつないだ先のサーバーが激重いからですが、最近コレが耐えられない・・。

ターミナルさん・・

  • Ctrl+lとかのbashのショートカットキーがプラグインに食われて使えない。
  • ターミナルの背景やカラースキームがカスタマイズできない(スケスケにしたい!w
  • そしてなんだか重い
  • 日本語ファイル名が化ける

使わない機能が多すぎ

  • サイトの機能も使わない
  • 動的なサイトなので、プレビューが役に立たない
  • リファレンスの機能も使ったこと無い
  • Css編集時のカラーピッカーとか、Cssモードとか使わない

エディタ周りの機能以外は、ほとんとオマケみたいな印象でプラス要素じゃないかなーと思ってます。

機種依存文字てんこもりファイルは開けない

文字化けするというか、開けないのがたまにいる・・。
原因不明のこれは、CotEditor以外は全滅なんですよね、今のところ。

はやくUtf-8になりたい!英語オンリーになりたい!w

Coda 2のいいところ

ちゃんと最後に持ち上げます!

ファイラーついてる

Finderよりこっちをよく使います。
サイドバーも活用すれば、最大で2つの環境を駆け回れます。
右クリックメニューからパスのコピーができるのも○かなー。

フォルダごと日本語検索

これが便利です。
内部でどんなコマンド使ってんのか知りたい!w

でもたまに無視されるファイルがいるのはなんでやろうね・・。

自作プラグイン

こないだ記事にしたような、テキスト置換のプラグインが自作できるのはポイント高しです。
このへんはSublimeでもできるみたいやけど。

なんか綺麗

これは長い時間使ってるとね・・・見やすいって大事なことです。
Lowlightってカラースキームが個人的に好きです。
ダウンロードは以下のリンクからー。

Lowlight - Coda 2 Themes

ってな感じ。

さいごに

結局エディタとしてはCoda 2、開けないやつはCotEditor、エディタ以外の作業はターミナル、すごく簡単なテキスト編集はVimっていう感じに。

うーん、「ベストではない」よねー・・。
CotEditorとCoda 2の中間みたいなやつが欲しい!w
それか、上述した悩みをぜんぶ解決するVimのプラグイン!

どのみち、日本語編集者界隈でVimが流行ってないので解決策も見つからんのやろうなぁ・・。(いっそ先駆者にな・・げふげふ)
職種を変えるが早いみたいな選択肢もこの際アリかもw

最近ちまたで「Sublime Text 2しかありえないっしょ!」みたいに言ってる人は、きっと絵文字やら機種依存文字山盛りのSJISのhtmlなんて編集しない人なんやと思ってます。
もしくはJavaScriptをメインに書く人とか?
というわけで、畑違いの人のオススメ意見もあまりアテにしない!

何はともあれ、そのエディタを使うことが目的にならないようにしたいですね。
もっと良いのがあればいつでも乗り換えたんねん!って感じで。

アドバイス求むです!