Python製EBt 絵巻

Screenshot0012

ま~さんのDIGIらいふ相部屋のすずき(lum)さんのページでPythonで書かれた絵巻、飛脚という2つのアプリ(スクリプト)が公開されています。

どちらもE90オーナーズミーティングでデモをされていたものですが、個人的に注目なのは絵巻の方。これはZaurusで有名なEBtをPythonに移植したもので、オーナーズミーティングの際は「作者さんの許可をもらっていないのでまだ公にはできない」と言っていたのですが、どうやら作者さん(おかださん)の許可はとられたようです。私自身、ZaurusでEBtを使っていただけに、この移植はうれしい限りです。

EBt(絵巻)でどんなことができるのかは、Oh!PDA 内の記事「連載EBt」あたりを見るとよくわかると思います。

で、この絵巻ですが、新規にメモを作成すると1行目に日時が入ったメモの編集画面が開きます。メモの1行目はタイトルとなっておりこれを編集すればリストに表示されるタイトルもかわります。この辺はオリジナルのEBtと同じです。メモとして使う分には自然な操作ではありますが、個人的にはこれでToDo管理も行いたいと思い、公開されているスクリプトに手を入れてみました(Emaki Ver 0.30を元にしています)。

Screenshot0013

メニューに「ToDo追加」という項目を追加して、これを選んだときにはメモのタイトル(メモの1行目)を入力するだけで編集画面には移らないというだけのことですが、ToDoを管理するという面では使い勝手はいいように思います。もちろん通常の新規作成も可能です。

なお、この改造は絵巻の作者であるすずき(lum)さんの許可を得ずに勝手にやっていることなので不具合等の問い合わせをすずき(lum)さんにしないようお願いします。

まず、メニューの追加。

( unicode( "編集", "utf-8" ), (
    ( unicode( "新規", "utf-8" ), lambda: self.new_text() ),
    ( unicode( "オブジェクト貼付", "utf-8" ), lambda: self.add_object() ),

の部分に

( unicode( "編集", "utf-8" ), (
    ( unicode( "新規", "utf-8" ), lambda: self.new_text() ),
    ( unicode( "ToDo追加", "utf-8" ), lambda: self.new_text2() ),
    ( unicode( "オブジェクト貼付", "utf-8" ), lambda: self.add_object() ),

と「ToDo追加」の行を追加します。

次に、下記の関数を適当な場所(def new_textの次あたり)に追加します。

    def new_text2( self ):
        newtextname = appuifw.query(unicode("タイトル","UTF-8"),"text")
        if newtextname != None:
            old_current = self.current
            self.write_new_file( newtextname )
            self.current = old_current
            self.view_main_list()
            self.refresh()
        return

これで、Option > 編集 > ToDo追加を選ぶとタイトルの入力が行えます。入力したタイトルはそのとき選択されている(ハイライト表示になっている)項目の子メモとして登録されます。もちろん通常のメモと同じく後から編集も可能です。

タグ: , , , , ,

back to top