Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

2012-01-01から1年間の記事一覧

grepとDir-Classを合わせて使う

grepは文字列から特定のパターンを切り出すメソッドです。 これとDirクラスを組み合わせればRubyスクリプト中で特定のファイル形式のみを引っ張りだして処理する事ができるようになります。 def find_rb Dir::entries("./").grep(/rb/) end といったメソッド…

each_with_indexに多重配列を渡すときに便利な事

each_with_indexは配列やhashをブンまわすときに便利なメソッドです。 これに多重配列を渡すときは毎回毎回ary[0],ary[1]のような感じで読み出ししていたのですが ary = [["Ichiro",23],["Jiro",21]] ary.each_with_index do |(name,age),count| puts %Q(#{c…

RgoogleMapsで簡単GIS

R gis

RgoogleMapsはR上でgoogle mapサービスを利用できる便利ライブラリです。たとえば、ある指定の位置をgoogle map上でプロットする場合は、以下のようにしますデータとして、gps.txt Longitude,Latitude 35.656092,139.544074を用意します。その後、plotMapTes…

便利なocraもcygwin1.dllがあると使えない

ocraはRubyスクリプトをexeにしてくれる便利スクリプトです。 他の人と共有したいスクリプトがあるけど、わざわざ環境構築させるのもなー……という場合には非常に重宝します。 導入法は簡単。 $ gem install ocra以上です。とっても便利ですが、忌々しい事に…

住民票を移していない学生さん、長期出張のお父さんお母さん、不在者投票制度がありますよ

みなさまこんばんは。 そろそろ選挙ですね。今までは毎回毎回田舎に帰って投票していました。 何気に皆勤です。 でも今回は仕事のクロージングやら卒論支援やらで、とても帰ることができず困っていました。そこで色々調べてみたところ、ありました。 不在者…

Arduino-pro-mini(5V)を使う

Arduino Pro Mini 328 5V 16MHz出版社/メーカー: スイッチサイエンスメディア: エレクトロニクス クリック: 4回この商品を含むブログ (1件) を見る Arduino pro mini を導入しました。 100円玉並みに小さいデバイスで、Unoでは組み込めないような隙間にもね…

sortとブロック(多重配列編)

多重配列も、Hashと同じ手順でソートすることができます。 ただ、配列に同じデータ型を放り込んでいた場合は注意が必要です。 最後の例にあるように、訳の分からない処理もできてしまいます。 >test_array = [ [22, 44, 67], [1, 0x43, 0b111], [98, 8, 3], …

sortとブロック(Hash編)

ブロック処理はRubyのカッコイイ所の一つです。 配列やハッシュに付属しているsortメソッドも、ブロックを使った処理ができます。 今回は、これについて少し調べてみましたので簡単にまとめます。 uec = {:unique => 0b101111, :exciting => 0x56, :campus =…

ボタンで文章を隠したり表示したり。

ボタンで文章を隠したり表示したりするコードを書いてみました。 ……車輪の再発明にすらなっていないという。 折角なので、ボタンの文章も変えてみました。 <html> <head> <title>サンプル</title> <script type="text/javascript" src="js/main.js"></script> </head> <body> <form> <input type="button" value="Show" onClick="showAndHide()" id="info_button"> </form> <div id="info"></div> </body></html>

setTimeoutで定期的にリロードする

Javascriptで、ページの特定の部分を書き換えるスクリプトです。 ただ読み込むだけでは芸が無いので、文字の色を一秒ごとに変える仕様にしてみました。 (仕事で書いた奴を少し改変しています。)なお、10進数=>16進数のスクリプトはKawanet Blog II様か…

ディレクトリ中の特定のファイルに対して、ある処理を実行したい場合

2013 / 10 / 26 追記 以下はバッドノウハウもいいとこです。 執筆当時の私のように血迷った事はしないでください(懇願Rubyが使える環境なら、基本的にUNIXコマンドを使えます。 バッククォートやsystem、execで実行できます。 ヒアドキュメントを使えば相当…

Rubyで外部コマンドを使う

Rubyでlsを叩きたいときは、 exec("ls -l") とやれば rw-r--r-- 1 shuzo_kino shuzo_kino 6646 2008-11-27 11:23 rails.png drwxrwxr-x 7 shuzo_kino shuzo_kino 4096 2012-11-08 12:30 rails_project drwxr-xr-x 8 root root 4096 2012-08-02 22:37 ruby-sd…

gitでディレクトリ構成を変更したい場合 (git mv)

git

前回の記事にて、その時点の知識でgitのディレクトリ構造の変更を試みたわけですが…… なんと、トラックバックさせて頂いたサイトの管理人kanonji様から、 もし、ファイルの位置を変えたいだけでしたら`git mv`というコマンドもありますよ。 という情報を頂き…

gitでaddしたファイルを非追跡にする方法。(あるいはディレクトリ構造を変更するイケてない方法)

git

やたら入り込んだ構造の成果物を、特に考えもなくフォルダごと"add"してしまいました。 が、毎度毎度ファイルパスを叩かないといけないので、非常に効率が悪い状況となってしまいました。 そこで今回は一度追跡対象にしてしまったファイルを一旦消し、別ディ…

case文でも正規表現が使えるんです(ドヤ顔)

よく仕様を読んでれば気づいたんでしょうけど。 というか、よんだはずの たのしいRuby 第3版作者: 高橋征義,後藤裕蔵,まつもとゆきひろ出版社/メーカー: ソフトバンククリエイティブ発売日: 2010/03/31メディア: 単行本購入: 15人 クリック: 394回この商品を…

git remoteでミスした場合の対処法

git

この記事ではBitbucketを想定していますが、他でも使えると思います。あらかじめbitbucketでリポジトリを作成した上で git remote add origin ssh://git@bitbucket.org/userName/repName.gitと叩けば、git のアップロード先を登録できるわけですが……当然人間…

Cygwinのホームディレクトリを変更

WindowsでUnixごっこが出来る素敵ツールCygwinですが、デフォルトのホームディレクトリはMydocumewnt等々から離れており非常に面倒です。 インストール終了し終わり次第、さっさと変更してしまいましょう。まずはCygwinが立ち上がっていないことを確認します…

ruby-progressbarで少し格好いいCLIに

ruby-progressbarは、その名のとおり進捗率をCLI上に表示してくれるgemです。入手方はお察しのとおり gem install ruby-progressbarです。*1基本的な使い方は以下の様になっています。 require 'ruby-progressbar' ##まずは初期化。タイトル(:title)や、初期…

Webサービス立ち上げ記録リンク集

今回は個人的備忘録の傾向が強いです。あしからず。9月14日に匿名はてブに登録された記事が話題になっています。 これには、プログラミング未経験のフリータ(という認識でいいのでしょうか?)さんが、独力でwebサービスを作った過程が記されています。 …

Rubyでsqlite3を使ってみる

sqlite3は、railsでも採用されている、軽量・高速なSQL形式の一つです。導入法はこちらの記事を参照してください。今回、以下のコードでsqlite3の基本的な流れを確認してみました。 # -*- coding: utf-8 -*- require 'rubygems' require 'sqlite3' ##データ…

compact 配列からnilを消す

compactはnilを消した配列を返してくれる関数です。 userName = ["foo", "bar", "foobar", nil] p userName.compact => ["foo", "bar", "foobar"] これを使うと、ファイル名を作製したい場合に少しだけ幸せになれます。 userName = ["foo", "bar", "foobar",…

each_with_objectで素敵なmap生活を!

ちょっと感動したので、メモ。 rubyのmapメソッドを使う際、先に読み込み元にオブジェクトを持たせる事で 格好良さ気なコードを書くことができます。 mapで読み込む際、持たせるオブジェクトの振る舞いを決めてやれば足し引き掛け算と自由自在です。 (もち…

著作権無法地帯

はい、東南アジアでは毎度お馴染み「著作権上等商品」でございます。まずはコチラ……「けいおん!」の筆箱でございます。 ……そんなの日本で出てたっけ!? お次はコチラ。魚の玩具……に付いてくる萌え系美少女。 何かのギャルゲー*1キャラだったと記憶しており…

ホーチミン市 トイレ事情

ホーチミン市はベトナム経済の中心地です。 そのため、比較的インフラが整っている方なのですが……。 そのトイレは非常に個性的なアレになっております。さて、これが問題のベトナム式便器です。 水洗洋式で個室区切りなのはありがたいですね。 ……が、この左…

ベトナムで見つけた興味深いもの

ベトナムで見つけた興味深いモノシリーズ 過積載バイク 名物、過積載バイク。これは生きたアヒルをそのまんま運送している処。こんなのは序の口で、家の扉やら数メートルの建材やらも運んでる。 ギンギラな神棚 ギンギラな神棚。商店には大抵存在。電飾が眩…

生存報告 from HCMC

実は私、今ベトナムにおります。 具体的には、ホーチミン市(Ho Chi Minh City = 旧サイゴン)にて短期留学期間中です。 大きな地図で見る来年から出身校とこちらの大学が協定校になる関係で、交換留学生一号として送り込まれました。 8月10日にこの地に…

Ruby/SDLをUbuntu に導入する

Rubyでゲーム作りたいなどとホザいておきながら何もしてなかったので…… SDLをRubyで使える素敵拡張Ruby/SDLをUbuntuへ導入してみたいと思います。 Ruby/SDL によれば、 SDLとは、そのドキュメントによると、 「マルチプラットフォームなマルチメディアライブ…

HAXE〜JavaScriptもPHPもC++も一つのコードで生成

公式より HAXE(ヘックス)はマルチプラットフォームを実現する静的型付けのオブジェクト指向言語です。 一つのコードから Adobe Flash JavaScript C++ PHP Java(ベータ版) C#(ベータ版) のコードを生成する事ができます。 ……JS、PHPはともかく、C++まで…

Babylscript 〜日本語でJavaScriptが書けるよ! やったねたえちゃん!

BabylscriptBabylscript is a multilingual version of JavaScript (ECMAScript). With Babylscript, people are able to write computer programs in their own native languages and not just English. Keywords, objects, and functions are all availabl…

RubyでGoogleChartAPIを使う

RubyでGoogle Chart GoogleChartはhtmlで直打ちでも十分使えるツールですが、これだと使い勝手が良くない事もあります。 例えば、Rubyスクリプトで生成したデータをRails上で使うときなどは少々不便です。そういうときは、Ruby用Google Chart APIを使いまし…