发信人: wenbobo()
整理人: wenbobo(2002-12-22 01:27:57), 站内信件
|
发信人: bluesea (蓝海), 信区: Internet
标 题: 乱码大全(4)──BBS与ANSI
发信站: BBS 水木清华站 (Tue Feb 3 01:00:11 1998)
乱码大全(4)──BBS与ANSI
“乱码大全”,作者:bluesea,水木清华BBS成员。欢迎在 BBS中转载,帮
助计算机初学者解决使用软件过程中遇到的实际问题。本文原载于水木清华 BBS
的 Internet讨论区。地址是: telnet://bbs.tsinghua.edu.cn ,WWW访问的地
址是 http://bbs.tsinghua.edu.cn 。当下面的条件全部满足时,转载本文可以
不经过作者允许:(1) 转载水木清华 BBS 的信头;(2)不修改原文;(3) 转载仅
限于各种 BBS 和非商业性质的个人网点。 严禁各种形式的抄袭,严禁非作者将
本文或局部用于任何正式出版的刊物。本自然段是全文的一部分。
ANSI (American National Standards Institute ) 规定了一组控制字符和
键盘的扩充规则,本文不作为使用 ANSI 彩色和位置控制在 BBS上进行应用的初
级指南。这方面的内容参见 BBSHelp 和 ASCIIart 板及其精华区。
很多 BBS 的 WWW 版本在文本转换的时候没有解释 ANSI 的效果,而是把控
制符号 01Bh 解释成为 * 号,这就形成了阅读 BBS 文章的特殊乱码效果。比如:
*[1m (高亮度字)、*[1;5;33m (高亮度黄色闪烁字)、*[1;31;44 (高亮度蓝底红
色字) 等等。
目前,国内的著名 BBS, 水木清华、网易、蓝天等站的 WWW 转换程序都已
经解决这个问题。在 Telnet 中发表文章可以使用 ANSI 控制,利用 MS-DOS 的
Help 可以获得 ANSI 字符控制的详细信息。(如 C:\DOS>Help ANSI.SYS)。在使
用位置控制的时候,应该尽量使用 ESC[s 和 ESC[u (存储和恢复光标位置)来控
制文本,以免发生位置错乱,并尽量在每行结束的时候恢复默认的属性,以免因
为翻页而造成ANSI控制的不完整。
NetTerm 有那么点不太引人注目的小秘密,这就是它自己支持一些类似Ansi
控制的扩充控制序列。曾经作为一个调剂的手段,为上 BBS的网虫增添了不少乐
趣。随着清华 BBS 上的一些网虫不断“露一手”,现在全国很多 BBS 都使用了
这些扩充的控制来修改标题栏、 状态栏,来表示对网虫的问候。如 北方交大、
网易……。NetTerm 的扩充序列参见它的Readme文件或Virus 精华区“反病毒与
黑客/工具/趣闻”目录下面的摘录。
Ansi 作为标准字符的一种扩展的表现手段, 起到了丰富色彩,活跃气氛的
作用,这些作用的效果会随着阅读一篇文章的结束而结束,而很多扩展控制却可
以留下来,改变你的标题栏状态栏,甚至打开你的浏览器,乃至死机。 Netterm
在解释自己创立的扩充序列的一些 Bug也很明显地表现了出来,同时,还有很多
终端程序在解释控制序列的时候,程序不够严密,对于非标准的序列往往会产生
意外的后果。利用程序编制上的缺陷,采用类似 Ansi 序列的方法激活这些 Bug,
这就是我们这里说的所谓“BBS ANSI 炸弹”。
扩展控制序列的滥用,引起了 BBS上的一些争论,很多人表示反感。谁当初
会想到围绕这个问题会有这样多的故事呢。不过我们今天不得不通过一种管理的
手段来制约它,这一方面说明完整的管理制度是维护一个全局的必要手段,同时
也说明在网络这个苑囿中,自觉二字还远没有达到理想的程度。经过不太长时间
的讨论,终于有了结果。就是最终由 Leeward 站长修改 BBS 软件,把扩充序列
的解释权交给用户,允许用户从个人参数设定中禁止这些效果。详细的信息请参
考sysop 板的讨论,以及最后 Leeward 公布的解决办法。
--
脊柱是我们这种生命的重要特征,在此基础上我们才有了光芒的智慧和
丰富的情感。上帝赋予我们自由的意志,同时也赋予我们选择的重担。
※ 修改:·bluesea 於 Feb 3 02:53:52 修改本文·[FROM: 202.99.63.200]
※ 来源:·BBS 水木清华站 bbs.net.tsinghua.edu.cn·[FROM: 202.99.62.45]
|
|