青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

聚星亭

吾笨笨且懶散兮 急須改之而奮進
posts - 74, comments - 166, trackbacks - 0, articles - 0
  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

當我們新創建一個工程的時候(就是新建一個.VimEntry文件⊙﹏⊙b),打開工程,總會有許多默認的配置被寫到這個文件中,我想你一定很納悶這些數據都代表啥含義,也一定像我一樣,想更改這些配置,來讓我們的exVIM更符合自己的要求。OK,不多廢話,讓我們開始吧。

exVim是通過一個名曰: exEnvironment的插件來實現將這些默認的配置信息拷貝到.VimEntry文件中的,所以,我們就從這個插件下手,應該沒錯。

一、 VimEntry文件的語法

是的,如果你找到并打開\vimfiles\plugin\exEnvironmentSetting.vim這個文件,你肯定也很確定,我們找對地方了。不管你動不動英文,只看里面的結構和大致的內容,我們都能猜的到,它在干什么。

由于大多中國人都不喜歡看說明文檔,所以我這里大致在說明下這個插件使用方法:

exEnvironment插件會給每個=號后的值創建一個全局變量,變量名要以g:exES開頭,比如我們在.VimEntry文件定義如下:

Variable1='this is a test'

這時,exEnvironment會創建一個名為g:exES_Variable1的變量,它的值是'this is a test'

exEnvironment也支持字符串列表,我們只需要用+=來代替=就可以了。比如:

List1+='item1' 

List1+='item2' 

List1+='item3'

需要說明的是,exEnvironment 只能解析字符串。接下來怎么修改,就看大家的情況了。你可以只修改工程的VimEntry文件,也可以直接修改它的模板。

二、 配置VimEntry文件

倘若你認真的看過VimEntry文件。你一定發現了下面這段配置信息

-- auto-gen settings (DO NOT MODIFY) --

CWD=D:/exDev/Project/FirstPlg

Version=23

VimEntryName=FirstPlg

VimfilesDirName=_vimfiles_FirstPlg

這段配置信息每次啟動exVIM時都會被加載,雖然上面寫著不需要修改,但是如果我們要更新VimEntry,就可以修改一下這個地方,exEnvironment會自動檢測這個這里是否是合適的配置,如果不是,exEnvironment就會將這里重寫這個配置。當然這里一般情況下還是不修改的好,否則代價就是丟失當前工程的配置信息。

OK,不廢話,我們進入正題,講述下VimEntry文件中我們不曉得的一些配置選項。

1、 LangType選項

該選項來控制exVIM能識別那些語言類型,一般默認情況下,這個選項的配置如下:

-- ex-plugins File Settings --

LangType=auto

也就是說他自動的識別一些默認類型,默認情況下,這個配置是在 g:exES_UpdateEnvironment中寫好的:

    " set default language type map

    if exists('g:exES_LangType')

        if g:exES_LangType != 'auto'   " if auto, we use default language map.

            let lang_list = split( g:exES_LangType, ',' )

            silent call exUtility#SetProjectFilter ( "file_filter", exUtility#GetFileFilterByLanguage (lang_list) )

        endif

    endif

file_filter中的內容可以在:D:\exDev\exVim\toolkit\quickgen\bash\quick_gen_project.sh中找到:

file_filter="c|cpp|cxx|c\+\+|C|cc|h|H|hh|hxx|hpp|inl|cs|uc|hlsl|vsh|psh|fx|fxh|cg|shd|glsl|py|pyw|vim|awk|m|dox|doxygen|ini|cfg|wiki|mk|err|exe|bat|sh"

只要我們按照我們的配置來設定,去掉auto,寫上你需要特殊處理的語言類型就可以了。比如:

LangType= asm, lua, c

當然這個選項也不能亂填,默認的這個選項后面可以填寫如下的內容:

c,cpp,c#,shader,python,vim,math,uc,javascript,java,html,lua

如果你要讓exVIM支持一種新的語言類型,可以參考后面的內容。

2、 vimentryRefs

通過這個選項我們可以引用其它vimentry的配置到當前的工程中。比如繼承其它vimentry 的tags文件,符號信息等。

當然這個選項也很簡單,只要將要引用的vimentry文件的路徑添加上就可以了。比如:

vimentryRefs+= D:\exDev\Project\kllan\kllan.vimentry

vimentryRefs+= D:\exDev\Project\SqlLib\Sqlib.vimentry

3、 Restore Buffer 

這個選項是說明,當我們打開一個vimentry文件時,是否恢復到上次的使用上下文。如果設置為:"RestoreBuffer=true"保存并退出exVim,當你下次打開這個工程師,就會提示你是否恢復到上次退出時的環境。

當然,如果不想要這個功能,只要將這個選項設置為false就可以了。

三、 添加一種新的語言類型

我們在本章一開頭寫到過如何設置LangType選項,但是這個后面僅能跟已經支持過的語言類型,倘若我們現在要讓exVIM支持一個新的語言類型(比如我們自己寫的一套腳本引擎,要想用exVIM作為它的開發環境)的話就要在以下幾個方面做修改。

1、 添加新的exVIM語言映射

