本帖最后由 vitalgg 于 2021-3-6 00:58 编辑
繁体的CAD 能正确显示简体版的 lisp 程序吗?
我写了一个 lisp 管理程序。可以自动从网络下载其它的 lisp 程序。
现在加了入多语言功能,可以根据CAD的语言环境,生成相应语言版本的菜单。
但是我只有简体版的CAD. 繁体的CAD 能正确显示简体版的 lisp 程序吗?
 - (defun @:load-locale (pkg-name / fp opt%)
- "加载包的本地化语言"
- (if (null (findfile (strcat @:*prefix* "locale\\" pkg-name "-" (strcase (getvar "locale") T) ".lang")))
- (progn
- (@:down-file (strcat "locale/" pkg-name "-" (strcase (getvar "locale") T) ".lang"))
- (sleep 1)
- ))
- (if (findfile (strcat @:*prefix* "locale\\" pkg-name "-" (strcase (getvar "locale") T) ".lang"))
- (progn
- (setq fp (open (strcat @:*prefix* "locale\\" pkg-name "-" (strcase (getvar "locale") T) ".lang") "r"))
- (while (setq opt% (read-line fp))
- (if (/= opt% "")
- (setq @:*i18n* (append @:*i18n* (list (read opt%))))))
- (close fp)))
- )
- (defun _ (str / ret)
- "翻译标记"
- (setq ret (cdr (assoc str @:*i18n*)))
- (if (= 'list (type-of ret))
- (setq ret (car ret)))
- (if (= 'str (type-of ret))
- (if (> (strlen ret) 0)
- ret
- str)
- str))
在 locale 目录下有相程序的语言翻译文件。 有兴趣的可以到 atlisp.cn 下载试用。
(print (_"lang text"))
chs.lang
("lang text" . "简体中文")
cht.lang
("lang text" . "繁体中文")
|