Hi Aditya and Gilles,

It seems to me that adding a bar in the margin either with framedtext or with 
MetaPost, lacks the ability to continue through a page break. Using the ConTeXt 
built-in sidebar mechanism has the advantage of continuing through a page 
break, but it is still not perfetct because in some occasions (but not always…) 
the sidebar plunges into the footnote area. I don't know if the issue can be 
solved (adding negative bottomoffset solves partly the problem but when there 
is no footnote then the sidebar appears to be too short…).

Here is an example of how I use the sidebar to enhance \proclaim like texts.

Best regards: OK
%%%% begin test-sidebar-proclaim.tex
%%%%%%%
\definesidebar[ProclaimSidebar]
\setupsidebar[ProclaimSidebar]
        [rulecolor=darkred,
        rulethickness=1pt,
        alternative=2,
        distance=5mm,
%       bottomoffset=-7mm,
%       topoffset=-2mm
        ]

\defineenumeration[proclaim]
        [text=,
        before={\startsidebar[ProclaimSidebar]},
        after={\stopsidebar},
        style=slanted,
        title=yes,
        titleleft=,
        titleright={.},
%       alternative=serried,
        alternative=hanging,
%       hang=2,
        width=fit,
        right={~},
        way=bysection,
        prefix=yes,
        prefixsegments={chapter:section}]
%%%%%%%

\starttext

\dorecurse{2}{\input knuth.tex\par}

\input tufte.tex \footnote{The sidebar gets into the footnote\dots}

\startproclaim{Lemma}
\dorecurse{4}{\input ward.tex \par}
\stopproclaim

\stoptext
%%%%%%  end test-sidebar-proclaim.tex


Attachment: test-sidebar-proclaim.pdf
Description: Adobe PDF document



> On 20 Apr 2019, at 15:46, Aditya Mahajan <adit...@umich.edu> wrote:
> 
> On Sat, 20 Apr 2019, Gilles Waeber wrote:
> 
>> Hi,
>> I'm trying to create a style with a left border in the margin.
>> 
>> I want the border to start and stop with the text. For the bottom I used
>> framedepth but the bar still goes too far on the top?
>> 
>> \showframe
>> \showboxes
>> \defineframedtext[leftbartext][
>>      width=broad,
>>      frame=off,
>>      leftframe=on,
>>      rulethickness=.5ex,
>>      offset=-\framedparameter{rulethickness},
>>      frameoffset=\dimexpr\leftmargindistance +
>> \framedparameter{rulethickness}\relax,
>>      framedepth=-\framedparameter{frameoffset},
>> ]
>> \starttext
>> \startleftbartext
>> \input knuth
>> \stopleftbartext
>> \stoptext
> 
> Framed does not provide enough hooks to control the spaces. For something 
> like this, you can also use metapost to draw the background:
> 
> \showframe
> \showboxes
> \defineframedtext[leftbartext][
>        width=broad,
>        frame=off,
>        rulethickness=.5ex,
>        background=mp:offsetframe,
>        offset=overlay,
> ]
> 
> \defineoverlay[mp:offsetframe][\useMPgraphic{mp:offsetframe}]
> 
> \startuseMPgraphic{mp:offsetframe}
>  draw leftboundary OverlayBox
>        xshifted -(LeftMarginDistance + 0.5OverlayLineWidth)
>        withpen pencircle scaled OverlayLineWidth;
>  setbounds currentpicture to OverlayBox;
> \stopuseMPgraphic
> 
> \starttext
> \startleftbartext
> \input knuth
> \stopleftbartext
> \stoptext
> 
> 
> 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
> ___________________________________________________________________________________

___________________________________________________________________________________
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