[NTG-context] Protrusion cancellation by index term

Hans Hagen pragma at wxs.nl
Fri Apr 1 09:23:13 CEST 2016

On 3/31/2016 9:28 PM, Jan Tosovsky wrote:
> On 2016-03-31 Hans Hagen wrote:
>> On 3/30/2016 9:53 PM, Jan Tosovsky wrote:
>>> On 2016-03-22 Hans Hagen wrote:
>>>> On 3/21/2016 10:59 PM, Jan Tosovsky wrote:
>>>>> On 2014-02-23 Hans Hagen wrote:
>>>>>> On 2/22/2014 2:38 PM, Jan Tosovsky wrote:
>>>>>>> On 2014-02-22 Jan Tosovsky wrote:
>>>>>>>>
>>>>>>>> when a punctuated phrase appears at the beginning of the
>>>>>>>> line, it is not protruded correctly when preceded by an
>>>>>>>> index term.
>>>>>>>>
>>>>>>>> ... \index{foo}>Bar< ...
>>>>>>>>
>>>>>>>> A minimal example is available at
>>>>>>>> http://drifted.in/other/sample.tex
>>>>>>>
>>>>>>> I'd be grateful for ignoring any non document content
>>>>>>> preceding punctuation to avoid its influence on protrusion.
>>>>
>>>> it's not that trivial
>>>>
>>>> for the index we can cheat a bit but then i also need to
>>>> check lots of other cases for possible interference
>>
>> you can try to do this:
>>
>> \leftboundary\hbox{\index{foo}}....
>
> Wow, I am quite satisfied with this solution.
>
> Btw, I couldn't find any details for that \leftboundary command either in TeX [1] or ConTeXt [2] command references.
>
> I've tried it just with \hbox{} and it works as well.
>
> Couldn't this be generalized in a way - if you want protrusion even in edge cases, any inline commands have to be wrapped in \hbox{} ?

because for instance you wouldn't want to protrude into a constructed
compound hyphen which is a inline construct, just as you don't want to
protrude into a formula or something explicitely boxed

Hans

-----------------------------------------------------------------
Hans Hagen | PRAGMA ADE
Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: 038 477 53 69 | www.pragma-ade.com | www.pragma-pod.nl
-----------------------------------------------------------------