Skip to content

Commit f538e5b

Browse files
committed
Refactoring
1 parent 060a573 commit f538e5b

2 files changed

Lines changed: 22 additions & 39 deletions

File tree

after/ftplugin/javascript.vim

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"
44
" Language: javascript.jsx
55
" Maintainer: MaxMEllon <[email protected]>
6-
" Depends: othree/yajs.vim
6+
" Depends: pangloss/vim-javascript
77
"
88
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
99

after/indent/javascript.vim

Lines changed: 21 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,11 @@ let s:has_vim_javascript = exists('*GetJavascriptIndent')
4242
let s:true = !0
4343
let s:false = 0
4444

45-
function! SynSOL(lnum)
45+
function! s:syn_sol(lnum)
4646
return map(synstack(a:lnum, 1), 'synIDattr(v:val, "name")')
4747
endfunction
4848

49-
function! SynEOL(lnum)
49+
function! s:syn_eol(lnum)
5050
let lnum = prevnonblank(a:lnum)
5151
let col = strlen(getline(lnum))
5252
return map(synstack(lnum, col), 'synIDattr(v:val, "name")')
@@ -56,66 +56,50 @@ function! SynAttrJSX(synattr)
5656
return a:synattr =~ "^jsx"
5757
endfunction
5858

59-
function! SynXMLish(syns)
59+
function! s:syn_xmlish(syns)
6060
return SynAttrJSX(get(a:syns, -1))
6161
endfunction
6262

63-
function! SynJSXBlockEnd(syns)
63+
function! s:syn_jsx_block_end(syns)
6464
return get(a:syns, -1) =~ '\%(js\|javascript\)Braces' ||
6565
\ SynAttrJSX(get(a:syns, -2))
6666
endfunction
6767

68-
function! SynJSXDepth(syns)
68+
function! s:syn_jsx_depth(syns)
6969
return len(filter(copy(a:syns), 'v:val ==# "jsxRegion"'))
7070
endfunction
7171

72-
function! SynJsFuncBraces(syns)
73-
return len(filter(copy(a:syns), 'v:val ==# "jsFuncBraces"'))
74-
endfunction
75-
76-
function! SynJsRepeatBraces(syns)
72+
function! s:syn_js_repeat_braces(syns)
7773
return len(filter(copy(a:syns), 'v:val ==# "jsRepeatBraces"'))
7874
endfunction
7975

80-
function! SynJsIfElseBlock(syns)
76+
function! s:syn_jsx_else_block(syns)
8177
return len(filter(copy(a:syns), 'v:val ==# "jsIfElseBlock"'))
8278
endfunction
8379

84-
function! SynJSXCloseTag(syns)
80+
function! s:syn_jsx_close_tag(syns)
8581
return len(filter(copy(a:syns), 'v:val ==# "jsxCloseTag"'))
8682
endfunction
8783

88-
function! SynJsReturn(syns)
89-
return len(filter(copy(a:syns), 'v:val ==# "jsReturn"'))
90-
endfunction
91-
92-
function! SynJsxAttrib(syns)
93-
return len(filter(copy(a:syns), 'v:val ==# "jsxAttrib"'))
94-
endfunction
95-
96-
function! SynJsxTag(syns)
97-
return len(filter(copy(a:syns), 'v:val ==# "jsxTag"'))
98-
endfunction
99-
100-
function! SynJsxEscapeJs(syns)
84+
function! s:syn_jsx_escapejs(syns)
10185
return len(filter(copy(a:syns), 'v:val ==# "jsxEscapeJs"'))
10286
endfunction
10387

104-
function! SynJSXContinues(cursyn, prevsyn)
105-
let curdepth = SynJSXDepth(a:cursyn)
106-
let prevdepth = SynJSXDepth(a:prevsyn)
88+
function! s:syn_jsx_continues(cursyn, prevsyn)
89+
let curdepth = s:syn_jsx_depth(a:cursyn)
90+
let prevdepth = s:syn_jsx_depth(a:prevsyn)
10791

10892
return prevdepth == curdepth ||
10993
\ (prevdepth == curdepth + 1 && get(a:cursyn, -1) ==# 'jsxRegion')
11094
endfunction
11195

11296
function! GetJsxIndent()
113-
let cursyn = SynSOL(v:lnum)
114-
let prevsyn = SynEOL(v:lnum - 1)
115-
let nextsyn = SynEOL(v:lnum + 1)
97+
let cursyn = s:syn_sol(v:lnum)
98+
let prevsyn = s:syn_eol(v:lnum - 1)
99+
let nextsyn = s:syn_eol(v:lnum + 1)
116100

117-
if (SynXMLish(prevsyn) || SynJSXBlockEnd(prevsyn)) &&
118-
\ SynJSXContinues(cursyn, prevsyn)
101+
if (s:syn_xmlish(prevsyn) || s:syn_jsx_block_end(prevsyn)) &&
102+
\ s:syn_jsx_continues(cursyn, prevsyn)
119103
let ind = XmlIndentGet(v:lnum, 0)
120104

121105
if getline(v:lnum) =~? s:endtag
@@ -126,31 +110,30 @@ function! GetJsxIndent()
126110
let ind = ind + s:sw()
127111
endif
128112

129-
130113
" <div | <div
131114
" hoge={ | hoge={
132115
" <div></div> | ##<div></div>
133-
if SynJsxEscapeJs(prevsyn) && !(getline(v:lnum - 1) =~? '}') && getline(v:lnum - 1) =~? '{'
116+
if s:syn_jsx_escapejs(prevsyn) && !(getline(v:lnum - 1) =~? '}') && getline(v:lnum - 1) =~? '{'
134117
let ind = ind + s:sw()
135118
endif
136119

137120
" <div | <div
138121
" hoge={ | hoge={
139122
" <div></div> | <div></div>
140123
" } | }##
141-
if SynJsxEscapeJs(cursyn) && getline(v:lnum) =~? '}' && !(getline(v:lnum) =~? '{')
124+
if s:syn_jsx_escapejs(cursyn) && getline(v:lnum) =~? '}' && !(getline(v:lnum) =~? '{')
142125
let ind = ind - s:sw()
143126
endif
144127

145128
" return ( | return (
146129
" <div> | <div>
147130
" </div> | </div>
148131
" ##); | ); <--
149-
if getline(v:lnum) =~? ');\?' && SynJSXCloseTag(prevsyn)
132+
if getline(v:lnum) =~? ');\?' && s:syn_jsx_close_tag(prevsyn)
150133
let ind = ind - s:sw()
151134
endif
152135

153-
if (SynJsIfElseBlock(cursyn) || SynJsRepeatBraces(cursyn)) && SynJSXCloseTag(prevsyn)
136+
if (s:syn_jsx_else_block(cursyn) || s:syn_js_repeat_braces(cursyn)) && s:syn_jsx_close_tag(prevsyn)
154137
let ind = ind - s:sw()
155138
endif
156139
else

0 commit comments

Comments
 (0)