* lisp/progmodes/ruby-mode.el (ruby-here-doc-beg-re):
Support squiggly heredocs added in Ruby 2.3.
* test/indent/ruby.rb: Add squiggly example.
(eval-and-compile
(defconst ruby-here-doc-beg-re
- "\\(<\\)<\\(-\\)?\\(\\([a-zA-Z0-9_]+\\)\\|[\"]\\([^\"]+\\)[\"]\\|[']\\([^']+\\)[']\\)"
+ "\\(<\\)<\\([~-]\\)?\\(\\([a-zA-Z0-9_]+\\)\\|[\"]\\([^\"]+\\)[\"]\\|[']\\([^']+\\)[']\\)"
"Regexp to match the beginning of a heredoc.")
(defconst ruby-expression-expansion-re
end
eowarn
foo
+
+ foo(<<~squiggly)
+ end
+ squiggly
end
def foo