トップ(最新)

nDiki : Python

Python

スポンサード リンク

Related term

2004年4月13日 (火)

ガントチャート関連ツール このエントリーを含むはてなブックマーク

DateBk5 からのガントチャート作成の話だが、まずはチャート作成部分は他のものを利用できないかなと調査。

@ Planner (MrProject)

以前にちょっと使ったことあり。 日本語OK。 以前、保存したら次に開けなかったことがありそれ以来使っていない。 データはXMLフォーマット(DTDもある)なので、この形式でデータを作成すると、勝手にチャートを作らせることができる。

使い勝手はいいが、印刷まわりはちと弱い。

@ GanttProject

Java で記述されていて、Java Web Startも可能。 見た目は Planner とほとんど一緒。

これもデータはXMLフォーマット。

@ PyGantt

Python で書かれたガントチャート作成ツール。

aptラインが用意されているので入れてみる

 apt-get install python-logilab-pygantt

実行

pygantt --help Traceback (most recent call last):

  File "/usr/bin/pygantt", line 2, in ?
    from logilab.pygantt.main import run
  File "/usr/lib/python2.3/site-packages/logilab/pygantt/main.py", line 103, in ?
    from logilab.pygantt.lib.readers import ProjectXMLReader
  File "/usr/lib/python2.3/site-packages/logilab/pygantt/lib/__init__.py", line 21, in ?
    from objects import *
  File "/usr/lib/python2.3/site-packages/logilab/pygantt/lib/objects.py", line 31, in ?
    from zLOG import LOG, INFO

ImportError: No module named zLOG

何か足りない。

スポンサード リンク


[ 4月13日全て ]

2005年4月20日 (水)

SConsGNU Autotools のかわりになるか このエントリーを含むはてなブックマーク

NSIS のサイトによるとビルドに「SCons」を使うようしたらしい。

  • クロスプラットフォーム
  • AutoconfAutomake と同様の機能を統合
  • LaTeX もビルトインサポート

と興味深いツールになっているようだ。

現在プロジェクトLaTeXベースのドキュメント生成には GNU Make を使っているのだが、UNIXWindows の両方でビルドできるようにするには ComSpec 環境変数の有無で使用するコマンドを切り換えたり等いろいろ面倒なので、代替ツールとして使えないかなと。

基本的な機能は Make に対する改良がなされているようであるし、コピー等ファイル操作も SCons 自体がもっているのでクロスプラットフォームでビルドできるようにするのも楽そうだ。

一方 Autoconf 系の機能については、インストール済みのライブラリの検出や実装レベルのチェック等を実装しているようである。 make check や make dist、make install 等にあたるターゲットに関する機能(あるいは規約)のようなものは無い。これは非常に残念。 結局自分が Ant を使わなくなったのも GNU Autotools にあるこれらの機能に欠けているからであるし。

実は私がPerl が好きな理由の一つとして、これらサポートが充実しているという点がある。Perl では ExtUtils::MakeMaker (あるいは Module::Build)があり、ビルドからテスト、ソースパッケージのパッケージングまでフレームワークが整っている。

SConsPython ベースで、Makefile にあたるファイルも Python スクリプトである。 SCons が影響を受けた Cons は Perl ベースであったのだが、既に2001年5月ごろから開発が止まってしまっている。残念。

ということで Make の代替には使えそうであるが、GNU Autotools と同じようなことをするにはいろいろ手をかけないといけないといった印象。


[ 4月20日全て ]

2005年11月21日 (月)

定型書式で内容を記述していくのに便利な形式は? このエントリーを含むはてなブックマーク

要求仕様書LaTeX で書いている。 要求と仕様の組をまとめて longtable で記述しているのだが、 LaTeX らしい繁雑さがあってちょっと効率が悪い。 マクロを定義すればある程度書きやすくなると思うが、それでもそこそこまでな気がする。

