[20170725]vim调用bccalc插件问题.txt

[20170725]vim调用bccalc插件问题.txt

http://blog.itpub.net/267265/viewspace-2140886/
http://blog.itpub.net/267265/viewspace-2140823/
http://blog.itpub.net/267265/viewspace-2140602/

--//我个人很喜欢在vim调用bc做各种计算,使用插件bccale,参考前面的链接.
--//今天在使用时遇到1个问题,做一个记录与分析:

1/30000*325=.0183333333333333225
--//注不需要输入等号,打入\bx.显示结果.

--//而我在bc -l下执行如下:
1/30000*325
.01083333333333333225

--//很明显插件bccalc存在明显严重错误,中间少了1个0.
--//而我也建立一些快捷:

noremap  <Leader>cc Yp!!bc -lq<CR>kA = <ESC>J
noremap  <Leader>ch YpIobase=16;<ESC>!!bc -lq<CR>kA = 0x<ESC>Jxguu
noremap  <Leader>cd YpgUU:s/0x//gei<CR>Iibase=16;<ESC>!!bc -lq<CR>kA = <ESC>J

--//想完善看看实现oracle数据块转换,以及scn拆分为scn_wrap,scn_base的计算.
noremap  <Leader>c22 Y2pA/4194304<ESC>!!bc -q<CR>jA%4194304<ESC>!!bc -q<CR>2kA = set dba <ESC>3Js,<ESC>
noremap  <Leader>c32 Y2pA/4294967296<ESC>!!bc -q<CR>jA%4294967296<ESC>!!bc -q<CR>2kA = scn_wrap,scn_base: <ESC>3Js,<ESC>
noremap  <Leader>c16 Y2pA/65536<ESC>!!bc -q<CR>jA%65536<ESC>!!bc -q<CR>2kA = /16 %16: <ESC>3Js,<ESC>

--//打入\cc.可以发现计算是正确的.
1/30000*325 = .01083333333333333225

--//可以发现计算是正确的.那么就是插件存在问题.我仔细跟踪插件的执行.
let answer = system ("echo " . str . " \| bc -l " . preload)

--//我使用vim版本7.4,在linux下我也做了测试,问题一样.再写一个简单的例子:

0.010007=.017
0.01020300=.010203
0.010230=.01023
0.010604=.01064
0.0100070=.010007

--//莫名奇妙!!0.010007=.017,0.010604=.01064.而我在写成0.0100070结果有正确.
--//看来使用插件bccalc要小心.如果你写成如下:

1/30000*325*100=1.083333333333333225
--//又是正确的.回家测试vim 8.0版本看看.在家里使用8.0问题依旧.不知道问题在那里.仅仅做一个记录.

0.01020300=.010203
0.010703=.01073

时间: 2024-10-23 08:51:53

[20170725]vim调用bccalc插件问题.txt的相关文章

[20170617]vim 8.0插件安装.txt

[20170617]vim 8.0插件安装.txt --//昨天晚上在自己的家里的机器上安装vim 8.0 for windows,定制化浪费许多时间,剩下就是插件的安装. --//自己做一个记录: 1.ALign 插件: http://www.vim.org/scripts/script.php?script_id=294 http://www.vim.org/scripts/download_script.php?src_id=19633 安装很简单: vim Align.vba.gz :s

[20131125]vim的bccalc.vim插件有关问题以及10,16进制转换的简单方法.txt

[20131125]vim的bccalc.vim插件有关问题以及10,16进制转换的简单方法.txt 链接: http://www.vim.org/scripts/script.php?script_id=219在windows下乘法,以及^运算有问题加入如下: let str = escape (str, '();&>let str = substitute (str, "\\\^", "\\\^\\\^\\\^\\\^", ""

[20170612]vim bccalc插件.txt

[20170612]vim bccalc插件.txt --//上午修改bccacl插件,加入10,16,dba,scn之类转换.由于linux版本,与windows版本存在一些差异,分别贴上来: 1.windows版本: "" calculate expression entered on command line and give answer, e.g.: " :Calculate sin (3) + sin (4) ^ 2 command! -nargs=+ Calcu

[20131215]安装vim插件gundo.txt

[20131215]安装vim插件gundo.txt 今天想安装gundo.vim插件看看,我以前安装的vim 7.4版本,安装gundo插件需要python2.7版本. 我下载gvim7.4版本来自:http://www.vim.org/download.php#pc PC: MS-DOS and MS-Windows For modern MS-Windows systems (starting with XP) you can simply use the executable insta

【Linux基础】vim配置及插件安装管理

1 写在前面   Linux下编程一直被诟病的一点是: 没有一个好用的IDE, 但是听说Linux牛人, 黑客之类的也都不用IDE. 但是对我等从Windows平台转移过来的Coder来说, 一个好用的IDE是何等的重要啊, 估计很多人就是卡在这个门槛上了, "工欲善其事, 必先利其器"嘛, 我想如果有一个很好用的IDE, 那些Linux牛人也会欢迎的. 这都是劳动人民的美好愿望罢了, 我今天教大家把gvim改装成一个简易IDE, 说它"简易"是界面上看起来&quo

[20170616]vim中使用bc计算器.txt

[20170616]vim中使用bc计算器.txt --//前几天修改bccalc插件,它使用bc在vim做各种运算,在windows下会遇到许多奇怪的问题(别人给我反馈的) --//比如^的解析.我发现在windows下注解 " escape chars for shell " let str = escape (str, '*();&><|^') --//如上2行问题就可以解决,但是在运算里面包含括号问题依旧.实际上vim 7.4版本依旧存在问题,很奇怪vim

[20170616]vim 8.0的安装.txt

[20170616]vim 8.0的安装.txt --//晚上开始在自己的家里的机器上安装vim 8.0 for windows,事先做了备份,但是还是遇到许多问题,都是定制安装相关的问题,自己做 --//一个记录: --//里面的操作都是定制化的,可能不适合大家,我自己仅仅作为一个记录. 1.下载安装过程略. --//我仅仅把旧的安装做了一个备份.删除旧的安装,再安装8.0版本. 2.第一个问题就是右键无法选择vim的问题: --//编辑如下文件,导入注册表,注意自己gvim.exe的路径.这

powerbuilder-Powerbuilder怎么调用BarTender插件

问题描述 Powerbuilder怎么调用BarTender插件 在Powerbuilder中怎么调用BarTender格式的文件,打印小票 解决方案 安装ocx,然后通过pb里的ole来调用

请问如何免注册调用大漠插件

问题描述 不用引用的方法,想用LoadLibrary免注册调用大漠插件,请大神们帮忙!大漠插件com接口:dm.dmsoftdm=CreateObject("dm.dmsoft")我的代码如下:方案一:DeclareFunctionLoadLibraryLib"kernel32"Alias"LoadLibraryA"(ByVallpLibFileNameAsString)AsIntegerDeclareFunctionFreeLibraryLib