Codaほぼ文句なし

2012/04/16 | その他

Codaを使い始めて3日ほどたつが、もうエディタはCodaに決まり。いくつか気づいた点をメモしておくことにする。なお過去にmi、CotEditorとの比較も一部含めることにする。Codaの使用期間は現時点で3日しかないが、miとCotEditorはそれよりも長い時間使っていることは間違いない(それでも圧倒的にCodaが優れていると思う)。

シンプルで美しいインターフェイス。メニューの数が少なくて不安だけど、それを感じさせないユーザビリティ。miはデフォルトの設定が大変不満(諸々)。たしかにいろいろな設定ができるが、設定項目が多すぎて難解。途中であきらめてしまった。

主な開発はPHPとJavaScriptになるのだが、カラーリングは何のカスタマイズの必要もなく受け入れることができた(miはPHPのカラーリングが標準じゃなかった)。

括弧を入力すると、自動的に閉じ括弧が入力されるのだが、続けて閉じ括弧を入力してしまう場合は、前述の入力が無効になるので、何も困らない。むしろ気が利いていて使いやすい。そして括弧の片方にカーソルが近づくと、もう片方の括弧の位置が明示されるのでとてもわかりやすい。

複数行の一括インデントができる。複数行選択して、ショートカットでインデントの増減ができる。開発では最も重要だと思っている機能の一つ。

サーバアップロード機能も標準装備。FTPはもちろん、SFTP、FTP over SSLと通常利用で全く不満なし。これで動作の遅かったCyberDuckともさようなら。

SSHクライアントも標準装備。そもそもMac OSだからTerminalで接続してもいいのだが、サーバ名とか記憶させることができるから便利。

カスタムコマンドを簡単に作成できる。プラグインクリエイターを使えば、ほぼ悩むことなく希望を実現できる。Mac OSにインストールされている言語で開発しなくてはならないけど、プログラマにとっては釈迦に説法。

ここまで書くと宣伝じみてて嫌だが、あえてそれを書いてしまうぐらいよくできている。しかし悪い部分もある。

大容量ファイルを開くととにかく遅い。CotEditorでもそうだったのだが、実用的ではない。唯一WindowsのEmEditorがすごい、と思える点だ。

あとまぁ、あえて言うなら価格。現時点で8,500円となっている。高いと言えば高いかもしれないが、仕事と割り切れば安い買い物だ。少なくともMicrosoft Officeの数倍の時間を使うが、金額は半分以下だ。

ということで、エディタが決まった(同時にFTPもSSHも決まった)。落ち着いた!。

CotEditorではやっぱり仕事に支障が出る

2012/04/12 | その他

残念ながらCotEditorを断念することにした。

  • 落ちる
    時々落ちる。往年のMacを思い出すくらい。何年も使ったMacにインストールして落ちるのならしょうがないけど、この前買ったばかりのMacで落ちるようでは少し困る。
  • 不安定
    少し容量の大きなファイルを編集しようとすると、表示がうまくできなかったりする。編集しても結果が反映されない。結果としてその状態で保存すると、次回開いた際に、確かに前回編集したらしい痕跡が表示される。
  • 遅い
    少し容量の大きなファイルを開くと重くなる。カラーリングに時間がかかる。1MBくらいのテキストファイルをカラーリングして開こうとするととんでもなく時間がかかる。SQLとかデータファイルだとそのくらいの容量は割と普通にあるので対応できない。

これらの問題が解決されるのならば、かなり理想に近いエディタなだけに残念。スクリプトメニューは自作できるし、ショートカットも割り当てられるし、キーワード補完もできるし、機能としてはだいたいそろっているのに。非常に残念だ。

そしてCodaこんにちは。2週間使い倒して、見事正式版にたどりつけることを祈る。8,500円というのは確かに出費だけれど、やっぱり一番大事なところだからね。Emeditorの4,200円を払うのはどうしてもいやなんだけど、Codaなら払おう、と思わせるのはMacがMacたる所以かな。

Excelの起動が遅い

2012/04/10 | その他

作業環境を完全Mac化した。20年前はMac派だったし、かねてからの希望をやっと実現させた感じ。Mac mini、Core i5、メモリ8GBの交換。あと経理と銀行口座管理でWindowsが必要なのでBootCamp環境でWIndows7。ディスプレイは以前のを再利用したので2台(もう1台欲しいけど余裕ができてから)。あとOfficeやら何やらで10万円ほどの出費。がんがん働いてもらわねば。

で、Excelの起動が遅い。前のWindows機がCore2DUO、4GBだったから、もうちょっと早くても良さげなのにと思っていた。検索して、見つけた記事を実行したら、明らかに早くなった。やったことは以下のファイルをリネームしただけ(.bakをつけた)。

ユーザフォルダ/Library/Preferences/com.microsoft.Excel.plist

