タグ

ブックマーク / rubikitch.hatenadiary.org (27)

  • githubデビュー→いきなり挫折→解決 - http://rubikitch.com/に移転しました

    gitが便利らしい。Emacsでも使えるらしく、egg.elがgitEmacsインターフェースということがわかった。なかなかよいとの情報なので使ってみようと決心した。 ということでさっそくgithubに登録してみた。freeでも100MBも使える。すげー。w3mからでも問題なくアカウントが作れた。 分散バージョン管理システムはdarcsを使ったことがあるので未経験ではない。gitはcloneで最新版ソースを取ってくるくらいしか使ったことがない。 さっそく問題発生。チュートリアルに「git config」せよと書いてあるが、「git: 'config' is not a git-command」と怒られてしまう。ぐぐってもgit configだらけ。まいった>< とりあえず無視してテストリポジトリを作成しようと「git init」をやってもinitコマンドがないと怒られた><>< init

    githubデビュー→いきなり挫折→解決 - http://rubikitch.com/に移転しました
    n2s
    n2s 2008/12/23
    つetch-backports
  • Emacsで連番を挿入する方法 - http://rubikitch.com/に移転しました

    連番テキストを生成する機会というのはけっこうあると思う。Emacsにおいて連番を入力する方法を考える。シェルコマンドを使う方法は他のエディタにも応用できる。 ここでは3つの連番だが、多くなっても対応できる方法を挙げる。 (1)〜(3)を入力する (1) (2) (3) (require 'cl)した状態でloopマクロを使う。loopマクロはいろいろなループを表現する強力なLispマクロだ。書式が複雑化しても対応できる。 M-: (loop for i from 1 to 3 do (insert (format "(%d)\n" i))) シェルコマンドのseqコマンドとprintfコマンドを使う。seqコマンドで1〜3を各行に出力する。printfコマンドで引数を多く与えた場合は書式文字列が再利用される性質を利用している。zshの場合は後者も使える。 C-u M-! printf '(

    Emacsで連番を挿入する方法 - http://rubikitch.com/に移転しました
  • もっと金くれや問題 - http://rubikitch.com/に移転しました

    send more money - krystal: プログラミング超初心者(文系) - Rubyist send + more = money を満たすそれぞれ異なる 0 以上 9以下の数 s, e, n, d, m, o, r, y を求めよ。(ただし s, m は 0 でない) いかにも中学入試に出そうな問題。 Ruby 1.8.7以降ではArray#permutationが導入されたのでそれを使う。 (0..9).to_a.permutation(8) do |s, e, n, d, m, o, r, y| next if s == 0 or m == 0 send = s*1000 + e*100 + n*10 + d more = m*1000 + o*100 + r*10 + e money = m*10000 + o*1000 + n*100 + e*10 + y prin

    もっと金くれや問題 - http://rubikitch.com/に移転しました
    n2s
    n2s 2008/12/11
    Array#permutation
  • Rubyでwebにアクセスするならhttpclientが手軽 - http://rubikitch.com/に移転しました

    http://d.hatena.ne.jp/willnet/20080626/1214487378 httpclientはopen-uriの手軽さと、Net::HTTPの機能を両立させてる使い勝手のいいライブラリだ。クッキーやkeep-aliveもサポートしている。ただし、Ruby 1.9未対応。Ruby 1.9だとParseDateなんてないぞーってエラーがでてしまう。→最新版でRuby 1.9対応 POSTの場合はpost_contentを使う。串、User-Agent、FromヘッダはHTTPClient.newの引数で。 require 'rubygems' require 'httpclient' require 'kconv' hc = HTTPClient.new query = "ruby" html = hc.get_content("http://www.google.

    Rubyでwebにアクセスするならhttpclientが手軽 - http://rubikitch.com/に移転しました
    n2s
    n2s 2008/06/28
  • Ruby 1.8.7で使えるようになったRuby 1.9のメソッドたち - ’(rubikitch wanna be (a . lisper))

    Ruby 1.8.7ではRuby 1.9からのbackportがとても多い。つまり、Ruby 1.9のあのメソッドがRuby 1.8でも使えるようになったということだ!! これがすごいという機能がもりだくさん、ちょっと大人になったRuby 1.8をお楽しみに。 Enumeratorは組み込みになり、eachなどのイテレータメソッドはブロックをつけないとEnumerable::Enumeratorを返すようになった。おかげでブロック付きメソッドの柔軟性が飛躍的にアップ! expectationsテスティングフレームワークによるテストで書いているので「gem install expectations」してから実行してみよう。手軽にユニットテストが書けるからおすすめ。書式は…見ればわかるよねw ChangeLogで現在からRuby 1.8.6リリースまでを読んだので、ほとんどカバーしていると思わ

    Ruby 1.8.7で使えるようになったRuby 1.9のメソッドたち - ’(rubikitch wanna be (a . lisper))
  • Ruby初心者〜初中級者が読むべきコードについて - ’(rubikitch wanna be (a . lisper))

    Rubyの初心者にたいして「これは読むべき」だと思うコードを教え… - 人力検索はてな 今北産業ではないが超要約してみる。 Ruby初心者はまず文法や基的なクラスを習得せよ。 初級者ならばmailread.rbなどの簡単なライブラリを読んでみよう。 中級くらいからはWEBrickやBitChannelのソースがよい。 そして、なんといっても、力をつけたいならばソースを改造してみるのが一番だ。改造するんだからソースを理解しないといけないし、書く力も養われる。俺は「興味あるプログラム、気に入ったプログラム」をおすすめする。なぜなら、好奇心があるからモチベーションを保ちやすい。 やっぱり改造一番だよなぁ…書籍のサンプルコードはスペースの関係でミニチュア版になってるし、あくまで「作られた例(contrived example)」に過ぎないんだよね。生きたソースコードにはかなわない、うん。 俺はe

    Ruby初心者〜初中級者が読むべきコードについて - ’(rubikitch wanna be (a . lisper))
    n2s
    n2s 2008/05/23
  • polipoのアルゴリズムがわからねえ - http://rubikitch.com/に移転しました

    個人使用のための軽量高速なウェブキャッシュサーバのpolipoを使っているんだが、どういう場合にキャッシュから呼ぶのかよくわからん。2GBも積んでるマシンだから50MBのメモリ領域を確保しているんだけどなぁ… chunkHighMark = 50331648 objectHighMark = 16384 読み込んだばかりのページをもう一度開く(リロードじゃなくて)とまたサーバにアクセスしとるし、メモリキャッシュって意味あるんかいな!? まぁw3mみたいにブラウザがHTTP 1.0しか対応してなくても、HTTP 1.1にプロキシ側で昇格してアクセスしてくれるし、パイプラインとかやってくれるから高速化してることには変わりないんだけど。 polipoがあるからw3mはHTTP 1.1を実装する必要はないし、GNU Screenがあるからasyncも不要。w3mは今のままでいてほしい。 それにつけ

    polipoのアルゴリズムがわからねえ - http://rubikitch.com/に移転しました
    n2s
    n2s 2008/03/05
    「polipoがあるからw3mはHTTP 1.1を実装する必要はないし、GNU Screenがあるからasyncも不要。w3mは今のままでいてほしい。」ツールボックスアプローチという言葉を思い出した。