• Codereader
  • MomokuriMemo
  • katyusha
  • wine
  • シンガポ

Code readers daily

ソース読みの毎日

  • ホーム
  • 連絡先
  • ログイン!

nixnote (旧Nevernote)の検索機能

  • 12月
  • 24

2010年の上半期に、国際化の開発に協力したOSSプロダクトのひとつに、nixnote(旧Nevernote)がある。

Evernoteクライアントのフリークローンで、Java+QtJambiで書かれていて、プラットホームニュートラルに動く。そのころ、KoedoLUGで、紹介したことがあった。しばらく、開発協力した本人も使うことが無くなっていたのだが、KoedoLUG主宰のはとちゃんが地道に使い続けてくれていることが判明、ちゃんとみないと遺憾な、とgit repositoryをおいかけ直すことに。

ところで、この手のドキュメント管理ソフトウエアでは、全文検索のできがとても重要である。nixnoteは、データ保管には、H2 Database を使っている。H2は、Javaで実装されたオープンソースのDBMSである。

さて、nixnoteでは、設定可能な正規表現 [,\\s]+ で単語を切り分けて、インデックスを作成している。ご多分にもれず、これでは日本語の検索ができない。日本語などCJK言語の単語切り分けは、正規表現では表現できず、形態素解析を必要とするからだ。

さて、H2データベースには、内蔵の全文検索が2タイプあり、ネイティブとLucineによるものがある。Apache Lucineは有名な全文検索エンジンで、これを使うように改良できれば、nixnoteの機能も向上させられそうだ。そこで、H2データベースのLucineによるCJK全文検索をしらべると、H2追っかける日記にて全文検索を使う話が掲載されていた。

ということで、nixnoteのこの部分を改良する人、募集中なのである。(自分でやれ?)はとちゃんが、がんばれ!?

コメントを残す » Freesoftware and Open Source Software, Linux, Programming, Java, Desktop Applications

Linux 20周年記憶に残ること

  • 6月
  • 12

リンク: http://d.hatena.ne.jp/mktredwell/20110611/1307815106

Linux 20周年で、Linus Torvaldsさんが来日し、6/1-3のLinuxCon Japanに参加しました。 この20年に関わった人は、それぞれに感想をもったとおもいます。そのなかのひとりにあかいさんがいます。あかいさんは、LinuxFoundationの20年史をポイントしつつ、それ以外に

20年で記憶に残るマイルストーンには、何があったのだろうか

と提起しています。あかいさんが初めてLinuxを知ったのは、1995年の神戸・阪神大震災のとき、と記しています。わたしが初めてLinuxを知ったのは、1994年の夏くらい、使い始めたのは、1995年4月に社会人となって最初の給料でPCを買って、初日にプレインストールのWindows3.1Jを消し去ったとき、からです。

なぜ、山形浩生氏の活動が、Linux 20年史と関係してくるのだろう。

山形さんには、1990年代後半、TLUGの活動の中で、お話させていただく機会が数度ありました。このときは、TurboLinuxの前身Pacific HiTechのクリフ・ミラーさんとも交流があって、1998年くらいにNTTデータにきていただいて、Linux推進派の社内エンジニアたちと日本の情報産業の構造と、システムインテグレータが取り扱うに必要な環境などについて、意見交換したこともありました。

このころに、エンジニアやLinux開発者は、技術だけではなく、ライセンスや倫理や経営についても理解を深めないといけないと思ったのですが、ここには山形さんの影響を受けている気がします。

私が、OSS/Linuxの世界に深く入っていくきっかけになったのは、1989年前後のGNU Manifestの引地さんの訳だったのだけれども、1990年代前半の東北大学在学中に黒木さんやその辺りの一派による社内掲示板での議論の影響もすごく強かった。

そして、2003年くらいから、あかいさんがLinux/OSSをぐいぐい引っ張っているとき、私も、Linux/OSSを業界の別の地点から押していったんですよね。 てなわけで、2003年以降に互いを認識したあかいさんと私の間には、それ以前に共有するものが結構あったのでした。

コメントを残す » Freesoftware and Open Source Software, Linux

rdesktopと英語キーボード

  • 3月
  • 25

