摘要: 在 Vim 中,有四个与编码有关的选项,它们是:fileencodings、fileencoding、encoding和termencoding。在实际使用中,任何一个选项出现错误,都会导致出现乱码。因此,每一个 Vim 用户都应该明确这四个选项的含义。下面,我们详细介绍一下这四个选项的含义和作用。1encoding encoding是 Vim 内部使用的字符编码方式。当我们设置了encoding之后,Vim 内部所有的 buffer、寄存器、脚本中的字符串等,全都使用这个编码。Vim 在工作的时候,如果编码方式与它的内部编码不一致,它会先把编码转换成内部编码。如果工作用的编码中含有无法... 阅读全文
posted @ 2012-10-30 19:00 草根程序猿 阅读(836) 评论(0) 推荐(0) 编辑
摘要: 记在这里做备忘吧。下面方法的好处是,不需要改变SecureCRT的配置,所以不影响对其他中文的显示。问题:比如一个文件用utf-8编码,文件头:1 #!/usr/bin/env python2 # -*- coding: utf-8 -*-此时:用SecureCRT到Linux下,使用VIM编辑,中文显示会是乱码。查看SecureCRT->Session OptionsTerminal->Appearance: Character encoding: Default解决:只需要在Linux的VIM下面一行命令:set encoding=utf-8 termencoding=gbk显 阅读全文
posted @ 2012-10-30 18:52 草根程序猿 阅读(1435) 评论(0) 推荐(0) 编辑
摘要: 今天在css-tricks上看到一篇文章,那篇文章让我不禁心头一震,强大的CSS啊,居然能画出这么多基本的图形。图形包括基本的矩形、圆形、椭圆、三角形、多边形,也包括稍微复杂一点的爱心、钻石、阴阳八卦等。当然有一些需要用到CSS3的属性,所以在你打开这篇文章的时候,我希望你用的是firefox或者chrome,当然IE也能看一部分的。那好,下面就一起来看看我们是如何用纯CSS来画这些图形的,如果你也觉得很震撼,推荐给你的朋友吧。1、正方形最终效果:CSS代码如下:1 #square {2 width: 100px;3 height: 100px;4 backgrou... 阅读全文
posted @ 2012-10-19 14:14 草根程序猿 阅读(80363) 评论(11) 推荐(24) 编辑
摘要: 上午看到一篇博客(http://www.cnblogs.com/chinhi/archive/2012/09/26/fdsf.html),里面是腾讯2013年校园招聘笔试题,有这样一道题(在其他面试过程也会经常看到类似的): 用容积分别为15升和27升的两个杯子向一个水桶中装水,可以精确向水桶中注入()升水? A、53 B、25 C、33 D、52 对于这类问题有没有好的算法可以确定所有可以精确得到的值呢? 注:这里说的所有是指不大于容积大的杯子的容积。 我们可以这样想,首先我们可以得到的是12升的值,方案是把大杯装满水,然后把小杯倒满,这样可以得到:27 - 15 = 1... 阅读全文
posted @ 2012-09-26 15:18 草根程序猿 阅读(2824) 评论(4) 推荐(0) 编辑
摘要: 本文前半部分转自:正则表达式–零宽断言详解 零宽断言的意思是(匹配宽度为零,满足一定的条件/断言) 我也不知道这个词语是那个王八蛋发明的,简直是太拗口了。 零宽断言用于查找在某些内容(但并不包括这些内容)之前或之后的东西,也就是说它们像\b,^,$那样用于指定一个位置,这个位置应该满足一定的条件(即断言),因此它们也被称为零宽断言。 断言用来声明一个应该为真的事实。正则表达式中只有当断言为真时才会继续进行匹配。 其中零宽断言又分四种 先行断言:也叫零宽度正预测先行断言(?=表达式),表示匹配表达式前面的位置 例如 [a-z]*(?=ing) 可以匹配cooking singin... 阅读全文
posted @ 2012-09-24 20:50 草根程序猿 阅读(1606) 评论(0) 推荐(0) 编辑
摘要: 方案一:<!DOCTYPE html><html><head> <meta charset="utf-8"/> <title>Demo</title> <style type="text/css"> #outer{ width:500px; height:200px; margin: 50px auto; border:1px solid #CCC; display:table; text-align:center; ... 阅读全文
posted @ 2012-09-23 11:43 草根程序猿 阅读(6981) 评论(3) 推荐(1) 编辑
摘要: 鼠标悬浮提示效果:View Code 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8"/> 5 <title> New Document </title> 6 <style type="text/css"> 7 body{ 8 padding:10px; 9 min-height:400px; 10 } 11 .tip-help-wrap{ 12 positi... 阅读全文
posted @ 2012-09-21 22:41 草根程序猿 阅读(7359) 评论(2) 推荐(1) 编辑
摘要: 我们先看段代码:var s = "Test";var len=s.length; 我们知道在JavaScript中像上面这样声明的字符串不是对象,但既然这里的s不是对象,为什么会有length的属性呢? 原因是在JavaScript中只要引用了字符串(数字、布尔值也是一样的)的属性,JS就会将字符串通过调用new String(s)的方式转换成对象,这个对象继承了字符串的方法,并被用来处理属性的引用。一旦属性引用结束,这个新创建的对象就会销毁(真实实现并不一定是这样,但整个过程看起来是这样)。这个过程就叫包装对象。 有没有办法验证上面的解释呢,我们来看两段代码: 代码一:v 阅读全文
posted @ 2012-09-20 08:31 草根程序猿 阅读(2697) 评论(0) 推荐(1) 编辑
摘要: 无意中看到某网站的一段JS代码: 1 function clearSearchText(){ 2 var searchtext = document.getElementById("searchwordl").value 3 document.getElementById("searchwordl").value=""; 4 } 5 function replaceALL(){ 6 var replaceTxt = document.getElementById("searchwordl").value; 7 va 阅读全文
posted @ 2012-09-18 21:12 草根程序猿 阅读(3878) 评论(3) 推荐(2) 编辑
摘要: 效果: 代码:<!DOCTYPE html><html><head> <meta charset="utf-8"/> <title> New Document </title> <style type="text/css"> body,ul,li{ maring:0; font-size:12px; padding:0; } ul{ list-style:none; line-height:25px; } ... 阅读全文
posted @ 2012-09-17 16:16 草根程序猿 阅读(1512) 评论(0) 推荐(0) 编辑
摘要: 测试代码:<div id="test"></div><script> document.oncontextmenu=function(){ return false; }; var oDiv=document.getElementById("test"); oDiv.onmousedown=function(e){ e= e || window.event; var mouseNum = e.button; this.innerHTML = mouseNum; }</script> 在线测试: 结论:... 阅读全文
posted @ 2012-09-11 10:28 草根程序猿 阅读(10596) 评论(0) 推荐(1) 编辑
摘要: 周末闲来无事写了一个JavaScript版扫雷游戏,现在把源代码分享出来,共同学习。 扫雷游戏的原理大家可以参考这篇文章:http://www.cnblogs.com/goodwin/archive/2010/03/22/1691871.html JavaScript代码:(function () { var FLM = function (id,rowCount,colCount, minLandMineCount, maxLandMineCount) { if (!(this instanceof FLM)) return new FLM(... 阅读全文
posted @ 2012-09-08 22:40 草根程序猿 阅读(4557) 评论(20) 推荐(4) 编辑
摘要: 递归算法的时间复杂度除非只有前两项,否则都不是线性的,并且相当耗费内存。我们用最常见的的fibonacci数列来说明:function fibonacci(n){ if( n === 0 || n === 1){ return n; } else { return fibonacci(n - 1) + fibonacci(n - 2); }} 这是一种最常见的写法,这种写法极其耗费内存,当参数n大于30时,就会明显感觉到花的时间比较长,如果n等于100,浏览器极有可能会崩溃掉。 我们来分析一下耗费内存和时间原因:先将要计算的变量值存到堆栈中... 阅读全文
posted @ 2012-09-05 08:41 草根程序猿 阅读(6883) 评论(10) 推荐(0) 编辑
摘要: 本文首发博客园:http://jscode.cnblogs.com,转载请注明出处。 关于Element跟Node的区别,cilldren跟childNodes的区别很多朋友弄不清楚,本文试图让大家明白这几个概念之间的区别。 Node(节点)是DOM层次结构中的任何类型的对象的通用名称,Node有很多类型,如元素节点,属性节点,文本节点,注释节点等,通过NodeType区分,常见的有:节点类型NodeType元素element1属性attr2文本text3注释comments8文档document9 更多节点类型参考:https://developer.mozilla.org/en-... 阅读全文
posted @ 2012-09-04 22:12 草根程序猿 阅读(28137) 评论(1) 推荐(12) 编辑
摘要: 很多初学者对于JavaScript中的offset、scroll、client一直弄不明白,虽然网上到处都可以看一张图(图1),但这张图太多太杂,并且由于浏览器差异性,图示也不完全正确。图一 不知道大家看到这张图的第一感觉如何,反正我的感觉就是“这次第,怎一个乱字了得”。 既然我认为上图太多太乱,那么我就把offset、scroll、client分开说,希望能让大家彻底弄清楚,今天只说offset。一、关于offset,我们要弄明白什么 w3中offset相关页面是:http://www.w3.org/TR/cssom-view/#extensions-to-the-htmlelem... 阅读全文
posted @ 2012-09-03 20:02 草根程序猿 阅读(34822) 评论(16) 推荐(25) 编辑