文書の中にレコードの並びが書けて、レコードの並びの中に文章が書きやすいそんなフォーマットはないものかなぁ。

  • LaTeX + マクロ
    • 整形は綺麗。
    • 記述が繁雑になりがち。\マクロ名とか {} とか。
  • DocBook
    • 仕様デカスギ
    • 以前使ってみたことがあるが、手で書くのにはしんどい。
  • XML
    • 構造的な情報の表現には良いのだが、手で書くのはしんどい。開きタグも閉じタグも。
    • 普通の章節や、マークアップのルールを考えなければならない(定義するか借りてくるか)。
    • LaTeX等へのコンバータを書く必要あり。
  • YAML
    • レコードの並びだけだったら良いが、文書の他の要素を一緒に書くのには適さない。
    • ある程度の構造やボリュームがあると、思ったほど手書きしやすくない。
    • YAML Perl モジュールで痛い目にあっている。

Wiki に慣れきっている自分にとっては Wiki 文法のような感じで記述できて、一部に定型レコードの並びが書けて、そこの整形ルールだけ定義してあげれば LaTeX に変換できるとかそういった感じがのものが欲しい。 定型レコードの部分は RFC822 のヘッダみたいな感じで良くで、値の部分に長めの文章を複数行で書けるものがいい。

構造化テキスト用フォーマット、あるいはWiki フォーマットをアレンジするのがいいかもしれないな。 このあたりのフォーマットは、ソーステキストのままでも充分読み易いことを意識して定義されているので書くのは楽。

  • reStructuredText
    • いいらしい。
    • HTMLLaTeXXML へのコンバータがある。
    • 拡張性も考慮されているらしい。
    • でも Python
  • Markdown
  • WiKicker (Wiki)
    • かなり書き慣れている。
    • レコードの並びの書き方を考える必要あり。
    • 複数行にまたがる処理を書くのが面倒。
    • 自分で書いているシステムなので中身は何でも知っている。
    • マイナー。

レコード部分とは関係ないけれど reStructuredTextMarkdown の「アンダーラインのあるテキストを見出しとする」っていうのはいいな。 普段メールやプレーンテキストでちょっと文書を打つときに使っているスタイルと一緒だ。

要求仕様書用に使うかどうかは別として、要チェック。


[ 11月21日全て ]

2005年11月22日 (火)

reStructuredText いいんじゃない? このエントリーを含むはてなブックマーク

昨日の続きであるが、reStructuredText がライトなドキュメント書きにはいいんじゃないかという感蝕を得た。

基本的にプレーンテキストのままで充分見られるので、そのままメールに貼りつけられる。

今までは文書を作成する際、メールで草稿をやりとりしたのち内容が固まったら LaTeX のコマンドでマークアップしてコンパイルしてPDF化していた。 これだとちょっと手間であるのだが、最初から reStructuredText 形式で書いていれば、そのまま rst2latex で LaTeX に落とせる。

また必要に応じて rst2html で HTMLに変換してWebサイトに置いておくこともできる。

これらで満足できない場合は Python のコードをいじって変更ということになるが、Python が駄目でも rst2xml でXMLに変換してしまえば他の言語でも reStructuredText のパーサを書かなくても(XMLの処理系を使って)コンバータを書くことができるの比較的楽である。

しかも欲しかったレコードの表現用にフィールドリストというシンタックスがあるではないか。

いいじゃん。

ということで早速今日から使うことにした。

Debian GNU/Linux sid にある Docutils 0.3.9 ではいわゆる全角文字も文字幅を1として扱かう。 このためテーブルなど桁揃えを用いる書式の部分がこのままだと不便である。 画面上では2文字分幅があっても1文字として数えられるため Docutils が通るようにするためには余計な空白などを入れて文字数を調整しなければならないが、そうすると今度は見た目的にずれるので可読性がかなり落ちてしまう。

この問題のためにMatsumoto,Tadashi氏がパッチ

を作成されているので、これを適用。

これでばっちり。


[ 11月22日全て ]

2005年12月1日 (木)

Docutils は自分にとっての Python キラーアプリかも このエントリーを含むはてなブックマーク

先日 reStructuredText ベースの要求仕様書ファイルから、LaTeX への変換プログラムを Perl で作成した。rst2xml で変換した XML 文書経由で。

