2012年01月10日

rubyからWindowsの実行ファイル(exe)を作るExerbをインストールする

1、ダウンロード - Exerb - SourceForge.JPより、ダウンロードしたexerb-5.4.0.zipファイルを「C:\exerb」等の適当なディレクトリに展開する。

2、Ruby に PATH が通った状態のコマンドプロンプトを起動し、展開したディレクトリに移動する。
>cd C:\exerb

3、以下を実行する。
>ruby setup.rb

4、以下を実行して、オプジョン情報やヴァージョン情報が表示されればOK。
>exerb


以上。

参考:
もし、exerb5.3.0でエラーがでたら以下を参照
RubyでexeファイルをつくるExerbについて | OKWave
http://okwave.jp/qa/q7001479.html
タグ:Exerb ruby
posted by sige at 20:22| Comment(0) | ruby | 更新情報をチェックする

2012年01月09日

RubyInstaller for WindowsのDevelopment Kit のインストール

RubyInstaller for Windowsの「Development Kit」カテゴリより、Development Kit をダウンロードする。
※自己解凍形式の7-Zipファイル

ダウンロードした 7-Zipファイルを「C:\ruby19\devKit」等の適当なディレクトリに展開。
続いて
Ruby に PATH が通った状態のコマンドプロンプトを起動し、Development Kit を展開したディレクトリに移動。
>C:\ruby19\devKit

ディレクトリの移動が完了したら、以下を実行。
>ruby dk.rb init

Development Kit を展開したディレクトリ内に「config.yml」が作成される。
 ※「config.yml」をテキストエディタで開き確認すると、RubyInstaller のディレクトリが記述される。

続いて、
正しく認識(記述)されているか確認する場合は、以下を実行

>ruby dk.rb review

続いて、
確認できたら以下を実行し、インストール。

>ruby dk.rb install

これで Development Kit のインストール完了。


動作確認として、
native extension がインストールできるかどうかを確認する場合は以下を実行。

>gem install rdiscount --platform=ruby

上記のライブラリが正常にインストールできたかを以下を実行。


>ruby -rubygems -e "require 'rdiscount'; puts RDiscount.new('**Hello RubyInstaller**').to_html"


HTML タグ(p、strong)で囲まれた「Hello RubyInstaller」が出力されればインストールが成功。

以上。

参考:
Windows の Ruby で native extension を使う
http://d.hatena.ne.jp/akishin999/20101004/1286204568
タグ:devkit
posted by sige at 02:43| Comment(0) | ruby | 更新情報をチェックする

2011年05月03日

gemでインストールしたのにエラーとなる場合は

gemでインストールしたのにエラーとなる場合は
rubygemsをrequireしているか確認し、requireしていなければrequireする

requireする方法:

1、ファイルの先頭に書く

#!ruby -Ku
require 'rubygems'
require 'Qt4'

2、ruby コマンドに "-rubygems" をつけてスクリプトを実行

>ruby -rubygems filename.rb

3、環境変数に追加

変数名「RUBYOPT」を新規作成し、変数値「-rubygems」を追加
タグ:ruby
posted by sige at 00:58| Comment(2) | ruby | 更新情報をチェックする

2011年04月15日

プラットフォームがWindows かどうか判定する

if RUBY_PLATFORM.downcase =~ /mswin(?!ce)|mingw|cygwin|bccwin/
puts "Windows"
else
puts "not Windows"
end

参考:
あなたの Ruby コードを添削します 【第 5 回】 Miyako + MidoreDayBook + Lispもどき
プラットフォームの判別
タグ:ruby
posted by sige at 22:05| Comment(0) | ruby | 更新情報をチェックする

2011年01月22日

QtRubyのフォームとモーダレスフォーム(ModelessForm)と、そのフォーム間のデータ移行

※モーダレスフォーム(ModelessForm)の別の呼び方
 ・モーダレスウィンドウ(ModelessWindow)
 ・モーダレスダイアログ(ModelessDialog)
 等

以下にあるプログラムの概要

1,モーダレスフォームとして新しいフォームを呼び出す
2,呼び出された側の新しいフォームのLineEditに入力された値をOKボタンクリック時に取得する
3,呼び出した最初のフォームのLabelの値を上記2で取得した値に書き換える


main.rb---------------------------------------------------------------------

#!ruby -Ks

