| @技術/プログラミング

2011年はてなインターンであらせられるuasiさんのはてなブログに解決方法が書いてありました。

MacVimが悪いんじゃなくてtmuxに原因があったみたい。tmuxごしにVimを起動すると、MacVimでなくて普通のVimでもコピペができなくなる不具合があったようです。しかしChrisJohnsen/tmux-MacOSX-pasteboard - GitHubをインストールすることで解決します。tmuxだけでなくGNU Screen + Vimの組み合わせでも同様の問題が解決するそうです。お困りの方はお試し下さい。

| @技術/プログラミング

MacVimでコピペできなくて(MacVim内のヤンクじゃなくて、他のアプリケーションでコピーしたもののペースト)困ってたんだけど(MacVimでコピペできないんですけど… | tech.portalshit.net)、できるようになりました。原因は mvim っていう、コマンドラインからMacVimを起動するためのシェルスクリプトだった。MacVim kaoriyaのWikiで紹介されてるやつ。

こいつ経由でMacVimを起動したときはどうも他のアプリケーションからのコピペがうまくいかないみたい。

同じくMacVim Kaoriya Wikiで紹介されている、MacVimを起動するコマンドをaliasで化したものを .zshrc に書いたところうまくコピペが機能した。

alias gvim='env LANG=ja_JP.UTF-8 open -a /Applications/MacVim.app "$@"'

同じ問題でお困りの方はお試しあれ。

追記

なんか違うっぽい。alias経由で呼び出してもダメなときはダメだもん。いったい何なんすかね。

| @Mac/iPhone

転職したお祝いに、ワイフにMacBook Airを買ってもらった。シャレオツ気取りでUS配列キーボードをビックカメラで注文した。なんでビックカメラで注文したかというとYahoo! BB光開通キャンペーンでもらった二万円分のビックカメラ商品券があったからだ。CTOは基本的にApple Storeのみで可能だが、ビックカメラ店舗内のApple ShopだとCTOを受け付けているという情報をネットで入手していた。

購入時には「CTO注文の場合キャンセルはできません、二週間程度お時間をいただきます、JISモデルならすぐお持ち帰りいただけますが本当によろしいですか?」と三回くらい聞かれたけど「いいです」と言ってUS配列モデルを注文した。そしたらもうそろそろ一ヶ月になるのにまだ届かない。

やはり俺のようなダサ坊がUS配列のMacになんて手を出すべきではなかったのだ。おとなしくJIS配列キーボードモデルを購入していれば、今頃Airを携えてドトール天神新天町店などで無限インターネットしたりできていたのに。ちょっとシャレオツを気取ってUS配列を注文したばかりにこんなことになった。

そもそもUS配列を使っていいのは原則的に値引きなしのApple StoreでMacを買える金持ちだけなのだ。これまで一度たりとも定価でMacを買ったことがない俺のような賤民がUS配列に手を出すべきではなかったのだ。商品券を使って意地でも値引きされた金額でMacBook Airを買おうとしたがためにこのような事態に至ったのだ。

さらに悲しいことに、5000円値引きするからと同時加入したイーモバイルのGP02についても、GMOくまポン経由で買うとsshも使えるアドバンスドプランを月額2990円で契約できたらしい。俺は月々3880円で契約してしまった。どうせ3880円払うならソフトバンクのULTRA WiFiとかにしておけばよかったと激しく後悔している。ULTRA WiFiはイーモバとソフトバンクのハイブリッドモデルなので、両方の回線を自動的に切り替えて通信できる。イーモバは田舎では全然電波の感度がよくない。ソフトバンクも悪いけど、イーモバイルよりかはましだ。

きっとApple StoreでUS配列のMacBook Airを買うようなリッチメンは情報収集も万全で、月額利用料3880円でGP02を契約した俺を尻目に、GMOくまポンを使って入手した月額利用料2990円のGP02とUS配列のMacBook Airを駆使して美女とのデートで利用する遊園地やレストランやバーやラブホテルを検索したりしているのだ。あるいはネット証券でデイトレーディングを行い、さらに富を増幅させているかもしれない。俺との差は開いていくばかりだ。

| @散財

Happy Hacking Keyboard Professional 2

Happy Hacking Keyboard Professional 2 を買った。HHKはLite2を持っていて、職場に持ち込んだりして楽しく使っていた。しかし打鍵感が安っぽいのと音がうるさいのを若干不満に思っていた。Proを所持している人からは「早く買った方がいい。自分は買ってからなんでもっと早く買わなかったんだろうと後悔した」とまで言われるので、ついに購入してしまった。買ったのはUS配列の墨バージョンで、印字はあり。

使ってみての感想

打鍵感はなんか以前ヨドバシカメラで触った展示品とは違う感じがする。もっと東プレっぽい感じを期待してたんだけど、スッカスッカで少しがっかりした。