欲しいところだけまずは実装して使ったんだけれど、この先使っていくには細かいところを組んでいく必要がある。やっぱりフルスクラッチするのは面倒だな。

本来は Docutils 用の Writer を作成するのが王道。

しかし Python なんだよね。以前に何度か覚えておこうと思ったんだけれど動機付けが弱かったのかいつも途中でフェードアウト。 しかし今回は明確な目的があるので、もりもりやりそう。

まずは既存の docutils.writers.latex2e.py あたりをコピーしていじって遊んでみるかな。 自分の場合この方法が一番覚えるのが早い。 小学生の時に最初にBASICをいじった時も、既存のゲームのパラメータとか改造から入ったし。

さて、その latex2e.py であるが「documentclass がオプションや設定ファイルで変更できるものの、標準の LaTeX2e 用のもののどれかしか駄目」だったりなど、普通に使うにもちょっといじる必要がありそう(jsbook とか使いたいし)。

一旦自分好みの LaTeX2e Writer を作ってから、それを拡張する形で特定文書毎の Writer を作るのがよさそうだ。


[ 12月1日全て ]

2005年12月7日 (水)

DocutilsreStructuredText から LaTeX への Writer は継承しづらい このエントリーを含むはてなブックマーク

この間やっつけでPerl で コンバータをちょっと書いたのだが、やはりここは正攻法で Docutils の Writer として書いておきたい。

Docutils に含まれている LaTeX2e Writer (docutils.writers.latex2e) のクラスを継承してカスタマイズ版を作ればいいかなと着手。 この Writer の生成する TeX ファイルがちょっと好みではないので、継承して自分好みの Writer を書いた上で、それを継承してドメイン毎の Writer を書く事にする。

Python でコードを書いたことはほとんどないのだがそれほど迷う点はない。 素直な言語なのかな。$ とか @ が出てこないのはちょっと寂しい。ブロックをインデントで示すので「閉じ」がなく、ちょっと「スースー」する。 わかる? この気持ち。

Docutils はパースした結果 DOM ライクなツリーができて、これに対して visit / depart 式の visitor を使って処理をしていけるようになっている。 そのあたりはフレームワークがあるし、典型的なパターンなので楽ではある。

ただし、docutils.writers.latex2e のクラスが継承されることを意識されている感じがしないので、メソッドをコピーして書き換えてオーバーライドといった事が必要になる箇所が思ったよりあるのがちょっと気になる。 今後バージョンアップした時に内部も変わる可能性があるだろうし、最終的にはごっそり Writer を作ってしまう方が良さそうだ。


[ 12月7日全て ]

2006年1月12日 (木)

Windows でも Linux でも動くタスク管理ツール Task Coach このエントリーを含むはてなブックマーク

仕事をもらさず、先送りせず進めていくには

  1. タスクを書き出して
  2. 実行可能な小アクションに分割

するのがひとつのポイントである。

Palm (To Do / DateBk5 / Progect) であったり、裏紙であったり、方眼ノートであったりに、To Do リストを書き出して終わるとチェックしていく。

Palm を使う場合は繰り返し機能やアラームが使えるが、入力が面倒。電池問題あり。 紙を使うとリストアップが速く、常時表示が可能。しかし階層化書きしていくのが面倒。 それぞれ長所・短所がある。

PC用のツールだとどうだろう。タスクをサブタスクにブレークダウンしていけるもので、WindowsLinux で動くものを探してみた。

rimage:http://www.naney.org/img/2006/screenshot/TaskCoach-2006-01-12-0001-240.png Task Coach が良さそうなので、これを Debian GNU/Linux sidインストールしてみる。

@ Python 2.4 用 wxPythonインストール

Task Coach 0.54 は Python 2.4.1 以上、およ wxPython 2.5.5.1-unicode 以上が必要である。 sidwxPythonPython 2.3 用なので Python 2.4 だとそのままでは使えない。

ということで、まずは Python 2.4 用の wxPython パッケージを作成してインストールするところから。 wxPython2.6-2.6.2.1-1.src.rpm から deb パッケージにする。

