満里奈の旅ぶくれ―たわわ台湾

満里奈の旅ぶくれ―たわわ台湾 (新潮文庫)

満里奈の旅ぶくれ―たわわ台湾 (新潮文庫)

満里奈の旅ぶくれ―たわわ台湾 (新潮文庫)

 昨年の秋に台北に行った。帰りの飛行機に乗る前に空港で知人へのおみやげ用にお茶を買い自分用にも一つ買って帰った。家で飲んでみて驚いた。正確には飲む前の香りですでに驚いていたのだが、、、台湾の茶に関する銘柄や品種の知識もなくお店の人にまかせて買ったお茶であったがパッケージの裏側をみると金萱茶(キンセンチャ)という名前のようだ。
 ネット上の情報だと
「金萱茶...甘いミルクのような香り、キンモクセイのような香りが特徴」 とある。
 本でも調べてみようと思い読んだのが台湾観光親善大使である渡辺満里奈の書いたこの本。
 台湾のお茶と食べ物についてのガイドブックといったところで、お茶について調べるという当初の目的を達成できる本ではなかったけれど、写真も多く台湾のスローフードを知ることが出来た。

スローフードな人生!―イタリアの食卓から始まる

スローフードな人生!―イタリアの食卓から始まる (新潮文庫)

スローフードな人生!―イタリアの食卓から始まる (新潮文庫)

スローフードな人生!―イタリアの食卓から始まる (新潮文庫)

 食に興味があり、スローフードって何だろうと思っていた自分にとっては良い本でした。「スローフード運動は、ファーストフード反対というような了見の狭いところにとどまらない...」とあるようにアンチファーストフードといった運動ではなく

  • 伝統の味を守る。
  • 伝統の素材や調理法を守る。
  • 家族や知人と食卓を囲む時間を大切にする。

「大げさな言い方をすれば、スローフードとは、口から入れる食べ物を通じて、自分と世界との関係をゆっくりと問い直すことにほかならない。自分と友、自分と家族、自分と社会、自分と自然、自分と地球全体の関係を、である。」
 効率重視の考え方が、食事にまで入ってきて空腹を満たすだけに食べる、レンジで温めるだけで食べられる食事をなんともつまらない食事だなぁと考えさせられた。
 単なるカフェでなくコミュニケーションを楽しむ場であるイタリアのバールの話、フランスのワインとイタリアのワインの話、ロシア人の家庭での食事の話、イタリアのアグリツーリズモの話はとても興味深かった。


関連図書:

スローライフでいこう―ゆったり暮らす8つの方法 (ハヤカワ文庫NF)

  • 大人が読む児童書(当ブログのタイトルはこの本に出てくるカメの名前から拝借。)

モモ―時間どろぼうとぬすまれた時間を人間にかえしてくれた女の子のふしぎな物語 (岩波少年少女の本 37)

Pythonと日本語表示と文字コード 其の弐

ここのところは前回と一緒で。

(WindowsXPココから "Python 2.5.1 Windows installer" をインストールした環境でテストしています。)

  • まずは、あなたが書いたコードはutf-8で保存する。そして、そのコードの先頭には以下を記入する。
# -*- coding: utf-8 -*-

あなたはエディタに何を使っていますか? 秀丸、メモ帳、vimmeadow、或いは Python Scriptereclipse ? いずれにしてもファイルを保存する時のエンコードutf-8にすべし。

  • 今日はもうちょっといじくってみる。
# -*- coding: utf-8 -*-

jstr = "パイソン"
kstr = "パイソン"

print jstr
print kstr

if jstr == kstr:
    print "same"
else:
    print "not same"

表示は文字化けするが二つは same 。これは当たり前か。

  • jstr を unicodeにしてみる。
# -*- coding: utf-8 -*- 

jstr = u"パイソン"
kstr = "パイソン"

print jstr
print kstr

if jstr == kstr:
    print "same"
else:
    print "not same"

jstr は文字化けせずに表示される。これは前回もやった。
で、ふたつは same ではない。

  • さらに、kstr を unicode に変換して比べてみる。
# -*- coding: utf-8 -*-

jstr = u"パイソン"
kstr = "パイソン"

