ignatov / intellij-erlang

Erlang IDE
https://www.jetbrains.com/help/idea/2018.2/getting-started-with-erlang.html
Other
735 stars 120 forks source link

Support for erlang 27 triple-quoted strings and sigils #1042

Closed brigadier closed 1 month ago

brigadier commented 2 months ago

https://www.erlang.org/blog/highlights-otp-27/

It would be nice to have support for triple-quoted strings and sigils which were introduced in erlang 27

https://erlangforums.com/t/string-sigils-in-erlang-otp-27/3018

This implementation, as written in the EEP, is limited to the sigils ~, ~b, ~B, ~s and ~S (default, binary and string, with escape chars or verbatim), and limited to normal strings and triple-quoted strings (no new string delimiter characters).
The allowed start-end delimiter character pairs are: () [] {} <>.

The following characters are start delimiters that have themselves as end delimiters: / | ' " ` #.

Triple-quote delimiters are also allowed, that is; a sequence of 3 or more double quote " characters as described in [EEP 64](https://www.erlang.org/eeps/eep-0064.md).
brigadier commented 1 month ago

Besides triple-quoted strings there are also sigils such as

~B"абв" = ~B|абв| = <<"абв"/utf8">>

~B`абв\1` = <<"абв\\1"/utf8>>.

and a few other variants, with different behaviour with regard to delimiters and escape sequences