玩坏的Bad Apple之Vim

来源:互联网 发布:电信网络不稳定老掉线 编辑:程序博客网 时间:2024/05/01 13:57

      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 resendfunctionfunction! 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)  endforendfunctionfunction! 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([])endfunctionfunction! s:Start()  for line in s:data[1:]    call s:PrintMap(map(split(line,"|"),"split(v:val,'_')"))    redraw    sleep 70m  endforendfunctioncall s:Initialize()call s:Start()


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

键入  :

:so%


回车

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


data文件及vim源代码下载:

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


@ Mayuko

1 0