| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2662 人关注过本帖
标题:[更新]一起来opensource ?? 郁闷了。 GTK 没了。。
取消只看楼主 加入收藏
cjjc
Rank: 2
等 级:新手上路
威 望:3
帖 子:44
专家分:0
注 册:2008-9-20
收藏
得分:0 
告知, 邮箱, 我发份给你吧。
2008-09-24 21:25
cjjc
Rank: 2
等 级:新手上路
威 望:3
帖 子:44
专家分:0
注 册:2008-9-20
收藏
得分:0 
已发。请查。
2008-09-24 21:40
cjjc
Rank: 2
等 级:新手上路
威 望:3
帖 子:44
专家分:0
注 册:2008-9-20
收藏
得分:0 
warning or error?
我只看到很多 warning。

makefile 确实太垃圾了,和手写差不多, 我还没仔细学过它的语法。
2008-09-24 22:26
cjjc
Rank: 2
等 级:新手上路
威 望:3
帖 子:44
专家分:0
注 册:2008-9-20
收藏
得分:0 
不好意思, 我把今天的测试程序放发你了。

那是 测试终端的代码。  
用这个 main.c
程序代码:
#include "main.h"

#define CONFIG_VERSION    "1.0"
#ifdef WIN32
#define CONFIG_SYSTEM    "win32"
#else
#define CONFIG_SYSTEM    "unix"
#endif

const char *soft_version = " " \
                 CONFIG_VERSION "." CONFIG_SYSTEM " " \
                 __DATE__ " " __TIME__;
int soft_pid = -1;
int soft_debug = 0;
const char *soft_prog = "3apple translate";
const char *soft_conf_dir = "/etc/";

static void version(void)
{
    printf("%s: %s\n", soft_prog, soft_version);
    printf("Copyright (C) 2008 funny soft.\n");
    exit(0);
}

static void usage(int status)
{
    FILE *output = status?stderr:stdout;

    fprintf(output, "Usage: %s [-f conf_dir] [-h] [-v]\n", soft_prog);
    fprintf(output, "Options:\n");
    fprintf(output, "  -f  conf_dir    Set main conf directory.\n");
    fprintf(output, "  -h              Print this help message.\n");
    fprintf(output, "  -v              Print server version information.\n");
    exit(status);
}

static int soft_argcv(int argc, char **argv)
{
    int argval;

    /* process the options */
    while ((argval = getopt(argc, argv, "f:dvh")) != EOF) {
        switch (argval) {
        case 'f':
            soft_conf_dir = optarg;
            break;
        case 'd':
            soft_debug = 1;
            break;
        case 'h':
            usage(0);
            break;
        case 'v':
            version();
            break;
        default:
            usage(1);
            break;
        }
    }
    
    /* get our PID */
    soft_pid = getpid();
    return 0;
}

static int __init soft_startup(void)
{
    apple_main_init();
    return 0;
}

static void __exit soft_cleanup(void)
{
    apple_main_exit();
}

#if 1

int main(int argc, char **argv)
{    
    soft_argcv(argc, argv);
    
    if (soft_startup())
        exit(1);
    /* main loop begins here */
    apple_main_start();
    apple_main_stop();
    soft_cleanup();
    return 0;
}
#else
/* delete test code */
#endif
2008-09-24 22:40
cjjc
Rank: 2
等 级:新手上路
威 望:3
帖 子:44
专家分:0
注 册:2008-9-20
收藏
得分:0 
apple.exe -f dict_dir
可以改变目录, 不过,在加载字典文件的地方, 我是硬编码, 你得换成你的。
我只在 win 下试过 英汉字典 -- sun_dict_e2c.dict
2008-09-24 23:21
cjjc
Rank: 2
等 级:新手上路
威 望:3
帖 子:44
专家分:0
注 册:2008-9-20
收藏
得分:0 
字典文件 不分版本的。

不过我知道的有2个trick的地方, 我没做,不知道你会不会遇到。
sametypesequence= // very important.
idxoffsetbits= // New in 3.0.0
 
我只做了最基本的。

stardict-sun_dict_e2c-2.4.2.tar.bz2 字典。
2008-09-24 23:30
cjjc
Rank: 2
等 级:新手上路
威 望:3
帖 子:44
专家分:0
注 册:2008-9-20
收藏
得分:0 
idxoffsetbits 是64位才有影响。
主要是 long 和 大文件 的问题吧。

我用的那本字典没有这个, 所以可以用。

这个可以加到 TODO 中去了 , 呵呵。


字典 应该是 可配置的, 如你所说, 有几法:
1。 在特定, 目录, 初始化时遍历该目录,加载;
2。 读配置文件, 配置了的加载, 字典位置可以预配或读取;
3。 那就是手动。
感觉都差不多。
目前只是测试, 所以里面很多 hard code. 不影响功能测试,就没改了。

[[it] 本帖最后由 cjjc 于 2008-9-24 23:50 编辑 [/it]]
2008-09-24 23:46
cjjc
Rank: 2
等 级:新手上路
威 望:3
帖 子:44
专家分:0
注 册:2008-9-20
收藏
得分:0 
[bo][un]葬烟[/un] 在 2008-9-24 23:45 的发言:[/bo]

我的字典文件名都和你初始化的不一样。实际上大多数情况下,不同的字典名称都会不一样,我还是倾向于可以自己输入文件名,或者可以自动查找指定路径下的字典文件,或者自动查找一个已经定义好的路径list目录。反正, ...


突然想到, 逻辑上有问题,
apple_dict_t 结构应该带 operation 回调吗?
单独的字典应该不负责 operation. 字典属于被动者,
应该有 上层调用者来 operation, 统一管理。
2008-09-24 23:58
cjjc
Rank: 2
等 级:新手上路
威 望:3
帖 子:44
专家分:0
注 册:2008-9-20
收藏
得分:0 
上面的BUG修改了。 翻翻旧帖。
真没人气呀。

[[it] 本帖最后由 cjjc 于 2008-9-29 08:45 编辑 [/it]]
2008-09-29 01:54
cjjc
Rank: 2
等 级:新手上路
威 望:3
帖 子:44
专家分:0
注 册:2008-9-20
收藏
得分:0 
yumen.
2008-10-01 20:04
快速回复:[更新]一起来opensource ?? 郁闷了。 GTK 没了。。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.028317 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved