Updated runtime files and translations.
diff --git a/runtime/syntax/pod.vim b/runtime/syntax/pod.vim
index 041c7c4..c28ccd7 100644
--- a/runtime/syntax/pod.vim
+++ b/runtime/syntax/pod.vim
@@ -1,9 +1,10 @@
" Vim syntax file
-" Language: Perl POD format
-" Maintainer: Andy Lester <andy@petdance.com>
-" Previously: Scott Bigham <dsb@killerbunnies.org>
-" URL: http://github.com/petdance/vim-perl
-" Last Change: 2009-08-14
+" Language: Perl POD format
+" Maintainer: vim-perl <vim-perl@googlegroups.com>
+" Previously: Scott Bigham <dsb@killerbunnies.org>
+" Homepage: http://github.com/vim-perl/vim-perl
+" Bugs/requests: http://github.com/vim-perl/vim-perl/issues
+" Last Change: 2013 May 30
" To add embedded POD documentation highlighting to your syntax file, add
" the commands:
@@ -26,7 +27,11 @@
finish
endif
+let s:cpo_save = &cpo
+set cpo&vim
+
" POD commands
+syn match podCommand "^=encoding" nextgroup=podCmdText contains=@NoSpell
syn match podCommand "^=head[1234]" nextgroup=podCmdText contains=@NoSpell
syn match podCommand "^=item" nextgroup=podCmdText contains=@NoSpell
syn match podCommand "^=over" nextgroup=podOverIndent skipwhite contains=@NoSpell
@@ -85,6 +90,100 @@
delcommand HiLink
endif
+if exists("perl_pod_spellcheck_headings")
+ " Spell-check headings
+ syn clear podCmdText
+ syn match podCmdText ".*$" contained contains=podFormat
+endif
+
+if exists("perl_pod_formatting")
+ " By default, escapes like C<> are not checked for spelling. Remove B<>
+ " and I<> from the list of escapes.
+ syn clear podFormat
+ syn region podFormat start="[CLF]<[^<]"me=e-1 end=">" oneline contains=podFormat,@NoSpell
+ syn region podFormat start="[CLF]<<\s" end="\s>>" oneline contains=podFormat,@NoSpell
+
+ " Don't spell-check inside E<>, but ensure that the E< itself isn't
+ " marked as a spelling mistake.
+ syn match podFormat "E<\(\d\+\|\I\i*\)>" contains=podEscape,podEscape2,@NoSpell
+
+ " Z<> is a mock formatting code. Ensure Z<> on its own isn't marked as a
+ " spelling mistake.
+ syn match podFormat "Z<>" contains=podEscape,podEscape2,@NoSpell
+
+ " These are required so that whatever is *within* B<...>, I<...>, etc. is
+ " spell-checked, but not the B, I, ... itself.
+ syn match podBoldOpen "B<" contains=@NoSpell
+ syn match podItalicOpen "I<" contains=@NoSpell
+ syn match podNoSpaceOpen "S<" contains=@NoSpell
+ syn match podIndexOpen "X<" contains=@NoSpell
+
+ " Same as above but for the << >> syntax.
+ syn match podBoldAlternativeDelimOpen "B<< " contains=@NoSpell
+ syn match podItalicAlternativeDelimOpen "I<< " contains=@NoSpell
+ syn match podNoSpaceAlternativeDelimOpen "S<< " contains=@NoSpell
+ syn match podIndexAlternativeDelimOpen "X<< " contains=@NoSpell
+
+ " Add support for spell checking text inside B<>, I<>, S<> and X<>.
+ syn region podBold start="B<[^<]"me=e end=">" oneline contains=podBoldItalic,podBoldOpen
+ syn region podBoldAlternativeDelim start="B<<\s" end="\s>>" oneline contains=podBoldAlternativeDelimOpen
+
+ syn region podItalic start="I<[^<]"me=e end=">" oneline contains=podItalicBold,podItalicOpen
+ syn region podItalicAlternativeDelim start="I<<\s" end="\s>>" oneline contains=podItalicAlternativeDelimOpen
+
+ " Nested bold/italic and vice-versa
+ syn region podBoldItalic contained start="I<[^<]"me=e end=">" oneline
+ syn region podItalicBold contained start="B<[^<]"me=e end=">" oneline
+
+ syn region podNoSpace start="S<[^<]"ms=s-2 end=">"me=e oneline contains=podNoSpaceOpen
+ syn region podNoSpaceAlternativeDelim start="S<<\s"ms=s-2 end="\s>>"me=e oneline contains=podNoSpaceAlternativeDelimOpen
+
+ syn region podIndex start="X<[^<]"ms=s-2 end=">"me=e oneline contains=podIndexOpen
+ syn region podIndexAlternativeDelim start="X<<\s"ms=s-2 end="\s>>"me=e oneline contains=podIndexAlternativeDelimOpen
+
+ " Restore this (otherwise B<> is shown as bold inside verbatim)
+ syn match podVerbatimLine "^\s.*$" contains=@NoSpell
+
+ " Ensure formatted text can be displayed in headings and items
+ syn clear podCmdText
+
+ if exists("perl_pod_spellcheck_headings")
+ syn match podCmdText ".*$" contained contains=podFormat,podBold,
+ \podBoldAlternativeDelim,podItalic,podItalicAlternativeDelim,
+ \podBoldOpen,podItalicOpen,podBoldAlternativeDelimOpen,
+ \podItalicAlternativeDelimOpen,podNoSpaceOpen
+ else
+ syn match podCmdText ".*$" contained contains=podFormat,podBold,
+ \podBoldAlternativeDelim,podItalic,podItalicAlternativeDelim,
+ \@NoSpell
+ endif
+
+ " Specify how to display these
+ hi def podBold term=bold cterm=bold gui=bold
+
+ hi link podBoldAlternativeDelim podBold
+ hi link podBoldAlternativeDelimOpen podBold
+ hi link podBoldOpen podBold
+
+ hi link podNoSpace Identifier
+ hi link podNoSpaceAlternativeDelim Identifier
+
+ hi link podIndex Identifier
+ hi link podIndexAlternativeDelim Identifier
+
+ hi def podItalic term=italic cterm=italic gui=italic
+
+ hi link podItalicAlternativeDelim podItalic
+ hi link podItalicAlternativeDelimOpen podItalic
+ hi link podItalicOpen podItalic
+
+ hi def podBoldItalic term=italic,bold cterm=italic,bold gui=italic,bold
+ hi def podItalicBold term=italic,bold cterm=italic,bold gui=italic,bold
+endif
+
let b:current_syntax = "pod"
+let &cpo = s:cpo_save
+unlet s:cpo_save
+
" vim: ts=8