Windows下用gVim搭建AS3开发环境

Windows环境下做AS3游戏开发,但Flash Builder用不习惯,所以用vim搭建了一个AS开发环境

先看下完全形态……配色方案是desertEx。

AS3_VIM

1. 实现语法高亮

1.1 下载 actionscript.vim,然后将它们放到vimfiles的syntax文件夹下去

1.2 在ftdetect文件夹下的filetype.vim(没有可新建)中,加入以下代码:

autocmd BufRead *.as set filetype=actionscript
autocmd BufRead *.mxml set filetype=mxml

再打开as文件应该就有语法着色了。

 

2. 系统语法补全

网上有人整理好了AS3的字典文件as3_dict.txt, 这样只要将这个字典文件放到某个地方然后在vimrc中设置一下就可以了。

比如我放在了vimfiles中的dict文件夹下面

然后在vimrc中这样写:

au FileType actionscript call AddAS3Dict()
function AddAS3Dict()
set dictionary-=$VIM/vimfiles/dict/as3_dict.txt dictionary+=$VIM/vimfiles/dict/as3_dict.txt
set complete-=k complete+=k
endfunction

这样在vim的插入模式下按下 Ctrl+X 然后 Ctrl+K 就可以调出AS3关键字了

 

3. 代码智能补全 + 对象列表

VIM有个C/C++智能补全插件ctags,它同样可以支持AS

3.1 将ctags文件解压,放到任意目录下,然后在windows的环境变量中指定ctags.exe的所在路径

3.2 继续改vimrc,设置快捷键用于生成ctags文件,这里我用的是F12

map <F12> :call Do_CsTag()<CR>
function Do_CsTag()
let dir = getcwd()
if filereadable("tags")
let tagsdeleted=delete(dir."\\"."tags")
if(tagsdeleted!=0)
echohl WarningMsg | echo "Fail to do tags! I cannot delete the tags" | echohl None
return
endif
endif
if(executable('ctags'))
"silent! execute "!ctags -R --c-types=+p --fields=+S *"
silent! execute "!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q ."
endif
endfunction

当然如果不想修改环境变量的话,只要将代码中的红色部分替换成你的ctags.exe所在路径就可以了。

3.3 让ctags支持AS3

新建ctags.cnf文件,内容如下,然后放到Windows的用户文件夹下面:

