I have a syntax for a markup language where certain delimited constructs allow single newlines but not blank lines, i.e. this is OK``` markup{_foobar_}```but this is not OK``` markup{_foobar_}```is there any way to set up a region so that it behaves like this? I tried `oneline` plus a contained `syn match` which matches a newline not preceded or followed by a blank line but no luck!I get the behavior I want with a `syn match` with this pattern``` pattern{_\%([^\n]\|\%(\_^\s*\)\@<!\n\%(\s*\_$\)\@!\)\{-}_}```
but then highlighting obviosly doesn't kick in until I type the closing delimiter so I would prefer a region.Also is there a better way to match the start or end of the file than `\_.\@<!` and `\_.\@!`?
On Sat, 23 Nov 2024 at 04:28, BPJ <b...@melroch.se> wrote:I have a syntax for a markup language where certain delimited constructs allow single newlines but not blank lines, i.e. this is OK``` markup{_foobar_}```but this is not OK``` markup{_foobar_}```is there any way to set up a region so that it behaves like this? I tried `oneline` plus a contained `syn match` which matches a newline not preceded or followed by a blank line but no luck!I get the behavior I want with a `syn match` with this pattern``` pattern{_\%([^\n]\|\%(\_^\s*\)\@<!\n\%(\s*\_$\)\@!\)\{-}_}```Does something like this work?:syn region foobar start="{_" end="_}" end="$" skip="\n\s*\S"
but then highlighting obviosly doesn't kick in until I type the closing delimiter so I would prefer a region.Also is there a better way to match the start or end of the file than `\_.\@<!` and `\_.\@!`?:help \%^
--Regards,Doug
--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups "vim_use" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vim_use+u...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/vim_use/CAJ1uvoB5GPjE1RKY4wQkRW_zawUvFxnYWDHgOdOQ8tgkMdU%2Bpw%40mail.gmail.com.
Hi
I deeply sympathise with you. It seems complete madness that the slashing is different for various quantifiers. (* recognised as a meta character, but not + or ?). My reading of the help suggests that very magic doesn't cure this.
regards - Chris
--
--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups "vim_use" group.
To unsubscribe from this group and stop receiving emails from it, send an email to unsub...@googlegroups.com">vim_use+unsub...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/vim_use/CADAJKhB8xGaYuvoY9-ZOu2%2BNifq4gbmP_x6TY%3Ddh-T2JkQN8%3Dw%40mail.gmail.com.
------ Original Message ------
From: b...@melroch.se
To: b...@melroch.se Cc: vim...@googlegroups.com
Sent: Saturday, November 23rd 2024, 13:25
Subject: Syntax: Using \v (very magic) in patterns in syntax files
I have noticed that patterns in published syntax files never use the `\v` (very magic) modifier. Is there any deeper reason than people's preferences for this? Being used to Perl patterns I practically always use it and find it hard to keep track of when to use backslashes when not using it. The result is that more or less subtle errors creep in when I'm writing a syntax file, so I'd prefer to use it unless it's a Really Bad Idea.
Hi
I deeply sympathise with you. It seems complete madness that the slashing is different for various quantifiers. (* recognised as a meta character, but not + or ?). My reading of the help suggests that very magic doesn't cure this.
--regards - Chris
--
--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups "vim_use" group.
To unsubscribe from this group and stop receiving emails from it, send an email to unsub...@googlegroups.com">vim_use+unsub...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/vim_use/CADAJKhB8xGaYuvoY9-ZOu2%2BNifq4gbmP_x6TY%3Ddh-T2JkQN8%3Dw%40mail.gmail.com.
--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups "vim_use" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vim_use+u...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/vim_use/304a56a7.2408d.193593adb00.Webtop.251%40btinternet.com.
------ Original Message ------
From: b...@melroch.se
To: vim...@googlegroups.com Cc: b...@melroch.se
Sent: Saturday, November 23rd 2024, 15:34
Subject: Re: Syntax: Using \v (very magic) in patterns in syntax files
Den lör 23 nov. 2024 14:35'c.willis111 ' via vim_use <vim...@googlegroups.com> skrev:
------ Original Message ------
From: b...@melroch.se
To: b...@melroch.se Cc: vim...@googlegroups.com
Sent: Saturday, November 23rd 2024, 13:25
Subject: Syntax: Using \v (very magic) in patterns in syntax files
I have noticed that patterns in published syntax files never use the `\v` (very magic) modifier. Is there any deeper reason than people's preferences for this? Being used to Perl patterns I practically always use it and find it hard to keep track of when to use backslashes when not using it. The result is that more or less subtle errors creep in when I'm writing a syntax file, so I'd prefer to use it unless it's a Really Bad Idea.
Hi
I deeply sympathise with you. It seems complete madness that the slashing is different for various quantifiers. (* recognised as a meta character, but not + or ?). My reading of the help suggests that very magic doesn't cure this.
It does in that all ASCII punctuation characters can be escaped to be "normal" and those that are metacharacters are meta when not escaped. Word characters, quite sensibly do still need a backslash to be meta. That's consistent enough for me.
You seem to be talking about the perl behaviour, which seems consistent to me. My whinge was about the vim behaviour. Heree's a help snippet:4. Overview of pattern items pattern-overview
E865 E866 E867 E869Overview of multi items. /multi E61 E62
More explanation and examples below, follow the links. E64 E871multi
'magic' 'nomagic' matches of the preceding atom
/star * \* 0 or more as many as possible
/\+ \+ \+ 1 or more as many as possible
/\= \= \= 0 or 1 as many as possible
/\? \? \? 0 or 1 as many as possible
regards - Chris
--
--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups "vim_use" group.
To unsubscribe from this group and stop receiving emails from it, send an email to unsub...@googlegroups.com">vim_use+unsub...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/vim_use/CADAJKhB8xGaYuvoY9-ZOu2%2BNifq4gbmP_x6TY%3Ddh-T2JkQN8%3Dw%40mail.gmail.com.
--
--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups "vim_use" group.
To unsubscribe from this group and stop receiving emails from it, send an email to unsub...@googlegroups.com" target="_blank">vim_use+unsub...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/vim_use/304a56a7.2408d.193593adb00.Webtop.251%40btinternet.com.
--
--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups "vim_use" group.
To unsubscribe from this group and stop receiving emails from it, send an email to unsub...@googlegroups.com">vim_use+unsub...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/vim_use/CADAJKhA4ztK4E-8fcDX40xn0s9hBg5v4VQ6URJmUm9E3967Jfw%40mail.gmail.com.
------ Original Message ------
From: b...@melroch.se
To: vim...@googlegroups.com Cc: b...@melroch.se
Sent: Saturday, November 23rd 2024, 15:34
Subject: Re: Syntax: Using \v (very magic) in patterns in syntax files
Den lör 23 nov. 2024 14:35'c.willis111 ' via vim_use <vim...@googlegroups.com> skrev:
------ Original Message ------
From: b...@melroch.se
To: b...@melroch.se Cc: vim...@googlegroups.com
Sent: Saturday, November 23rd 2024, 13:25
Subject: Syntax: Using \v (very magic) in patterns in syntax files
I have noticed that patterns in published syntax files never use the `\v` (very magic) modifier. Is there any deeper reason than people's preferences for this? Being used to Perl patterns I practically always use it and find it hard to keep track of when to use backslashes when not using it. The result is that more or less subtle errors creep in when I'm writing a syntax file, so I'd prefer to use it unless it's a Really Bad Idea.
Hi
I deeply sympathise with you. It seems complete madness that the slashing is different for various quantifiers. (* recognised as a meta character, but not + or ?). My reading of the help suggests that very magic doesn't cure this.
It does in that all ASCII punctuation characters can be escaped to be "normal" and those that are metacharacters are meta when not escaped. Word characters, quite sensibly do still need a backslash to be meta. That's consistent enough for me.You seem to be talking about the perl behaviour, which seems consistent to me. My whinge was about the vim behaviour. Heree's a help snippet:
To unsubscribe from this group and stop receiving emails from it, send an email to vim_use+u...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/vim_use/3216be5b.24523.19359bc2e94.Webtop.251%40btinternet.com.
I have noticed that patterns in published syntax files never use the `\v` (very magic) modifier. Is there any deeper reason than people's preferences for this? Being used to Perl patterns I practically always use it and find it hard to keep track of when to use backslashes when not using it. The result is that more or less subtle errors creep in when I'm writing a syntax file, so I'd prefer to use it unless it's a Really Bad Idea.