Dr. Chip,

I may be trivializing what's happening, but have you considered using \_s
instead of just \s?

Or passing it to another map that calls trim before?

Something like split -> mapWithTrim -> yourOriginalMap

I'm sure I'm missing something obvious because someone with your experience
wouldn't ask a question if it were this simple. Also, I'm using my mobile
phone right now so I can't actually type the full syntax.

I would've used a join instead of the last map and just wrap the result in
a <> pair.

-- 

Salman

On Fri, Nov 27, 2020, 19:05 Charles Campbell <[email protected]> wrote:

> I'm having a bit of a problem with map(). I've had problems with map()
> before, and consequently I really really hate to use it.
> Here goes:
>
> 1: construct a comment:
>
> "   Testing: one two | three four | five | six |
> "            seven | eight |;
>
> 2. grab characters:
>
> fo<ctrl-v>j$"ay
>
>
> 3. convert to list:
>
> let list= split(@a,'\s*|\s*;\=',' ')
>
> 4. Now, try to use map():
>
> call map(list,"substitute(v:val,'<&>','','ge')")
>
> Intent: to put <...> around every argument. Now, this isn't really my
> final intent for this, but if I could get that substitute to work, it'd be
> a nice start. Please note, the request is on how to get a substitute() to
> work with map(), not to put angle brackets around every list element, for
> which :help map() already has an example.
>
> 5. Bonus request: my construction above carefully gets a newline into the
> list. Using :echo string(list):
>
> ['one two', 'three four', 'five', 'six', '
> seven', 'eight', '                    ']
>
>     I cannot seem to get rid of the newline, but its probably due to my
> lack of success with substitute().
>
> I've spent about three hours on this so far, with multiple attempts, all
> unsuccessful. Perhaps an extra example in help map() illustrating how to do
> this would be of use?
>
> Thank you,
> Chip Campbell
>
> --
> --
> 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 [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/vim_use/91e26ba3-9e1b-19ad-3c43-ff7b42a0de3c%40drchip.org
> <https://groups.google.com/d/msgid/vim_use/91e26ba3-9e1b-19ad-3c43-ff7b42a0de3c%40drchip.org?utm_medium=email&utm_source=footer>
> .
>

-- 
-- 
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 [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_use/CANuxnEfkwDiTgaC9e2zDNCo6-nhch4N3A9B59EV6JbAdws1U8A%40mail.gmail.com.

Reply via email to