标签为 "map" 的存档

vim利用map映射执行脚本

最近开始捡起C语音来看,《c语言实用基础》,一边看一边做例子学习。然后发现,每次写完一个例子后,都要写几个字符,去编译并执行一下,然后就想看看能不能利用vim的map映射,把这种常规性的命令绑定到一个快捷键上去,查了一些资料后,果真是可以实现的。
先摆出来怎么用的。
打开~/.vimrc文件,并在最后以后之后粘贴上一下代码:

"映射命令行下的c编译并执行
cmap  !gcc % && ./a.out

然后保存并关闭。
再重新打开一个c文件,写好C代码后,进入命令行模式,按下ctrl+r,然后就可以直接编译并执行该c文件了。

下边再解释一下为什么这么写。

  • cmap,指的是命令行下的映射,这种映射,在vim其它模式下是不生效的,这样也可以避免冲突。用法就是cmap {lhs} {rhs} , 在映射命令作用的模式中把键系列 {lhs} 映射为 {rhs}。并且映射后的 {rhs} 也被进行映射扫描。这个特性可以用来进行映射的嵌套和递归。顺带再说一下其它几种map的用法,nmap表示普通模式下,vmap表示可视模式下,imap表示插入模式下,默认的map,是包括普通模式和可视模式的。
  • 表示ctrl+r键
  • %在vim命令行模式里表示当前文件
  • 表示模拟回车按下事件

如果你明白原理了,自己去写一些对自己有帮助的映射脚本吧。

参考文章:
http://vimcdoc.sourceforge.net/doc/map.html
http://www.ibm.com/developerworks/cn/linux/l-vim-script-1/
http://haoxiang.org/2011/09/vim-modes-and-mappin/

百度地图各省份轮廓上色-包括台湾

百度地图各省份轮廓-上不同颜色-包括台湾

百度地图各省份轮廓-上不同颜色-包括台湾


Read more…

jQuery数组处理完全详解($.each,$.grep,$.map,$.merge,$.inArray,$.unique,$.makeArray)

jQuery的数组处理、便捷、功能齐全。最近的项目中用到的比较多,深感实用,一步到位的封装了很多原生JavaScript数组不能企及的功能。最近时间紧迫,今天抽了些时间回过头来看jQuery中文文档中对数组的介绍,顺便对jQuery数组做个总结,温故而知新。
强烈建议你打开DEMO演示后再看下面的详解:http://mrthink.net/demo/ijq20101125.htm

1. $.each(array, [callback]) 遍历[常用]

解释: 不同于例遍jQuery对象的$().each()方法,此方法可用于例遍任何对象。回调函数拥有两个参数:第一个为对象的成员或数组的索引, 第二个为对应变量或内容. 如果需要退出each循环可使回调函数返回false, 其它返回值将被忽略。

each遍历,相信都不陌生,在平常的事件处理中,是for循环的变体,但比for循环强大。在数组中,它可以轻松的攻取数组索引及对应的值。例:

var _mozi=['墨家','墨子','墨翟','兼爱非攻','尚同尚贤']; //本文所用到的数组, 下同
$.each(_mozi,function(key,val){
    //回调函数有两个参数,第一个是元素索引,第二个为当前值
    alert('_mozi数组中 ,索引 : '+key+' 对应的值为: '+val);
});

相对于原生的for..in,each更强壮一点。for..in也可以遍历数组,并返回对应索引,但值是需要通过arrName[key]来获取。

2. $.grep(array, callback, [invert])过滤数组[常用]

解释: 使用过滤函数过滤数组元素.此函数至少传递两个参数(第三个参数为true或false,对过滤函数返回值取反,个人觉得用处不大): 待过滤数组和过滤函数. 过滤函数必须返回true以保留元素或 false 以删除元素. 另外,过滤函数还可以是可设置为一个字条串。

$.grep(_mozi,function(val,key){
    //过滤函数有两个参数,第一个为当前元素,第二个为元素索引
    if(val=='墨子'){
        alert('数组值为 墨子 的下标是: '+key);
    }
});

var _moziGt1=$.grep(_mozi,function(val,key){
    return key>1;
});
alert('_mozi数组中索引值大于1的元素为: '+_moziGt1);

var _moziLt1=$.grep(_mozi,function(val,key){
    return key>1;
},true);
//此处传入了第三个可靠参数,对过滤函数中的返回值取反
alert('_mozi数组中索引值小于等于1的元素为: '+_moziLt1);

Read more…

移动创业者筹备放弃谷歌地图,应对牌照僵局

 “有新版本可用:支持高德、谷歌、百度、图吧等多种地图接入方式,查询路线更方便。”2012年2月,有用户发现大众点评手机端新版本出现了如此推送提示。
 这一细节的背后,是以电子地图为圆心的产业链风向标的悄然变动。
眼下,谷歌地图在国内申请互联网地图服务资质的事件仍陷入僵局。牵一发而动全身。如果谷歌在国内手机客户端地图、网页地图、地图应用程序(API)接入市场等业务受影响,必然会波及产业链上的众多厂商。
 除了大众点评之外,今年来,一大批接入谷歌地图的第三方创业者正悄然行动,提前作出备案。
 谷歌地图未来走势暂且不议,而围绕电子地图展开的四大链条开始浮出水面。
四大链条 两大牌照
 谷歌地图的牌照申请一直为大众所关注,而这仅仅是整个电子地图产业链上的一环。
据业内人士在接受腾讯科技专访时介绍,目前国内电子地图产业链,从最上游开始依次共有数据类、软件类、互联网及移动互联网服务类3大环节,细分4大链条:

国内电子地图四大产业链

国内电子地图四大产业链

Read more…