--langdef=actionscript
--langmap=actionscript:.as
--regex-actionscript=/^[ \t]*[(private| public|static) ( \t)]*function[ \t]+([A-Za-z0-9_]+)[ \t]*\(/\1/f, function, functions/
--regex-actionscript=/^[ \t]*[(public) ( \t)]*function[ \t]+(set|get) [ \t]+([A-Za-z0-9_]+)[ \t]*\(/\1 \2/p,property, properties/
--regex-actionscript=/^[ \t]*[(private| public|static) ( \t)]*var[ \t]+([A-Za-z0-9_]+)[ \t]*/\1/v,variable, variables/
--regex-actionscript=/.*\.prototype \.([A-Za-z0-9 ]+)=([ \t]?)function( [ \t]?)*\(/\1/ f,function, functions/
--regex-actionscript=/^[ \t]*class[ \t]+([A-Za-z0-9_]+)[ \t]*/\1/c,class, classes/

3.4 下载taglist插件,将里面的文件解压到vimfiles文件夹中去

在vimrc文件中添加如下代码,让taglist插件支持as文件:

let tlist_actionscript_settings = 'actionscript;c:class;f:method;p:property;v:variable' 

3.5 再设置一下taglist插件

"TlistUpdate可以更新tags
"按下F3就可以呼出了
map <F2> :silent! Tlist<CR>
"因为我们放在环境变量里,所以可以直接执行
let Tlist_Ctags_Cmd='ctags'
"让窗口显示在右边,0的话就是显示在左边
let Tlist_Use_Right_Window=0
"让taglist可以同时展示多个文件的函数列表,如果想只有1个,设置为1
let Tlist_Show_One_File=0
"非当前文件,函数列表折叠隐藏
let Tlist_File_Fold_Auto_Close=1
"当taglist是最后一个分割窗口时,自动退出vim
let Tlist_Exit_OnlyWindow=1
"是否一直处理tags.1:处理;0:不处理
let Tlist_Process_File_Always=0
let Tlist_Inc_Winwidth=0

这样当写完文件后,按F12生成tags,这样要调用类里面的变量或者方法的时候在插入模式下Ctrl+X,Ctrl+]就可以了补全代码了

在任意模式下按下F2,就可以显示对象列表了。

cscope比ctags更为强大,但没有用AS3试过,有兴趣的可以试试看。

 

4. 文件列表

使用插件:Nerdtree

4.1 将NerdTree插件下载解压到vimfiles文件夹

4.2 在vimrc中写下如下代码:

"打开或关闭文件列表
nnoremap <F3> :NERDTreeToggle<Enter>
"文件列表的位置
let NERDTreeWinPos='right'

 

5. 多文档编辑

其实就是增强型的tab

使用插件:MiniBufExplorer

5.1 将minibufexpl.vim下载下俩放到vimfiles的plugin文件夹中

5.2 配置vimrc

"允许光标在任意位置时用CTRL-TAB遍历buffer
let g:miniBufExplMapCTabSwitchBufs=1

单个文件的时候不会显示buffer,当使用<C-X><C-]>或在文件列表中打开文件等跳转操作时便会显示标签

<Ctrl-Tab>可以切换标签,<Ctrl+Shift+Tab>逆向切换,当然鼠标在标签上双击跳转也是支持的。

 

6. 代码段补全

使用插件:snipMate

6.1 下载插件解压到vimfiles文件夹中

6.2 下载actionscript.snippets,放到snippets文件夹中

如果想补全for代码段,只要在as文件中写for,然后按下<Tab>键,就可以实现了,其他同理。如果觉得下载来的不给力,修改actionscript.snippets也很方便。

如果觉得snipMate不能满足你的要求,可以用更加强大的xptemplate,不过snippets写起来比较复杂……

 

7. 代码注释

使用插件:NERD_commenter

7.1 下载插件解压到vimfiles文件夹中

普通模式下按",cc"进行注释,",cu"取消注释,",ca"切换注释方式,",cs"用更“性感”的方式来注释……

 

9. 全局搜索

----------------------------------------

使用插件:grep

在Linux下可以直接使用Grep,然而windows下使用需要windows版的grepfindutils两个工具

如果你的机器上装有Cygwin环境,并且将Cygwin加入了环境变量中去的话,则直接安装这两个包即可。

配置vimrc

"路径
let Grep_Path='D:\vimtools\grep-2.5.4-bin\bin\grep.exe'
let Fgrep_Path='D:\vimtools\grep-2.5.4-bin\bin\fgrep.exe'
let Egrep_Path='D:\vimtools\grep-2.5.4-bin\bin\egrep.exe'
let Grep_Find_Path='D:\vimtools\grep-2.5.4-bin\bin\find.exe'
let Grep_Xargs_Path='D:\vimtools\grep-2.5.4-bin\bin\xargs.exe'
"快捷键
nnoremap <Leader>sp :Grep<CR>

把"D:\vimtools\grep-2.5.4-bin\bin\"改成自己的实际路径就可以了

假如把Leader键设置为了",",当鼠标停在非空白处时,按下",sp"则会搜索鼠标停靠位置的词,若在空白位置则需键入需要搜索的词。然后选择要搜索的文件类型就可以了。注意路径中不能有中文……



这个环境编辑代码是没有问题了,但还不能像C/C++那样调试和运行代码……调试和运行先坑着下次放出。








posted @ 2012-01-16 15:43  antisamael  阅读(591)  评论(0编辑  收藏  举报