1
0
mirror of https://github.com/SpaceVim/SpaceVim.git synced 2025-02-03 00:40:05 +08:00
SpaceVim/bundle/splitjoin.vim/autoload/sj/argparser/clojure.vim
2024-06-27 18:10:36 +08:00

28 lines
659 B
VimL

function! sj#argparser#clojure#Construct(start_index, end_index, line)
let parser = sj#argparser#common#Construct(a:start_index, a:end_index, a:line)
call extend(parser, {
\ 'Process': function('sj#argparser#clojure#Process'),
\ })
return parser
endfunction
function! sj#argparser#clojure#Process() dict
while !self.Finished()
if self.body[0] =~ '\s'
call self.PushArg()
call self.Next()
continue
elseif self.body[0] =~ '["{\[(|]'
call self.JumpPair('"{[(|', '"}])|')
endif
call self.PushChar()
endwhile
if len(sj#Trim(self.current_arg)) > 0
call self.PushArg()
endif
endfunction