.config/nvim/after/syntax/perl/custom.vim

changeset 1029
9265f8508e4c
new file mode 100644
--- /dev/null
+++ b/.config/nvim/after/syntax/perl/custom.vim
@@ -0,0 +1,29 @@
+" this keeps indents from jumping more than one level
+let b:indent_use_syntax = 0
+
+syn sync minlines=1500
+
+" Weird behavior in sql heredocs
+syn clear sqlFold
+
+" fix highlight-all-pragma for vN.NN
+syn match perlStatementInclude   "\<\%(use\|no\)\s\+v\(\d\|.\)\+"
+
+" Add match for =method and =func from Pod::Weaver
+syn match podCommand "^=method" contained nextgroup=podCmdText contains=@NoSpell
+syn match podCommand "^=func" contained nextgroup=podCmdText contains=@NoSpell
+
+" Add matches for contrib/function-parameters.vim, but don't apply to fat-arrow cases
+syn match perlFunction +\<method\>\(\_s*=>\)\@!\_s*+ nextgroup=perlSubName
+syn match perlFunction +\<fun\>\(\_s*=>\)\@!\_s*+ nextgroup=perlSubName
+
+" Tweak some colors, making POD stand out less
+hi! def link perlPOD      Comment
+hi! def link podOrdinary  Comment
+hi! def link podCommand   SpecialComment
+hi! def link podCmdText   Question
+hi! def link podFormat    StorageClass
+
+syntax region perlHereDocSQL matchgroup=perlStringStartEnd start=+<<\~\s*'\z(\%(END_\)\=SQL\)'+ end='^\s*\z1$' contains=@SQL
+syntax region perlHereDocSQL matchgroup=perlStringStartEnd start='<<\~\s*"\z(\%(END_\)\=SQL\)"' end='^\s*\z1$' contains=@perlInterpDQ,@SQL
+syntax region perlHereDocSQL matchgroup=perlStringStartEnd start='<<\~\s*\z(\%(END_\)\=SQL\)'   end='^\s*\z1$' contains=@perlInterpDQ,@SQL

mercurial