kstr = unicode(kstr,'utf-8') #unicodeに変換。

print jstr
print kstr

if jstr == kstr:
    print "same"
else:
    print "not same"

ふたつとも文字化けせずに表示。そして、ふたつは same 。

# -*- coding: utf-8 -*-

jstr = u"パイソン"
kstr = "パイソン"

jstr = jstr.encode('utf-8')

print jstr
print kstr

if jstr == kstr:
    print "same"
else:
    print "not same"

ふたつとも文字化けする。そして、ふたつは same 。

  • まとめ。

 utf-8 って unicode だろ? っていう僕の勝手な思いこみが Python を気持ちよくさせていない原因。
 utf-8unicodeエンコーディング(符号化方式)のひとつである。

# -*- coding: utf-8 -*-

jstr = u"日本語"    #これは unicode
kstr = "日本語"     #これは utf-8

lstr = unicode(kstr,'utf-8')  #lstr は unicode
mstr = kstr.decode('utf-8')   #mstr は unicode
nstr = jstr.encode('utf-8')   #nstr は utf-8

Pythonと日本語表示と文字コード、unicode 、str 、utf-8 、shift-jis 、、、

写真の人物と記事は一切関係ございませ

 Pythonは使いやすい覚えやすい気持ちいいとまで言う人もいる。たしかにその通りだと思った。しかし、日本語を使おうとした時に急に気持ち良くなくなる。そう感じたのは僕だけではないはずだ。
 ということで今日の日記のネタはPythonと日本語となりました。
(WindowsXPココから "Python 2.5.1 Windows installer" をインストールした環境でテストしています。)

  • まずは、あなたが書いたコードはutf-8で保存する。そして、そのコードの先頭には以下を記入する。
# -*- coding: utf-8 -*-

あなたはエディタに何を使っていますか? 秀丸、メモ帳、vimmeadow、或いは Python Scriptereclipse ? いずれにしてもファイルを保存する時のエンコードutf-8にすべし。

  • では早速気持ちよくない(表示が文字化けする!)例。
# -*- coding: utf-8 -*-

jstr = "日本語"
print jstr #日本語を表示してみる。 → 文字化けする。

ちょっと気持ちよくしてみる。

# -*- coding: utf-8 -*-

jstr = u"日本語"
print jstr #日本語を表示してみる。 → 文字化けしない。

違う方法で...

# -*- coding: utf-8 -*-

jstr = "日本語"
print jstr.decode('utf-8') #ASCII→utf-8 しているのでなく
                           #utf-8→unicode にデコードしている。
                           #文字化けしないで表示。

違う方法で... たぶんこれがいちばん混乱するところ。 utf-8unicodeに変換する。なんでこの一個上のサンプルはデコードで今回は変換なのか!

# -*- coding: utf-8 -*-

jstr = "日本語"
print unicode(jstr,'utf-8') #utf-8→unicodeに変換
                            #文字化けしないで表示。

この次はエラーになる。さっきファイルはutf-8で保存するべし!としてutf-8で保存してるからね。shift-jis→unicodeはエラーとなる。

# -*- coding: utf-8 -*-

jstr = "日本語"
print unicode(jstr,'shift-jis') #shift-jis→unicodeに変換
                                #これはエラーになる。

さらに、エンコードってのもある。
一番最後の四行が文字化けせずに表示できるのは私のwindowsのコマンドシェルのコードページが cp932 だから。あなたの環境でのコードページはコマンドラインで chcp とタイプして調べてください。

# -*- coding: utf-8 -*-

jstr = u"日本語"

print jstr.encode('iso-2022-jp')
print jstr.encode('euc-jp')
print jstr.encode('euc-jisx0213')
print jstr.encode('euc-jis-2004')
print jstr.encode('iso-2022-jp')
print jstr.encode('iso-2022-jp-1')
print jstr.encode('iso-2022-jp-2')
print jstr.encode('iso-2022-jp-3')
print jstr.encode('iso-2022-jp-ext')
print jstr.encode('iso-2022-jp-2004')

print jstr.encode('utf-7')
print jstr.encode('utf-8')
print jstr.encode('utf-16')
print jstr.encode('utf-16-be')
print jstr.encode('utf-16-le')

