zoukankan      html  css  js  c++  java
  • vim 源码分析

    vim 源码分析

    http://bbs.csdn.net/topics/230031469

    Ver7.1  晕.
    看不明白很正常.  7.1已经很大了.  支持了太多东西. 代码行数那么多(源码压缩了都6M多).
    没有linux编程经验,看懂难于登天(他的功能太强大,决定了他源码涉及面广,相对复杂.).工作需要的话,估计等你全部弄明白,都跳槽好几次了... 

    劝你看个低版本的. vi的源码好像不太好找(我没找到)~
    不过vim1.2x/1.X的代码还是很好找的.
    都很小.很容易读.而且功能也还算可以了..
    vim-1.14.tar.gz   104 KB
    vim-1.17.tar.gz  134 KB
    vim-1.24.tar.gz  187 KB
    vim-1.27.tar.gz  292 KB
    vim-2.0.tar.gz    241 KB
    6.0以上就很大了
    vim-6.0.tar.bz2   2712 KB
    vim-6.4.tar.bz2  3650 KB
    vim-7.0.tar.bz2  6422 KB
    vim-7.1.tar.bz2  6715 KB

    给你看看功能说明:
    -------------------------------------------------------------------------
    1991 Nov 2 - Vim 1.14: 第一版 (在Fred Fish的第591号磁盘上).
    1992 - Vim 1.22: 移植到Unix上. Vim开始挑战Vi
    1994 Aug 12 - Vim 3.0: 支持多窗口多缓冲区
    1996 May 29 - Vim 4.0: 支持GUI(图形用户界面) (主要是Robert Webb的努力).
    1998 Feb 19 - Vim 5.0: 颜色支持和语法高亮
    2001 Sep 26 - Vim 6.0: 折行, 插件, 垂直窗口分隔
    vim-7.0 自动补完功能,拼写检查功能,括弧高亮显示功能,分页(tabs)功能,撤销分支功能.
    ------------------------------------------------------------------------- 

    当然7.0的功能还不只这么多,还有:
        缩进,重新编排格式
        语法高亮
        无限制的"撤消"和"重做"
        多个剪切,粘贴板
        拼写检查
        多语言支持
        可扩展性强
            宏,函数
            自定义键
            自己定制vimrc(很多人的这个文件都写得跟天书似的,可能主要考察一下记忆力)
        操作文本串,多行,矩形块
        几乎可以识别任何文本文件类型
        没有行长度和文件大小的限制(操作系统有限制除外)
        自动识别UNIX,MAC,MSWIN的行结尾符
        二进制文件编辑
        等等等等.....

    毕竟是个世界一流文本编辑器.从7.0升级7.1就开发了1年多时间~~~

    vim老版源码下载:
    ftp://ftp.vim.org/pub/vim/old
    新版源码:
    ftp://ftp.vim.org/pub/vim/unix/

    源码下载url:

    https://vim.sourceforge.io/sources.php

    [*]https://github.com/vim

    https://github.com/nuvie/nuvie

    http://download.chinaunix.net/download/0001000/20.shtml

    http://ftp.gnu.org/gnu/src-highlite/

    http://www.cs.cmu.edu/~awb/pub/minix/src/

    [*]https://github.com/Stichting-MINIX-Research-Foundation/minix

    https://github.com/xem/minix86

    https://github.com/wieck/minix

    https://github.com/pikpik/minix-pkgsrc

    https://github.com/rhiguita/lab-minix

    https://github.com/0xffea/MINIX3

    https://github.com/nilbus/minix

    https://github.com/macminix/MacMinix

  • 相关阅读:
    EF 配置(SqlServer,Mysql)
    mysql sql优化
    非root用户安装、配置mysql
    使用spring jdbc遇到的一个性能问题
    mac 修改 vim 配色
    logstash 监控日志文件时应对日志文件名改变的原理
    java Atomic compareAndSet部分原理分析
    实现进程单例的一些想法
    java String、String.concat和StringBuilder性能对比
    Elasticsearch 动态修改replica配置、增删replica
  • 原文地址:https://www.cnblogs.com/chulia20002001/p/7053333.html
Copyright © 2011-2022 走看看