ラベル ruby の投稿を表示しています。 すべての投稿を表示
ラベル ruby の投稿を表示しています。 すべての投稿を表示

2014年7月12日土曜日

Ruby で Terminal の文字を1秒ごとに flush して、 count down する


Rubyでカウントダウン。
ターミナルの文字を1秒毎にフラッシュする。
RubyでTerminalの文字を1秒ごとにflushして、count down する

ruby 2.0.0p451 (2014-02-24 revision 45167) [x86_64-darwin13.1.0]


#!/usr/bin/env ruby
# -*- encoding: utf-8 -*-

#
def move_left
  print "\e[1D"
end

#
def del_char
  print "\e[1D"
  print " "
end

#
def del_line(n)
  #print "\e[1D"
  n.times do |x|
      del_char
      move_left
  end
end

#
def count_down(num)
  num.times do |x|
    print num - x
    sleep(1)
    n = num.to_s.length
    del_line(n)
  end
end

if __FILE__ == $0
  
  num = 15
  count_down(num)
  print "\a"
end

__END__

=begin
\e[1A <- up
\e[1B <- down
\e[1C <- right
\e[1D <- left
\a    <- beep
=end

Rubyで Stringで指定された名前の、instanceをdynamicに生成する

#文字列を指定して、動的にインスタンスを生成できるか?
#指定したStringで、instanceをdynamicに生成する
#インスタンス変数を動的に作成する

ruby 2.0.0p451 (2014-02-24 revision 45167) [x86_64-darwin13.1.0]


#!/usr/bin/env ruby
# -*- encoding: utf-8 -*-

class Cat
    def initialize(name)
        @name = name
    end
    attr_accessor :name
    #attr_reader :name
    def say
        puts "hello i'm #{@name}."
    end
end

if __FILE__ == $0

  class_name = "Cat"
  name_of_cat = "chibi"
  res = eval "@#{name_of_cat} = #{class_name}.new('#{name_of_cat}')"
  p res
  @chibi.say

  puts "----"
  puts
  
  cat_name_list =["tama", "mike", "kuro"]
  cat_name_list.each do | cat_name|
    eval "@#{cat_name} = #{class_name}.new('#{cat_name}')"
  end
  
  cat_name_list.each do | cat_name |
    eval "@#{cat_name}.say"
  end
  
  
end

__END__

2014年6月4日水曜日

Mac OS X の コマンドラインから iSight で 撮影

Mac OS X の コマンドラインから iSight で 撮影

Mac OS X の コマンドラインから iSight で 撮影
Mac OS X の command line から iSight で 撮影

前提

Homebrewがインストール済みである

コマンドをインストール
$ brew install imagesnap

実行
$ imagesnap ~/Pictures/camera_`date +%Y-%m-%d_%H%M%S`.jpg

コマンドラインにメッセージを出さずに実行
$ imagesnap -q ~/Pictures/camera_`date +%Y-%m-%d_%H%M%S`.jpg

コマンドラインにメッセージを出さずに、かつ、3.5秒のウェイトをつけて実行
$ imagesnap -q -w 3.5 ~/Pictures/camera_`date +%Y-%m-%d_%H%M%S`.jpg

参考

http://iharder.sourceforge.net/current/macosx/imagesnap/
http://iharder.sourceforge.net/current/macosx/imagesnap/

Ruby から Mac OS X の Notification Center に通知を送る

rubyからMac OS XのNotification Centerに通知を送る


gemのインストール
$ gem install terminal-notifier      

サンプルファイル notification.rb
TerminalNotifier.notify('Hello World', :title => 'Terminal', :subtitle => 'Programming Language Ruby', :sound => 'Hero')     

実行
$ ruby notification.rb     

参考

https://github.com/alloy/terminal-notifier/
https://github.com/alloy/terminal-notifier/

2013年5月23日木曜日

jekyll で syntax heilight

jekyll で syntax heilight


環境

Python 3.3.0
ruby 1.9.3p392 (2013-02-22 revision 39386) [x86_64-linux]
jekyll-1.0.2
jekyll-bootstrap
redcarpet-2.3.0
pygments.rb-0.5.0

2013年4月11日木曜日

HaikuOS で Ruby


HaikuOS で Ruby


HaikuOS用Rubyの配布をしているサイトを発見
http://ports-space.haiku-files.org/

以下のファイルをダウンロード
ruby-1.9.1-x86-gcc2-2010-05-20.zip
http://ports-space.haiku-files.org/dev-lang/ruby-1.9.1-x86-gcc2-2010-05-20.zip

解凍後、HaikuOSの規則に従って、ファイルを配置。
ディレクトリのコピー時の動作が置き換えモードなので注意。
以前からあるディレクトリに、コピーしたディレクトリの内容を追記、結合したりしない。


スクリーンショット

How to download Firefox without MS IE


やりたいこと

Download Firefox without MS IE
Internet Explorerを使わずにFirefoxをダウンロードする

Download Firefox from command line
コマンドラインでFIrefoxをダウンロードする

FIrefoxのアドレス

今回、ターゲットとするFirefoxのアドレス
http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/19.0/linux-x86_64/ja/firefox-19.0.tar.bz2

別のOS用 Mozilla Firefox はこちら
http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/19.0/mac/ja-JP-mac/Firefox%2019.0.dmg
http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/19.0/win32/ja/Firefox%20Setup%2019.0.exe

Google Chrome はこちら
https://dl.google.com/update2/installers/ChromeStandaloneSetup.exe
https://dl.google.com/chrome/mac/stable/GoogleChrome.dmg
https://dl.google.com/linux/direct/google-chrome-stable_current_i386.deb
https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
https://dl.google.com/linux/direct/google-chrome-stable_current_i386.rpm
https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm


ファイル転送ツールを使う


wget
wget http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/19.0/linux-x86_64/ja/firefox-19.0.tar.bz2

curl
curl http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/19.0/linux-x86_64/ja/firefox-19.0.tar.bz2 -o firefox-19.0.tar.bz2 

テキストブラウザを使う


w3m
w3m a http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/19.0/linux-x86_64/ja/firefox-19.0.tar.bz2

lynx
lynx http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/19.0/linux-x86_64/ja/firefox-19.0.tar.bz2

2013年3月5日火曜日

ruby で minitest




ruby で minitest

プログラミングRuby 1.9 -言語編- p165によると、Test::Unitを置き換える軽量テストフレームワークがMiniTest::Unitとのこと。

環境

$ ruby -v
ruby 1.9.3p385 (2013-02-06 revision 39114) [x86_64-linux]

2013年3月4日月曜日

ruby で unit test


ruby で unit test

環境

$ ruby -v
ruby 1.9.3p385 (2013-02-06 revision 39114) [x86_64-linux]

2013年2月13日水曜日

ruby から mysql へアクセスする

ruby から mysql へアクセスする

環境

rubyのバージョン
ruby 1.9.3p362 (2012-12-25 revision 38607) [x86_64-linux]

mysqlのバージョン
Server version: 5.5.29-0ubuntu0.12.10.1 (Ubuntu)

mysql2のバージョン
mysql2-0.3.11

ruby-mysql2 のインストール

ruby-mysql2 の gem をインストール
$ gem install mysql2

vagrantを使ってみた

vagrantを使ってみた

rubyとvirtualboxは、インストール済み
使用したのはvagrant-1.0.6

VagrantはコマンドラインからVirtualBoxを扱えるようにするrubyで作られたツール。
仮想マシンの起動・再起動をコマンドライン上から行える

www.virtualbox.org

http://www.vagrantup.com

vagrantを使ってみる


Vagrant の導入
$ gem install vagrant

Vagrant boxのダウンロード
$ vagrant box add precise64 http://files.vagrantup.com/precise64.box

Ubuntu で mruby

Ubuntuでmruby


ソースコードの取得とmake
$ git clone git://github.com/mruby/mruby.git mruby
$ cd mruby
$ make

ビルドできたら/opt/mrubyにコピー
$ sudo cp -R build/host /opt/mruby/
$ sudo cp -R include /opt/mruby/include

2012年5月10日木曜日

ruby と jekyll と jekyll-bootstrap で静的サイトを作る

rubyとjekyllとjekyll-bootstrapで静的サイトを作る

 

前提

  • unix系OS
  • gitインストール済
  • rubenvでruby1.9系をインストール済

 

全体の流れ

  1. jekyllのインストール
  2. jekyll-bootstrapのダウンロード
  3. jekyll-bootstrapの設定
  4. jekyllを起動してサンプルの確認
  5. jekyllで記事の投稿
  6. 公開する

2012年5月7日月曜日

KidsRuby OS を ダウンロードしてみた

KidsRuby OS を ダウンロードしてみた

KidsRuby
http://kidsruby.com/download

KidsRuby OS
KidsRuby OS
https://s3.amazonaws.com/kidsruby/iso/KidsRuby-OS-0.6.1.iso

xubuntu 11.04ベース cd(iso)から起動して、利用する。

cdベースなので、パッケージの追加などに難がある。
https://s3.amazonaws.com/kidsruby/osx/kidsrubyinstaller-1.1.dmg

https://s3.amazonaws.com/kidsruby/windows/kidsrubyinstaller-1.1.0.exe
を使えば、作成したソースコードの保存や日本語入力にも対応できそうだ。

2012年4月26日木曜日

さくらインターネットレンタルサーバー スタンダードプランでCGIを動かす

さくらインターネットレンタルサーバー スタンダードプランでCGIを動かす

 

さくらインターネットでCGIスクリプトが動く条件

以下の条件満たすようにcgiを作る

  • スクリプトファイルを置いているディレクトリのパーミッションを705または755に設定する。
  • フォルダ名にチルダを含めない。
  • スクリプトファイルのパーミッションが705または755に設定する。
  • 改行コードがUNIXの改行コード(LF)になっている
  • シェバン( shebang line、 #! に続くパス)で、cgiスクリプトを実行するプログラムを指定する。
    • perlのcgiなら、スクリプトの1行目に #!/usr/local/bin/perl などと書いている。
    • pythonのcgiなら、スクリプトの1行目に #!/usr/local/bin/python などと書いている。
    • rubyのcgiなら、スクリプトの1行目に #!/usr/local/bin/ruby などと書いている。
  • スクリプト中で print “Content-type: text/html\n\n” のように、表示するコンテンツのタイプを始めにprintしている。
  • コメント外のスクリプト中に全角文字(全角スペース等)を含まない。

2012年3月25日日曜日

CentOS 5.8 に ruby 1.9.3 と Rails 3.3.2 をインストール


CentOS 5.8 に ruby 1.9.3 と Rails 3.3.2 をインストール

インストールするもの
git
rbenv
ruby-build
ruby
rails
及び、依存するもの。


git 1.7.8.2 のインストール

rootになって作業
$ sudo su

追加レポジトリの作成
# vi /etc/yum.repos.d/rpmforge.repo

[rpmforge]
name = Red Hat Enterprise $releasever - RPMforge.net - dag
mirrorlist = http://apt.sw.be/redhat/el5/en/mirrors-rpmforge
enabled = 0
gpgcheck = 0

gitのインストール
# yum install git --enablerepo=rpmforge

バージョン確認
# git --version

一般ユーザーに戻る
# exit

ubuntuにrbenv+ruby-buildをインストールし、rubyを切り替えられるようにする。



ubuntuにrbenv+ruby-buildをインストールし、rubyを切り替えられるようにする

最初に必要なものをインストール
$ sudo apt-get install build-essential
$ sudo apt-get install libreadline-dev libssl-dev zlib1g-dev
sudo apt-get install libssl-dev libssl1.0.0
$ sudo apt-get install git-core curl


rbenvのインストール
$ git clone git://github.com/sstephenson/rbenv.git ~/.rbenv

rbenvのパスを設定
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
$ echo 'eval "$(rbenv init -)"' >> ~/.bashrc
$ source ~/.bashrc

ruby-buildのインストール
$ git clone git://github.com/sstephenson/ruby-build.git
$ cd ruby-build
$ sudo ./install.sh

2011年7月15日金曜日

rubyでutf-8

環境
ruby 1.8.7 (2009-06-12 patchlevel 174)
Mac OS X 10.6.8

Ruby 1.8.7では$KCODEを使用して明示する

#!/usr/bin/ruby

$KCODE = 'u'
print "家に帰るまでが遠足です"

2011年4月28日木曜日

Ubuntu で Aptana Studio 3 を動かし、Ruby on Rails してみる

Ubuntu で Aptana Studio 3 を動かし、Ruby on Rails してみる