Re: [NTG-context] Using \startalign outside of math mode?

2009-08-28 Thread Aditya Mahajan

On Fri, 28 Aug 2009, Matthijs Kooijman wrote:


Hi,

I'm using a custom pretty printer to apply some formatting to a buffer.
However, I'm not using a monospaced font, but some sans serif font to display
the result. In the original text, I have some lines that are nicely aligned
using leading spaces. For example:

 foo = bar
 | baz

Obviously, when using a non monospaced font for this, the alignment is lost.
When in math mode, I can use \startalign to force alignment, like:

 \startalign
 foo \NC= bar
 \NC| baz
 \stopalgin

However, I haven't manage to switch to math mode inside pretty printed text.
Also, even if I would, I would get my text rendered in math mode, which
probably won't work.

So, I'm wondering if there is anything like \startalign to use outside of math
mode? I've been looking at the implementation of \startalign, but couldn't
find it...


Startalign is essentially a table with some predefined defaults. You can 
try something like (untested)


\starttable[|rs(0.2em)|cs(0.2em)|l|]
 \NC foo \NC = \NC bar \NC \AR
 \NC \NC | \NC baz \NC \AR
\stoptable

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://tex.aanhet.net
archive  : https://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


Re: [NTG-context] Using \startalign outside of math mode?

2009-08-28 Thread Matthijs Kooijman
Hi all,

>foo = bar
>| baz

it seems I found some sort of a solution. Using the \setwidthof I found at
[1], I wrote the following:


  \def\setwidthof#1\to#2%
  {\bgroup
  \setbox\scratchbox\hbox{#1}%
  \expanded{\egroup\def\noexpand#2{\the\wd\scratchbox}}}

  foo = bar
  \setwidthof{foo }\to\alignwidth
  \hskip\alignwidth| baz

This works, but is not so pretty, obviously. Since I'm using a custom pretty
printer, I can probably hack something up that generates this from the more
natural form automatically. Still, I'm wondering if there are more pretty
methods to do this. In particular, this method is completely limited to
indents at the start of a line (e.g., aligning the b's of bar and baz isn't
possible, though I could perhs do more complicated math using the width of
"| ", but that will become even more hideous...

Any other suggestions?

Gr.

Matthijs

[1]: http://www.ntg.nl/pipermail/ntg-context/2009/037404.html


signature.asc
Description: Digital signature
___
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://tex.aanhet.net
archive  : https://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


[NTG-context] Using \startalign outside of math mode?

2009-08-28 Thread Matthijs Kooijman
Hi,

I'm using a custom pretty printer to apply some formatting to a buffer.
However, I'm not using a monospaced font, but some sans serif font to display
the result. In the original text, I have some lines that are nicely aligned
using leading spaces. For example:

  foo = bar
  | baz

Obviously, when using a non monospaced font for this, the alignment is lost.
When in math mode, I can use \startalign to force alignment, like: 

  \startalign
  foo \NC= bar
  \NC| baz
  \stopalgin

However, I haven't manage to switch to math mode inside pretty printed text.
Also, even if I would, I would get my text rendered in math mode, which
probably won't work.

So, I'm wondering if there is anything like \startalign to use outside of math
mode? I've been looking at the implementation of \startalign, but couldn't
find it...

Some way to insert spacing until some fixed point (e.g. tab-stop like) would
probably work, if I can define the tabstop on a case by case basis?

Gr.

Matthijs


signature.asc
Description: Digital signature
___
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://tex.aanhet.net
archive  : https://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___