__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
" Vim indent file
" Language: Zimbu
" Maintainer: The Vim Project <https://github.com/vim/vim>
" Last Change: 2023 Aug 10
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
" Only load this indent file when no other was loaded.
if exists("b:did_indent")
finish
endif
let b:did_indent = 1
setlocal ai nolisp nocin
setlocal indentexpr=GetZimbuIndent(v:lnum)
setlocal indentkeys=0{,0},!^F,o,O,0=ELSE,0=ELSEIF,0=CASE,0=DEFAULT,0=FINALLY
" We impose recommended defaults: no Tabs, 'shiftwidth' = 2
setlocal sw=2 et
let b:undo_indent = "setl ai< cin< et< indentkeys< indentexpr< lisp< sw<"
" Only define the function once.
if exists("*GetZimbuIndent")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
" Come here when loading the script the first time.
let s:maxoff = 50 " maximum number of lines to look backwards for ()
func GetZimbuIndent(lnum)
let prevLnum = prevnonblank(a:lnum - 1)
if prevLnum == 0
" This is the first non-empty line, use zero indent.
return 0
endif
" Taken from Python indenting:
" If the previous line is inside parenthesis, use the indent of the starting
" line.
" Trick: use the non-existing "dummy" variable to break out of the loop when
" going too far back.
call cursor(prevLnum, 1)
let parlnum = searchpair('(\|{\|\[', '', ')\|}\|\]', 'nbW',
\ "line('.') < " . (prevLnum - s:maxoff) . " ? dummy :"
\ . " synIDattr(synID(line('.'), col('.'), 1), 'name')"
\ . " =~ '\\(Comment\\|String\\|Char\\)$'")
if parlnum > 0
let plindent = indent(parlnum)
let plnumstart = parlnum
else
let plindent = indent(prevLnum)
let plnumstart = prevLnum
endif
" When inside parenthesis: If at the first line below the parenthesis add
" two 'shiftwidth', otherwise same as previous line.
" i = (a
" + b
" + c)
call cursor(a:lnum, 1)
let p = searchpair('(\|{\|\[', '', ')\|}\|\]', 'bW',
\ "line('.') < " . (a:lnum - s:maxoff) . " ? dummy :"
\ . " synIDattr(synID(line('.'), col('.'), 1), 'name')"
\ . " =~ '\\(Comment\\|String\\|Char\\)$'")
if p > 0
if p == prevLnum
" When the start is inside parenthesis, only indent one 'shiftwidth'.
let pp = searchpair('(\|{\|\[', '', ')\|}\|\]', 'bW',
\ "line('.') < " . (a:lnum - s:maxoff) . " ? dummy :"
\ . " synIDattr(synID(line('.'), col('.'), 1), 'name')"
\ . " =~ '\\(Comment\\|String\\|Char\\)$'")
if pp > 0
return indent(prevLnum) + shiftwidth()
endif
return indent(prevLnum) + shiftwidth() * 2
endif
if plnumstart == p
return indent(prevLnum)
endif
return plindent
endif
let prevline = getline(prevLnum)
let thisline = getline(a:lnum)
" If this line is not a comment and the previous one is then move the
" previous line further back.
if thisline !~ '^\s*#'
while prevline =~ '^\s*#'
let prevLnum = prevnonblank(prevLnum - 1)
if prevLnum == 0
" Only comment lines before this, no indent
return 0
endif
let prevline = getline(prevLnum)
let plindent = indent(prevLnum)
endwhile
endif
if prevline =~ '^\s*\(IF\|\|ELSEIF\|ELSE\|GENERATE_IF\|\|GENERATE_ELSEIF\|GENERATE_ELSE\|WHILE\|REPEAT\|TRY\|CATCH\|FINALLY\|FOR\|DO\|SWITCH\|CASE\|DEFAULT\|FUNC\|VIRTUAL\|ABSTRACT\|DEFINE\|REPLACE\|FINAL\|PROC\|MAIN\|NEW\|ENUM\|CLASS\|INTERFACE\|BITS\|MODULE\|SHARED\)\>'
let plindent += shiftwidth()
endif
if thisline =~ '^\s*\(}\|ELSEIF\>\|ELSE\>\|CATCH\|FINALLY\|GENERATE_ELSEIF\>\|GENERATE_ELSE\>\|UNTIL\>\)'
let plindent -= shiftwidth()
endif
if thisline =~ '^\s*\(CASE\>\|DEFAULT\>\)' && prevline !~ '^\s*SWITCH\>'
let plindent -= shiftwidth()
endif
" line up continued comment that started after some code
" String something # comment comment
" # comment
if a:lnum == prevLnum + 1 && thisline =~ '^\s*#' && prevline !~ '^\s*#'
let n = match(prevline, '#')
if n > 1
let plindent = n
endif
endif
return plindent
endfunc
let &cpo = s:cpo_save
unlet s:cpo_save
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| aap.vim | File | 331 B | 0644 |
|
| ada.vim | File | 11.06 KB | 0644 |
|
| ant.vim | File | 290 B | 0644 |
|
| automake.vim | File | 243 B | 0644 |
|
| awk.vim | File | 7.68 KB | 0644 |
|
| bash.vim | File | 390 B | 0644 |
|
| basic.vim | File | 250 B | 0644 |
|
| bib.vim | File | 346 B | 0644 |
|
| bitbake.vim | File | 583 B | 0644 |
|
| bst.vim | File | 1.86 KB | 0644 |
|
| bzl.vim | File | 2.86 KB | 0644 |
|
| c.vim | File | 391 B | 0644 |
|
| cdl.vim | File | 4.26 KB | 0644 |
|
| ch.vim | File | 556 B | 0644 |
|
| chaiscript.vim | File | 1.18 KB | 0644 |
|
| changelog.vim | File | 264 B | 0644 |
|
| chatito.vim | File | 731 B | 0644 |
|
| clojure.vim | File | 11.29 KB | 0644 |
|
| cmake.vim | File | 2.98 KB | 0644 |
|
| cobol.vim | File | 8.63 KB | 0644 |
|
| config.vim | File | 2.17 KB | 0644 |
|
| context.vim | File | 1.67 KB | 0644 |
|
| cpp.vim | File | 395 B | 0644 |
|
| cs.vim | File | 1.88 KB | 0644 |
|
| css.vim | File | 1.77 KB | 0644 |
|
| cucumber.vim | File | 2.74 KB | 0644 |
|
| cuda.vim | File | 371 B | 0644 |
|
| d.vim | File | 605 B | 0644 |
|
| dictconf.vim | File | 411 B | 0644 |
|
| dictdconf.vim | File | 414 B | 0644 |
|
| docbk.vim | File | 336 B | 0644 |
|
| dosbatch.vim | File | 1.35 KB | 0644 |
|
| dtd.vim | File | 11.79 KB | 0644 |
|
| dtrace.vim | File | 451 B | 0644 |
|
| dts.vim | File | 1.69 KB | 0644 |
|
| dune.vim | File | 430 B | 0644 |
|
| dylan.vim | File | 2.75 KB | 0644 |
|
| eiffel.vim | File | 3.24 KB | 0644 |
|
| elm.vim | File | 3.2 KB | 0644 |
|
| erlang.vim | File | 50.74 KB | 0644 |
|
| eruby.vim | File | 2.95 KB | 0644 |
|
| eterm.vim | File | 743 B | 0644 |
|
| expect.vim | File | 207 B | 0644 |
|
| falcon.vim | File | 13.84 KB | 0644 |
|
| fennel.vim | File | 273 B | 0644 |
|
| fish.vim | File | 2.66 KB | 0644 |
|
| fortran.vim | File | 7.72 KB | 0644 |
|
| framescript.vim | File | 891 B | 0644 |
|
| freebasic.vim | File | 237 B | 0644 |
|
| gdscript.vim | File | 4.26 KB | 0644 |
|
| gitconfig.vim | File | 841 B | 0644 |
|
| gitolite.vim | File | 1.29 KB | 0644 |
|
| go.vim | File | 1.73 KB | 0644 |
|
| gyp.vim | File | 169 B | 0644 |
|
| haml.vim | File | 2.19 KB | 0644 |
|
| hamster.vim | File | 1.65 KB | 0644 |
|
| hare.vim | File | 4.38 KB | 0644 |
|
| hog.vim | File | 1.85 KB | 0644 |
|
| html.vim | File | 33.12 KB | 0644 |
|
| htmldjango.vim | File | 273 B | 0644 |
|
| idlang.vim | File | 1.68 KB | 0644 |
|
| ishd.vim | File | 1.83 KB | 0644 |
|
| j.vim | File | 1.77 KB | 0644 |
|
| java.vim | File | 4.19 KB | 0644 |
|
| javascript.vim | File | 15.13 KB | 0644 |
|
| javascriptreact.vim | File | 109 B | 0644 |
|
| json.vim | File | 4.54 KB | 0644 |
|
| jsonc.vim | File | 4.74 KB | 0644 |
|
| jsp.vim | File | 462 B | 0644 |
|
| julia.vim | File | 15.29 KB | 0644 |
|
| kotlin.vim | File | 1.53 KB | 0644 |
|
| krl.vim | File | 4.25 KB | 0644 |
|
| ld.vim | File | 1.82 KB | 0644 |
|
| less.vim | File | 243 B | 0644 |
|
| lifelines.vim | File | 638 B | 0644 |
|
| liquid.vim | File | 2.03 KB | 0644 |
|
| lisp.vim | File | 349 B | 0644 |
|
| livebook.vim | File | 206 B | 0644 |
|
| logtalk.vim | File | 1.91 KB | 0644 |
|
| lua.vim | File | 2.22 KB | 0644 |
|
| luau.vim | File | 252 B | 0644 |
|
| mail.vim | File | 385 B | 0644 |
|
| make.vim | File | 3.48 KB | 0644 |
|
| matlab.vim | File | 4.81 KB | 0644 |
|
| meson.vim | File | 5.19 KB | 0644 |
|
| mf.vim | File | 164 B | 0644 |
|
| mma.vim | File | 2.31 KB | 0644 |
|
| mp.vim | File | 9.72 KB | 0644 |
|
| nginx.vim | File | 1.7 KB | 0644 |
|
| nsis.vim | File | 3.23 KB | 0644 |
|
| objc.vim | File | 1.65 KB | 0644 |
|
| obse.vim | File | 1.4 KB | 0644 |
|
| ocaml.vim | File | 9.09 KB | 0644 |
|
| occam.vim | File | 4.63 KB | 0644 |
|
| pascal.vim | File | 5.66 KB | 0644 |
|
| perl.vim | File | 5.91 KB | 0644 |
|
| php.vim | File | 25.76 KB | 0644 |
|
| postscr.vim | File | 1.64 KB | 0644 |
|
| pov.vim | File | 2.71 KB | 0644 |
|
| prolog.vim | File | 1.91 KB | 0644 |
|
| ps1.vim | File | 410 B | 0644 |
|
| pyrex.vim | File | 326 B | 0644 |
|
| python.vim | File | 886 B | 0644 |
|
| qb64.vim | File | 232 B | 0644 |
|
| qml.vim | File | 1.27 KB | 0644 |
|
| quarto.vim | File | 23 B | 0644 |
|
| r.vim | File | 13.96 KB | 0644 |
|
| racket.vim | File | 2.87 KB | 0644 |
|
| raku.vim | File | 3.45 KB | 0644 |
|
| raml.vim | File | 285 B | 0644 |
|
| rapid.vim | File | 7.97 KB | 0644 |
|
| readline.vim | File | 786 B | 0644 |
|
| rhelp.vim | File | 2.83 KB | 0644 |
|
| rmd.vim | File | 2.25 KB | 0644 |
|
| rnoweb.vim | File | 1.1 KB | 0644 |
|
| rpl.vim | File | 1.82 KB | 0644 |
|
| rrst.vim | File | 1.19 KB | 0644 |
|
| rst.vim | File | 1.9 KB | 0644 |
|
| ruby.vim | File | 30.33 KB | 0644 |
|
| rust.vim | File | 10.26 KB | 0644 |
|
| sas.vim | File | 5.18 KB | 0644 |
|
| sass.vim | File | 926 B | 0644 |
|
| scala.vim | File | 19.3 KB | 0644 |
|
| scheme.vim | File | 372 B | 0644 |
|
| scss.vim | File | 191 B | 0644 |
|
| sdl.vim | File | 2.76 KB | 0644 |
|
| sh.vim | File | 9.04 KB | 0644 |
|
| sml.vim | File | 6.42 KB | 0644 |
|
| solidity.vim | File | 12.61 KB | 0644 |
|
| sql.vim | File | 1.18 KB | 0644 |
|
| sqlanywhere.vim | File | 12.96 KB | 0644 |
|
| sshconfig.vim | File | 796 B | 0644 |
|
| systemverilog.vim | File | 10.55 KB | 0644 |
|
| tcl.vim | File | 2.48 KB | 0644 |
|
| tcsh.vim | File | 1.35 KB | 0644 |
|
| teraterm.vim | File | 1.38 KB | 0644 |
|
| tex.vim | File | 13.52 KB | 0644 |
|
| tf.vim | File | 1.57 KB | 0644 |
|
| tilde.vim | File | 1.11 KB | 0644 |
|
| treetop.vim | File | 785 B | 0644 |
|
| typescript.vim | File | 14.28 KB | 0644 |
|
| typescriptreact.vim | File | 109 B | 0644 |
|
| vb.vim | File | 4.69 KB | 0644 |
|
| verilog.vim | File | 8.08 KB | 0644 |
|
| vhdl.vim | File | 14.43 KB | 0644 |
|
| vim.vim | File | 675 B | 0644 |
|
| vroom.vim | File | 379 B | 0644 |
|
| vue.vim | File | 385 B | 0644 |
|
| wat.vim | File | 458 B | 0644 |
|
| xf86conf.vim | File | 786 B | 0644 |
|
| xhtml.vim | File | 325 B | 0644 |
|
| xinetd.vim | File | 1.28 KB | 0644 |
|
| xml.vim | File | 7.6 KB | 0644 |
|
| xsd.vim | File | 253 B | 0644 |
|
| xslt.vim | File | 297 B | 0644 |
|
| yacc.vim | File | 858 B | 0644 |
|
| yaml.vim | File | 5.45 KB | 0644 |
|
| zig.vim | File | 2.09 KB | 0644 |
|
| zimbu.vim | File | 3.92 KB | 0644 |
|
| zsh.vim | File | 411 B | 0644 |
|