Help
RSS
API
Feed
Maltego
Contact
Domain > ruby-gtk-hiki.lldev.jp
×
More information on this domain is in
AlienVault OTX
Is this malicious?
Yes
No
DNS Resolutions
Date
IP Address
2024-11-04
219.94.128.238
(
ClassC
)
Port 80
HTTP/1.1 200 OKServer: nginxDate: Mon, 04 Nov 2024 12:37:33 GMTContent-Type: text/htmlContent-Length: 10224Connection: keep-aliveLast-Modified: Sun, 11 Apr 2010 12:28:37 GMTETag: 27f0-483f52ae94740Accept-Ranges: bytes html langja>head>meta http-equivContent-Type contenttext/html; charsetShift-JIS>title>Ruby-GTK+ hiki 跡地/title>link relstylesheet typetext/css hrefstyle.css>/head>body>div classpagecontent>こちらでは、Ruby + GTK+ツ<泣Lットを利用したプログラミングのためのメモを掲載しています。h2>Tips、サンプルスクリプト、ライブラリ/h2>a namewassr-client-wassru>/a>h3>wassru - 投稿専用Wassr/Twitterクライアント/h3>p>u>wassru(わさる) - ver 2009.05.21/u>br>Ruby + Ruby-GNOME2 + Glade2で作った投稿専用Wassrクライアントです。Twitterにも投稿できます。/p>p>u>動作確認環境 & 開発環境/u>br>Windows XP Home SP3br>・ruby 1.8.6 (2007-09-24 patchlevel 111) i386-mswin32 (One-Click Ruby Installer for Windows) - a hrefhttp://rubyinstaller.org/ target_blank>http://rubyinstaller.rubyforge.org//a>br>・ruby-gnome2-0.16.0-1-i386-mswin32 (バイナリパッケ<W版) - a hrefhttp://sourceforge.net/project/showfiles.php?group_id53614&package_id48093 target_blank>http://sourceforge.net/project/showfiles.php?group_id53614&package_id48093/a>br>Ubuntu 8.10br>・ruby 1.8.7 (2008-08-11 patchlevel 72) i486-linuxbr>・ruby-gnome2 0.17.0~rc1-6ubuntu1br>・glade 2.12.2-0ubuntu3br>・libglade2-0 1:2.6.3-0ubuntu1br>※ 参考サイト: a hrefhttp://ruby-gnome2.sourceforge.jp/ja/ target_blank>Ruby-GNOME2 Project Website/a> -- Ruby-GNOME2公式サイト/p>p>u>インスト</u>br>Windowsbr>ア<Jイブを解凍し、wassru.rbを含むファイル一式が入ったフォルダを任意の場所に移動します。br>Linuxbr>1. ア<Jイブを解凍し、wassru.rbを含むファイル一式が入ったディレクトリをプログラムの検索パスに含まれている場所に移動します。(例:~/bin)br>2. 必要であれば、ファイル一式のパミッションを適宜設定します。br>3. 添付のシェルスクリプト(wassru.sh)をディレクトリの外側(プログラムの検索パスに含まれている場所)に移動します。br>注意br>ア<Jイブに含まれているすべてのrbファイルとgladeファイルは同じフォルダに置いておく必要があります。/p>p>u>アンインスト</u>br>インスト<汲オたすべてのファイルとディレクトリを削除するだけでOKです。/p>p>u>起動方法/u>br>wassru.rbがあるフォルダに作業フォルダ(カレントディレクトリ)を移動した状態で、コマンドラインのロングオプションへの引数としてWassrまたは(および)TwitterのログインIDとパスワ<hを指定してwassru.rbを実行します。br>・Linuxでは、wassru.shに上記の処理のひな型が既に書かれているので、それをカスタマイズしてwassru.shを実行するのが簡単です。(ちなみにUbuntuでは「アプリケ<Vョンの実行」ダイアログからwassru.shを実行することで、猪魔フウィンドウを表示せずに(=パスワ<hなどを画面に表示せずに)wassruを起動することができます)br>・Windowsでも同様に、wassru.batをカスタマイズしてそこから起動するのが簡単です。br>・いずれにしても、作業フォルダを適切にセットした上で下記の書式のコマンドラインが実行できれば、どのような形でもかまいません。/p>p>u>コマンドライン書式/u>br>blockquote>pre>rubyw wassru.rb --wassridWASSRLOGINID --wassrpassWASSRPASSWORD --twitteridTWITTERLOGINID --twitterpassTWITTERPASSWORD -i|--iconify/pre>/blockquote>・少なくともWassrかTwitterどちらかのログイン情報を必ず指定してください。br>・起動直後と投稿後に自動でウィンドウを最小化したい場合は、引数なしの-iまたは--iconifyオプションを指定して下さい。/p>p>u>使い方/u>br>p>1. テキスト入力欄に投稿内容を入力します。br>2. コンボボックスでWassrの投稿先チャンネル名を選びます。public timelineに投稿する場合は(public)。br>3. 画像を添付する場合は、Ctrl+Iキ or Imageボタン or Command->Attach Imageメニュ≠ナ表示されるダイアログで画像ファイルを選択します。br>4. Ctrl+Enterキ or Postボタン or Command->Postメニュ≠ナ投稿します。/p>p>・画像選択ダイアログでは拡張子が.gif,.png,.jpg,.jpe,.jpegのもののみ表示されます。 br>・102400バイトまでのサイズの画像のみ添付できます。br>・Twitterへの画像投稿はできません。(テキストのみ送信されます)br>・(public)以外のチャンネルを選択している場合、Twitterへの投稿内容の先頭にチャンネル名が付加されます。br>・Webメニュ%烽フ項目を選択すると、ブラウザでそれぞれのペ<Wが開かれます。(Windowsのみ)br>・Optionメニュ%烽フ項目のチェックをはずすと、一時的に投稿先を制限できます。br>・Wassrのレス投稿はできません。/p>/p>p>u>スクリプト、その他ファイルの使用条件/u>br>基本的にこのプログラムはRubyライセンスで公開しますが、一部のファイルで扱いを変えていただく必要があります。p>simplejson.rbbr>このスクリプトの内容は、Chihiro Itoさん作のJSONデ<^とRubyオブジェクトを相互変換するためのライブラリです。RubyForge?にsnippetとして登録されていて、特にライセンスなどは設定されていないのですが、下記のペ<Wに作者ご本人による説明がありますので、一度読んでみることをおすすめします。br>simplejson.rbではオリジナルの内容の冒頭にバ<Wョン番号を追加しています。br>a hrefhttp://webos-goodies.jp/archives/51019710.html target_blank>http://webos-goodies.jp/archives/51019710.html/a>br>a hrefhttp://webos-goodies.jp/archives/51071565.html target_blank>http://webos-goodies.jp/archives/51071565.html/a>/p>p>readme.txtbr>改変したア<Jイブの配布時にこのファイルの内容を痘pする場合は、改変した旨を明記した上で、改変者の名前(またはハンドル)をそれとわかるように追加していただくようにお願いします。/p>p>ライセンス文書(gpl-2.0.txt、LICENSE.txt、LICENSE_en.txt)br>このプログラムの内容に合わせて編集している部分がありますので注意して下さい。まったく別のプログラム向けに痘pすることはおすすめしません。/p>/p>p>u>作者について/u>br>chronobr>a hrefhttp://wassr.jp/user/kitachro target_blank>http://wassr.jp/user/kitachro/a>br>a hrefhttp://twitter.com/kitachro target_blank>http://twitter.com/kitachro/a>/p>p>u>ダウンロ<h/u>br>a hrefwassru.zip>wassru.zip/a>/p>a namewassr-post-image>/a>h4>Wassr APIの画像投稿機能について/h4>p>・送信デ<^フォ<}ット/p>p>APIパラメ<^の送信方法としては、送信デ<^がテキストのみを含む場合は、HTTPのGETメソッド利用時におけるリクエストURLのパラメ<^部分をHTTPボディにセットするだけでいいのだが、画像付きステ<^スを送信する場合、HTTPヘッダのContent-Typeにmultipart/form-data...を指定し、画像デ<^を含む各パラメ<^はMIMEのマルチパ<gデ<^のフォ<}ットでHTTPボディにセットする必要がある。/p>p>multipart/form-dataについてはa hrefhttp://www.kanzaki.com/docs/html/htminfo32.html#enctype target_blank>http://www.kanzaki.com/docs/html/htminfo32.html#enctype/a>(神崎正英さん)に簡単な説明がある。/p>p>マルチパ<gデ<^の画像デ<^パ<gのヘッダにはContent-LengthやContent-Transfer-Encoding: binaryを加えた方がいいかもしれない。/p>h3>a hrefruby-gnome2_gtk_install_winxp.pdf>Windows XPにRubyとRuby-GNOME2をインスト<汲キる/a>/h3>h2>つぶやき/h2>p>2008/12/24 - 21:08:40/p>p>WindowsでGTK+やQtのアプリ(Ruby製)を起動すると、ちょっとした物でもメモリ使用量が20MB以上になってしまうのが気になる。(2009/02/15追記:使用しているウィンドウを一度最小化して元に戻してやると5〜10MB程度に減る。どういう仕組みになってるんだろう)/p>p>起動速度も.NETと比較する意味がありそうな程度には遅い。ただOSと一緒に起動して常駐させておくタイプのプログラムなら気にならないだろうけど。GTK+はWindows版とLinux版の互換性が高いし、Linuxでは起動速度も普通。/p>p>2009/01/24 - 13:37:41/p>p>Windwos XP上でプログラミングしている時、ステ<^スバ≠ノ文字列をpushしても、それ以降のコ<hがある程度実行された後でしかその文字列が表示されないことがある、という問題に遭遇した。/p>p>なぜそういうことが起こるのか? いろいろ試してみた上での推測だが、シグナルハンドラの中でpushした場合、そのハンドラを抜けてからでないと、ステ<^スバ≠フ表示が更新されないようだ。/p>blockquote>pre># シグナルハンドラの例。実行はきちんとできるスクリプトの一部だと思って下さい def on_button_activate(widget) @statusbar.push(context, 先に表示したい文字列) sleep 5 @window.title 後で表示したい文字列 sleep 5 # 画面の見た目上、ウィンドウタイトルの更新が先に実行されてしまっているように見える end/pre>/blockquote>p>ではpushした文字列の表示を先に行うことを保証できる方法はないのか? バッドノウハウっぽい気もするが、とりあえず下のようなコ<hを書くことによって可能なようだ。/p>blockquote>pre>def on_button_activate(widget) Thread.new(){ sleep 0.1 @statusbar.push(context, 先に表示したい文字列) sleep 5 @window.title 後で表示したい文字列 sleep 5 # 順番どおりに実行されているように見える } end/pre>/blockquote>p>要するに、別スレッドを作り、そこにpushの実行を含む処理を逃がし、スレッド内の処理の実行をある程度の時間遅らせることによって、先にシグナルハンドラを抜けさせてしまう。(自分の場合、newに渡すブロックの中身をさらにメソッドとしてくくり出した形でうまく行った)/p>p>2009/05/03 - 09:55:57/p>p>signal_connectメソッドで、ブロックのかわりにシンボルor文字列(=メソッド名)でシグナルハンドラを設定する方法。/p>blockquote>pre># ブロックで設定 #@widget.signal_connect(changed) { |widget| # changedシグナルが発生した時の処理}/pre>/blockquote>----------blockquote>pre># シンボルor文字列(=メソッド名)で設定 #@widget.signal_connect(changed, &method(:on_widget_changed))#(同じクラス内の別の場所)def on_widget_changed(widget) # changedシグナルが発生した時の処理end/pre>/blockquote>methodメソッドはObjectクラスが持っています。h2>リンク/h2>p>・a hrefhttp://ruby-gnome2.sourceforge.jp/ja/ target_blank>Ruby-GNOME2 Project Website/a> -- Ruby-GNOME2公式サイトbr>Ruby-GNOME2について書きたいことがある方は、Ruby-GNOME2 Project Websiteの編集に参加することを検討してみて下さい。制限なく編集したいのでログインアカウントがほしいという方は、ruby-gnome2-devel-ja 案内ペ<Wからメ<潟塔Oリストに入会してその旨の投稿をすれば、管理者の方から返答がもらえると思います。/p>p>・a hrefhttp://www.gnome.gr.jp/ target_blank>日本GNOMEユ<U♂/a> -- GNOME/GTK+開発者向けサイト/p>p>・a hrefhttp://developer.gnome.org/ target_blank>The GNOME Development Site/a> -- GNOME/GTK+開発者向けサイト(英語)/p>p>・a hrefhttp://lldev.jp/>プログラミング工/a>/p>/div>/body>/html>
View on OTX
|
View on ThreatMiner
Please enable JavaScript to view the
comments powered by Disqus.
Data with thanks to
AlienVault OTX
,
VirusTotal
,
Malwr
and
others
. [
Sitemap
]