LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1379|回复: 16

关于仓颉输入法的问题, 请兄弟们帮忙!

[复制链接]
发表于 2003-10-31 23:10:36 | 显示全部楼层 |阅读模式
我是个Linux 新手, 现在用的是繁体中文版的RH9.0, 因为里面有仓颉输入法可用(小弟只会仓颉, 基本没学过拼音), 但这个仓颉输出的字是繁体来的, 这在国内很多网站, 论坛都遇到问题(显示, 搜索不配对, 很苦恼...), 所以想问一下各位兄弟们, 有没有能在繁体Linux里用仓颉码输出简体字的输入法呢? 或者能在简体系统里用的仓颉输入法也成(例如我现在用的是简体中文版的WinXP, 而我现在就是用方旻仓颉输入法打这张帖的, 是打繁出简的呀! 可惜只能在Windows里用...), 这可是我在学习Linux所面对的最大问题呀...始终我现在内地学习, 能用简体中文会方便很多! 希望兄弟们帮帮忙!!!! :thank
发表于 2003-11-1 00:18:25 | 显示全部楼层
are ypu have the ime file

if hava
I think I can create a .tab file for you
发表于 2003-11-1 00:26:51 | 显示全部楼层
怎樣啊??? ~~
 楼主| 发表于 2003-11-1 19:15:05 | 显示全部楼层
are ypu have the ime file

什么是IME file? 如何知道有没有? 请详细点告诉我!:thank
发表于 2003-11-2 03:06:39 | 显示全部楼层
ime就是输入法文件啊
在/windows目录下
后缀是.ime
你在下面看看
也好像是MB文件

如果你的系统有“附件”中有“输入法生成器”
那么使用它来逆转换成txt文件给我更方便
 楼主| 发表于 2003-11-3 12:46:31 | 显示全部楼层
兄弟, 我在windows/system32 里找到很多*.ime 文件呀, 但不知道你要的是哪个, 请你说得详细点...以下是我屏幕的一个抓图, 其中CangJie-GB代表我所用的文旻仓颉输入法, 希望可以为你提供更多的信息:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
发表于 2003-11-4 23:45:46 | 显示全部楼层

  1. #include <list>
  2. #include <list>
  3. #include <fstream>
  4. using namespace std;

  5. struct element{
  6.     char code[10];
  7.     char value[50];
  8. };

  9. bool loadfromfile(list<element>& elist,const char*filename)
  10. {
  11.     ifstream ifs(filename);
  12.     if(!ifs)
  13.         return false;

  14.     element e;
  15.     char line[300];
  16.     //ifs>>line;
  17.     while(ifs){
  18.         ifs.getline(line,300);
  19.         memset(&e,0,sizeof(e));
  20.         char *p=line;
  21.         while((unsigned char)(*p)>=0x80) p++;
  22.         if(p == line)
  23.             continue;
  24.         memcpy(e.value,line,p-line);

  25.         char *ptags=p;
  26.         while(isalpha(*p)) p++;
  27.         if(p == ptags)
  28.             continue;
  29.         memcpy(e.code,ptags,p-ptags);

  30.         elist.push_back(e);
  31.         //ifs>>line;
  32.     }
  33.     ifs.close();
  34.     return true;
  35. }

  36. bool savetofile(const char*filename,const list<element>& elist)
  37. {
  38.     ofstream ofs(filename);
  39.     if(!ofs)
  40.         return false;

  41.     for(list<element>::const_iterator iter = elist.begin();
  42.             iter != elist.end();iter ++)
  43.         ofs<<iter->code<<" "<<iter->value<<endl;

  44.     ofs.close();
  45.     return true;
  46. }

  47. inline bool operator <(const element &e1,const element &e2)
  48. {
  49.     return strcmp(e1.code,e2.code) == -1;
  50. }

  51. main(int argc,char**argv)
  52. {
  53.     if(argc !=3){
  54.         perror("program inputfile outputfile");
  55.         exit(1);
  56.     }

  57.     list<element> elist;
  58.     loadfromfile(elist,argv[1]);
  59.     elist.sort();
  60.     savetofile(argv[2],elist);
  61. }
复制代码

转换程序如上
用法
转换程序 码表.txt  wbx.mb
转换完了后直接放到fcitx的输入法目录代替某一个文件就可以了

码表.txt可以使用 附件中的输入法逆转换转换成文本形式
如果不知道怎样转换和可以上网查找
www.google.com
ime 逆转换

得到码表就可以用了
全部转换完后可以看他们的输入法 到时就知道你是使用哪个输入法了
发表于 2003-11-5 02:26:59 | 显示全部楼层
找了半晚也找不到, 可能是繁體98 & 英文xp 沒有逆轉換功能吧~~
我希望 ?V東2000 與 速成 能在linux 下好好的用
如果還有詞庫便最好不過了~~ :p
发表于 2003-11-5 02:51:17 | 显示全部楼层
以下是?V東及速成的ime 及可能相關的文件

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
发表于 2003-11-5 02:52:18 | 显示全部楼层
part2

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表