2015-03-06(金) [長年日記]
■ 安直なaliasを戒めるためにslコマンドをインストールした(いやしてない)
某所で「npmコマンドにはisntallというサブコマンドがある」という話でちょっと盛り上がった。
% npm -h : explore, faq, find, find-dupes, get, help, help-search, home, i, info, init, install, isntall, issues, la, link, list, ll, ln, login, ls, outdated, owner, pack, prefix, :
まぁようするにinstallと入力しようとしてisntallとタイプしてしまっても動くようにという配慮なんだろうけど、案の定というかnpmのissuesを見てみると「isntallがあるのにunisntallがないのはおかしい」とか「versionのaliasとしてverisonを追加してくれ」なんてのが見つかってカオス。
この問題の解法にはいくつか流儀があって、個人的にはrubyのThor gemが採用している候補が1つに絞り込まれるまでタイプすればOKというのが好きだけど(installの場合はたいてい「i」の1文字で済む)、typoから正しいサブコマンドをサジェストしてくれる(herokuコマンドとか)、自分でaliasを定義する(gitコマンドとか)などなど。コマンドがtypo対策のaliasを提供するnpmスタイルはなかでも一番ダメなタイプだよなぁ*1。
というわけで(?)、そんな安直なalias提供を(将来の自分が思いつくことを)戒めるべく、slコマンドをインストールすることにした*2。いや、slコマンドってネタとしては一瞬面白いけど、わざわざ入れとくようなもんじゃないと思ってたし、実際一度も入れたことないんだよね。
% sudo apt-get install sl : % sl zsh: command not found: sl
えっ。
% apt-file show sl | grep /sl$ sl: /usr/games/sl
gameなのか(笑)。PATHが通ってないからtypoしても動かないという。
% sudo apt-get remove sl
(結局いれてない)
追記
npmもThorスタイルだと@miyagawaから教わった。おお、ほんとうだ、「npm ins」でinstallが走るな。でもinstallは「i」がaliasされてるので「i」だけでいける一方、「in」だとinfoとかぶるので一意にならないという、やっぱりaliasはダメだという好例になってるという……。
2015-03-03(火) [長年日記]
■ 結婚記念日にうかい亭でランチ
えーと、結婚記念日ですね。22周年?
結婚してからずーっと相模原市の南部に住んでいるのに、一度もうかい亭に行ったことがないので、そこでランチにしようということになった。歩いて30分くらいなので、腹減らしをかねて徒歩で。うかい亭に歩いて行く人なんているのかな(笑)。
「そういえば鉄板焼きは日本の料理だね」などといいながら舌鼓。デジイチ持って行かなかったので写真はイマイチだけど、どれも美味しかった。とくにステーキ、サシの入り方が過剰でない赤身の美味しいサーロインで、刻んだわさびと少し温めた醤油とのマッチングが絶妙。思わず一切れ食べてしまったので写真には四切れしか写ってない。
別室でデザートをいただいてから、(わりと酔っ払ってしまったので)帰りはタクシーで。満足まんぞく。
2015-03-02(月) [長年日記]
■ 第一tDiary.Netの移転を始める
この日記をHerokuに移してからしばらく運用してだいぶ感じがつかめてきたので、第一tDiary.Netの移転を始めることにした。といっても数に限りがあるので、まずは現状で頻繁に日記が更新されてるところだけ。
……でもまぁ、↑のアナウンス自体が数年ぶりなので(その間なんのトラブルもなく運用できていたのでまぁたいしたものだ。アップデートもさぼってたけど)、そもそもユーザに気づいてもらえないと思う(笑)。まぁ、ぼちぼち連絡とりつつ進めよう。
◆ sorah [git の「もしかしてこれ? あと n 秒したら実行するよ」機能もよいです。 (git-config(1) help..]
◆ ただただし [その機能は知らなかったが……なんかウザい気がするw]