Excel起動時に、存在しなければ作成されるファイルのようで、そりゃもう圧倒的に早くなった(というか普通のレベルになった)。これで一安心。

あとはテキストエディタ。今のところいいのが見つからない。現状はCotEditorを使っているが、使いやすいのはいいのだけれど、これ少しもたつき感がある。なんでも開発環境(cocoa)独特のもたつき感らしい。FTPソフトのCyberDuckも遅い。自分がソフトを選ぶときのスタンスとして「使いやすい」「画面デザインが自分好み」「さくさく動く」という3点があるけれど、デスクトップに表示されるアイコンも重要な要素。なんじゃそりゃ、という感じかもしれないが、秀逸なアイコンデザインだと、なんとなくその気にさせてくれる。FileZillaは使い慣れているけれど、アイコンがイマイチ。EmeditorはMac版がない(アイコンもイマイチ)。miは多機能だけれど、設定画面のユーザビリティが悪いので自分好みにカスタマイズするには相当な労力が必要。で、やむなくCotEditorとCyberDuckの組み合わせになっている(結局速度よりも見た目優先なのかもね)。

やっぱ、少し値は張るけれどCoda、買ってみようかな。

UTF-16LEをUTF-8に変換したら末尾の文字が消える

2012/01/09 | その他

ウェブアプリを作っていて、Excelからの出力ファイルを、設定ファイル等に使用したい時がある。そんな時にExcelからの出力形式でCSVやタブ区切りテキスト等を使うことも多いかと思うが、日本語の場合シフトJISで出力される。この場合、もちろんPHP側で読み込む際に文字コード変換すればいいのだが、日本語じゃなくて韓国語とか中国語とか含まれていた場合でも上手く対応できないか、と考えた。

Excelにはunicodeで出力するオプションが用意されていて、これを選ぶとタブ区切りで文字コードUTF-16LEのBOMつき、拡張子txtでファイルを出力してくれる(ちなみに拡張子をcsvに変更すると、当該ファイルのダブルクリックでExcelが自動起動してくれるので便利)。マルチバイトで使用する場合は一番便利がよさそう。

でもまぁ、UTF-8への変換は必要になる。そこで以下のようなコードを書いてみた。読み込み元ファイルのtest.txtにはtestと記述しておいた(上述のようにUTF-16LE、BOMつきのファイルとしてある)。

$str = file_get_contents(‘test.txt’);
var_dump($str);
$str = substr($str,2);
var_dump($str);
$str = trim($str);
var_dump($str);
$str=mb_convert_encoding($str,’UTF-8′,’UTF-16LE’);
var_dump($str);

見ての通り、(1)読み込んで、(2)BOMを取り除いて、(3)前後の空白文字を取り除いて、(4)文字コード変換して、というステップだ。出力された結果はこんな感じ。

string(10) “ÿþtest”
string(8) “test”
string(7) “test”
string(3) “tes”

最初のデータで、文字列の前についているゴミはBOM(UTF-16LEの場合は2バイトがBOM)。気になるのは(4)の処理後に最後の文字が欠落してしまっていることだ。で、調べてみた。

どうもUTF-16LEでは各文字の後ろに、何かはわからないけれど制御文字が入っているっぽい。(2)と(3)の結果を見ると、trimで明らかに1バイト減っている。UTF-16LEでは、この制御文字までを含めて一つの文字となっているようだ。(4)の処理後に最後の文字が欠落するのは、trimした結果制御文字がなくなってしまい、最後の文字である「t」が不完全となったため、欠落してしまったようだ。ちなみに制御コードをord関数を使って出力したら「0」となっていた。ヌル文字のようだ。

文字の構造を理解していなくて、上記の問題にぶつかったわけだけど、少し勉強になった。なんでもかんでもtrimすりゃいいってもんじゃないことを今頃理解した次第。

ウェブ屋の飲み会参加者募集します

2011/11/15 | その他

本年末もウェブ屋の飲み会を開催することになりました(今回で四回目)。参加人数は10人から15人程度の予定。参加資格とか特に無いのですが、基本的にウェブ屋であること。デザイナーでもプログラマでもコーダーでもディレクターでも、ウェブ関連のお仕事をしている方ならOKです。年齢男女国籍問いません(日本語が話せないと楽しくないと思います)。実際には20代半ばから50代半ばの方が参加しています(30代、40代が多いです)。

2011年12月2日金曜日に都内近郊での開催を予定しています。現在若干名の枠がありますので、参加を希望される方はこの記事へのコメントでお名前とメールアドレス、得意分野等をお知らせ下さい。送信いただいたコメントは公開せず、メールで必ず返信します。人数の都合でコメントいただいても参加していただけない可能性もあります。その場合はご了承下さい(必ずメールで返信します)。

では、どうぞよろしくです。


守谷市(まちの情報ポータル) 無料アンケートレンタルjpForm.net