问题描述
我的ncursesw gem安装过程猜测ncursesw gem有一个依赖,直接装了:
bashsudo apt-get install libncursesw5-dev
nohighlight[sudo] password for satgo1546: 正在读取软件包列表... 完成正在分析软件包的依赖关系树正在读取状态信息... 完成 下列【新】软件包将被安装: libncursesw5-dev升级了 0 个软件包,新安装了 1 个软件包,要卸载 0 个软件包,有 11 个软件包未被升级。需要下载 197 kB 的软件包。解压缩后会消耗掉 1,208 kB 的额外空间。获取:1 http://mirrors.aliyun.com/ubuntu/ trusty/main libncursesw5-dev amd64 5.9+20140118-1ubuntu1 [197 kB]下载 197 kB,耗时 0秒 (676 kB/s)Selecting previously unselected package libncursesw5-dev:amd64.(正在读取数据库 ... 系统当前共安装有 414283 个文件和目录。)Preparing to unpack .../libncursesw5-dev_5.9+20140118-1ubuntu1_amd64.deb ...Unpacking libncursesw5-dev:amd64 (5.9+20140118-1ubuntu1) ...正在设置 libncursesw5-dev:amd64 (5.9+20140118-1ubuntu1) ...
我这么安装了ncursesw gem。
bashgem install ncursesw
nohighlightFetching: ncursesw-1.4.9.gem (100%)Building native extensions. This could take a while...Successfully installed ncursesw-1.4.9Parsing documentation for ncursesw-1.4.9Installing ri documentation for ncursesw-1.4.9Done installing documentation for ncursesw after 3 seconds1 gem installed问题
ruby#!/usr/bin/env rubyrequire ’ncursesw’begin scr = Ncurses.initscr Ncurses.add_wch('和'.ord) Ncurses.refresh sleep 1ensure Ncurses.endwinend
预期它会在左上角输出``和’’。但是结果是每次运行它的时候,会输出一个不一样的字符。
(化简后结果,以下字符均正常输出在屏幕左上角,并且前面确实有一个空格)
nohighlight$ ./trythis.rb 羕$ ./trythis.rb 翻$ ./trythis.rb 翋
问题解答
回答1:虽然不知道是什么原因,但是把Ncurses.add_wch('和'.ord)改为Ncurses.addstr('和')即可解决。并且这样前面也没有空格了。