Saturday, August 15, 2020

Re: Error in bash syntax file

On Sat, Aug 15, 2020 at 6:13 PM 'J S' via vim_use
<vim_use@googlegroups.com> wrote:
>
> i can confirm that using the latest sh.vim file from your website (installed as you suggested, in my private .vim directory) fixes the problem. Thank you for that.
>
>
> Regarding your comment:
>
> > Hmm, that format, ${@:var1:var2} doesn't appear to be explicitly
> > mentioned in the bash man page (although ${parameter:var1:var2} is).
>
> I don't know if it is ever explicitly mentioned, but it is pretty clear that @ can generally be used throughout to refer to all the args together, sort of as if they were all concatenated together. I find the bash man page large and complicated, so I can't say for sure how explicitly stated this is.

At line 384sqq of the bash manpage for GNU Bash 4.4, part of section PARAMETERS:

@ Expands to the positional parameters, starting from one.
When the expansion occurs within double quotes, each parameter expands
to a separate word. That is, "$@" is equivalent to "$1" "$2" ... If
the double-quoted expansion
occurs within a word, the expansion of the first
parameter is joined with the beginning part of the original word, and
the expansion of the last parameter is joined with the last part of
the original word. When there are no posi-
tional parameters, "$@" and $@ expand to nothing (i.e.,
they are removed).

>
> Also, just out of passing interest, I tested this under VIM 7.4 at some point and the bug did not present, so it seems to have been introduced between then and now.
>
> Anyway, I am considering this as "problem solved".
> On Wednesday, July 29, 2020, 05:57:32 PM EDT, 'J S' via vim_use <vim_use@googlegroups.com> wrote:
>
>
> The following line of legal bash code gets flagged as an error:
>
> echo ${@:i:1}
>
> The above line displays the i'th command line argument.
>
> I am running vim 8.1, with lots of patches applied. My sh.vim files (3 of them) are all dated Jun 15, 2019.
>
> --
> --
> 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+unsubscribe@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/vim_use/362297683.6459386.1596059832744%40mail.yahoo.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+unsubscribe@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/vim_use/964897860.1852609.1597507966094%40mail.yahoo.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+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/vim_use/CAJkCKXtBeSwf%3DimWnu8og8%2Bc1%2BS1aEz4%3DFkiZXVUdsZH%3Dv2_Ow%40mail.gmail.com.

No comments: