Source

EricFromCanada.bitbucket.org / bbedit / reStructuredText.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<!--
	BBEdit codeless language module for reStructuredText files.
	Eric Knibbe
	Version 1.2

	Parses each section title as a function name so they show up in the function
	popup. (Can't indent them according to heading level nor nest fold markers in
	the sidebar due to limitations with CLMs). Will also highlight directives,
	directive options, roles, field names, substitutions, references, targets,
	interpreted text, and comment blocks.

	Requires BBEdit 8.5 or TextWrangler 3.5 or later. To install, copy to either:

		~/Library/Application Support/BBEdit/Language Modules/
		~/Library/Application Support/TextWrangler/Language Modules/

	and relaunch BBEdit or TextWrangler.
	
	Known issues:
	- skips highlighting directives as keywords if a space comes before the ::
	- BB/TW may skip highlighting comments starting on the file's 1st or 2nd line
	- can't highlight comments sharing a line with or directly following
	  directives due to a limitation with regular expressions
	- generally requires backticks within backtick-delimited markup to be escaped
	- highlights directives containing single colons as comments,
	  e.g. directives specifying a non-standard Sphinx domain
	- requires all lines of a comment to use the same padding sequence,
	  e.g. doesn't highlight a comment whose first line starts with a space and
	  subsequent lines start with a tab, which is still acceptable indentation

	Feedback is welcome.		<http://ericfromcanada.bitbucket.org/>
