全力で怠けたい

怠けるために全力を尽くしたいブログ。

自分への小言

学び、教えろ。そして学べ。

勉強嫌いで苦労が嫌いな自分への小言を置いておく。

  • 学べ。学び続けろ。
  • 先後上下、別け隔てなく学べ。
  • いつも効率的であろうとしろ。
  • 汗をかくのを厭うな。
  • 汗をかいて良しとするな。
  • 汗をかかずに済むのを良しとしろ。
  • 出来ない同僚には教えてやれ。
  • 先後上下、別け隔てなく教えてやれ。
  • 得意先、仕入先にも教えてやれ。
  • 実を得たければ教えてやれ。
  • 好んで苦労したければ教えるな。
  • 教えるのは自分のためと思え。

chlordane カラースキーマが非常にかっこいいので浮気してみた。

chlordane.vim - GHOST IN THE SHELL like colorscheme : vim online

chlordane カラースキーマ

テキストエディターや IDE に始まり Twitter クライアントにも使うほど solarized を愛用しているのですが、最近見つけた chlordane という Vim 用カラースキーマが非常にかっこいいので、インストール方法兼ねて紹介してみようと思います。

chlordane カラースキーマのダウンロード

" Vundle の場合
" vimrc に追記&再読込して :BundleInstall
Bundle 'vim-scripts/chlordane.vim'

" NeoBundle の場合
" vimrc に追記&再読込して :NeoBundleInstall
NeoBundle 'vim-scripts/chlordane.vim'

カラースキーマの変更

vimrc に以下を記述して Vim を再起動します。
私は GVim の時だけ使っているので .gvimrc を編集しています(Windows の場合は _gvimrc)

colorscheme chlordane

これで chlordane カラースキーマの設定は完了です。簡単ですね!
ちょっとしたスクリプトを書いたりといった普段使いでは見るたびにかっこよく、目にも優しい感じがするのでとても気に入っています。
本気でプログラムを書く時は Solarized を使うと思いますが、最近は chlordane 一本でありがたく使わせて頂いています!

境界ワイルドカード型の指定方法が覚えられない

Javaジェネリックスで境界ワイルドカード型のパラメータを使用するときに、<? extends T> と <? super T> どちらを指定すればいいか迷っていた時期がありました。
今日はなぜか TL でジェネリックスの話題が多く *1 、当時のことを思い出したので懐古エントリを書いてみます。

PECS イディオム

Java で境界ワイルドカード型のパラメータを使用するときのイディオムは良く知られていて、Effective Java では以下のように述べられています。

どちらのワイルドカード型を使用すべきかを覚えるための略語は、次の通りです。

PECS は、プロデューサー (producer) -extends、コンシューマー (consumer) -super を表わしています。

プロデューサーの場合には <? extends T>、コンシューマーの場合には <? super T> を指定する、簡単です…なのですが、実際に使う段になると慣れないうちは「あれ? これは PECS の P と C どっちになるのかな?」といったことがありました。

Collections.copy

そんな時にふと見た Collections.copy のメソッドシグニチャー。
これがすごく分かりやすい。

パラメータ dest がコンシューマー (消費者)、src が プロデューサー (生産者) というのが一目瞭然です。
そう思わなくても境界ワイルドカード型の適用の仕方がまんま書いてあります。

