python

pygtkでスレッドを使うときの注意

PyGTKのFAQサイト http://www.async.com.br/faq/pygtk/ のセクション20に色々あった。http://www.async.com.br/faq/pygtk/index.py?req=show&file=faq20.006.htp が、まさに私が困っていたことがあった。 スレッドの中から、GUIの要素を変更する時は、 gobje…

 バックグラウンドでコマンド実行ハマリ

pygtkで、GUIを作ってるが、以下のハマリで、 一日つぶれた。 その1 popenのバッファリング popenで、コマンドを実行し、コマンドの出力を読み込んで、 ウィンドウなどに表示する時 デフォルトだと、コマンドの実行が終了するまで、結果が表示されない。 原…

モジュール検索パス

pythonモジュールの検索パスが、distroによって違うから困ったなぁと思ってたが、 sys.pathでpythonプログラム内で自分で追加できるらしい。 sys.path.insert で追加可能。 sys.path.insert(0,"/usr/lib/seedit/") みたいにしようかな。

getElementByIdしようとしたらうまくいかず。 ーXMLドキュメント内部にDTDがある場合 OK XMLドキュメント外部にDTDがある場合 NG だった。 pythonが処理する XMLを生成する際に,C言語のlibxml2で生成しているが、 XMLドキュメント内部にDTDを含める関数が見…

デザインパターン

せっかくオブジェクト指向やるので、デザインパターンも使ってみよう。 GUIの共通パラメータ(XMLドキュメント,GUIのステータス)を構造体として持たせて、こいつはグローバル変数にしたいのだが、オブジェクト指向的にやるとsingletonなるものを使うらしい。P…

ファイル選択ダイアログだが、FileSelectionではなくて、FileChooserを使うらしい。 http://www.pygtk.org/pygtk2tutorial/sec-FileChoosers.html

GUI

メニュー画面に使うWidgetの使い方がやっと分かった… こんな感じ。 http://seedit.sourceforge.net/test/seedit-gui.py python seedit-gui.pyで、実行可能。コンパイルいらないし、サクサク書けるし、クラスにできるし、 起動も早いしpygtkサイコー! ネイテ…

Pygtkのチュートリアルでpygtkを勉強。 connect とconnect_object connectとconnect_objectの違いがよくわからん。 で、調べたら、以下のように出てきた。 http://www.kmc.gr.jp/~ranran/memo/gtk.1998-1.html より引用 gtk_signal_connect() と gtk_signal_…

GUIは、Gtk (pygtk)を使おうと思う。 理由は, 多くのディストリに入っているので。 あと大昔GtkをCから使ったことがあるので。 で、ドキュメントを探す。以下をおさえればOKか? 総本山:http://www.pygtk.org/ チュートリアル: http://www.pygtk.org/pygtk2…

GUIツールキットの選定

さて、GUIを開発したいが, 言語はPythonを使うとして,ツールキットを見てみる。長所と短所を分析 GTK(pygtk) ○Fedora, Turbo, Asianux,debianに収録 ×昔Gtkでプログラム書いたが、使いにくかった Qt(pyQt) ○オブジェクト指向をなので使いやすそう ×Turbo L…

国際化(i18n)メモ

gettextという仕組みを使えるようになってる。gettextはC言語などでも利用可。日本語化の例を追って見ていく*1 日本語化対象アプリ test.py import sys import gettext gettext.install("test","/usr/share/locale") i=1 sys.stdout.write(_("test %d") % i)…

src のような比較で、srcが文字列の場合は比較がうまくいかない。 int(src)のようにしてあげなければいけない。 微妙に厳格なところがあるようだ。このへんの挙動はちゃんと勉強しないと駄目そう。

Pythonのお勉強 おお、リンク集がすばらしい。

XML処理プログラムを勉強しながら書いている。 PythonはJavaとかJavaScriptとか 色々な言語の要素が混ざっているように感じられる。 変数宣言はないが、変数のスコープがあるし、 変数をタイプミスした場合、中身が空だとエラーが出てくる。 その点、意外と…

XML変換プログラムを作るべく、ちょっと勉強。 http://hp.vector.co.jp/authors/VA003670/python/ のドキュメントもまとまっている。 XML minidomというのを使うらしい。 http://www.python.jp/doc/nightly/lib/minidom-and-dom.html in演算子 Fedoraに入っ…

audit2allowもpythonベースになったようだし, Pythonの勉強を始める。 http://www.python.jp/Zope/links/python_documents からたどれるドキュメントで大体よさそう?