一旦 Python 2.4 用の RPMパッケージ

  • wxPython-common-gtk2-unicode-2.6.2.1-1.i386.rpm
  • wxPython2.6-2.6.2.1-1.src.rpm
  • wxPython2.6-devel-gtk2-unicode-2.6.2.1-1.i386.rpm
  • wxPython2.6-gtk2-unicode-2.6.2.1-1.i386.rpm

ビルドし、その後 deb パッケージ

  • wxpython-common-gtk2-unicode_2.6.2.1-2_i386.deb
  • wxpython2.6-devel-gtk2-unicode_2.6.2.1-2_i386.deb
  • wxpython2.6-gtk2-unicode_2.6.2.1-2_i386.deb

に変換してインストールする。

 apt-get install libgtk2.0-dev freeglut3-dev python2.4-dev
 rpmbuild --rebuild --define 'pyver 2.4' wxPython2.6-2.6.2.1-1.src.rpm
 cp /usr/src/rpm/RPMS/i386/wxPython* .
 fakeroot alien *.i386.rpm
 dpkg --purge python-wxtools
 dpkg --insstall *.deb

このままだと共有ライブラリが認識されないので、ld.so.conf を修正。

 echo /usr/lib/wxPython-2.6.2.1-gtk2-unicode/lib > /etc/ld.so.conf
 /sbin/ldconfig

これでいけるかと思ったらなぜかロードできない。なぜ?

確認したらライブラリディレクトリの権限が 700 になっていた。

 chmod 755 /usr/lib/wxPython-2.6.2.1-gtk2-unicode
 chmod 755 /usr/lib/wxPython-2.6.2.1-gtk2-unicode/lib

これでOK。

@ Task Coachインストール

tarball を展開

 tar zxvf TaskCoach-0.54.tar.gz

以上。

 python2.4 TaskCoach-0.54/taskcoach.py

で実行できる。

@ Windows へのインストールの場合

TaskCoach-0.54-win32.exe がインストーラなので、実行するだけ。簡単。

@ 使い勝手

基本的な機能はほぼそろっている感じだ。

リスト表示とツリー表示をタブで簡単に切り換えられるのが良い。

「ツリー表示の方でタスクをブレークダウン」していきそれぞれに期日を設定すると、「リスト表示の方で期日順に並べて表示して上から実行」していくことができる。

Task Coach の特徴として、各タスク毎のストップウォッチ機能がある。 これを使うとどのタスクがどれぐらい時間がかかったかを記録しておけるので、今後同じようなタスクを作成するときの時間見積もりに役立てることができる。

手元の環境だと uim との相性が良くないのか、途中で日本語入力ができなくなることがあるのが今のところ問題。その場合は Task Coach を起動しなおすことになる。

それ以外はなかなかいい感じ。

デスクワークはガンガンこれに突っ込んでアクションに分割していき、淡々とこなしてみますか。


[ 1月12日全て ]

2006年8月8日 (火)

Beagle クライアント比較 このエントリーを含むはてなブックマーク

Beagle クライアントとして

を試してみた。 それぞれ一長一短であり、今のところこれ1本で OK というのがないというのが感想である。

今のところ yaBi が一番使いやすそうである。

@ Beagle Search (beagle-search)

Beagle に付属する GNOME 系クライアント。

検索結果の1つを選択すると、画面下部に詳細情報が表示される。 選択したものと、表示される場所とが遠いため見にくい。

また選択されていないものはあまり情報が表示されないので内容わかりずらい。

最近は KDE を使っているので個人的には GNOME 系だと設定が面倒。

@ yaBi

Python で書かれた KDE 系クライアント。

検索結果に対する情報表示やアクションが豊富で使いやすい。

@ インストールと起動
 tar zxvf 33222-yabi-0.6.1.tar.gz
 mv yabi-0.6.1 /usr/local
 cd /usr/local/yabi-0.6.1
 python2.4 yabi.py

@ Kerry Beagle

KDE 系クライアント。 システムトレイに対応している。

タイプを問わずに混ぜこぜにスコアの高いものから順に表示するのが特徴。