public static <T> void copy(List<? super T> dest, List<? extends T> src) {

こういうのに頼るのはあまり良くないかもしれませんが、おかげで今では PECS を自然に扱えるようになりました。
ジェネリックス、まだまだ使いこなせていませんが便利ですねぇ。 *2

Effective Java 第2版 (The Java Series)

Effective Java 第2版 (The Java Series)

*1:JJUG でした

*2:ジェネリックス禁止な職場があると聞いたこともありますが、なぜ禁止するのか理由が分かりません…

Solarized に染まる - エントリまとめ

エントリまとめ。

Solarized に染まる - Vim (Terminal) 編

Solarized - Ethan Schoonover

Solarized に染まる - Vim (GVim) 編 の続き、今回はターミナルの Vim 編です。

altercation/vim-colors-solarized GitHub などを見ていると「ターミナルでは Dark テーマで、GUI は Light がいいように思う」という声が多いようですが、ターミナルでも Light テーマ全然イケてます。もちろん Dark もイケてますが。
ようはどちらもオススメということです。
では、導入手順です。

Vim への導入

環境は以下のとおりです。 *1

  • Mac OS X 10.7.5
  • iTerm2 Build 1.0.0.20120203
  • Vim 7.3 (patch 1-633)

導入手順は以下のようになります。
GVim と比べると一手間余計に必要で、少し面倒くさいです。
なお、Vim の設定については Solarized に染まる - Vim (GVim) 編 と同じなので、そちらを参照して下さい。

  • iTerm2 カラーテーマのダウンロード
  • iTerm2 カラーテーマの変更
  • Vim Solarized カラープラグインのダウンロード
  • Vim カラーテーマの変更

iTerm2 カラーテーマのダウンロード

solarized/iterm2-colors-solarized を表示します。
リポジトリのリストから Solarized Dark.itermcolors, Solarized Light.itermcolors をダウンロードします *2


iTerm2 カラーテーマの変更

ダウンロードしたカラーテーマを iTerm2 で使える用にします。
まず、iTerm2 の設定画面を表示します。

画面左下の「+」ボタンを押すか、あるいは既存のプロファイルを選択して「
画面左側のリストで「default」を選択した状態で「Bulk Copy from Selected Profile...」を押して、新しいプロファイルを作成します。
作成したプロファイルを他のプロファイルと区別するために、右側の「Name」に「Solarized Dark」と入力します。

「Colors」タブを表示します。
画面下部にある「Load Presets...」ボタンを押して「Import...」を選択し、先ほどダウンロードした Solarized Dark.itermcolors を選択します。
続いてもう一度「Load Presets...」ボタンを押して、「Solarized Dark」を選択します *3

「Terminal」タブを表示します。
画面中央付近にある「Report Terminal Type」を「xterm-265color」にします。

画面左下の「Other Actions...」を押して「Set as Default」を選択し、デフォルト設定にします。*4

iTerm2 を再起動してカラーテーマが適用されていることを確認します。
これで iTerm2 の設定は完了です。


残りの手順

Vim Solarized カラープラグインのダウンロードとVim カラーテーマの変更については Solarized に染まる - Vim (GVim) 編 と同じなので、そちらを参照して下さい。
もちろん、GVim 編で設定済みの場合は新たにする必要はありません。

Solarized のススメ

コントラストなのに視認性が良くて、おまけにかっこいい。
快適なためなのか、もう2年くらい使っているのに全く飽きません。
Solarized 、本当におすすめのカラーテーマです!

*1:iTerm2 を使用していますが、Terminal.app でも Terminal.app 用のカラーテーマを使えば同様の手順で Solarized 化出来ます。

*2:もちろん Git でダウンロードしても OK です

*3:Light テーマも同様の手順で導入出来ます。

*4:デフォルト設定にするのは必須ではありませんが、せっかく適用したのですし…ね

Solarized に染まる - Vim (GVim) 編

Solarized - Ethan Schoonover

Solarized に染まる - 夜フクロウ 編 の続き、今回は Vim (GVim) 編です。
世界中で大人気の至高のテキストエディターである VimGUI 版、MacVim の香り屋さん版 への導入です *1

altercation/vim-colors-solarized GitHub などを見ていると「ターミナルでは Dark テーマで、GUI は Light がいいように思う」という声が多いようですが、GUI でも Dark テーマ全然イケてます。もちろん Light もイケてますが。
ようはどちらもオススメということです。
では、導入手順です。

MacVim への導入

環境は以下のとおりです。

導入手順は以下のようになります。
簡単ですね。

  • Solarized カラープラグインのダウンロード
  • カラーテーマの変更

Solarized カラープラグインのダウンロード

Solarized カラープラグインをダウンロードします。
Vundle, NeoBundle を使っていると楽ですが、もちろん手動でインストールしても大丈夫です。

" Vundle の場合
" vimrc に追記&再読込して :BundleInstall
Bundle 'altercation/vim-colors-solarized'

" NeoBundle の場合
" vimrc に追記&再読込して :NeoBundleInstall
NeoBundle 'altercation/vim-colors-solarized'

カラーテーマの変更

vimrc に以下を記述して Vim を再起動します。*2

syntax enable
set background=dark
colorscheme solarized

これで Solarized カラーテーマの設定は完了です。
Vim を使うような仕事をする人にぴったりのカラーテーマですよね!

background の設定のところを下記のようにすれば、Light テーマになります。
こちらも Dark に負けずに COOL ですね!

syntax enable
set background=light
colorscheme solarized

Solarized のススメ

コントラストなのに視認性が良くて、おまけにかっこいい。
快適なためなのか、もう2年くらい使っているのに全く飽きません。
Solarized 、本当におすすめのカラーテーマです!

*1:個人的にはターミナルで使うことの方が多いですが、一手間余計にかかるのでまずは GVim を…

*2:.vimrc, .gvimrc. Windows の場合は _vimrc, _gvimrc

Solarized に染まる - 夜フクロウ 編

Solarized - Ethan Schoonover

Solarized に染まる - IntelliJ IDEA 編 の続き、今回は 夜フクロウ 編です。
MacTwitter クライアントとしてとても人気がある 夜フクロウ への導入です。
環境は以下のとおりです。

導入手順は以下のようになります。
Solarized カラーテーマが同梱されているので設定を変更するだけ、とても簡単です!

  • カラーテーマの変更

カラーテーマの変更

設定画面の「デフォルトの色設定」から「Solarized (ダーク)」を選択します (Light テーマを使う場合は「Solarized ライト」を選択)
続いて「すべての色をデフォルトにする」ボタンを押します。
すると、「色の詳細設定」に表示されているサンプルカラーが変わります。

これで Solarized カラーテーマの設定は完了です。
Twitter に張り付いていないといけない時にはぴったりのカラーテーマですよね!

ちなみに Solarized (ライト) だとこんな感じになります。
やっぱり ダーク、ライトテーマとも優らずとも劣らずの完成度の高さですね。


Solarized のススメ

コントラストなのに視認性が良くて、おまけにかっこいい。
快適なためなのか、もう2年くらい使っているのに全く飽きません。
Solarized 、本当におすすめのカラーテーマです!