タグ

ブックマーク / route477.net (22)

  • Route 477(2015-09-02)

    ■ [git] Gitで最新のコミットのハッシュを得る Dockerイメージをビルドする際に、gitのcommit hashをタグにしたかったのだけど、git HEADのcommit hashを得るコマンドが分からなかったので調べてみた。 以下でいけるらしい。 $ git log -1 --pretty=format:%h 1b234ab %Hにすると省略しないフルのハッシュを取得できる。詳細はgit help logの「PRETTY FORMATS」の項を参照。 ■ [ruby] YAMLで変数が欲しくなったときはアンカーとエイリアスが使えるかも 設定ファイルにYAMLを使っていて、以下のように同じ値が複数箇所に出てくる場合、変数か定数みたいなものが欲しくなる。かといってこれだけのために.yml.erbにするのはちょっとヘビーすぎる。 server: "1.2.3.4" app_env:

    Route 477(2015-09-02)
    N_T
    N_T 2015/09/05
    YAMLのアンカーとエイリアス
  • Route 477 - TRICKみたいなコードをどうやって思いつくのかを解説してみる

    ■ [ubuntu] Ubuntuにthe silver searcherを入れてみた the silver searcher(Ag)はgrepとかackとかrakみたいな検索ツール。速いらしい。 aptで入らないらしいので、ソースからコンパイルする。 $ git clone https://github.com/ggreer/the_silver_searcher $ cd the_silver_searcher $ aptitude install automake pkg-config libpcre3-dev zlib1g-dev liblzma-dev (READMEにあるとおり) $ ./build.sh agというファイルができるので、パスを通す。 あとは $ ag foo とかで、カレントディレクトリ以下の全ファイルから"foo"を探すことができる。 あと.agignore

    Route 477 - TRICKみたいなコードをどうやって思いつくのかを解説してみる
  • Route 477(2013-06-01)

    ■ [ruby][event] TRICK2013 結果発表、最もクレイジーで美しいRubyプログラムはこれだ! というわけでTRICK2013の結果発表が、昨日のRubyKaigi 2013最終日にて行われました。いいコンテストでしたね。 ustream録画:http://www.ustream.tv/recorded/33618033 結果発表スライド:http://www.slideshare.net/mametter/trick2013-results 入賞作品(github):https://github.com/tric/trick2013 優勝はkinabaさんの「すべての文字を1回ずつ使って、すべての文字を1回ずつ表示するプログラム」でした。おめでとうございます。 !@THEqQUICKbBROWNfFXjJMPSvVLAZYDGgkyz&[%r{\"}mosx,4

    Route 477(2013-06-01)
  • Route 477(2013-04-01)

    ■ [ruby] RubyでUTF8-MACUTF-8に直す プレビュー.appからMacVimにコピペしたら、「はじめに」が「はし゛めに」みたいになってしまって困ったので、 Rubyのワンライナで直してみた。 $ ruby -e 'print File.read(ARGV[0], encoding: "utf8-mac").encode("utf-8")' a.txt > b.txt Ruby(>= 1.9)便利。 ■ [ruby] RubyでMagic commentが必要なファイルを列挙する Ruby 2.0からスクリプトエンコーディングのデフォルトがUTF-8になったので、文字列リテラルに日語を使うときもマジックコメントを書かなくて良くなりました。 …というのは嬉しい変更なんですが、そうすると今度は「手元のRuby 2.0では動いてるけど、サーバのRuby 1.9.3で動かした

    Route 477(2013-04-01)
    N_T
    N_T 2013/04/02
    $ ruby -e 'print File.read(ARGV[0], encoding: "utf8-mac").encode("utf-8")' a.txt > b.txt
  • Rubyのpデバッグは「p x: x」のようにすると良い

    ■ [ruby] Rubyのpデバッグは「p x: x」のようにすると良い Rubyプログラムのデバッグ中はpメソッドで変数の値を表示したりしますが、普通に「p x」とか書くと、画面に 3 とだけ表示されたりして、何が3なのか分からなくなってデバッグが進まない…みたいなことありますよね。 そこで、Ruby 1.9から導入されたハッシュの記法を使って p x: x みたいに書くと、これは p({:x => x}) と同じ意味なので、デバッグ出力が {:x => 3} みたいになって、ああ変数xに3が入ってるんだなと分かりやすくなります(かつタイプ数もそれほど増えない)。*1 変数が複数のときは p x: x, y: y みたいにします。

    Rubyのpデバッグは「p x: x」のようにすると良い
    N_T
    N_T 2013/02/07
  • Route 477(2012-02-15)

    ■ [ruby] 例のリファレンスマニュアルのやつ いまこんな感じになってます。 http://blazing-ice-2849.herokuapp.com/ja/Array/%2B 右上のセレクトボックスで英語と日語を切り替えられます。 検索ボックスはまだダミーです。 内容はまだいろいろバグってます。 デザインはmiyamaeさんのchm風のやつをとても参考にしています。 何をやろうとしているのか 英語・日語のリファレンスマニュアルが両方見れるWebサイトを作ろうとしています。 Rubyのリファレンスも、php.netみたいに言語を切り替えて表示できるべきじゃね? そしたら日英以外の言語へ翻訳するモチベも上がるんじゃね?っていう話です。 Rubyのリファレンスは、歴史的経緯で、日英が全然別のツールで書かれてるんですよね。英語は、Rubyのソースコード中にrdoc形式で埋め込まれている

    Route 477(2012-02-15)
    N_T
    N_T 2012/02/17
  • Rubyの次世代リファレンスマニュアルを構想する会をやりました

    ■ [ruby][event] Rubyの次世代リファレンスマニュアルを構想する会をやりました 参加者のみなさまありがとうございました。 http://partake.in/events/eb5eeeff-8d60-406d-a4e5-ac3c479a4b88 以下は議論のメモです。(まだぜんぜん整理できてなくて混沌としていますが…) とりあえず1/31が「中間報告」なので、それまでに何か動いて見せられるようなものを作りたいと思います。ソースはgithubに置きます。 ゴール 1. 日英以外への翻訳をやりやすくしたい * 何から始めれば良いかわかること * 一時的に翻訳して終わりではなく、最新版に追従していくのを助ける手段があること * 成果物が便利な形で利用できること(web, cli等) 2. 日英版を「統一」したい * 現状は、リファレンスサイトに何か機能を追加する場合に (例えば、

    Rubyの次世代リファレンスマニュアルを構想する会をやりました
  • Route 477(2011-05-29)

    ■ [book] WEB+DBRuby連載が終了しました もう一ヶ月前のことになりますが、WEB+DB Vol.42は1年間のRuby連載の最終回でした。連載が終わってから、完全に脱力してしまって、報告記事が書けませんでした(笑)。 4774146072 内容は「ブラウザGUI」の話です。「ブラウザを使ってGUIアプリを作る」という(yharaウォッチャーにとっては、いつもの)説明と、 RubyStationの作り直し版としてSpellbookを作った話を書きました。 しかしfladdictさんのやつと名前が被ったりして、非常に残念な…。 まあ僕としては便利に使っているので良しとしましょう。万が一「もっと詳しく聞きたい」という方がいれば別に記事を書きます。 スクリーンショット。 3つめのNicoShiftsというのは、最近ニコ生 (ニコニコ生放送) 中毒が高じて作ってしまったツールです。

    Route 477(2011-05-29)
    N_T
    N_T 2011/05/30
  • Route 477(2011-04-27)

    ■ [ruby] Chromeからruby-devのメールを簡単に開く方法 以下の設定をすると、Omnibarに ruby-dev (スペース) 40000 と打つだけで http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/40000 が表示されるようになる。 Chromeの設定画面を開く 基設定→検索→検索エンジンの管理... 一番下のフォームに「ruby-dev検索」「ruby-dev」「」のように入力してEnter 応用として、「%s」を含まないただのリンクを登録すれば、ブックマーク代わりにも使える。 追記 各種Ruby MLやredmine等に飛ぶ.htaccess設定 - jarp,

    Route 477(2011-04-27)
    N_T
    N_T 2011/04/29
  • Route 477(2011-01-13)

    ■ [git][ruby] github gemからgit-hub gemに乗り換えた 自作のプロジェクトgithubで公開するとき、わざわざWeb画面からリポジトリを新規作成していませんか?hubコマンドをインストールすれば、「hub create」一発でできますよ。 githubのリポジトリをコマンドラインから操作するのにgithubコマンド(github gem)を使っていたのだが、ある時からcreate-from-localが動かなくなってたり、Ruby 1.9に未だに対応してなかったりするので おかしいなと思ったら、もっと新しいツールがあったらしい。 https://github.com/defunkt/hub $ gem install git-hub でインストールすると、hubというコマンドが使えるようになる。例えば現在のディレクトリからgithubリポジトリを新規作成す

    Route 477(2011-01-13)
    N_T
    N_T 2011/01/13
  • Route 477(2010-09-30)

    ■ [ruby] Rubyで書かれたミニマルなブログエンジン、toto http://cloudhead.io/toto Sinatraすら使わず、Rackのみで実装されている 記事のバージョン管理はgitで 記事のマークアップはmarkdownで(変更可能らしい) コメントはdisqusで サーバはThinなりPassengerなりunicornなり(CGIもいけそうな気がする) 記事はテキストファイルに書く 最初の数行にメタデータ(タイトルとか)を書く。 独自のメタデータを書いて、ERBテンプレートからそれを表示するようなカスタマイズも可能 データベースが不要で、テキストファイルを編集してgitでpushするだけっていうシンプルさが良いかも。 使い方 すぐに使い始められる状態になったものがgithubのcloudhead/dorothyにあるので、それをcloneする。 Heroku

    Route 477(2010-09-30)
    N_T
    N_T 2010/09/30
  • Route 477(2010-09-01)

    ■ [ruby] myruremaに「るりまを書くための機能」を追加しました myrurema 0.1.0をリリースしました。 http://github.com/yhara/myrurema @kakutani の発表でみんなが自分のできることを探しているみたいなので、 るりまをやるといいよ!とつぶやいておきます #Rubykaigi [Twitter / okkezより引用] というわけで、0.1.0では、るりまプロジェクトに手軽に参加できる機能として、リファレンスのプレビュー機能を付けました。 インストール: $ gem install myrurema $ rurema --init #しばし待つ $ rurema Array #リファレンスが表示される プレビューしてみる: $ `rurema --preview` #リファレンスの原稿があるディレクトリに移動する $ rurem

    Route 477(2010-09-01)
    N_T
    N_T 2010/09/03
  • Route 477(2010-07-10)

    ■ [ruby] Ruby 1.9と波ダッシュ問題に関するメモ ややこしすぎるのでメモ 参考資料: http://gihyo.jp/dev/serial/01/ruby/0004 http://mkosaki.blog46.fc2.com/blog-entry-130.html http://blog.livedoor.jp/dankogai/archives/50488765.html 超参考書: 477414164X UnicodeにはWAVE DASH(U+301C)という文字がある(波ダッシュ) 波ダッシュは、「0時から6時」みたいなときに使われるアレ UnicodeにはFULLWIDTH TILDE(U+FF5E)という文字もある(全角チルダ) チルダは、ダイアクリティカルマーク*1の一種。スペイン語でnの上に付いたりするやつ 見た目はだいたい同じ フォントによっては、波打ち方が

    Route 477(2010-07-10)
    N_T
    N_T 2010/07/12
  • Route 477 - 1.9のスレッド , ruremaコマンドでローカルWebサーバを起動できるようになった , 毎回「git」と打つのが面倒な人のためのツール、reposh 0.1.8をリリースしました , ネット上から消失した

    ■ [ruby][memo] 1.9のスレッド pros Tkなどのネイティブスレッドを使うライブラリとの相性が良くなった コンテキストスイッチが速い cons スレッドを作ったときにスタックが固定量確保されるので: stack level too deepになる限界が早くなった (動かさない)スレッドを大量に作った場合にもメモリ消費が大きい まあどちらかというとFiberの方が活用された気もしますが… ■ [ruby] ruremaコマンドでローカルWebサーバを起動できるようになった るりまの私家版コマンドラインツール、myruremaをバージョンアップしました。 http://rubygems.org/gems/myrurema るりまの公式ツールであるbitclustには、ローカルでサーバを起動して、Web版と同じ画面をブラウザで見られるという機能があります。 今回のバージョンアッ

    Route 477 - 1.9のスレッド , ruremaコマンドでローカルWebサーバを起動できるようになった , 毎回「git」と打つのが面倒な人のためのツール、reposh 0.1.8をリリースしました , ネット上から消失した
    N_T
    N_T 2010/06/22
  • Route 477(2010-03-16)

    ■ [ruby] Ruby meets Manpage manは、Unix系OSで一般的に使われているドキュメントシステムだ。 これを、Rubyのgemに対しても応用できないかという試みが現れた。 その名もgem-man。 gem install gem-man とすると、 gem man <gem名> でそのgemの説明が見られるようになる。例えば gem man gem-man とか。 ライブラリ作者の側では、gemを作る際にman/以下にmanのファイルを置けばいい。 manファイルの作り方はman whatが参考になりそう (ronnを使う例が載っている)。 おまけ http://man.cx/ruby : ネットでmanを引けるサイト。

    Route 477(2010-03-16)
    N_T
    N_T 2010/03/17
  • Route 477(2010-02-18)

    ■ [javascript][link] .sort.call(null)の深淵 - 素人がプログラミングを勉強するブログ JavaScriptで、 [].sort.call(null) がwindowに評価されるのはなぜ?という話。 callにnullを渡すと、thisがwindowになる Arrayのsortは、ソートするものがないとき(つまり、lengthがundefinedか0か1のとき)はthisを返す ということからwindowになると。へぇ。 ただしフレームを使ったサイトの場合、window.lengthが2以上になって上のような挙動にならなかったりするらしい。 ■ [ruby] Hash、Mash、Dash Hashieは、Hashと似たような(?)MashとDashというクラスを提供する。 http://github.com/intridea/hashie/ Mashはo

    Route 477(2010-02-18)
    N_T
    N_T 2010/02/20
  • Route 477 - Ruby Advent Calendar jp: 2009 まとめ

    ■ [ruby] irbで自動で再requireしたい irbでrequire 'foo.rb'する エディタでfoo.rbを書き換える irbでプロンプトを表示するタイミングで、foo.rbが書き換わってたらload foo.rbする みたいな仕組みを作ると試行錯誤がやりやすくて良さそうな気がした。 ■ [ruby][event] Ruby Advent Calendar jp: 2009 まとめ 無事終了しました。参加された皆さんと、読んでくれた皆さんに感謝。 Ruby Advent Calendar jp: 2009 : ATND いま数えたら、全記事トータルで438ブックマークですよ。凄いね。 どんな記事があったかおさらいしてみましょう。 Day 1 - Standards: Write Implementation and Spec on the Same File [Test]

    Route 477 - Ruby Advent Calendar jp: 2009 まとめ
    N_T
    N_T 2009/12/28
  • Route 477(2009-11-30)

    ■ [ruby] Ruby Advent Calendarやりましょう PerlのがうらやましかったのでATNDRuby版のイベントを立てました。 Ruby Advent Calendar jp: 2009 ● Advent Calendarとは? クリスマスまでの日数を数えるために、1日に1つ、穴が空けられるようになっているカレンダーです。転じて、技術系コミュニティで、クリスマスまでの25日間にTipsを1つずつ公開するイベントをAdvent Calendarと呼ぶそうです。 ● ルール Rubyに関するTipsをひとつ、特定の日に、自分のブログにアップロードしてもらうだけです。 執筆順は、このイベントに参加した順です。最初の人が12月1日、2人目が12月2日…と続いていって、最後の人が12月25日です。 [Ruby Advent Calendar jp: 2009 : ATNDより引

    Route 477(2009-11-30)
    N_T
    N_T 2009/12/01
  • Route 477(2009-11-12)

    ■ [ruby] CSSのような概念を取り入れたJRuby用GUIライブラリ、Limelight LimelightはJRuby上で動くクロスプラットフォームなGUIライブラリだ。 詳細はチュートリアルを見て欲しいが、画面の定義(prop)と: backdrop :background_color => "black", :width => "100%", :height => "100%" do sample :width => 100, :height => 100, :background_color => "red", :text => "red" selection :id => "the_selection", :width => 300, :height => 300, :background_color => "gray" end 見た目の定義(style) を分けるのが面

    Route 477(2009-11-12)
  • Route 477(2009-10-28)

    ■ [ruby-station] デスクトップアプリのGUIとしてブラウザを使う、というアイデアを実用化するRubyStation 0.1.5リリース RubyStationの(事実上、最初の)リリースである 0.1.5 を公開しました。 インストール方法は、なんか公式サイトとか作っちゃったんでそっちを見て下さい。 http://yhara.github.com/ruby-station/index_ja.html できること: インストールし、起動することができます(当たり前か) アプリケーションを入れて遊ぶことができます アプリケーションを書いて遊ぶことができます もちろん、全ての操作はブラウザ内で完結します 1月や7月にはいろいろ喋りましたけど、一つだけ伝えられるとしたら何か?と考えた結果、 「ブラウザをデスクトップアプリのGUIにするのだ」というアイデアに絞った説明になりました。

    Route 477(2009-10-28)