Google の検索画面で、何も入力せずに "I'm Feeling Lucky" ボタンを押すと、これまでの Doodle の一覧画面が出た!
一日違いで見逃したときは、ここで見ればいいのか。
Google の検索画面で、何も入力せずに "I'm Feeling Lucky" ボタンを押すと、これまでの Doodle の一覧画面が出た!
一日違いで見逃したときは、ここで見ればいいのか。
この秋、新しい OS (OS X Mavericks) が登場という、まさにこの時に新しい MacBookAir(まだ古いOS) を買いました。 13 インチです。
これまで、メモリ不足で煩わしい思いをしてきたので、今回は奮発して 8G の最大容量までアップグレードしました。 勢い余って CPU もアップグレードしました。
購入後に、最初にやったことの自分用メモです。
ターミナルでユーザー ID をプロンプトに表示するのであまり長くしない。
App Store ーアップデート
次の Homebrew でのパッケージインストール時に必要になるのでインストールしておく。
また、ライセンス認証をしておかないと、Homebrew でのパッケージインストール時に警告がでるので一度起動しておく。(警告が出てもインストール自体は問題ないようですが。)
以前は MacPorts を使用していて特に不便を感じていた訳ではないのですが、 Homebrew が良い良いと見かけるので Homebrew をインストールする。
Homebrew のページのシンプルな説明のおかげか、すごく分かりやすい印象です。
とにかくパッケージは /usr/local にインストールされると言うのが分かるだけでも安心。
Mac に元々入っているアプリケーションのバージョン違いなどをインストールした場合、このままだと元々入っている方が呼ばれてしまうので、パスの順番を変更しておく。
パスの順番を変更するには /etc/paths ファイルを編集して、/usr/local/bin を先頭にする。
ターミナルは iTerm2 を使っています。
iTerm2 をインストール後、表示色をマイルドにする SOLERRIZED をダウンロードしてきて、色のプロファイル設定でインポートする。
あと、Emacs で現在行をハイライトする設定にすると、その行の文字が読めなくなるので、同じく色のプロファイル設定で "Minimum contrast" の設定を少し high 寄りにする。
今まで使っていた MacBookAir の .emacs と .emacs.d をコピーして持ってくる。
メタキーを "Command" キーの位置にしたいので、システム環境設定のキーボード設定で Command と Option を入れ替える。
また、iTerm2 でもメタキーが効くように、iTerm2 のキーのプロファイル設定で "Left option key acts as" を "+Esc" にする。
Homebrew で zsh をインストールし、シェルを zsh に変更する。今まで使っていた MacBookAir の .zshrc をコピーして持ってくる。
[ シェルの変更 ]
変換候補の精度が圧倒的に良いので、Google 日本語入力 をインストールする。
インストール後、システム環境設定ー言語とテキストー入力ソースで「ことえり」のチェックを外す。
家では外部モニターとキーボードを接続して、クラムシェルモードで使用しています。
マウスのポインターを大きくする。
システム環境設定ーアクセシビリティーディスプレイ、でカーソルのサイズを設定。
<リンク>
Emacs で現在編集中のファイルと同じ名前のファイルを開いたときに、どちらが元のファイルか分からなくなってしまうことがある。
ファイルのパスを表示するコマンドを見つけたが (C-x C-v)、同じ趣旨で、参照用として開いたファイルは読み込み専用にしておくと言う手もある。
コマンドは、C-x C-q。
バッファを開いた状態で C-x C-q とタイプすれば読み込み専用になります。もう一度タイプすると解除されます。
読み込み専用時には、左下に "%%" が表示されるので、編集中のファイルか参照用のファイルかの区別がつきます。参照用ファイルを間違って編集することもなくなるので余計な気を使わなくて済むのもいい。
***
同じバッファ名だと区別がつかない時、バッファ名を変更するというのが王道なのかもしれませんが、M-x rename-buffer でバッファ名をタイプするのは少々面倒くさい。
<参考>
<リンク> Emacs 現在のバッファのファイルパスを表示する
index.html とか manifest.json など、名前が決まっているようなファイルがあります。
そのようなファイルを編集している時に、過去はどうだったかと2つめの manifest.json を開くと、 もうどっちが編集中のものだったか分からなくなってしまいます。 やむなく、一回両方のファイルを閉じてもう一回開き直したりして・・・。
ファイルのパスが簡単に分ればいいのに。
Emacs で現在のバッファのファイルパスを知る方法が無いかと調べたら、こんなコマンドが有りました。
C-x C-v (find-alternate-file)
C-x C-v とタイプするとミニバッファに現在のファイルパスが表示されます。 確認できたら C-gで終了します。
C-g で終了?
実はこのコマンドは本来はファイルを間違えて開いてしまった時などに別の正しいファイルを開き直すコマンドです。
C-x C-f との違いは現在のバッファを閉じて新しいファイルを開くところです。
C-x C-v とタイプしてミニバッファに表示されたパスを編集して、目的のファイルを開く、というのが本来の使い方のようです。
今回はパスを知りたいだけなので、C-g で終了します。
<参考>
<リンク> Emacs バッファを読み込み専用にする
git add や git commit はするけど過去を振り返ったり、状態を確認する時には戸惑ってしまうので、見える化コマンドをまとめておきます。
全面的に、"開発ツール徹底攻略 (WEB+DB PRESS plus)"の "はじめての Git" の記事を参考にしています。
$ git diff
$ git diff HEAD
$ git diff --cashed
$ git log
$ git log -p
$ git log -2 # 最新と一つ前の2つのコミットログを表示
$ git log --pretty=short
※ git commit する時にログメッセージは以下の形式で書くと良い。
$ git status
$ git show # git log -p -1 と同じかな?
<参考>
Google Reader がついに今月いっぱいで終了してしまいます。
つくづく残念です。
「 Feedspot 」に乗り換えました。
フィードの登録とか編集は Google Reader に比べて手間がかかるのですが、閲覧はほぼ同じ感覚で出来ます。
これが Feedspot にした決め手です。
Google Reader から乗り換えるときは、登録データを Feedspot に移行出来ます。
Google Reader のデータをダウンロードするといくつかのファイルがダウンロードされますが、その中の xml ファイルが登録データです。
このファイルを Feedspot でインポートすると移行出来ます。
リンク:Google リーダーのデータをダウンロードする方法
JavaScript の品質チェックツールである JSLint をコマンドラインから使えるようにしようと重い重い腰を上げました。
やり方を調べていると、"JSHint" なるものがあることを知った。
JSHint は『JSLint を元に、「より柔軟な設定ができる JSLint 」として』開発されたそうです。(JavaScript テクニックバイブルより)
確かに、JSLint はちょっと厳しすぎるように思う(JSLint の作者も言っているように)。
それに引き換え "Hint" とは、いかにも優しそうな感じする。
これはいい考えだ。
JSHint は Node.js のプログラムとしてインストールできるのでまずは、Node.js をインストールします。 Mac の場合は Node.js の公式 HP からインストーラをダウンロードしてインストールします。
Node.js をインストールした後で、Node.js のパッケージ管理システムを使って JSHint をインストールします。
$ sudo npm install -g jshint
$ jshint test.js
実行してみると、あれっ? これだけ?
思った以上に警告が少なくてちょっと物足りない。
JSLint と同様に JSHint でも警告の具合を調整出来ます。
設定ファイル .jshintrc に書きます。
.jshintrc はカレントワーキングディレクトリに置いてもいいし、ディレクトリツリーを上にたどっていった、どこに置いてもいいようです。
置き場所によって、プロジェクト毎の設定にもできるし、一括設定にもできる仕組みです。
とりあえず僕は home に置いておきました。
手始めに Enforcing Options の項目を全部 true に設定しました。(オプションは JSHint のページを参照)
jshint を実行。
大量に警告が出ました! これこれ!
あっ!
... line 12, col 17, Expected 'start' to have an indentation at 14 instead at 17.
そうそう、これこれ。
これが出ないと始まりません。やっと納得感。
インデントの位置がダメと言う警告で、"JSLint" で必ず見た警告です。
その後、ちょっと調節して下の様な設定になりました。
使いながらまた調節していきます。
JSHint は多分デフォルトで良い感じに警告をしてくれるんでしょうけど、結局、JSLint と同じような設定にしてました。
// file .jshintrc
{
"bitwise": true,
"camelcase": true,
"curly": true,
"eqeqeq": true,
"es3": true,
"forin": true,
"immed": true,
"indent": false,
"latedef": true,
"newcap": true,
"noarg": true,
"noempty": true,
"nonew": true,
"plusplus": false,
"quotmark": false,
"undef": true,
"unused": true,
"strict": true,
"trailing": true,
"maxparams": 3,
"maxdepth": 3,
"maxstatements": false,
"maxcomplexity": 3,
"maxlen": 80,
"browser": true
}
参考: JS Hint (公式ページ)