zoukankan      html  css  js  c++  java
  • 玩坏的Bad Apple之Vim

          Vim是一个类似于Vi的文本编辑器,不过在Vi的基础上增加了很多新的特性,Vim普遍被推崇为类Vi编辑器中最好的一个,事实上真正的劲敌来自Emacs的不同变体。1999 年Emacs被选为Linuxworld文本编辑分类的优胜者,Vim屈居第二。但在2000年2月Vim赢得了Slashdot Beanie的最佳开放源代码文本编辑器大奖,又将Emacs推至二线, 总的来看, Vim和Emacs同样都是非常优秀的文本编辑器。 

     Bad apple(vim)代码:

    let s:data=readfile("data")
    
    function! s:Build2DArray(n,m,v)
      let res=[]
      for i in range(a:n)
        let row=[]
        for j in range(a:m)
          call add(row,a:v)
        endfor
        call add(res,row)
      endfor
      return res
    endfunction
    
    
    function! s:PrintMap(change)
      for p in a:change
        let i=p[0]-1
        let j=p[1]-1
        let s:map[i][j]=p[2]
      endfor
      for i in range(1,s:R)
        let s=join(s:map[i-1],"")
        call setline(i,s)
      endfor
    endfunction
    
    function! s:Initialize()
      let firstLine=split(s:data[0],' ')
      let s:R=firstLine[0]
      let s:C=firstLine[1]
      set go-=T
      if has("win32")
        set guifont=Terminal:h9
      else
        set guifont=Free Mono 8
      endif
      :res 90
      let s:map=s:Build2DArray(s:R,s:C,' ')
      call s:PrintMap([])
    endfunction
    
    function! s:Start()
      for line in s:data[1:]
        call s:PrintMap(map(split(line,"|"),"split(v:val,'_')"))
        redraw
        sleep 70m
      endfor
    endfunction
    call s:Initialize()
    call s:Start()


    然后,将Data文件放到和vim程序同文件夹中。

    键入  :

    :so%


    回车

    就可以看到字符版Bad Apple的运行画面了。


    data文件及vim源代码下载:

    http://pan.baidu.com/s/1dD097l3 提取码:9vdo


    @ Mayuko

  • 相关阅读:
    《java异常的一些总结》
    《java小应用程序(Applet)和java应用程序(Application)分别编写的简单计算器》
    《Java应用程序(Application)》
    CPU 内部 MOSFET 晶体管模型
    Intel 4004,世界上第一块 CPU
    VBScript
    VBScript
    Web Scraping(网页抓取)基本原理
    VBScript
    莎士比亚电路ヾ(≧▽≦*)o
  • 原文地址:https://www.cnblogs.com/mayuko/p/4567670.html
Copyright © 2011-2022 走看看