标签归档:vim

失眠了

      虽未上夜班。。。然而却未知何故翻来覆去总是难以入眠。。。抄起手机查询套餐使用情况时竟然发现可享受免费短信数300已用3条,意味着二月份剩下最后一天竟然还有297条的短信未使用。。。想想这未必太便宜移动。。。故群发短信骚扰众人。。。极其无趣无聊之行为。。。。而后依旧是无法安静入睡。。。遂听小毛毛之建议。。。起床再次开机与其打牌数盘。。。不料之后,小毛毛发来QQ消息“困”
故散去道安。。。。

      安静的夜  无眠的我  左看右看  里瞧外探。。。 最后随便双击打开桌面图标上的Gvim  
想想来玩玩这个被N多人广而赞美是个强大的IDE工具,而自己其实一直以来都只懂得较为平常简单快捷的操作,基本实现自己(除了不编程外)的需求,故一直未能充分让牠发挥出其牛逼之处。。。刚好之前有见过一篇文章关于配置Vim使其成为强大的IDE工具。。。遂简单捣鼓片刻。。。最后得到的感受是:Vim  Is  A  Very  Powerful  Tools    
力荐     自己需好好琢磨之。。。

      好吧,想起明天白天还得值班,等下六点还得起床,故逼迫自己躺下不管是否能睡着,就当安静休息两个小时吧  

       Go  To  Bed …. Sleeping…..  For   Only  Two  Hours …..  
Good    Morning  Everyone  

       See  You Next  Time   Have Anything  You  Can  Select  Send  Me  SMS or Leave
Message  By  Email : QingXianYan at Gmail dot Com     Thanks

Windows系统Vim编辑器乱码解决分析

       貌似之前就有遇到过在windows系统下vim出现中文乱码的情况,只是用得较少而且也懒得去捣鼓它/// 这问题直到昨晚因为试用了个Casparant同学介绍的一款用于实现twitter客户端功能Vim插件—TwitVim的时候查看消息的时候出现的根本都是乱码。。。所以决定搞定关于Vim编辑器编码方式导致中文乱码的问题///
       上网了解了下才知道原来Vim有四个跟字符编码方式有关的选项,分别是:encoding、fileencoding、fileencodings、 termencoding (这些选项可能的取值请参考 Vim 在线帮助 :help encoding-names),它们各自的意义:
       * encoding: Vim 内部使用的字符编码方式,包括 Vim 的 buffer (缓冲区)、菜单文本、消息文本等。用户手册上建议只在 .vimrc 中改变它的值,事实上似乎也只有在 .vimrc 中改变它的值才有意义。
       * fileencoding: Vim 中当前编辑的文件的字符编码方式,Vim 保存文件时也会将文件保存为这种字符编码方式 (不管是否新文件都如此)。
       * fileencodings: Vim 启动时会按照它所列出的字符编码方式逐一探测即将打开的文件的字符编码方式,并且将 fileencoding 设置为最终探测到的字符编码方式。因此最好将 Unicode 编码方式放到这个列表的最前面,将拉丁语系编码方式 latin1 放到最后面。
       * termencoding: Vim 所工作的终端 (或者 Windows 的 Console 窗口) 的字符编码方式。这个选项在 Windows 下对我们常用的 GUI 模式的 gVim 无效,而对 Console 模式的 Vim 而言就是 Windows 控制台的代码页,并且通常我们不需要改变它。
       由于 Unicode 能够包含几乎所有的语言的字符,Unicode的 UTF-8 编码方式又是非常具有性价比的编码方式,因此encoding 的值设置为utf-8。同时将encoding设置为utf-8时,Vim自动探测文件的编码方式会更准确。在中文 Windows里编辑的文件,为了兼顾与其他软件的兼容性,文件编码还是设置为GB2312/GBK比较合适,因此fileencoding建议设置为 chinese (chinese 是个别名,在Unix里表示gb2312,在Windows里表示cp936,也就是GBK的代码页)。
       最终对于文件中显示乱码、菜单乱码、右键菜单乱码以及Conlse输出乱码问题的解决方案,修改Vim编辑器所对应的配置文件_vimrc,添加如下配置:
       “处理文本中显示乱码

set encoding=utf-8
set fileencodings=utf-8,chinese,latin-1
if has("win32")
set fileencoding=chinese
else
set fileencoding=utf-8
endif

       “处理菜单及右键菜单乱码

source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim

       “处理consle输出乱码

language messages zh_CN.utf-8

       关于Vim的支持多字符编码方式工作的运作原理是:
       首先、Vim 启动,根据_vimrc配置文件中设置的encoding的值来设置buffer、菜单文本、消息文的字符编码方式。
       紧接、读取要编辑的文件,根据fileencodings中列出的字符编码方式逐一探测该文件编码方式。并设置fileencoding 为探测到的字符编码方式。
       然后、对比fileencoding和encoding的值,若不同则调用iconv将文件内容转换为encoding所描述的字符编码方式,并且把转换后的内容放到为此文件开辟的buffer里,完成后就可以开始编辑这个文件。
       最后、编辑完成后保存文件时,再次对比fileencoding和encoding的值。若不同再次调用iconv将即将保存的buffer中的文本转换为fileencoding所描述的字符编码方式,并保存到指定的文件中。
       注:需要调用外部的iconv.dll,需要保证这个文件存在于$VIMRUNTIME或者其他列在PATH环境变量中的目录里。

vi使用及ubuntu旧内核删除

一、vi编辑器操作实现字符串替换:

    vi 中如何使用 :s 命令实现字串的替换.
    :s/str1/str2/ 用字串 str2 替换行中首次出现的字串 str1
    :s/str1/str2/g 用字串 str2 替换行中所有出现的字串 str1
    :.,$ s/str1/str2/g 用字串str2替换正文当前行到末尾所有出现的字符串str1
    :1,$ s/str1/str2/g 用字串str2替换正文中所有出现的字串str1
    :g/str1/s//str2/g 用字串str2替换正文中所有出现的字串str1
    :%s/str1/str2/g 用字串str2替换正文中所有出现的字串str1

    可见,g放在命令末尾,表示对搜索字串的每次出现进行替换;不加g,表示只对搜索字串的首次出现进行替换,g放在命令开头,表示对正文中所有包含搜索字串的行进行替换.
    这是最近配置文件使用vi编辑器时遇到学习,所以在此备忘记录分享下

二、删除ubuntu旧内核操作:

    #dpkg -get selections|grep linux   //查询确认ubuntu现已有的不同版本内核
    #apt-get remove linux-images-2.26.27-7-generic  //带有images的为内核版本号
    #uname -a  // 确认现在系统所使用的是哪个版本
    #reboot  //重启下电脑系统搞定

    因为太久没有使用乌班图系统,昨天晚上趁比较闲一点临睡前切换到ubuntu系统下先更新啦下。。。发现磁盘空间消耗有点多,想想自己之前貌似都没有删除下旧的内核得以腾点空间(虽然不多 呵呵) 所以使用以上简要命令对乌班图的其他两三个旧内核卸载清空掉了。。。