summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Hatch <tim@timhatch.com>2012-11-06 08:15:04 -0800
committerTim Hatch <tim@timhatch.com>2012-11-06 08:15:04 -0800
commitedc2270f596fb4b5ec7193c8a30c94fe1bebdb5c (patch)
treed063ac26cd6f7208133432b58f1ebca69b4a15b2
parentf98c750b3d913e992dcd44a8812f8be0df6ef683 (diff)
downloadpygments-edc2270f596fb4b5ec7193c8a30c94fe1bebdb5c.tar.gz
Initial support for Ruby 1.9 hash syntax (#812)
-rw-r--r--pygments/lexers/agile.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/pygments/lexers/agile.py b/pygments/lexers/agile.py
index ec230986..88242790 100644
--- a/pygments/lexers/agile.py
+++ b/pygments/lexers/agile.py
@@ -521,6 +521,8 @@ class RubyLexer(ExtendedRegexLexer):
(r":'(\\\\|\\'|[^'])*'", String.Symbol),
(r"'(\\\\|\\'|[^'])*'", String.Single),
(r':"', String.Symbol, 'simple-sym'),
+ (r'([a-zA-Z_][a-zA-Z0-9]*)(:)',
+ bygroups(String.Symbol, Punctuation)), # Since Ruby 1.9
(r'"', String.Double, 'simple-string'),
(r'(?<!\.)`', String.Backtick, 'simple-backtick'),
]
@@ -650,7 +652,7 @@ class RubyLexer(ExtendedRegexLexer):
(r'(<<-?)("|\')()(\2)(.*?\n)', heredoc_callback),
(r'__END__', Comment.Preproc, 'end-part'),
# multiline regex (after keywords or assignments)
- (r'(?:^|(?<=[=<>~!])|'
+ (r'(?:^|(?<=[=<>~!:])|'
r'(?<=(?:\s|;)when\s)|'
r'(?<=(?:\s|;)or\s)|'
r'(?<=(?:\s|;)and\s)|'