On Tue, 17 Apr 2018, Hans Hagen wrote:

On 4/17/2018 12:01 AM, Aditya Mahajan wrote:
All features of the filter and vim modules work with the latest beta, except for one final bug: leading spaces are stripped from the buffer.

\starttext

\startbuffer[test]
     Leading spaces
\stopbuffer

\savebuffer[file=test-temp.tmp, prefix=no, list=test]

\stoptext

The leading spaces are stripped before the buffer is saved to the file temp.tmp. Is it possible for the leading space NOT to be stripped? (If not, I'll just document this as a feature :-).

\samplefile{ward}
\startnarrower
   \samplefile{ward}
   \startbuffer[test]
       Leading spaces
         And some more
   \stopbuffer
   \typebuffer[test]
\stopnarrower
\samplefile{ward}

\startbuffer[test]
   Leading spaces
       And some more
\stopbuffer
\typebuffer[test]

it is actually a feature to align the left edge relative to the least indented so that we can use them inside other constructs

Now, as you're not afraid of low level code:

\unprotect

\unexpanded\def\StartAditya
 {\buff_pickup
   {Aditya}%
   {StartAditya}%
   {StopAditya}%
   {}%
   {\savebuffer[file=test-temp.tmp,prefix=no,list=Aditya]}%
   \zerocount}

This is perfect as I am already using `\grabbufferdata` in my code. I can easily adapt it to use `\buff_pickup` instead. Thanks!.

Does what you want but of course it's sort of ugly for a module to do that. What we can do is this which is still ugly but picking up verbatim is always ugly:

\def\buff_start_indeed#1#2#3#4%
 {\edef\p_strip{\namedbufferparameter{#1}\c!strip}%

\normalexpanded{\buff_pickup{#2}{#3}{#4}{}{\buff_stop{#4}}\ifx\p_strip\v!no\zerocount\else\plusone\fi}}

\protect

I want this to be configurable at runtime and the vim module already has code that enables `strip=yes` and `strip=no` options (I do this via a function in vim so that it works with both mkii and mkiv; although I don't think that anyone uses the mkii module any longer).

Aditya
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki     : http://contextgarden.net
___________________________________________________________________________________

Reply via email to