mirror of
https://github.com/neovim/neovim.git
synced 2026-01-02 17:36:56 +10:00
This reverts commits:
- 6b652a785033fd4164e049492a7327c1ed7c3e5f
- 2f689d5abde0ccddca9e20d8c93a0299bd054e32
- a025a46d4169587145fb54f04af349cd05cb6122
Several email addresses that are known to be valid caused bounces
due to an issue with my email setup. The previous commits incorrectly
marked these addresses as invalid. So revert the whole thing again.
62d8f3dab5
N/A patch:
vim-patch:2f689d5: runtime: mark more invalid email addresses
Co-authored-by: Christian Brabandt <cb@256bit.org>
70 lines
1.6 KiB
VimL
70 lines
1.6 KiB
VimL
" PostScript indent file
|
|
" Language: PostScript
|
|
" Maintainer: Mike Williams <mrw@eandem.co.uk>
|
|
" Last Change: 2022 Apr 06
|
|
|
|
" Only load this indent file when no other was loaded.
|
|
if exists("b:did_indent")
|
|
finish
|
|
endif
|
|
let b:did_indent = 1
|
|
|
|
setlocal indentexpr=PostscrIndentGet(v:lnum)
|
|
setlocal indentkeys+=0],0=>>,0=%%,0=end,0=restore,0=grestore indentkeys-=:,0#,e
|
|
|
|
let b:undo_indent = "setl inde< indk<"
|
|
|
|
" Catch multiple instantiations
|
|
if exists("*PostscrIndentGet")
|
|
finish
|
|
endif
|
|
|
|
function! PostscrIndentGet(lnum)
|
|
" Find a non-empty non-comment line above the current line.
|
|
" Note: ignores DSC comments as well!
|
|
let lnum = a:lnum - 1
|
|
while lnum != 0
|
|
let lnum = prevnonblank(lnum)
|
|
if getline(lnum) !~ '^\s*%.*$'
|
|
break
|
|
endif
|
|
let lnum = lnum - 1
|
|
endwhile
|
|
|
|
" Hit the start of the file, use user indent.
|
|
if lnum == 0
|
|
return -1
|
|
endif
|
|
|
|
" Start with the indent of the previous line
|
|
let ind = indent(lnum)
|
|
let pline = getline(lnum)
|
|
|
|
" Indent for dicts, arrays, and saves with possible trailing comment
|
|
if pline =~ '\(begin\|<<\|g\=save\|{\|[\)\s*\(%.*\)\=$'
|
|
let ind = ind + shiftwidth()
|
|
endif
|
|
|
|
" Remove indent for popped dicts, and restores.
|
|
if pline =~ '\(end\|g\=restore\)\s*$'
|
|
let ind = ind - shiftwidth()
|
|
|
|
" Else handle immediate dedents of dicts, restores, and arrays.
|
|
elseif getline(a:lnum) =~ '\(end\|>>\|g\=restore\|}\|]\)'
|
|
let ind = ind - shiftwidth()
|
|
|
|
" Else handle DSC comments - always start of line.
|
|
elseif getline(a:lnum) =~ '^\s*%%'
|
|
let ind = 0
|
|
endif
|
|
|
|
" For now catch excessive left indents if they occur.
|
|
if ind < 0
|
|
let ind = -1
|
|
endif
|
|
|
|
return ind
|
|
endfunction
|
|
|
|
" vim:sw=2
|