rdesktopで英語キーボードをもちいて、つながった先のWindowsターミナルサーバにて日本語変換を、Alt+~で行いたい。 そんなひとには、以下のような内容のファイルをen-jpというファイル名で作って、/usr/share/rdesktop/keymaps/において、 $ rdesktop -k en-jp とすると、幸せになれるでしょう。

# generated from XKB map us
include common
0x411
exclam 0x02 shift
at 0x03 shift
numbersign 0x04 shift
dollar 0x05 shift
percent 0x06 shift
asciicircum 0x07 shift
ampersand 0x08 shift
asterisk 0x09 shift
parenleft 0x0a shift
parenright 0x0b shift
minus 0x0c
underscore 0x0c shift
equal 0x0d
plus 0x0d shift
kana_HE 0x0d altgr
kana_TA 0x10 altgr
kana_TE 0x11 altgr
kana_I 0x12 altgr
kana_i 0x12 shift altgr
kana_SU 0x13 altgr
kana_KA 0x14 altgr
kana_N 0x15 altgr
kana_NA 0x16 altgr
kana_NI 0x17 altgr
kana_RA 0x18 altgr
kana_SE 0x19 altgr
bracketleft 0x1a
braceleft 0x1a shift
bracketright 0x1b
braceright 0x1b shift
semicolon 0x27
colon 0x27 shift
apostrophe 0x28
quotedbl 0x28 shift
grave 0x29
asciitilde 0x29 shift
backslash 0x2b
bar 0x2b shift
comma 0x33
less 0x33 shift
period 0x34
greater 0x34 shift
slash 0x35
question 0x35 shift

コメントを残す » Freesoftware and Open Source Software, Android

牛の蔵 with Steve Coast

  • 3月
  • 5

リンク: http://r.gnavi.co.jp/a755001/

今日は、OpenStreetMap の創始者 Steve CoastさんとHurricane Coastさんが東京にきたのをきっかけに、OSMの日本メンバーと共に、食事を共にした。で、行ったのが、薩摩牛の蔵 赤坂店

日本流の肉を堪能しながら、楽しいひとときを過ごしたのでした。ただ、英語で、この店のメニューを説明するのは、とても難しかったですよ。

で、Facebookをみていたら、同じ店に同じようなタイミングで行っている人を見つけたりして、ちょっとおいしさを思い出したのでした。
やっぱり、美味しいものを食べることは、幸せなことだよね。そして、健康と美容にいいとおもうのですよ。

コメントを残す » 食, OpenStreetMap

BigBlueButtonとCMS(Drupal, Moodle)の連動

  • 1月
  • 16

リンク: http://ubuntuguide.org/wiki/BigBlueButton#Install_BBB_.3C-.3E_Moodle_API

BigBlueButtonは、APIを持っており、CMSなどと連携させることができる。

デフォルトでは、APIのデモページがあり、JSPによる具体的な利用方法を理解することができる。

人気のあるCMSといえば、Joomla!やDrupalがあるし、BBBは教育用途を意図して作られているところもあるので、Moodleも考慮に値するだろう。

このページでは、MoodleとDrupalについて、連携方法を示している。

Drupalとの連携については、
http://drupal.org/project/bbbで、すでにモジュールも用意されている。

Moodleの連携については、 http://www.dualcode.com/bigbluebutton/に、プラグインが提供されている。

活用してみようと思う。

コメントを残す » Freesoftware and Open Source Software, OpenOffice.org, Java, Ubuntu

Amazon EC2に無料のテレビ会議サーバを立ち上げる

  • 1月
  • 9

リンク: http://bigbluebutton-blog.blogspot.com/2010/11/193-simultaneous-users.html

世の中には、OSSの、LGPLでライセンスされたTV会議ソフトウエアというものが存在する。これは、アーキテクチャ的には、他のOSSに大きく依存している。たとえば、Ubuntu, Tomcat6, Ngidx, ghostscript, OpenOffice.org, swftools, MySql, Astariskなどだ。このソフトウエア・プロジェクトの名前は、BigBlueButtonという。

実に、素晴らしいソフトウエアで、ローカライズもすごく頑張っている。インターフェースもクールだ。複数名の同時カンファレンスができる。開発者のブログによれば、193同時ユーザの会議をホストできたようだ。WebCamによるテレビ会議も20人までいけたようだ。 Asteriskを使っているのは、普通の電話からも会議に入れるように。この193同時ユーザの実験でも、45人は電話からはいったようだ。