検索結果における1項目の表示が大きく適度な情報量があるものの、狭くしたり畳んだりすることができないため結果の一覧性はいまいち。

@ インストールと起動
 tar jxvf kerry-0.1.90.tar.bz2
 cd kerry-0.1.90
 ./configure --prefix=/usr/local/kerry-0.1.90
 make
 make install
 /usr/local/kerry-0.1.90/bin/kerry

[ 8月8日全て ]

2007年11月19日 (月)

今日のさえずり - Google ドキュメントフォントでP明朝指定したら PDF にもきちんと変換できた このエントリーを含むはてなブックマーク


[ 11月19日全て ]

2008年1月8日 (火)

sarge からetch へのアップグレードで危うくサービス壊すところだった このエントリーを含むはてなブックマーク

APT ラインが stable だったため中途半端に etch が混ざっているのが気になっているサーバがある。 セットアップした管理者がしばらく不在にしているので、アップグレードすることにしたが、やはりすんなりとはいかなかった。

@ Python 2.3 から 2.4

Python を使っているパッケージより先にインタープリタが削除されたため、そのパッケージが削除できなくなった。

依存関係無視して一旦削除して、更新。

@ Dovecot は設定がそのまま使えず、ダウングレード

Dovecot はアップデートしたら、設定ファイルの項目が変わったのか、エラーメッセージを吐いてデーモンがあがらなくなった。 MySQL 使ってたり、いろいろ苦労して設定してたものなので、いじるのは危険。 sarge からパッケージ持ってきてダウングレード。

@ Linux kernel もアップデートできず

kernel も 2.4 から 2.6 へアップデートしたが、再起動したら md まわりでエラーRAID のところがそのままでは駄目っぽい。 慌てて元に戻す。

一旦 udev にしたのも hotplug に戻した。

@ Apache は a2ensite・a2enmod しなおし

こちらは、バーチャルホストといくつかのモジュールの有効化がリセットされてサイトが見られなくなっていたので、それぞれ有効化しなおして復帰。


[ 1月8日全て ]

Related web page