require 'Qt4'
require 'mainwindow.rb'

app = Qt::Application.new(ARGV)
Qt::TextCodec::setCodecForTr(Qt::TextCodec::codecForName("Shift-JIS"))

mainWin = MyWidget.new
mainWin.show
app.exec


mainwindow.rb---------------------------------------------------------------

#!ruby -Ks
# -*- coding: japanese-cp932 -*-

class MyWidget < Qt::Widget
slots 'onBtnClickMeClicked()'
slots 'setTextLabel()'

def initialize(parent = nil)
super(parent)
@times=0
init_comp
end
def init_comp
self.setWindowTitle('Hello, World!')
#resize(200, 300) #w, h
self.setGeometry(300, 300, 250, 150) #x, y, w, h
self.setToolTip("Simple Widget")
vlay=Qt::VBoxLayout.new
#Add a button..
@btnclickme=Qt::PushButton.new("Open SubWiondow")
@lbltext=Qt::Label.new("empty")
connect(@btnclickme, SIGNAL('clicked()'), SLOT('onBtnClickMeClicked()'))
vlay.addWidget(@btnclickme)
vlay.addWidget(@lbltext)
setLayout(vlay)
end
def onBtnClickMeClicked
@subWin = nil

if @subWin.nil?
@subWin=SubWindow.new()
connect(@subWin, SIGNAL('btnokClicked()'), SLOT('setTextLabel()'))
end

if(@subWin.isHidden())
@subWin.show
else
@subWin.activateWindow()
end

end

def setTextLabel()

str = @subWin.getLineEditText()
@lbltext.setText(str)
end

end


class SubWindow < Qt::Dialog
signals 'btnokClicked()'

def initialize
super()
@times=0
init_comp
end
def init_comp
setWindowTitle('QDialog-subWiondow')
#setGeometry(500, 300, 400, 300) #x, y, w, h
vlay=Qt::VBoxLayout.new
#Add a button..
@btnok=Qt::PushButton.new("ok")
@btncancel=Qt::PushButton.new("cancel")
@edtline=Qt::LineEdit.new("cancel")
connect(@btnok, SIGNAL('clicked()'), self, SIGNAL('btnokClicked()')) #SLOT -> SIGNAL
connect(@btnok, SIGNAL('clicked()'), self, SLOT('close()'))
connect(@btncancel, SIGNAL('clicked()'), self, SLOT('close()'))
vlay.addWidget(@btnok)
vlay.addWidget(@btncancel)
vlay.addWidget(@edtline)
setLayout(vlay)
end
def getLineEditText()
@edtline.text()
end

end



参考:
Qtプログラミング(Qt4.0) 第4章 プログラム作成への準備
タグ:ruby QtRuby
posted by sige at 01:22| ruby | 更新情報をチェックする

2011年01月21日

QtRubyのフォームとモーダルフォーム(ModalForm)と、そのフォーム間のデータ移行

※モーダルフォーム(ModalForm)の別の呼び方
 ・モーダルウィンドウ(ModalWindow)
 ・モーダルダイアログ(ModalDialog))
 等

以下にあるプログラムの概要

1,モーダルフォームとして新しいフォームを呼び出す
2,呼び出された側の新しいフォームのLineEditに入力された値をOKボタンクリック時に取得する
3,呼び出した最初のフォームのLabelの値を上記2で取得した値に書き換える


main.rb---------------------------------------------------------------------

#!ruby -Ks

require 'Qt4'
require 'mainwindow.rb'

app = Qt::Application.new(ARGV)
Qt::TextCodec::setCodecForTr(Qt::TextCodec::codecForName("Shift-JIS"))

mainWin = MyWidget.new
mainWin.show
app.exec



mainwindow.rb---------------------------------------------------------------

#!ruby -Ks
# -*- coding: japanese-cp932 -*-

class MyWidget < Qt::Widget
slots 'onBtnClickMeClicked()'
def initialize
super()
@times=0
init_comp
end
def init_comp
self.setWindowTitle('Hello, World!')
#resize(200, 300) #w, h
self.setGeometry(300, 300, 250, 150) #x, y, w, h
self.setToolTip("Simple Widget")
vlay=Qt::VBoxLayout.new
#Add a button..
@btnclickme=Qt::PushButton.new("Open SubWiondow")
@lbltext=Qt::Label.new("empty")
connect(@btnclickme, SIGNAL('clicked()'), SLOT('onBtnClickMeClicked()'))
vlay.addWidget(@btnclickme)
vlay.addWidget(@lbltext)
setLayout(vlay)
end
def onBtnClickMeClicked