print jstr.encode('cp932')          #文字化けしない。
print jstr.encode('shift-jis')      #文字化けしない。
print jstr.encode('shift-jisx0213') #文字化けしない。
print jstr.encode('shift-jis-2004') #文字化けしない。

 今回は文字化けさせずに表示させるだけでもちょっと気持ちよくなったかなぁ。
次回につづく。
参考リンク:

参考図書:

Unicode標準入門
Unicode標準入門Tony Graham

翔泳社 2001-05
売り上げランキング : 167572

おすすめ平均 star
starISO/IEC 10646
starLocalization、Internationalizationの虎の巻です

Amazonで詳しく見る
by G-Tools
文字コード超研究
文字コード超研究
ラトルズ 2003-07
売り上げランキング : 95525

おすすめ平均 star
star隠れた名著
starまぁまぁ
star類似所の中では大変読みやすい書籍

Amazonで詳しく見る
by G-Tools

スローライフでいこう―ゆったり暮らす8つの方法 スローライフ==集中して、内省して...ってことですか イーシュワラン先生!

 イーシュワラン先生は「のんびりダラダラ暮らせばいいじゃん!」と言うことを説いているのではない、もちろん負け犬のようになれとか、家庭菜園を作って自給自足しましょうという類の本でもない。
 今、ここ、そして自分に集中して仕事なり勉強なり食事なり会話なりをすることで雑音に惑わされることなくゆったりと暮らせますよ。 何をそんなに急いでいるんですか? あなたにとって一番大事なことをなんですか? 一番大事なことをすればいいんじゃないですか? 何でそんなに色々なことをしようとしているんですか? ...問われ続ける一冊でした。
 スローライフと言うがこの考えを実践すれば良質の仕事や勉強が出来て効率が良くなり良い意味でスピードアップできるんじゃない? ユーモアも豊富で楽しく読める良書です。

スローライフでいこう―ゆったり暮らす8つの方法 (ハヤカワ文庫NF)

スローライフでいこう―ゆったり暮らす8つの方法 (ハヤカワ文庫NF)

IE(インターネットエクスプローラ)をExcelのレポートツールとして使う...というか、使えるかなぁと思案中のサンプル。VBAからInternet Explorer Object を使ってみる。

Show Internet Explorer


 このサンプルでは、簡単な言葉を太字で表示しているだけだけどHTMLなんかを駆使することでもっと驚くようなことが出来ると思う。
 

Sub Show_IE()
    
    Dim Obj_IExplorer As Object
    Dim Str1 As String
    Dim Str2 As String
    
    Str1 = "<B> アイデアは解消できたら良いなというような"
    Str2 = "着眼点であって、解消方法そのものではない。</B>"
    
    Set Obj_IExplorer = CreateObject("InternetExplorer.Application")
    
    With Obj_IExplorer
     .Navigate "about:blank"
     .Toolbar = 0
     .StatusBar = 0
     .Width = 480
     .Height = 320
     .Left = 100
     .Top = 100
    End With
     
    Do While (Obj_IExplorer.Busy)
        DoEvents
    Loop
     
    With Obj_IExplorer
     .Document.Title = "Internet Explorer を使って表示する。"
     .Visible = 1
     .Document.Body.InnerHTML = Str1 + Str2
    End With
End Sub

参考リンク
Microsoft MSDN Library InternetExplorer Object

便利じゃないか!すばらしいではないか! - Firefox Add-ons -

Firefox

 何を今更と言われるかもしれないが使ってなかったんだからしょうがないだろう。

 インターネットエクスプローラの描画エンジンを使ったタブでページを表示出来たり、特定のurlをインターネットエクスプローラの描画エンジンで表示したり出来る。GyaOYahoo!動画などの動画サイトを利用する時に使っています。

 ブラウザのセッションを保存できるアドオン。たくさんタブを使っていてもその状況に名前を付けて保存できる。Operaには元々セッション保存機能が付いていて便利だと感じていたのでFirefoxでこの機能が使えるのはうれしい。

 Windows の Speak API を使って Webページの選択したテキストをを読み上げてくれる。英語の発音をもっと流暢に...というのは無理な注文なのだろうか。