-->
<dict>
	<key>BBEditDocumentType</key>
	<string>CodelessLanguageModule</string>
	<key>BBLMLanguageDisplayName</key>
	<string>reStructuredText</string>
	<key>BBLMLanguageCode</key>
	<string>reST</string>
	<key>BBLMSuffixMap</key>
	<array>
		<dict>
			<key>BBLMLanguageSuffix</key>
			<string>.rst</string>
		</dict>
		<dict>
			<key>BBLMLanguageSuffix</key>
			<string>.txt</string>
		</dict>
	</array>
	<key>BBLMReferenceSearchURLTemplate</key>
	<string>http://sphinx-doc.org/search.html?q=__SYMBOLNAME__</string>
	<key>BBLMCommentLineDefault</key>
	<string>.. </string>
	<key>BBLMColorsSyntax</key>
	<true/>
	<key>BBLMScansFunctions</key>
	<true/>
	<key>BBLMCanSpellCheckCodeRuns</key>
	<true/>
	<key>BBLMIsCaseSensitive</key>
	<false/>
	<key>Language Features</key>
	<dict>
		<key>Identifier and Keyword Character Class</key>
		<string>-\w.:</string>
		<key>String Pattern</key>
		<string><![CDATA[(?x:
			(?<![\w~@#$%^&*)\]}>|+=\\;.,!?]|\\`):(?![:\s])
			(\\:|:(?=[a-z0-9])|[^:,([{<)\]}>\r])+
			(?<!\s):(?!(?P<end>[\w~@#$%^&*([{<|+=])|])       | (?# role/directive option/field name)
			(?<![\w~@#$%^&*)\]}>|+=\\;.,!?`])\|(?![|\s])
			(\|(?=(?P>end)|`)|[^|\r])+
			(?<![\s\\])\|_{0,2}(?!(?P>end)|`)                | (?# substitution)
			(?<![_~@#$%^&*)\]}>|+=\\;.,!?`])\b[a-z0-9]
			([-_+.:](?=[a-z0-9])|[a-z0-9])*__?(?!(?P>end)|`) | (?# hyperlink reference)
			(?<![\w~@#$%^&*)\]}>|+=\\;.,!?`])`(?!\s)
			(\\`|`(?=[_~@#$%^&*([{<|+=])|[^`])+
			(?<=\\\ |[^\s\\])`_{0,2}(?!(?P>end)|`)           | (?# phrase reference/interpreted text)
			(?<![\w~@#$%^&*)\]}>|+=\\;.,!?`])_`(?!\s)
			(\\`|`(?=[_~@#$%^&*([{<|+=`])|[^`])+
			(?<![\s\\])`(?!(?P>end)|`)                       | (?# inline internal target)
			(?<![\w~@#$%^&*)\]}>|+=\\;.,!?`])\[
			([-\w#.]+|\*)\]_(?!(?P>end)|`)                   | (?# footnote/citation reference)
			(?<=\.\.)[ \t]+\[([-\w#.]+|\*)\](?=\s)           | (?# footnote/citation target)
			(?<=\.\.)[ \t]+_(?(?=`)`(\\`|`(?![ \t]*:\s)
			|[^`\r])+`|(\\:|:(?!\s)|[^:\r])+)[ \t]*:(?=\s)     (?# hyperlink target)
		)]]></string>
		<key>Comment Pattern</key>
		<string><![CDATA[(?x:
			(\A | ^[ \t]*\r) (
				(?P<pad>[ \t]*)\.\. (
					[ \t]+ (
						\b(?!(py|c|cpp|js|rst|ada|cl|coffee|dqn|erl|go|http|jinja|ls|mat|
									php|op|rb|scl):)[a-z0-9][-+.\w]*
						(?(?=\ ?:)
							\ ?:((:(?=[^\s]) | [^:])[^\r]* | $)
							| ([^-+.\w][^\r]* | $)
						) | [^\w[|\s][^\r]*
					) | [ \t]*
				) (
					\r (
						[ \t]*
						| (?P=pad)[ \t]+[^\s][^\r]*
					)
				)*(\r(?=(?P=pad)\.\.|[ \t]*$) | \Z)
			)+
		)]]></string>
		<key>Function Pattern</key>
		<string><![CDATA[(?x:
			(?P<function>
				^(?!\.\.\s)\ ?(?P<function_name>\S[^\r]+)\r
				^(?P<bar>[-=`:.'"~^_*+#!$%&(),/;<>?@[\]\{|}])(?P=bar)+\s*$
				(?s).*?(?-s)
			)
			(?=
				(^\s*\r((?P<overline>[-=`:.'"~^_*+#!$%&(),/;<>?@[\]\{|}])(?P=overline)+\s*\r)?
					^(?!\.\.\s)\ ?\S[^\r]+\r
					^(?P<nextbar>[-=`:.'"~^_*+#!$%&(),/;<>?@[\]\{|}])(?P=nextbar)+\s*$
				) | (?-m)$
			)
		)]]></string>
		<key>Skip Pattern</key>
		<string><![CDATA[(?x:
			(?P>string) |
			(?P>comment)
		)]]></string>
	</dict>
	<key>BBLMKeywordList</key><!-- reStructuredText directives -->
	<array>
		<string>..</string>
		<string>::</string>
		<string>attention::</string>
		<string>caution::</string>
		<string>danger::</string>
		<string>error::</string>
		<string>hint::</string>
		<string>important::</string>
		<string>note::</string>
		<string>tip::</string>
		<string>warning::</string>
		<string>admonition::</string>
		<string>image::</string>
		<string>figure::</string>
		<string>topic::</string>
		<string>sidebar::</string>
		<string>line-block::</string><!-- deprecated -->
		<string>parsed-literal::</string>
		<string>code::</string>
		<string>math::</string>
		<string>rubric::</string>
		<string>epigraph::</string>
		<string>highlights::</string>
		<string>pull-quote::</string>
		<string>compound::</string>
		<string>container::</string>
		<string>table::</string>
		<string>csv-table::</string>
		<string>list-table::</string>
		<string>contents::</string>
		<string>sectnum::</string>
		<string>section-numbering::</string>
		<string>header::</string>
		<string>footer::</string>
		<string>target-notes::</string>
		<string>footnotes::</string><!-- future -->
		<string>citations::</string><!-- future -->
		<string>meta::</string>
		<string>imagemap::</string><!-- future -->
		<string>replace::</string>
		<string>unicode::</string>
		<string>date::</string>
		<string>include::</string>
		<string>raw::</string>
		<string>class::</string>
		<string>role::</string>
		<string>default-role::</string>
		<string>title::</string>
		<string>restructuredtext-test-directive::</string>
	</array>
	<key>BBLMPredefinedNameList</key><!-- Sphinx directives -->
	<array>
		<string>acks::</string><!-- undocumented -->
		<string>centered::</string><!-- deprecated -->
		<string>code-block::</string>
		<string>codeauthor::</string>
		<string>cssclass::</string><!-- old -->
		<string>default-domain::</string>
		<string>deprecated::</string>
		<string>describe::</string><!-- old -->
		<string>envvar::</string>
		<string>glossary::</string>
		<string>highlight::</string>
		<string>highlightlang::</string><!-- old -->
		<string>hlist::</string>
		<string>index::</string>
		<string>literalinclude::</string>
		<string>moduleauthor::</string><!-- undocumented -->
		<string>object::</string>
		<string>only::</string>
		<string>option::</string>
		<string>productionlist::</string>
		<string>program::</string>
		<string>rst-class::</string>
		<string>sectionauthor::</string>
		<string>seealso::</string>
		<string>sourcecode::</string><!-- old -->
		<string>tabularcolumns::</string>
		<string>toctree::</string>
		<string>versionadded::</string>
		<string>versionchanged::</string>
		<string>module::</string>
		<string>currentmodule::</string>
		<string>data::</string>
		<string>exception::</string>
		<string>function::</string>
		<string>attribute::</string>
		<string>method::</string>
		<string>staticmethod::</string>
		<string>classmethod::</string>
		<string>decorator::</string>
		<string>decoratormethod::</string>
		<string>member::</string>
		<string>macro::</string>
		<string>type::</string>
		<string>var::</string>
		<string>directive::</string>
		<string>automodule::</string>
		<string>autoclass::</string>
		<string>autoexception::</string>
		<string>autofunction::</string>
		<string>autodata::</string>
		<string>automethod::</string>
		<string>autoattribute::</string>
		<string>autosummary::</string>
		<string>testsetup::</string>
		<string>testcleanup::</string>
		<string>doctest::</string>
		<string>testcode::</string>
		<string>testoutput::</string>
		<string>graphviz::</string>
		<string>graph::</string>
		<string>digraph::</string>
		<string>inheritance-diagram::</string>
		<string>ifconfig::</string>
		<string>todo::</string>
		<string>todolist::</string>
	</array>
</dict>
</plist>
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.