subWin=SubWindow.new()

if subWin.exec()==1 #QDialog::Accepted は 1、 QDialog::Rejected は 0 と定義されている
str = subWin.getLineEditText()
@lbltext.setText(str)
else
end

end

end


class SubWindow < Qt::Dialog
#slots 'onBtnClickMeClicked()'
def initialize
super()
@times=0
init_comp
end
def init_comp
setWindowTitle('QDialog-subWiondow')
#setGeometry(500, 300, 400, 300) #x, y, w, h
vlay=Qt::VBoxLayout.new
#Add a button..
@btnok=Qt::PushButton.new("ok")
@btncancel=Qt::PushButton.new("cancel")
@edtline=Qt::LineEdit.new("cancel")
connect(@btnok, SIGNAL('clicked()'), self, SLOT('accept()'))
connect(@btncancel, SIGNAL('clicked()'), self, SLOT('reject()'))
vlay.addWidget(@btnok)
vlay.addWidget(@btncancel)
vlay.addWidget(@edtline)
setLayout(vlay)
end
def getLineEditText()
@edtline.text()
end
end


参考:
Qtプログラミング(Qt4.0) 第4章 プログラム作成への準備

タグ:ruby QtRuby
posted by sige at 00:41| ruby | 更新情報をチェックする

2010年11月05日

Redcar(オープンソースのエディタ)のインストール



Redcarは、Ruby製プログラマ向けエディタ(IDE)です

前提:
※Rubyは1.8.7以降、Javaは1.4.0以降が必要

インストール:
以下のコマンドを2つ入力するだけです

gem install redcar
redcar install



追記:
日本語を使うと検索などがおかしな動作になる(2011/2/11現在 Redcar 0.10 ( i386-mingw32 ))

参考:
Redcar
TextMateをLinux/Windowsで使いたい人のためのRedcar
タグ:ruby
posted by sige at 06:50| ruby | 更新情報をチェックする

2010年08月19日

Ruby 1.9.2リリース

posted by sige at 23:29| Comment(0) | ruby | 更新情報をチェックする

2010年03月19日

rubyのインストール(Rumix編)

rubyを簡単にインストールするのに
Rumixがあります

Rumix - Ruby Starter Package with Installerサイトより
rumix-1.00.zip
をダウンロードし、ディスクトップ等適当な場所に保存してください




#インストール

1,ダウンロードしrumix-1.00.zipを解凍し、rumix_install.exeをクリックしてください
2,デフォルト状態のまま「ok」ボタンで進みめばインストール完了です  ※ デフォルトのインストール先は、「C:\rumix」


#インストール後の設定(任意)

1,変数名 「PATH」に変数値 「;C:\rumix\ruby\bin」を追加
2,変数名 「RUBYOPT」を新規作成し、変数値「-rubygems」を追加
3,Ruby スクリプトファイル(拡張子 .rb のファイル)に、アプリケーションの関連付けをする
4,Ruby スクリプトファイル(拡張子 .rb のファイル)に、アイコンを関連付ける

 1,2ついて、環境変数を変更するを参考にしてください
 3,4について、ファイル・タイプの関連付けを変更する2つの方法 − @ITを参考にしてください
 Ruby スクリプトファイルのフリーアイコンRuby スクリプトファイルのアイコン


#インストールされたRubyの確認

コマンドプロンプトを開いて以下のように実行してください
>ruby -v
次のようにRubyのバージョンが表示されればインストール成功です
>ruby -v
ruby 1.8.7 (2009-12-24 patchlevel 248) [i386-mswin32]

タグ:ruby Install
posted by sige at 09:40| Comment(0) | ruby | 更新情報をチェックする

2009年12月28日

YAML形式の設定ファイルを作る

設定ファイルをYAML形式で作成し、ruby標準添付ライブラリであるyamlを使い設定ファイルデータの読み込み、書き込みをします

#以下の設定ファイルconfig.ymlを作成
#config.yml--------------------
---
music:
title: twist&shout
singer: paul
mails:
- northern.songs@example.jp
- northern.songs@example.com

