mieki256's diary



2023/10/18(水) [n年前の日記]

#1 [ruby] FXRubyをWindows10上で試用

Windows10 x64 22H2上で、FXRuby を試用してみた。

_GitHub - larskanis/fxruby: FXRuby is an extension module for Ruby that provides an interface to the FOX GUI toolkit.
_fxruby | RubyGems.org | コミュニティのgemホスティングサービス
_File: README - Documentation for fxruby (1.6.46)

FXRubyは、Rubyから利用できるGUIライブラリ。 _FOX Toolkit というGUIライブラリをRubyから利用できるようにしたもの。かなり昔からあるけれど、他のRuby用GUIライブラリが軒並み開発停止になっている中、今でも開発が続いているあたり、かなり貴重なライブラリなのではないかと。

以下の環境で動作確認してみた。
ちなみに、自分、以前少しだけ試用してみたことがあるっぽい。

_mieki256's diary - FXRubyを勉強中

インストール :

gem install fxruby

Windowsの場合は、これだけでインストールできる。今回は fxruby 1.6.46 x86-mingw32 がインストールされた。

サンプルファイルで動作確認 :

以下のディレクトリにサンプルファイル群が入っている。
(Rubyインストールフォルダ)\lib\ruby\gems\2.6.0\gems\fxruby-1.6.46-x86-mingw32\examples\

examples\ を別の場所にまるっとコピーして、その中で一通り動かしてみたけれど、FXRuby だけを使っているサンプルについては大体動かせた。他のライブラリまで要求するサンプルについては動作確認していない。

ただ、一見動いているようでも、一部のスクリプトは終了時に Segmentation fault を吐く。例えば dctest.rb は、Ruby 2.6.10 x86、Ruby 3.2.2 x86、どちらも Segmentation fault を吐いた。

更に、一部のスクリプトは、終了時に以下のメッセージを吐く。
../../../../ext/fox16_c/FXRuby.cpp(164): FXASSERT(SWIG_CheckConvert(rbObj, ty)) failed.
例えば image.rb がこういうメッセージを吐いたりする。しかし、Ruby 2.6.10 x86 では吐くけれど、Ruby 3.2.2 x86 では吐かない。Ruby のバージョンによって問題が起きたり起きなかったりするっぽい。

問題点 :

少し触っているうちに、ふと気づいた。コレ、日本語入力ができないのでは…? scintilla-test.rb を動かして試した感じでは、IMEが無反応だった。

加えて、Alt + F4 でウインドウを閉じられない点も少し気になった。Windowsの作法に従ってないっぽい。でもまあ、他のアプリでもそういうのはあるから、そこらへんはまあいいか。

何にせよ、日本語入力ができない点は、日本語文化圏では結構痛い気がする。道理で日本国内では関連記事を全く見かけないわけで…。日本語入力を一切しないGUIアプリなら使えなくもない、みたいな話になるのだろうか。


以下の記事によると、入力はともかく、日本語表示はできるらしい。

_Rubyはじめました: rubyでGUIアプリ FxRubyのインストールとHello World!


更にググっていたら、大昔、2002年頃なら、パッチをあてることで入力できなくもない状態になってた時期もあるようで…。ただ、今ではパッチ関連のページすら消滅してる状況なので、もう誰も FOX Toolkit に日本語入力なんて期待していないということなのだろう…。

_Takahiro's inside out - fox-unicode (WebArchive)
_FOX Unicode 化 (WebArchive)
_Ruby de GUI

以上です。

過去ログ表示

Prev - 2023/10 - Next
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project