IronPython Beta 4 で例外:ある nakagami の日記:So-net blog
数日前の話だけど Iron<strong>Python</strong> Beta 4 が出た。 今回は、zip アーカイブのバイナリだけじゃなくて、msi 形式のインストーラー版がある。 そして、今回は <strong>Python</strong> Standerd Library が含まれてる。 せっかくなので、msi でインストールしてみた。 ライセンスの確認のところで、Iron<strong>Python</strong> のライセンスと、 <strong>Python</strong> Standerd Library のライセンスが併記されてた。なるほど、ライセンスが違うからライブラ
http://nakagami.blog.so-net.ne.jp/2008-08-12
C言語をブラウザで実行、Ruby/Python/Perlも然り | エンタープライズ | マイコミジャーナル
http://journal.mycom.co.jp/news/2008/07/10/031/
文字列操作の比較表: Ruby, Python, JavaScript, Perl, C++ - いやなブログ
http://0xcc.net/blog/archives/000137.html
Zopeジャンキー日記 :Googleに入ったPython作者、Guidoからの報告
Googleに入った<strong>Python</strong>作者、Guido van Rossumが、Googleでの様子などについて書いている。 All Things <strong>Python</strong>ic - <strong>Python</strong> Status Update http://www.artima.com/weblogs/viewpost.jsp?thread=143947 Googleでの仕事について書いている、最初のセクションをざっと訳してみました。 大意: ところで、Googleでの新しい仕事はスゴイよ!まるで大学に戻ったみたいだ。デキる人たちが山ほどいて、それもただのプログラマーじゃ
http://mojix.org/2006/01/12/003705
マイクロソフト、オープンソースのスクリプティング言語をサポート - CNET Japan
Microsoftによると、先週末にリリースされた「Iron<strong>Python</strong> 1.0 Beta 1」は、ほかのすべての.NETプログラミングフレームワークと「密接に統合」され、<strong>Python</strong>のプログラマーはどの.NETライブラリも「容易」に利用できるようになるという。 UNIX版<strong>Python</strong>を開発するSalim Fadhleyによると、<strong>Python</strong>はUNIXプラットフォームで普及しているスクリプティング言語で、MicrosoftがこれをサポートしたことはUNIX系
http://japan.cnet.com/news/ent/story/0,2000047623,20093901,00.htm
PythonMatrix:py2exeモジュールについて
<strong>python</strong>で作成したスクリプトから、依存ライブラリを検索して、 収集したファイル群だけで実行可能なバイナリを作成する機能を持っています。 最近のバージョンになって、バンドルレベルが選択できるようになり、 単独のexeファイルに組み上げる <strong>Python</strong>24.dllとMSVC71.dllとexeの3つに組み上げる 依存ライブラリをアーカイブまたはフォルダに分離する といった混成度合いが指定でき
http://python.matrix.jp/modules/py2exe.html
nDiki: Docutils は自分にとっての Python キラーアプリかも (2005-12-01)
欲しいところだけまずは実装して使ったんだけれど、この先使っていくには細かいところを組んでいく必要がある。やっぱりフルスクラッチするのは面倒だな。 本来は Docutils 用の Writer を作成するのが王道。 しかし <strong>Python</strong> なんだよね。以前に何度か覚えておこうと思ったんだけれど動機付けが弱かったのかいつも途中でフェードアウト。 しかし今回は明確な目的があるので、もり
http://www.naney.org/diki/d/2005-12-01-Docutils.html
FrontPage - Pythonのお勉強
」は当初ゴミスレでした。56氏の降臨によって、誰かが課題を出してそれに解答していくという、スレタイとは裏腹の高度なスレになっています。ときどき初心者さんが迷い込みますが「
http://www7a.biglobe.ne.jp/~yasozumi/python/wiki/
dW : XML : XMLの論考: reStructuredText
reStructuredTextという文書フォーマットは<strong>Python</strong>文書化の公式ソース・フォーマットの1つとして採用されていますが、他のタイプの文書化でも役立ちます。reStructuredTextは興味深いハイブリッド・テクノロジーであり、構文と外観においては他の「ほとんどプレーン・テキストの」フォーマットと似ていますが、セマンティクスとAPIにおいてはXMLによく似ています。Davidはこのフォーマッ
http://www-06.ibm.com/jp/developerworks/xml/030411/j_x-matters24.html
PythonRecipe
Python
http://lightson.dip.jp/zope/ZWiki/PythonRecipe

■よく検索されるキーワード

torrent(99) ドラマ(36) x31(27) 動画(25) windows(23) 作り方(22) 画像(21) wiki(19) thinkpad(18) 使い方(18) perl(18) debian(17) 万年筆(16) 壁紙(15) 冷蔵庫(15) ほぼ日手帳(15) ラピタ(14) linux(14) ノート(13) a6(13) 書き方(12) usb(12) xp(11) 秋葉原(11) 提案書(11) ganttproject(11) バッグ(11) バッグインバッグ(10) サンプル(10) 2009(10) リフィル(10) ubuntu(10) ツール(10) hdd(9) ほぼ日(9) 交換(9) centos(9) gtd(9) 修理(9) ほぼ日手帳2009(8) 無印(8) 日本語(8) 無料(8) firefox(7) ボールペン(7) うなぎ(7) ハニートースト(7) gmail(7) 機内持ち込み(7) nikkor(7) 無料動画(7) nikon(7) antivirus(7) mailpia(7) java(7) so905ics(6) 喜多川美佳(6) ダイソー(6) 互換(6) 方眼(6) 手帳(6) cvs(6) ssh(6) ヨドバシカメラ(6) vq1005(6) d(6) ai(6) ウォーターボーイズ(6) ブログ(6) 古川小百合(6) 映画(6) skype(5) ヤンキー(5) c#(5) ファイル(5) 故障(5) qemu(5) f6(5) svn(5) av(5)

この日記のはてなブックマーク数 Add to Google RSS

Process Time: 1.920527s / load averages: 0.49, 0.43, 0.55
nDiki by WATANABE Yoshimasa (profile)
Powered by DiKicker
Base theme by Nana (for tDiary)