`
seagate
  • 浏览: 38716 次
  • 来自: ...
文章分类
社区版块
存档分类
最新评论

在Ecl中使用中文

阅读更多

Ecl12.2.1及以下版本不支持在Windows Console中输入中文。微软的c库中的read函数不能正确的获取宽字符输入个数,Ecl维护者因此用了特殊方式处理,需要更新到最新的cvs代码编译才可以。

打开Ecl输入代码:


> (defun 你好 () (print "世界"))
你好
> (你好)

"世界" "世界"


呵呵,看起来用Lisp实现一个中文编程语言更容易一些。

不过把中文写在lisp文件里面的时候,需要注意编码问题了。


用notepad将上面的代码保存成hello.lisp


> (load "code/hello.lisp" :external-format :windows-cp936)
;;; Loading "D:/ecl/code/hello.lisp"

"世界" #P"D:/ecl/code/hello.lisp"


这里:external-format用来指定文件的编码方式,windows-cp936是GBK的编码。好吧,我承认,unicode的编码,还未实验成功。


设置流编码的方式如下

(sys:stream-external-format-set *standard-input* :windows-cp936)

 

分享到:
评论
1 楼 416689755 2012-07-31  
希望楼主有最新的版本的ECl能借用一下,呵呵,谢谢了。

相关推荐

    Proteus元件库中文注释

    例如,金属化聚酯膜电容因其高稳定性和宽工作温度范围,在音频和电源滤波中广泛使用。 #### 连接器 连接器是电路板上不可或缺的部件,用于实现不同电路之间的物理连接。《Proteus元件库中文注释》中涵盖了多种类型...

    proteus器件中文对照表

    本文将详细介绍Proteus器件中文对照表中的部分器件,帮助读者更好地理解和使用这些基本元件。 #### 器件详细介绍 1. **7407**:驱动门,主要用于增强电流驱动能力,通常用于驱动LED、继电器等负载。 2. **1N914**...

    易语言 中文程序设计语言 PDF

    - **类库的使用**:在使用非当前程序或类库中定义的类型之前,需要先通过`引入类库`语句导入所需的类库。 #### 结论 综上所述,易语言作为一种专注于中文环境下的编程语言,不仅在语法设计上更加符合中国用户的...

    proteus元件库中英文对照表

    在 Proteus 元件库中英文对照表中,我们可以找到以下几个方面的知识点: 1. 电子元器件的中文名称和英文名称:该表中列出了各种电子元器件的中文名称和英文名称,例如,中文名称为“驱动门”的英文名称为“7407”,...

    易语言全局共享类模块.源码.zip

    1. 在需要使用全局共享类模块的程序或模块中,首先需要导入该类模块。在程序开头添加“.引入”语句,指定类模块的路径。 2. 引入后,就可以在程序的任何地方实例化该类模块中的类,并调用其方法。 例如,如果你有一...

    domino公式大全,中文说明,最快速理解domino公式功能,domino公式中文介绍

    7. **@AdminECLIsLocked**: 检查通讯录中管理员ECL(External Certification List)的锁定状态。 8. **@All**: 返回逻辑值"真",在条件表达式中表示所有情况。 9. **@AllChildren**: 选取所有满足条件的父文档的...

    multisim原件中英对照表

    **中文名称:** ECL 10000系列 **英文名称:** ECL 10000Series **功能概述:** 包括各种ECL逻辑集成电路。 以上介绍了Multisim软件中部分常用元件的中英文名称及基本功能。这些元件涵盖了数字电路、模拟电路、电源...

    易语言WebView2线程隔离封装.zip

    在易语言中使用这个库,开发者需要了解如何导入和调用封装的API。易语言是一种面向对象的中文编程语言,它的语法简洁明了,适合初学者和专业开发者。在使用WebView2线程隔离封装库时,你需要按照库提供的接口文档,...

    易语言源码易语言linux加密服务端源码.rar

    在本压缩包“易语言源码易语言linux加密服务端源码.rar”中,包含的是使用易语言编写的Linux平台上的加密服务端程序的源代码。这个服务端程序可能用于提供安全的数据传输、存储或其他与加密相关的功能。 首先,我们...

    LM2901中文资料

    这一特性确保了在信号处理过程中,输入端不会引入过多的噪声或失真。 #### 4. 输入共模电压范围 - 包含地电位 这表明LM2901可以处理与地电位相近的信号输入,增强了其适用性。 #### 5. 输出饱和电压 - **典型值**...

    protues元件库中英文对照表

    **功能描述:** 1N914是一种常见的小型信号二极管,广泛应用于各种电子设备中作为整流或保护二极管使用。其特点是具有较低的正向压降和较高的开关速度。 #### 3. 74LS00 与非门 **中文名称:** 74LS00 四2输入与非门...

    易语言Miss模块.rar

    在下载并解压"易语言Miss模块.rar"后,你需要将其中的Miss模块文件(可能是.ewm、.ecl格式)正确放置到易语言的工作目录,以便于在编程环境中加载。然后,根据模块提供的文档或说明,了解其具体功能和使用方法,以...

    易语言源码网页表单操作类.rar

    《易语言源码网页表单操作类》是...在实际使用时,需遵循源码中的注释和说明,理解每个函数的作用,以便灵活运用到实际项目中。同时,根据需求,可能还需要学习和理解HTML和HTTP协议的基本知识,以便更好地与网页交互。

    易语言API取执行文件名

    在易语言中,当`GetModuleFileName`返回了包含整个路径的字符串后,我们可以使用`PathFindFileName`来分离出仅包含文件名的部分,不包括路径。 4. `MessageBox`:这是一个显示消息框的函数,常用于调试和用户交互。...

    易语言GetScrollPos取高级表格取鼠标处行列号源码

    在描述中提到的"易语言GetScrollPos取高级表格取鼠标处行列号源码",是指利用`GetScrollPos`函数来获取高级表格(可能是指易语言中的"表格控件"或自定义的表格组件)中,鼠标所在位置的行号和列号。 高级表格控件...

    易语言GDI绘制进度条源码.rar

    根据这个文件,我们可以学习到在易语言中使用GDI进行绘制的基本步骤,例如设置设备上下文、选择画笔和刷子、绘制矩形以及如何更新进度条的显示状态。 “GDI”文件可能是一个包含实际源代码的文件,比如一个.e或者....

    易语言模块XP_EC.rar

    之后,你就可以在代码中引用模块中的函数或过程,如同使用内置的易语言命令一样。 总的来说,易语言模块XP_EC是一个针对Windows XP环境的易语言扩展模块,它提供了一系列预定义的功能和接口,帮助开发者更高效地...

Global site tag (gtag.js) - Google Analytics