しかし音は静粛で、押し込んだときに「コトコト」といい音を鳴らす。また墨風の手触りも良い。

US配列デビュー

US配列のキーボードは初めて購入したが、正直微妙な感じがする。プログラミングで多用する大括弧の開閉が左右に並んでいることなど、プログラミング時の利便性を考えての購入だったが、大括弧の開閉以外にはあまりメリットがないよう気がしなくも…。JIS配列では大きかったRETURNキーが小さくなっているのでその上に配置してあるDELETEキーを間違って打ってしまいがちだし、矢印カーソルキーがないのもやはり不便である。人はJKHLのみでカーソル移動をするにあらず。

VimとUS配列

またUS配列ではコロンの入力時にSHIFTキーの入力が必要となっているが、これはコマンド入力のプレフィックスにコロンを多用するVim利用時に問題となる。

noremap ; :
noremap : ;

と .vimrc に記述することでJIS配列通りの使い心地にできなくもないのだが、とりあえずはデフォルトの状態で様子を見ることにした。

全体的には、30歳になるまでJIS配列を使っていた人間が無理をしてUS配列に乗り換えても意味はないのかなぁ、という気がする。どうせMacは価格コムで安売りしてるJIS配列のやつしか買わないんだし。HHK Pro自体は、これに二万も出す価値があったのか、時間をかけて検証していこうと思う。

| @技術/プログラミング

Amazonの検索結果画面で、個別商品URLへのリンクが target="_blank" 指定となっていてうざかったので target="_self" と置き換えるユーザースクリプトを書いた。

地味に便利。

Amazon target killer

| @雑談

昨夜、吉野家の牛丼を食べた。狂牛病騒動があってからは怖くて吉野家とか松屋の牛丼はかたくなに食べないようにしていた。しかし昨夜は暑かったしむしゃくしゃしていたし、なにより牛丼270円キャンペーン中だったので大盛つゆ抜き玉子を頼んで食べてしまった。

アルバイト先の隣の隣に吉野家があったので、15分休憩のときに一杯、30分休憩のときにまた一杯と、学生時代は吉野家の牛丼を常食していた。常食というか、愛していた。吉野家と愛し合っていた。

俺は吉野家の牛丼はつゆ抜きが一番うまいと思っている。つゆだくはご飯がべちゃべちゃになってダメだ。何も考えずに「つゆだくで」とか言ってるやつを見かけると虫唾が走る。お前、つゆだくって言いたいだけちゃうんかと。

牛丼に生卵をつけないやつも信じられない。吉野家の牛丼は関東風の塩辛い醤油をたらした生卵を牛肉の上にかけることで始めて完成する。なのにつゆだくに七味やら紅ショウガやらを盛大にぶっかけて食べている連中を見かけると反吐が出る。ただのものを全部トッピングしてやろうという貧乏人根性が丸見えだ。

吉野家での最も甘美なコマンドはアフターだ。吉野家に通い詰めていた俺も、アフターコマンドを聞いたのはこれまで一度しかない。あるとき吉野家で並つゆ抜き玉子をかき込んでいると、長髪小太りのテレビ番組制作会社社員のような男が入ってきた。牛丼を頼む際、注文の最後に「アフター並」と男は言った。アフターってなんだよ、後からキャバ嬢でも来てアフターしちゃうのか? と俺は悩んだが、アフターとは食後に牛丼を持ち帰るということであった。なんと甘美なコマンドだろうと俺は思った。今にして思えばUNIXの哲学が反映されているような気がしないでもない。男はスーパープログラマーだったのかもしれない。

とまぁ、こんな感じで、土曜の夜に博多駅で感傷に浸りながら牛丼を食べた。こんなことができるのは嫁がいない一人の夜だけだ。今の俺はなんと不自由なんだろう。一筋の涙が頬を伝った。

というわけで6月に結婚しました。金ないのに結婚してやっていけるか心配です。ご祝儀寄越せとか言わないので福岡にお立ち寄りの際はもつ鍋でもおごってください。

| @技術/プログラミング

JekyllはLiquidというRubyのテンプレートエンジンを採用してるんですが、Liquid内でLiquidの文法をエスケープする方法が分からず大変苦しんでおりました。Jekyllの公式のDocument呼んでもXML出力時とかCGI出力時にコンテンツをエスケープする方法は書いてあるのに、Liquidテンプレート自体をエスケープする方法が書いてなく、大変不満でした。しかしその方法が分かったのでお知らせいたします。元ネタはスタックオーバーフロー。

例えば {{ "{% this " %}}} と表示させたかったらこうやります。

{{ "{% this " %}}}}

ちょっとトリッキーですね。

Pygmentsと組み合わせて使うことも可能ですが、いちいち {{ "{% highlight " %}}} のなかでコメントアウト処理をしてあげないといけないません。面倒くさいですね。