據說明書上說,ExVIM默認支持如下一些語言類型:

Language Type

File Type

asm

asm, ASM

awk

awk, gawk, mawk

batch

bat

c

c, C

cpp

c++, cc, cp, cpp, cxx, h, H, h++, hh, hp, hpp, hxx, inl, ipp

c#

cs

doxygen

dox, doxygen

debug

log, err, exe

html

htm, html

ini

ini, cfg

java

java

javascript

js

lua

lua

make

mak, mk, Makefile, makefile

math

m

python

py, pyw, pyx, pxd

ruby

rb, ruby

sh

sh, SH, bsh, bash, ksh, zsh

shader

hlsl, vsh, psh, fx, fxh, cg, shd, glsl

 uc

uc

vim

vim

wiki

wiki

xml

xml

當我們設置LangType選項為auto時,exVIM將通過exProject插件以” File Type”為過濾條件來獲取相應的語言類型。如果LangType選項被設置為某一個具體的語言時(比如: LangType=c,cpp,python),則exVIM將找到這個文件類型并將它應用的exProject的文件過濾中和quick_gen_project腳本中。

如果你要添加一個新的語言映射,你可以使用:

function exUtility#AddLangMaplangmap_typelang_typefile_type_list )

"langmap_type" 這個值可以設置為"exvim"或者"ctags",稍后我們在講'ctags'的情況,這里我們設置為'exvim' 

"lang_type"這里就填 語言類型(也就是上面表中的 language type) ,如果這里填寫的不是上面表中存在的語言類別。那它就會在表中新建一項

"file_type_list"就填我們要添加的文件類型,如果文件類型已經存在了,這個函數將跳過這個選項。

比如,我們要給JavaScript語言添加一個as的文件類型,就可以這樣:

call exUtility#AddLangMap ( 'exvim', 'javascript', ['as'] )

你也可以用這個函數來重新這個文件類型的映射,它將用新的文件類型覆蓋已經存在的映射項目:

function exUtility#ResetLangMaplangmap_typelang_typefile_type_list )

2、 添加ctags的語言映射

Ctags也有它自己的語言映射表,如下:

Language Type

File Type

asm

asm, ASM, s, S, A51

asp

asp, asa

awk

awk, gawk, mawk

basic

bas, bi, bb, pb

beta

bet

c

c

cpp

c++, cc, cp, cpp, cxx, h, h++, hh, hp, hpp, hxx

c#

cs

cobol

cbl, cob, CBL, COB

eiffel

e

erlang

erl, ERL, hrl, HRL

fortran

fo, ft, f7, f9, f95

html

htm, html

java

java

javascript

js

lisp

cl, clisp, el, l, lisp, lsp, ml

lua

lua

make

mak, mk, Makefile, makefile

pascal

p, pas

perl

pl, pm, plx, perl

php

php, php3, phtml

python

py, pyx, pxd, scons

rexx

cmd, rexx, rx

ruby

rb, ruby

scheme

SCM, SM, sch, scheme, scm, sm

sh

sh, SH, bsh, bash, ksh, zsh

slang

sl

sml

sml, sig

sql

sql

tcl

tcl, tk, wish, itcl

vera

vr, vri, vrh

verilog

v

vim

vim

yacc

y

如果我們要添加新的語言映射,方法跟添加exVIM語言映射一樣。只是第一個參數填寫:’ ctags’

3、 cscope支持新的文件類型

Cscope本來是用來分析C程序的,有時人們用他來分析C++或者匯編程序。要想讓cscopeexVim中支持新添加的語言。你只需要在g:ex_cscope_langs中添加新的語言類型就可以了。默認情況下,g:ex_cscope_langs的內容是:

let g:ex_cscope_langs = ['c', 'cpp''shader''asm' ] 

四、 更多的配置信息