さて、自分の利用を用意にするため、そしてみなさんの実験をするのを容易にできるよう、Amazon EC2にイメージを作ってみた。

AMI ID: ami-58b7c90a
Name: bbb-0.71-Ubuntu-10.04-64
Description: BigBlueButton 0.71 on Ubuntu 10.04LTS(64bit)
Owner: 457068382909

そして、その取り扱いを容易にするスクリプトも書いてみた。

ubuntuなどのAmazon EC2に対応したLinuxディストリビューションで
apt-get install ec2-api-tools
として必要なツールを導入し、
以下のスクリプトをbbb.shというファイル名で保存しているとすると、

./bbb.sh run

で、EC2上でUbuntu Linuxが起動し、

./bbb.sh status

として起動したことを確認したあとに

./bbb.sh start

とするとサーバが立ち上がり、必要なIP設定を自動でおこないます。

./bbb.sh login

とすると立ち上がったサーバにログインできて、

./bbb.sh stop

とすると終了するはず。
スクリプトは、適宜、Amazon EC2の登録情報を書き換えて欲しい。また、自分がオーナーではないイメージからの起動については実験していないので、うまく動かす方法をしっていたら、教えて欲しい。

タグ: amazon, bbb, bigbluebutton, ec2

コメントを残す » Freesoftware and Open Source Software, Linux, OpenOffice.org, Ubuntu, Cloud Serivice, Web Applications

Kindle2 on Ubuntu Linux and Calibre

  • 7月
  • 4

リンク: http://bugs.calibre-ebook.com/ticket/6086

Kindle2を使っている。電子ブックを上手に使うには、calibreというアプリケーションが便利だ。Linuxだけではなく、mac, windowsでも使えるだろう。

Ubuntu GNU/Linux (10.04)上で、Calibreをつかって、外部のWebニュースを巡回して、電子ブックを生成して、Kindle2に流し込んでいる。

Calibreは、スケジュールされた時間帯にWebを巡回して、たとえばLWNやTimes, CNN, BBC, Japan Timesなどニュースサイトからニュースを取得して、ebookを生成してくれる。
また、kindle2を接続すると、自動的に、まだkindle2に取り込んでいないNewsを転送してくれる。すぐれものだ。

ただし、ちょっとした不具合がある。
Calibreを英語以外のlocaleで起動すると、Timesなどのサイト巡回結果のタイトルに日付がつくのだが、それが日本語混じりになる。技術的にはstrftime()がロケールLC_TIMEの影響を受けるためだ。

一方、Kindle2は、まだ英語以外の言語に対応していない。Kindle2をUbnutuにつなぐと、vfatとして認識されて自動マウントされる。マウントオプションは、

/dev/sdc1 on /media/Kindle type vfat (rw,nosuid,nodev,uhelper=udisks,uid=1000,gid=1000,shortname=mixed,dmask=0077,utf8=1,flush)

こんな感じ。
そこに、日本語のファイル名のついたニュースファイルを流し込むと、怪しいことが起こる。
具体的には、マウントしたKindleが読み込みのみになってしまう。

で、リンク先のようなバグレポートとなった。

でも、本当は、OSがわで対応すべきではないのか?ということで、たとえばuni_xlateというマウントオプションをつけることを考えたい。これは、unicode文字がきたときに、適当なエスケープシーケンスでlatin文字に変換するというものだ。

では、オートマウントされるときの機構でどこをどのようにいじればいいのか。

gconf-editorで、設定を開いて、system/storage/vfatあたりを見ればいいのかとおもったが、ここに設定を追加すると、すべてのデバイスで影響してしまう。kindleの時だけ、オプションを追加するには、どうすればいいか。

Automounting a storage device with GNOMEを参考にすると、hal-device というコマンドを見ればいいらしい。

Kindleに関わる部分をみるとこんなふうになっている。