#rubyスクリプト
#yaml.rb--------------------
require 'yaml'

#yaml形式のconfig.ymlファイルを読み込む
config = YAML.load_file("config.yml")
#nameの確認
p config["music"]["singer"] #=> " paul"
#nameを変更
config["music"]["singer"] = "john"
#nameの確認
p config["music"]["singer"] #=> "john"

#変更したnameで書き出す
open("config.yml","w") do |f|
YAML.dump(config,f)
end


#
上記、スクリプトを実行するには、
コマンドプロンプトでrubyスクリプトを実行する
NetBeansでrubyスクリプトを実行する
SciTEエディタでrubyスクリプトを実行する
の内、好みの方法を参照してください


posted by sige at 01:56| Comment(0) | ruby | 更新情報をチェックする

2009年12月25日

配列(Array)のメソッド assocとlast

配列(Array)のメソッド assocとlastを使って、配列の配列の末尾要素を取り出します

#ary.rb----------------------------------------
#配列を作る
ary=[[1,2],[3,4],[5,6]]

#Array#assocメソッドで配列の配列を検索し、第1要素が等しい最初の配列を返却する。
p ary.assoc(3)

#Array#last メソッドで末尾の要素を取得する
p ary.assoc(3).last

#
上記、スクリプトを実行するには、
コマンドプロンプトでrubyスクリプトを実行する
NetBeansでrubyスクリプトを実行する
SciTEエディタでrubyスクリプトを実行する
の内、好みの方法を参照してください
posted by sige at 23:21| Comment(0) | ruby | 更新情報をチェックする

2009年11月11日

ruby 関連付けされたアプリケーションで指定したファイルを開く

rubyスクリプトで、関連付けされたアプリケーションで指定したファイルを開くには以下。

#start_app.rb----------------------------------------
def start_app
imgpass ="C:/temp/Sunset.jpg"
system("start #{imgpass}")

webpass ="http://www.google.co.jp/"
system("start #{webpass}")

end

start_app


#
上記、スクリプトを実行するには、
コマンドプロンプトでrubyスクリプトを実行する
NetBeansでrubyスクリプトを実行する
SciTEエディタでrubyスクリプトを実行する
の内、好みの方法を参照してください
タグ:ruby
posted by sige at 23:40| Comment(0) | ruby | 更新情報をチェックする

2009年08月12日

rubyでファイルの内容の一部を置換する

sample.txtファイルの内容の「りんご」を「パイナップル」に置換します

sample.txt-------------------------------
りんご
ぶどう
さくらんぼ
バナナ
オレンジ
sample.txt end--------------------------

以下、スクリプトになります

#file_gsub.rb----------------------------------------

f=File.open("C:/myrubyseesaa/sample.txt","r")
buffer = f.read();
p buffer
# 中身を変換
buffer.gsub!("りんご" , "パイナップル");
p buffer
f=File.open("C:/myrubyseesaa/sample.txt","w")
f.write(buffer)
f.close()


#
上記、スクリプトを実行するには、
コマンドプロンプトでrubyスクリプトを実行する
NetBeansでrubyスクリプトを実行する
SciTEエディタでrubyスクリプトを実行する
の内、好みの方法を参照してください

#参考先
rubyでファイルの中身を書き換えるサンプル2

タグ:ruby
posted by sige at 23:40| Comment(2) | ruby | 更新情報をチェックする

2009年07月23日

Ocraで、rubyからWindowsの実行ファイル(exe)を作る

サイト:
ocra-1.1.0 Documentation
RubyForge: One-Click Ruby Application Builder: Project Info

インストール:
>gem install ocra

実行ファイル(exe)にするコマンド:
ocra [option] your_script.rb

ocraのオプション:
--dll dllname    Include additional DLLs from the Ruby bindir.
--no-lzma Disable LZMA compression of the executable.
--quiet Suppress output.
--help Display this information.
--windows Force Windows application (rubyw.exe)
--console Force console application (ruby.exe)
--no-autoload Don't load/include script.rb's autoloads
--icon <ico> Replace icon with a custom one
--version Display version number

#上記は、C:\ruby\lib\ruby\gems\1.8\gems\ocra-1.1.1\bin\ocra.rbに記述されている


