Add ctags and Tagbar configuration

Closes #74
This commit is contained in:
Kyle Fuller
2016-06-02 14:43:32 -07:00
parent 59282ab334
commit 5d5f81483d
2 changed files with 23 additions and 0 deletions

9
ctags/swift.cnf Normal file
View File

@@ -0,0 +1,9 @@
--langdef=swift
--langmap=swift:.swift
--regex-swift=/[[:<:]]class[[:>:]][[:space:]]+([[:alnum:]_]+)/\1/c,class/
--regex-swift=/[[:<:]]enum[[:>:]][[:space:]]+([[:alnum:]_]+)/\1/e,enum/
--regex-swift=/[[:<:]]func[[:>:]][[:space:]]+([[:alnum:]_]+)/\1/f,function/
--regex-swift=/[[:<:]]protocol[[:>:]][[:space:]]+([[:alnum:]_]+)/\1/P,protocol/
--regex-swift=/[[:<:]]struct[[:>:]][[:space:]]+([[:alnum:]_]+)/\1/s,struct/
--regex-swift=/[[:<:]]extension[[:>:]][[:space:]]+([[:alnum:]_]+)/\1/E,extension/
--regex-swift=/[[:<:]]typealias[[:>:]][[:space:]]+([[:alnum:]_]+)/\1/t,typealias/

14
plugin/swift.vim Normal file
View File

@@ -0,0 +1,14 @@
let g:tagbar_type_swift = {
\ 'ctagstype': 'swift',
\ 'kinds': [
\ 'P:protocol',
\ 'c:class',
\ 's:struct',
\ 'e:enum',
\ 'E:extension',
\ 'f:function',
\ 't:typealias'
\ ],
\ 'sort': 0,
\ 'deffile': expand('<sfile>:p:h:h') . '/ctags/swift.cnf'
\ }