ミームの死骸を待ちながら

We are built as gene machines and cultured as meme machines, but we have the power to turn against our creators. We, alone on earth, can rebel against the tyranny of the selfish replicators. - Richard Dawkins "Selfish Gene"

We are built as gene machines and cultured as meme machines, but we have the power to turn against our creators.
We, alone on earth, can rebel against the tyranny of the selfish replicators.
- Richard Dawkins "Selfish Gene"

DBCLS後のHashthonでMac OS XのTerminal改造したりとか


たまたま金曜日にハチロク世代なDBCLSの変態*1リサーチアシスタント達がそろった。朝からバイトして、お仕事的にはもう1.5時間あれば一段落ついたのに...という微妙な区切りで後ろ髪を引かれつつ上がり、秋葉原で焼き鳥を食って、真澄おいしいです\(^O^)/となって、その後ゲーセンでビーマニドラムマニア・ユービート・太鼓の達人などの音ゲーに興じた。その後、id:mickey24, id:blanc_et_noir, id:syou6162, id:yag_ays、なぜか日付が変わってから合流したid:beatinaniwaの5人が僕の家に来て夜通しMacbook*2をいじり続けるHashthonをやった。田園都市線が人身事故で遅れて家に着いたのが2時でもなぜか元気。ワークライフバランス(違
今回は、特にmickey24先生にいろいろと教えてもらったのでメモ。あと今回書かないけどgitを使えるようにした(まとめるかどうかは不明)。

SIBMLによるターミナル改造計画

id:mickey24の操作がいちいち神掛かっている*3ので、できる範囲で神の技を盗んだ。まずSIMBLというフレームワークプラグイン?をインストールするところから。その上にいろいろと便利なプラグインをのせることができる。


Terminalのパネルに、VisorとTerminalColoreopard (Color Preferences...)の設定項目が追加されています。

Visor


Visor by BlackTree

これはものすごくかっこいい。動いている場面を見せないと感動がわからないんだけど、あらかじめ指定したホットキーでターミナルが画面上部から「しゅいん」とスライドしてくる。不要になったらまた「しゅいん」と上に戻す。なんかスーパーハカーになった気分!mickey24に倣って、Ctrl+Uをホットキーに設定してみた。


TerminalColoreopard


黒い背景にANSIカラーの青文字だと、とても見づらかったりします。他のANSIカラーもけばけばしくてちょっとよろしくありません。そこで、Terminal上のANSIカラーをいじれるTerminalColoreopardというSIMBLEプラグインを導入。こんなかんじになりました。

うん、マイルドになった。もうすこし色を薄めにして今は使ってる感じ。


カッコ良く表示させるための.bashrc設定


プロンプトの色を変える。このへんを参考に。ポイントは、PS1という環境変数をいじるとこ。たとえばこんなのも。\eは\033と同じで、エスケープを示す。

export PS1="\[\033[037;041m\]\e[04m[\t]YUKI.N(\!)>\e[00m \[\033[0m\]"

プロンプトの背景色も指定できるあたりがうれしい。今まで、たまに実行結果とプロンプトの色がまざってわかりにくかったので、これは重宝するなー。むしろ今までよくこの設定なしでやってきたものだ。

c.f.使えそうなPS1パラメータ抜粋。

\d "曜日 月 日"のフォーマットによる日付け
\H ホスト名
\n 改行
\t 24時間制の HH:MM:SS のフォーマットによる時間
\@ am/pm をつけた12時間制のフォーマットによる時間
\u 現ユーザーのユーザー名
\w 現在のディレクトリ
\W 現在のディレクトリのベース名
\! 現在のコマンドのヒストリー番号*4
\# 現在のコマンドのコマンド番号*5


ヒストリーの保存MAX値はHISTFILESIZEで指定する。500になってたのでとりあえず1000にしておいた。ちなみにalias hig='history | grep 'というエイリアスを設定してるんだけど便利です。


bashzshの右プロンプトを強引に再現

mickey24はターミナルの右端に情報(時間とか)を表示(アイキャンディというらしい?)していたのだが、これはzshの機能でありbashで実現不可能らしい....とか思ってたら無理矢理再現できたww

export PS1=" (長いスペースを入れる) \[\03 3[037;041m\]\e[04m[\t]\n \$ \e[00m \[\033[0m\]"

要するに、一行目は空白を入れまくって、右端に情報が表示されるように調節。そこで改行(\n)して、二行目にはプロンプトの端っこ($とか>とか)だけを表示。これで擬似的アイキャンディの完成ww 問題はスペースの数を適当に調節するあたりだけど、個人的にはディスプレイ幅に固定しているので問題ない。汎用性とか無視してるあたりどうなの。まあいいか。今の所こうしてる。

export PS1=" (長いスペースを入れる) \[\033[037;041m\](\!)[\t]\n\[\033[037;042m\] [\W]\u ->\e[00m \[\033[0m\]"

PROMPT_COMMAND


次に。PROMPT_COMMANDという環境変数の存在を知る。こいつを指定してやると、bashコマンドが「プロンプト表示直前」に毎回実行される模様。何かコマンドを打ち込んで、反応して、そして自分に操作が戻ってくる直前に実行される模様。これも情報表示に使えそうだ。たとえば、プロンプトに現在のディレクトリを表示すると、しょっちゅうプロンプトの長さが変わって落ち着かない、とする。こんなときPROMPT_COMMAND="pwd"とか設定するといいかもしれない。他に使い道あるかな...。


次にやりたいことなど
  • screenコマンドを使いこなす
    • id:sayamatcherさんとid:mickey24が口を揃えて「これがないとやってられない」という。今日勉強するつもりだったけど追いつかず。
  • 大学のスパコンにgit導入
  • 色にこだわり出してしまうとキリがない!
    • vimで、ビジュアルモードの選択色を指定する
    • vimで、複数ファイルsplit表示したときのセパレーター色を設定
      • <=この青い部分

*1:内部では褒め言葉

*2:+一部Thinkpad

*3:ように僕には見える

*4:$HISTFILESIZEのMAXまで蓄積されたhistory+今回打った数

*5:今回打った数