タグ

ブックマーク / memo.sugyan.com (4)

  • ターミナル操作の記録(ttyrec)からGIFアニメを生成するツールを作った - すぎゃーんメモ

    ttyrec で録画したデータを使ってターミナル上で再生しつつ、そのスクリーンキャプチャを使ってアニメーションGIFを生成するツールをGoで作ってみた。 https://github.com/sugyan/ttygif Releases Mac, Linux Desktopで動作。再生速度はオプションで変更可能。 背景 percolを使ってターミナル操作を早く、便利に。 - すぎゃーんメモ のような記事を書いたりする際に、ターミナル操作を録画してGIFアニメにしたい需要があり。 そういった用途に使える汎用のデスクトップ録画ツールとしてはLICEcapやGifzoなどがある。 Cockos Incorporated | LICEcap http://gifzo.net/ これらはWindows, OSXあたりが対象で、Linuxの場合はまた他のツールがあるらしい(よく知らない)。 汎用的なキ

    ターミナル操作の記録(ttyrec)からGIFアニメを生成するツールを作った - すぎゃーんメモ
    Jxck
    Jxck 2014/07/21
    おお、ホントに完成していた!!
  • Goで全裸 - すぎゃーんメモ

    Pure Go で辞書同梱な形態素解析器 kagome を公開してみました - Qiita という記事を見て、「Go形態素解析できれば @zenra_bot もGoで作れる!」と思い、とりあえず全裸にするやつ作ってみた。 https://github.com/sugyan/go-zenra やってることは 全裸で形態素解析をするスクリプト - すぎゃーんメモ と同じで。 Kagome が MeCab と同様に形態素解析してくれる(同じ辞書を使っているらしい)ので、基的にはそれを使って動詞の前に「全裸で」を挟み込むだけ。 $ go get github.com/sugyan/go-zenra/cmd/zenrize $ echo 'Goを書いてます' | zenrize Goを全裸で書いてます $ cat input.txt そうだ!嬉しいんだ生きる喜び たとえ胸の傷が痛んでも 何の為に

    Goで全裸 - すぎゃーんメモ
    Jxck
    Jxck 2014/07/11
    全裸でGo
  • #isucon 2013で優勝しました - すぎゃーんメモ

    第三回 ISUCONの選に、参加しました。予選から引き続き、@kazeburoさん、@tagomorisさんとの「LINE選抜チーム」。 #isucon 2013予選に参加した - すぎゃーんメモ 第三回 #isucon 選リアルタイムフォトレポート【更新終了】 : ISUCON公式Blog 結果はなんと、優勝!! おや、優勝2回目だ。→第1回のとき タイムライン 予選のとき同様に、自分の手元にある記録と記憶を辿ってどんな雰囲気だったか書き残してみます。間違っていたらゴメンナサイ。 使用言語はPerlです。 〜10:00 出社…じゃなくて会場入り。ちゃんと前日に早寝したので寝坊せずに済みました。 〜11:00 開会待ち。早くきすぎた、でも他の参加者さんたちも早くからしっかり集まってる。 ルール説明。ストーリー仕立てで緊張感が走る。画像系サービスか〜。 11:00〜 開始。用意されたのは

    #isucon 2013で優勝しました - すぎゃーんメモ
    Jxck
    Jxck 2013/11/11
    おめでとうございます!
  • 任意の要素数の密な配列を生成するスニペット - すぎゃーんメモ

    Perlだと、 use Data::Dumper; my @hoge = ("fuga") x 5; print Dumper \@hoge; __END__ $VAR1 = [ 'fuga', 'fuga', 'fuga', 'fuga', 'fuga' ]; みたいな感じでx演算子を使って任意の個数の密な配列を簡単に作ることができるのだけど、JavaScriptではどうしたら良いのだろう?と。 new Array()で任意のサイズの配列は作れるけど、中身が無くて各要素に値を入れることができない。 $ node > new Array(5) [ , , , , ] > new Array(5).map(function () { return "fuga" }) [ , , , , ]ただ、Array.joinを使って一度文字列を作ってsplit、とかやれば一応できる。 $ node >

    Jxck
    Jxck 2012/12/03
    Array(n+1).join(',fuga').split(',').slice(1); // golf
  • 1