現在只通過wiki學到了這些,如果有新學到的知識,我再補充。

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美乱人伦中文字幕在线| 久久久久**毛片大全| 国产精品久久久久久影视| 欧美精品在线一区二区| 麻豆久久婷婷| 欧美国产专区| 欧美日韩一区二区高清| 欧美日韩亚洲在线| 国产欧美在线看| 黄色国产精品一区二区三区| 亚洲高清不卡在线观看| 久久精品国产99国产精品| 亚洲国产高清在线| 欧美精品一区视频| 老司机精品福利视频| 久久综合狠狠综合久久综合88 | 国产欧美日韩精品丝袜高跟鞋| 国产精品性做久久久久久| 激情成人在线视频| 亚洲精品视频在线播放| 亚洲欧美日韩网| 乱人伦精品视频在线观看| 亚洲高清久久网| 亚洲特色特黄| 模特精品裸拍一区| 国产精品久久国产三级国电话系列 | 欧美人体xx| 国产欧美va欧美va香蕉在| 亚洲香蕉伊综合在人在线视看| 欧美在线在线| 亚洲精品影视| 久久久精品999| 国产精品激情电影| 亚洲黄色毛片| 久久一区国产| 亚洲一区国产精品| 欧美极品在线视频| 在线观看视频欧美| 欧美在线你懂的| 久久综合久久综合这里只有精品| 亚洲欧美成人网| 一区二区三区四区五区精品| 久久精品动漫| 日韩视频中文| 欧美国产日本韩| 136国产福利精品导航网址应用 | 久久国产免费看| 亚洲午夜精品福利| 欧美精品成人| 亚洲精品视频免费在线观看| 蜜桃av一区二区三区| 欧美影院精品一区| 国产精品丝袜xxxxxxx| 在线视频你懂得一区| 亚洲第一精品夜夜躁人人躁| 久久久久久久久久久久久久一区| 国产日韩在线视频| 欧美在线日韩| 欧美一区二区日韩一区二区| 国产精品theporn88| 在线视频中文亚洲| 亚洲国产欧美日韩| 欧美成人福利视频| 国模私拍一区二区三区| 久久久久一区| 久久网站免费| 亚洲精品午夜| 99精品视频一区二区三区| 欧美日韩三级在线| 亚洲欧美精品在线观看| 亚洲综合精品四区| 国产麻豆精品视频| 久久大逼视频| 久久久久久电影| 亚洲欧洲一区二区三区在线观看| 欧美激情一区二区三级高清视频 | 欧美中文在线观看| 久久电影一区| 亚洲福利视频一区二区| 欧美激情欧美激情在线五月| 欧美高清一区| 午夜伦欧美伦电影理论片| 国产精品嫩草久久久久| 亚洲一区二区三区视频播放| 9久草视频在线视频精品| 欧美婷婷久久| 久久精品女人天堂| 麻豆国产精品777777在线| 一本不卡影院| 午夜日韩激情| 亚洲韩国一区二区三区| 一区二区久久久久久| 国内成人自拍视频| 亚洲人成网在线播放| 国产日产精品一区二区三区四区的观看方式 | 亚洲电影免费观看高清完整版| 亚洲电影免费观看高清完整版| 欧美性猛交xxxx免费看久久久| 久久久久久久一区二区| 欧美成人精品激情在线观看| 性欧美18~19sex高清播放| 欧美一区二区三区在线视频| 日韩网站在线看片你懂的| 欧美一区二区三区视频在线| 亚洲毛片av在线| 欧美中文字幕| 亚洲一区二区精品在线| 久久精品亚洲精品| 亚洲字幕一区二区| 欧美a级在线| 久久亚洲精品欧美| 国产精品美女久久久免费 | 一区二区三区视频观看| 亚洲欧美欧美一区二区三区| 亚洲国产精品一区二区尤物区 | 久久精品国产77777蜜臀| 欧美国产日韩a欧美在线观看| 久久aⅴ乱码一区二区三区| 欧美日韩伊人| 欧美激情久久久| 在线观看欧美黄色| 亚洲综合导航| 校园激情久久| 国产精品久久波多野结衣| 亚洲精品一区在线| 亚洲人精品午夜在线观看| 久久av一区二区三区| 欧美在线观看一区二区| 欧美日韩亚洲一区二区三区四区| 亚洲国产另类精品专区| 在线观看一区二区视频| 久久久久久久久伊人| 久久精品99| 国产亚洲精品一区二区| 亚洲欧美日韩成人| 亚洲欧美国产va在线影院| 欧美三级视频| 夜夜狂射影院欧美极品| 日韩视频不卡中文| 夜夜狂射影院欧美极品| 久久网站热最新地址| 老司机午夜精品| 亚洲高清一区二| 噜噜噜噜噜久久久久久91| 欧美18av| 一本久道久久久| 欧美午夜视频网站| 9久re热视频在线精品| 亚洲无限av看| 国产精品一二三视频| 午夜精品久久久久久久白皮肤| 久久精品麻豆| 亚洲国产清纯| 欧美日韩亚洲一区| 亚洲午夜日本在线观看| 欧美一区二区视频免费观看| 国产欧美精品va在线观看| 欧美在线黄色| 欧美高清在线一区二区| 亚洲免费观看| 国产精品你懂得| 久久久久久网址| 亚洲精品一区中文| 新67194成人永久网站| 国产一区视频在线看| 免费黄网站欧美| 亚洲一区在线直播| 免费91麻豆精品国产自产在线观看| 亚洲黄色毛片| 国产精品一二三视频| 蜜臀av国产精品久久久久| 亚洲网站视频福利| 蜜臀av一级做a爰片久久| 亚洲视频一区| 狠狠久久综合婷婷不卡| 欧美日韩三区四区| 久久er99精品| 一本色道久久加勒比精品| 久久久久久**毛片大全| 99精品欧美一区二区三区 | 久久精品久久99精品久久| 亚洲韩国一区二区三区| 翔田千里一区二区| 亚洲伦理在线| 国产在线观看精品一区二区三区| 欧美成人免费播放| 午夜精品久久久久影视| 亚洲精品在线二区| 久久久亚洲高清| 亚洲综合国产精品| 亚洲精品美女久久7777777| 国产女优一区| 欧美偷拍另类| 欧美jizz19hd性欧美| 亚洲欧美国产精品va在线观看 | 欧美成人精品一区二区| 性刺激综合网| 一区二区三区导航| 亚洲激情在线观看| 免费亚洲电影在线观看|