例:
#スクリプトを用意する
1,エディタを起動し、以下のプログラムを書き、ファイル名に「gui_vruby_sample.rb」とつけて適当なフォルダに保存する。今回は「C:\Temp」に保存する
require 'vr/vruby'
require 'vr/vrcontrol'

class MyForm < VRForm
def construct
self.caption = "Hello World! vruby"
addControl(VRStatic,'HelloWorld',"こんにちは、世界!",0,0,260,60)
end
end

VRLocalScreen.start(MyForm,0,0,260,60)

#プログラムを実行する
2,コマンドプロンプトより、以下を実行する
>cd C:\Temp       # <- exe化したいrbファイルのフォルダに移動
>ocra gui_vruby_sample.rb

3,C:\Tempにgui_vruby_sample.exeが作られる

#コマンドプロンプトのウィンドウを出さないようにしたい場合、windowsオプションを利用
>ocra --windows gui_vruby_sample.rb

#iconを変更したい場合、iconオプションを利用
>ocra --icon "C:\Temp\MSN.ICO" gui_vruby_sample.rb #iconのパスを指定


感想:
インストールが簡単
exe化する手順が簡単
コードが隠蔽される
exe化したファイルの起動は、遅くはない
タグ:ruby ocra
posted by sige at 22:34| Comment(0) | ruby | 更新情報をチェックする

2009年07月17日

RubyKaigi2009.live!のページの「Ustream.tvを使ったストリーミング中継です。ustのIRCは利用しません。irc.freenode.netを使ってください。」がわからなかったので調べた

日本Ruby会議2009(RubyKaigi2009)が,7月17日(金)から19日(日)までの3日間,過去最大のスケールで開催され、以下のリンク先「RubyKaigi2009.live!」でストリーミング中継されます。

一橋記念講堂(2F)
中会議場(2F)
特別会議室(1F)

ところで、上記のRubyKaigi2009.live!のページ内の「Ustream.tvを使ったストリーミング中継です。ustのIRCは利用しません。irc.freenode.netを使ってください。」
の文章の意味がわからなかったので調べた

Ustream.tv
無料のライブ中継ストリーミングサービス
Ustreamは、ウェブカメラさえあれば、誰でも手軽にインターネットでストリーミング配信ができてしまうサービスらしい

ust
Ustream.tvの略?

IRC
・IRC(Internet Relay Chat)とは、インターネットやイントラネットなどのTCP/IPネットワーク上で、
リアルタイムにテキストデータを交換する「おしゃべり」システム。利用者は専用のクライアントでIRCサーバに接続し、そのサーバに接続している複数の相手と会話ができる。
IRCとは 【Internet Relay Chat】 - 意味/解説/説明/定義 : IT用語辞典 より
・IRCの特徴
軽くて速い。速さはWebでのチャットの比ではありません。Webチャットは会話のログをいちいちリロードしていますが、IRCではメッセージが直接送られてくるため、この手間がありません。IRCを1度体験すると、Webのチャットはもうチャットとは思えなくなります。また、IRC用のソフト自体も、Web閲覧ソフトなどより軽いものです。
IRC普及委員会/IRCってなんですか? より

irc.freenode.net
IRCのネットワーク。アメリカ合衆国に本部をおく非営利団体ピアダイレクテドプロジェクトセンターが運営するfreenodeネットワーク (irc.freenode.net) のこと

ということで、まとめると

「Ustream.tv(無料のライブ中継ストリーミングサービス)を使ったストリーミング中継です。ust(Ustream.tv)のIRC(とても速いチャット)は利用しません。irc.freenode.net(IRCのネットワークであるアメリカ合衆国に本部をおく非営利団体ピアダイレクテドプロジェクトセンターが運営するfreenodeネットワークのIRC(とても速いチャット))を使ってください。」

ということのようです

せっかくですので、irc.freenode.netに接続してみます。
接続する為には(IRCを行うには)、クライアントソフトが必要となります。

手順:
1、クライアントソフトとして代表的な「LimeChat2」をダウンロードします
窓の杜 - LimeChat2のダウンロード

2、ダウンロードしたファイルを、インストールし接続します
(インストール及び接続方法は以下のサイトで解説されていますので参照してください)
LimeChat2.xx導入手順

※IRC情報は、各部屋のRubyKaigi2009.live!のページに書かれています

以上
タグ:ruby Ustream
posted by sige at 02:12| Comment(0) | ruby | 更新情報をチェックする
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。