<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 67  文章 - 79  trackbacks - 0
    <2009年3月>
    22232425262728
    1234567
    891011121314
    15161718192021
    22232425262728
    2930311234

    常用鏈接

    留言簿(1)

    隨筆檔案

    文章檔案

    相冊(cè)

    搜索

    •  

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    雖然以前籌劃過(guò)很多項(xiàng)目,但動(dòng)手去做的實(shí)在不多,能做出來(lái)的就更少了,這個(gè)scim的dbus前端算是我做的最認(rèn)真的一個(gè)了。

    這個(gè)項(xiàng)目是為了解決linux環(huán)境下,一些特殊的應(yīng)用(比如游戲程序)i18n文字輸入問(wèn)題。雖然SDL從1.2.13開(kāi)始支持了xim,但還是很不完善,至少我不能解決全屏模式下的輸入法問(wèn)題。所以我想沿用win32下的游戲模式,傳遞鍵盤(pán)事件給輸入法引擎,得到一組lookup字符串,再自己畫(huà)出IM Panel。

    XIM好像很難這樣作(這年頭講xlib的書(shū)難找,我看過(guò)《Xlib Programming Manual》的i18n部分后,還是沒(méi)有找到基于xim的解決方法)。
    SCIM的SocketFrontEnd有點(diǎn)這個(gè)意思,不過(guò)還是不行。所以我想自己作一個(gè)scim的frontEnd 來(lái)提供類(lèi)似候選字符串的查找的功能。本來(lái)想基于SocketFrontEnd的,但是發(fā)覺(jué)這樣做的話(huà),客戶(hù)端的程序勢(shì)必要依賴(lài)scim(或者抄寫(xiě)一遍scim的frontEnd和socket頭文件),并且也不利于其他語(yǔ)言的binging,所以決定作一個(gè)dbus模式server。選擇scim而不是xim的一個(gè)附帶效果就是,client可以不依賴(lài)X,這樣即使是console或者是fb下的i18n環(huán)境也可以簡(jiǎn)單的調(diào)用scim輸入法服務(wù)。

    關(guān)于scim,dbus的文檔不多,所以了解他們的結(jié)構(gòu)和用法多半只能看代碼。scim的頭文件的注釋很詳細(xì),代碼的結(jié)構(gòu)也清晰,基本上花了2天時(shí)間就了解了scim的FrontEnd。但是dbus就不容易了,雖然有g(shù)lib和qt的binging,但是我想這應(yīng)該是GP和元編成大展身手的地方。看著freedesktop上的Reference寫(xiě)了一些Pure C++ binging后,才發(fā)現(xiàn)自己重復(fù)造輪子了。早有個(gè)Pure C++ dbus binging在freedesktop的git上http://www.freedesktop.org/wiki/Software/dbus-c%2B%2B 。所以雖然tarball里面自己寫(xiě)的代碼沒(méi)幾K,一大半還是從freedesktop上git來(lái)的dbus-c++ binging。

    由于全部是在用業(yè)余時(shí)間在做,目前的代碼僅能做到在我的機(jī)器上完成大部分功能。構(gòu)建方面我也不是很懂,所以目前make文件慘不忍睹、極不規(guī)范。目前自己設(shè)計(jì)的scim-introspection.xml中,提出的接口里還是幾個(gè)冷門(mén)的方法沒(méi)實(shí)現(xiàn),scim中還有幾個(gè)方法和信號(hào)不清楚怎么用dbus傳,有些應(yīng)該是用object的參數(shù)(比如lookup對(duì)象)被我用StringList簡(jiǎn)化了,這些都是要繼續(xù)完善的部分。我希望將來(lái)dbus能成為scim默認(rèn)提供的frontend之一。

    代碼:http://www.tkk7.com/Files/zarra/scim-dbus-frontend.zip
    pygame 演示:



    posted on 2008-07-11 09:40 zarra 閱讀(873) 評(píng)論(17)  編輯  收藏

    FeedBack:
    # re: scim dbus前端[未登錄](méi) 2008-07-28 10:47 apple
    這個(gè)界面還是相當(dāng)熟悉的.......
    代碼還是看不懂,幾個(gè)月來(lái)發(fā)現(xiàn)自己一點(diǎn)長(zhǎng)進(jìn)也沒(méi)有
    慚愧啊~~`  回復(fù)  更多評(píng)論
      
    # re: scim dbus前端 2009-03-03 10:58 趙梓安!
    真是不好意思。我是09年2月看到你這個(gè)博文的。事隔半年了.不知道這位人兄對(duì)scim的前端開(kāi)發(fā)是否還有趣興.

    我也想做一個(gè)scoketfrontend可是沒(méi)能成功.

    生成出來(lái)libMyfrontend.so的方法也不知道對(duì)不對(duì).
    我scim -f libMyfrontend.so后

    說(shuō)libMyfrontend.so 載入失敗.很是頭痛.希望你能看到我經(jīng)你的留言.來(lái)幫幫我~!  回復(fù)  更多評(píng)論
      
    # re: scim dbus前端 2009-03-03 16:56 趙梓安!
    這位仁兄我下載了這個(gè)東西,make通過(guò)了。我要怎么執(zhí)行呢?????  回復(fù)  更多評(píng)論
      
    # re: scim dbus前端 2009-03-03 17:05 趙梓安!
    我能看出來(lái)你這個(gè)是用python寫(xiě)的。

    我python pygame_scim.py
    說(shuō)找不到

    pygame

    這個(gè)東西。你能不能把完全包借小弟用一用。
    我想用QTE寫(xiě)一個(gè)界面~!  回復(fù)  更多評(píng)論
      
    # re: scim dbus前端 2009-03-03 21:39 zarra
    scim 的dbus 前端是用C++寫(xiě)的 用了dbusc++ 這個(gè)庫(kù) 已經(jīng)包含在代碼中
    一個(gè)python 程序是使用 dbus來(lái)和scim通訊的一個(gè)演示,使用了pygame
    基本所有的發(fā)行版都有它 #>apt-get install pygame
    不過(guò) 我后來(lái)發(fā)現(xiàn)了 ibus 這個(gè)項(xiàng)目 也是一個(gè)dbus 接口的輸入法服務(wù)器 但是依賴(lài)很多

    我寫(xiě)的那個(gè) 基本輸入功能都有 穩(wěn)定性沒(méi)測(cè)試過(guò)...

    我留個(gè)地址 zarraxx@gmail.com   回復(fù)  更多評(píng)論
      
    # re: scim dbus前端 2009-03-04 08:41 趙梓安!
    真高興能與你取得聯(lián)系。

    我寫(xiě)的frontend成功了。現(xiàn)在是早上八點(diǎn)多剛上班。

    我非常興奮能看到你的留言。


    我決定試一下你給的見(jiàn)意!謝謝!  回復(fù)  更多評(píng)論
      
    # re: scim dbus前端 2009-03-04 08:45 趙梓安!
    真的很高興能與你取得聯(lián)系。

    我也做了一個(gè) frontend。通過(guò)scim -f ./libm.so實(shí)現(xiàn)了我想要的。

    現(xiàn)在是早是八點(diǎn)多,我剛上班一打開(kāi)你的博看到你的留言后我非常高興。

    我決定試試。再此謝過(guò)!
      回復(fù)  更多評(píng)論
      
    # re: scim dbus前端 2009-03-04 10:39 趙梓安!
    你的東西我運(yùn)行了.

    是好使的但我沒(méi)有YaHei.Consolas.1.12.ttf字休.所以我用了None這個(gè)代替之后我看到的都是小格子.

    我正下載它,不知道下來(lái)之后要放在哪個(gè)路徑下!  回復(fù)  更多評(píng)論
      
    # re: scim dbus前端[未登錄](méi) 2009-03-04 12:09 zarra
    不一定要用 YaHei.Consolas.1.12.ttf 隨便放個(gè)中文字體文件在 py 文件同目錄下就好了
    同時(shí)別忘記改下 py 文件中的 font=pygame.font.Font('YaHei.Consolas.1.12.ttf',12) 這行   回復(fù)  更多評(píng)論
      
    # re: scim dbus前端 2009-03-04 12:12 趙梓安!
    我這個(gè)字體已經(jīng)下來(lái)了.

    你讓我認(rèn)識(shí)了python這個(gè)腳本  回復(fù)  更多評(píng)論
      
    # re: scim dbus前端 2009-03-04 12:27 趙梓安!
    呵呵,果真好使,你這樣的天才難遇呀!

    能不能加我個(gè)好友.

    fhqsuhpv@163.com

    我在努力吧你的python改寫(xiě)為QTE4的程序!  回復(fù)  更多評(píng)論
      
    # re: scim dbus前端 2009-03-04 15:04 趙梓安!
    我想改成QT這個(gè)想法現(xiàn)實(shí)嗎?  回復(fù)  更多評(píng)論
      
    # re: scim dbus前端 2009-03-06 10:11 
    你好,還是我~!

    我想問(wèn)一下哦。你那面的fronend有一個(gè)配置器scim-adaptor.h
    我想這個(gè)是C++的對(duì)吧!

    那我想為QT提供一個(gè)接口我應(yīng)怎么辦。

    我用了qdbusxml2cpp (你好那個(gè))scim-introspection.xml -p scim-intrf

    結(jié)果出現(xiàn)了scim-intrf.h scim-intrf.cpp 文件。

    當(dāng)我把他們當(dāng)成QT的接口make時(shí)。出現(xiàn)了scim-intrf.o:(許多)**未定義的引用

    我該怎么辦!!!  回復(fù)  更多評(píng)論
      
    # re: scim dbus前端 2009-03-06 15:42 
    我在我的Makefile中加入了-lQtDBus之后上面的那個(gè)錯(cuò)誤就沒(méi)有了.

    同在我又在分析你的那個(gè)python的程序.大多都注上的注解.有一個(gè)地方我不明白.

    import locale, sye 為什么要引他,他是哪來(lái)的,有什么用?

    self.language,self.encoding =locale.getdefaultlocale()
    這句我能從字面上理解是獲取默認(rèn)的locale....

    這是什么意思呢!我要用QT怎么獲取呢?????  回復(fù)  更多評(píng)論
      
    # re: scim dbus前端 2009-03-06 16:10 
    我的同事問(wèn)我問(wèn)題時(shí),我一下想起來(lái)!

    我感覺(jué)是從系統(tǒng)上獲取的.語(yǔ)言和編碼!

    你的邏輯思維真不一般.  回復(fù)  更多評(píng)論
      
    # re: scim dbus前端 2009-03-07 22:06 zarra
    scim輸入法服務(wù)器 這東西是支持多語(yǔ)言的,在語(yǔ)言下還支持多編碼
    作frontend 當(dāng)然應(yīng)該找到系統(tǒng)當(dāng)前的語(yǔ)言和編碼 作為默認(rèn)值
    難不成在中文locale里 每次調(diào)出來(lái)的都是默認(rèn)的en 要手動(dòng)切下語(yǔ)言  回復(fù)  更多評(píng)論
      
    # re: scim dbus前端 2009-03-09 09:00 
    不是說(shuō)你獲取這一行寫(xiě)的代碼不一般。。。。是你正個(gè)的邏輯思維!~  回復(fù)  更多評(píng)論
      

    只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 国产亚洲女在线线精品| 青青青国产手机频在线免费观看 | 亚洲日韩AV一区二区三区中文 | 亚洲色欲www综合网| 毛片免费观看网址| 亚洲第一视频在线观看免费| 亚洲高清中文字幕综合网| 四虎影视在线永久免费看黄| 久久久高清日本道免费观看| 亚洲中文无码mv| 亚洲精品乱码久久久久久蜜桃不卡 | 亚洲va国产va天堂va久久| a级毛片在线免费| 亚洲精品国产精品国自产网站| 亚洲精品视频久久久| 黄色免费网站网址| GOGOGO免费观看国语| 亚洲人成电影网站色| 亚洲制服中文字幕第一区| www国产亚洲精品久久久日本| 日韩精品无码一区二区三区免费| 美女裸体无遮挡免费视频网站| 亚洲黄色高清视频| 国产国拍精品亚洲AV片| 免费视频淫片aa毛片| 久久精品国产免费观看| 成人无码区免费A∨直播| 亚洲人成网亚洲欧洲无码| 久久亚洲精品成人av无码网站| 亚洲国产精品综合久久网络| 好男人www免费高清视频在线| 亚洲免费视频网站| 国产日韩在线视频免费播放| 午夜亚洲WWW湿好爽| 亚洲av无码久久忘忧草| 久久综合亚洲色HEZYO社区| 国产亚洲精午夜久久久久久| 免费人成视频在线观看视频| 午夜一级毛片免费视频| 亚洲高清中文字幕免费| 67pao强力打造国产免费|