アラのアラアラしい日記

こっそりかいてます

コマンドから突然のジェネレータつくりました

とても久しぶりの投稿です。

夏に負けていました。

最近メッセなどでもよく使うのでcommandから突然のアレをつくれるようにしました。
しにたいとおもいます。


f:id:wknar0311:20140907023116p:plain

$ sudden okome

こんな感じで出来るようにしました。


まず、引数からバイト数を取得します。
文字数ではなくバイト数にしてるのは半角と全角でフレームの大きさが違ってしまうからです。

aliasで引数の取得は出来ないのでfunctionをつくります。

function sudden {
  byte=`expr length "$1"`
}

地味にハマったのですが、環境によってexpr lengthはダブルクォーテーションつけないと読んでくれないことがあって、構文エラーになります。


上のフレームが「人」
真ん中「> okome <」
下「Y^」

それぞれ2byte, 2+1+1+2byte, 2byteあるので、
それに沿って適当に割ったり足したりをします。

function sudden {
  byte=`expr length "$1"`
  frame=`expr $byte / 2 + 2`
}


このframeという変数を使って、枠を表示させていきます。

c=0
while [ $c -ne $frame ]
do
  echo -n "人"
  c=`expr $c + 1`
done


あとはその他をいい感じに表示させるだけです。

最終的にこんな感じになりました。

gist7db337ce7146c1b703e8
狂気の沙汰っぽくなりました。



という訳で、結果です。


f:id:wknar0311:20140907023625p:plain
okome!!!!


f:id:wknar0311:20140907023630p:plain
onigiri!!!!


f:id:wknar0311:20140907023634p:plain
ア!!!!



おしまい!健康大切に!

xclipがいい感じ

こんばんわ夏ですね。

暑いので保冷剤を持って会社に行こうとしたら家を出た瞬間に溶けました。



今回はコマンドの結果をクリップボードにコピーするように使えるコマンドを知ったので書きます。

xclipです。Macでいう、pbcopyのような感じで使えます。



http://i.gyazo.com/5b60cccfae76583a265ec66cbbc667c6.png
こんな感じで、結果をコピーしたいコマンドのあとにパイプでxclipして、


http://i.gyazo.com/a1212225926f067c72ff25b385ed4ebf.png
option o で出力してくれます。




http://i.gyazo.com/fb5c7df16ed4bbd51ad865587f47b9a1.png
色んなオプションがあります。



ただ、xclipは長いので、xcでaliasつけました。



ちなみに、このxclip、まじで普通のクリップボードの役割を持っていて、

http://i.gyazo.com/5f6e951d493869641fac99b902407011.png
どこかからコピーしてきた文字もちゃんと拾ってくれます。




おしまい!おやすみニッポン。

promptでコマンド実行毎に終了ステータスを表示する

今回もbash promptの話です。

先日のprompt設定に付け加えて、
実行する度に成功失敗を取得して結果を表示するようにしました。

とても簡単に出来ます。


gist5f99d08f17cb3f67039d

↑これだけです。

ちなみに、使っている絵文字はdebian系で文字化けせずに表示出来るようです。


http://i.gyazo.com/7ebadc0fd1b8904b63641024094a434b.png
↑こんな感じになりました。かわいいです。



今日はメンテナンスなので休日出社です(白目)

bashのプロンプトでgit branchとstateを表示させる

すごく寝不足なので一瞬で書きます。

oh-my-zshのthemeが素敵だなーと思っていたら、

Git branch and dirty state in Bash prompt.
↑これを見つけたので、


↑書きました。



http://i.gyazo.com/572a24e0c982552c3299cd8287beec3e.png
↑こんな感じになりました。


http://i.gyazo.com/596e2863357a7eeeff95e986933d9c3a.png
↑編集すると、こんな感じでアスターつきます。



ただdirty stateの判定部分は正規表現とかにする必要がありそうです。
寝ます。

oh my zshをinstallしてハラショーな気分になってみる

ハラショー!!

ついに足を踏み入れてしまったので、
泣きながらoh my zshubuntuへのインストール方法書きます。
一瞬で読み終わります。

まずはzshをインストールします。

$ sudo apt-get install zsh


ただ、ubuntuの場合、zshインストールだけだとCtrlPが使えなかったり、
おかしな動きをすることが多いです。
あと、自動でzshの設定ファイルを作ってくれません。

なのでoh my zshをインストールして、command lineを見やすくするとともに、
設定ファイルもちょろっと作ってもらっちゃいます。

$ sudo apt-get install git-core
$ wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | zsh


oh-my-zsh/tools/install.sh at master · robbyrussell/oh-my-zsh · GitHub
ここがgithubページです。


こうすると、
http://i.gyazo.com/286e12790abe9f9c6d9b369c255d8eb4.png
いきなりファンシーなpromptになります。(何度かEnter押してます。)
home直下に.zshrcも出来ています。


他にもたくさんのファンシーなテーマがあります。
Themes · robbyrussell/oh-my-zsh Wiki · GitHub


ここから好きな名前を選んで、
.zshrcを編集します。


中に、

ZSH_THEME="robbyrussell"

という行があるので、ここの"robbyrussell"を変えます。


私は"ys"というテーマを入れました。
http://i.gyazo.com/85e6c560669a45ce0a8090a75af875af.png
ナイスファンシーです。gitのbranchとかstatusも表示してくれちゃってます。

~/.oh-my-zsh/themesに一覧が入っているので、
編集したり追加してみるのもアリっすね。

zshが気に入った人はzshをデフォルトにしちゃってもいいですね。

% chsh -s `which zsh`


おしまい。