0: udi = '/org/freedesktop/Hal/devices/volume_uuid_0096_AB41'
  linux.hotplug_type = 3  (0x3)  (int)
  info.interfaces = { 'org.freedesktop.Hal.Device.Volume' } (string list)
  block.storage_device = '/org/freedesktop/Hal/devices/storage_serial_Kindle_Internal_Storage_B003B0A200930A7F_0_0'  (string)
  volume.fstype = 'vfat'  (string)
  volume.fsusage = 'filesystem'  (string)
  volume.fsversion = 'FAT32'  (string)
  volume.uuid = '0096-AB41'  (string)
  volume.label = 'Kindle'  (string)
  info.udi = '/org/freedesktop/Hal/devices/volume_uuid_0096_AB41'  (string)
  volume.mount_point = '/media/Kindle'  (string)
  volume.is_mounted = true  (bool)
  volume.is_mounted_read_only = false  (bool)
  volume.is_disc = false  (bool)
  info.product = 'Kindle'  (string)
  volume.partition.number = 1  (0x1)  (int)
  block.major = 8  (0x8)  (int)
  block.device = '/dev/sdc1'  (string)
  block.is_volume = true  (bool)
  volume.partition.start = 8192  (0x2000)  (uint64)
  volume.partition.media_size = 1602191360  (0x5f7f8000)  (uint64)
  volume.size = 1602183168  (0x5f7f6000)  (uint64)
  block.minor = 33  (0x21)  (int)
  volume.num_blocks = 3129264  (0x2fbfb0)  (uint64)
  volume.is_partition = true  (bool)
  org.freedesktop.Hal.Device.Volume.method_names = { 'Mount', 'Unmount', 'Eject' } (string list)
  volume.block_size = 512  (0x200)  (int)
  volume.linux.is_device_mapper = false  (bool)
  org.freedesktop.Hal.Device.Volume.method_execpaths = { 'hal-storage-mount', 'hal-storage-unmount', 'hal-storage-eject' } (string li
st)
  org.freedesktop.Hal.Device.Volume.method_signatures = { 'ssas', 'as', 'as' } (string list)
  org.freedesktop.Hal.Device.Volume.method_argnames = { 'mount_point fstype extra_options', 'extra_options', 'extra_options' } (strin
g list)
  volume.ignore = false  (bool)
  volume.mount.valid_options = { 'ro', 'sync', 'dirsync', 'noatime', 'nodiratime', 'relatime', 'noexec', 'quiet', 'remount', 'exec', 
'utf8', 'shortname=', 'codepage=', 'iocharset=', 'umask=', 'dmask=', 'fmask=', 'uid=', 'flush' } (string list)
  volume.unmount.valid_options = { 'lazy' } (string list)
  linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-8/1-8:1.0/host16/target16:0:0/16:0:0:0/block/sdc/sdc1'  (string)
  info.parent = '/org/freedesktop/Hal/devices/storage_serial_Kindle_Internal_Storage_B003B0A200930A7F_0_0'  (string)
  info.capabilities = { 'volume', 'block' } (string list)
  info.category = 'volume'  (string)

あとは、このUDIなどをつかって、labelがKindleのようなストレージデバイスのときは、こうしろ的な設定を gconftoolなんかつかって、書き込めばいいらしい。

コメントを残す » Linux, Ubuntu

1 2 3 4 5 6 7 8 9 10 11 ... 51 >>
rss,
  • 1月 2012
    日 月 火 水 木 金 土
     << <   > >>
    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        
  • Code readers daily

  • A blog about social, software and technology by Hiroshi Miura, aka momokuri, who are working for Free/Libra/Open Source Software over 10 yrs.
    • 最新
    • アーカイブ
    • カテゴリ
    • 最近のコメント
  • 検索

  • カテゴリ

    • 全て
    • Cloud Serivice
      • Evernote
      • Flickr
    • Crowd Sourcing
      • OpenStreetMap
        • GPSトラッカー
        • State of the Map conference
        • ソフトウエア
        • マッピングパーティ
    • Freesoftware and Open Source Software
      • Desktop Applications
        • Input Methods
        • OpenOffice.org
      • Distro
        • Debian
        • Ubuntu
      • Linux
      • Programming
        • Erlang
        • Java
        • デバッグ
      • Web Applications
        • b2evolution
    • Mobile and PDA
      • Android
      • Palm
      • SymbianOS
    • モブログ
    • 書籍
    • 生活
      • 旅行
      • 食
  • XML 配信

    • RSS 2.0: 投稿, コメント
    • Atom: 投稿, コメント
    What is RSS?
blogsoft

Valid XHTML 1.0 Transitional

Valid CSS!


©2012 by H.Miura | 連絡先 | Design by Emin zlem (tilqicom) | クレジット: blog tool | dedicated servers | authors extreme_sports skin 0.1