ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
* Piecewise margin line
@ 2020-11-19  9:39 Johann Birnick
  2020-11-19 10:25 ` mf
  0 siblings, 1 reply; 6+ messages in thread
From: Johann Birnick @ 2020-11-19  9:39 UTC (permalink / raw)
  To: ntg-context

Hello,

I want to setup some fancy theorem style for my math notes. For this I want to
have a colored margin line next to my theorems. It should look like this:

https://i.ibb.co/F6L59pD/idea.png

The line should stretch over the whole theorem, not just the first line.
(But the latter would be a beginning, though.)

Important to note is that the line should be *on the margin*, not in the text.

So do you have an idea on how I could do that? I would greatly appreciate your
answer. Thank you!

Best regards,
Johann

___________________________________________________________________________________
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
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Piecewise margin line
  2020-11-19  9:39 Piecewise margin line Johann Birnick
@ 2020-11-19 10:25 ` mf
  2020-11-20  1:06   ` Johann Birnick
  0 siblings, 1 reply; 6+ messages in thread
From: mf @ 2020-11-19 10:25 UTC (permalink / raw)
  To: ntg-context

Il 19/11/20 10:39, Johann Birnick ha scritto:
> Hello,
> 
> I want to setup some fancy theorem style for my math notes. For this I want to
> have a colored margin line next to my theorems. It should look like this:
> 
> https://i.ibb.co/F6L59pD/idea.png
> 
> The line should stretch over the whole theorem, not just the first line.
> (But the latter would be a beginning, though.)
> 
> Important to note is that the line should be *on the margin*, not in the text.
> 
> So do you have an idea on how I could do that? I would greatly appreciate your
> answer. Thank you!
> 
Look for \startsidebar \stopsidebar and \setupsidebar.

\setupsidebar [...,...] [..,..=..,..]
                   1           2
                  OPT
1 NAME
2 rulethickness      = DIMENSION
   rulecolor          = COLOR
   alternative        = NUMBER
   topoffset          = DIMENSION
   bottomoffset       = DIMENSION
   distance           = DIMENSION
   leftmargindistance = DIMENSION
   level              = NUMBER

Massi
___________________________________________________________________________________
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
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Piecewise margin line
  2020-11-19 10:25 ` mf
@ 2020-11-20  1:06   ` Johann Birnick
  2020-11-20  4:13     ` Otared Kavian
  2020-11-20  7:17     ` mf
  0 siblings, 2 replies; 6+ messages in thread
From: Johann Birnick @ 2020-11-20  1:06 UTC (permalink / raw)
  To: ntg-context

On Thu, 2020-11-19 at 11:25 +0100, mf wrote:
> Il 19/11/20 10:39, Johann Birnick ha scritto:
> > Hello,
> > 
> > I want to setup some fancy theorem style for my math notes. For this I want
> > to
> > have a colored margin line next to my theorems. It should look like this:
> > 
> > https://i.ibb.co/F6L59pD/idea.png
> > 
> > The line should stretch over the whole theorem, not just the first line.
> > (But the latter would be a beginning, though.)
> > 
> > Important to note is that the line should be *on the margin*, not in the
> > text.
> > 
> > So do you have an idea on how I could do that? I would greatly appreciate
> > your
> > answer. Thank you!
> > 
> Look for \startsidebar \stopsidebar and \setupsidebar.
> 
> \setupsidebar [...,...] [..,..=..,..]
>                    1           2
>                   OPT
> 1 NAME
> 2 rulethickness      = DIMENSION
>    rulecolor          = COLOR
>    alternative        = NUMBER
>    topoffset          = DIMENSION
>    bottomoffset       = DIMENSION
>    distance           = DIMENSION
>    leftmargindistance = DIMENSION
>    level              = NUMBER
> 
> Massi

Thank you! I have two more questions:

1. Where can I find a documentation for this command? Even Google finds nothing.

2. Unfortunately, adding \startsidebar and \stopsidebar into the `before` and
`after` options of my enumeration messes up whitespace at the end. Here is a
screenshot:

https://s12.directupload.net/images/201120/lfmwp5lh.png

The theorem is a normal enumeration. Like this:

\defineenumeration[Theorem][before=\startsidebar, after=stopsidebar]

I would greatly appreciate your help.

Thank you!
Johann

___________________________________________________________________________________
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
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Piecewise margin line
  2020-11-20  1:06   ` Johann Birnick
@ 2020-11-20  4:13     ` Otared Kavian
  2020-11-20  7:17     ` mf
  1 sibling, 0 replies; 6+ messages in thread
From: Otared Kavian @ 2020-11-20  4:13 UTC (permalink / raw)
  To: mailing list for ConTeXt users

Hi Johann,

Here is an example (extracted from one of my files…) which might give what you want: you can change some of the specifications easily.

% begin proclaim-leftbar.tex
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\startuseMPgraphic{mpos:region:leftbar}
	draw_multi_pars;
	draw_multi_side;
\stopuseMPgraphic

\definetextbackground[leftbartext]
	[location=paragraph,
	mp=mpos:region:leftbar,
	width=broad,
	frame=off,
	framecolor=darkred,
	rulethickness=2pt,
	frameoffset=1.25em,
	topoffset=-2ex,
	bottomoffset=-2ex,
	background=color,
	backgroundcolor=white,
	]
%%%%%%%
\defineenumeration[proclaim]
	[text=,
	before={\starttextbackground[leftbartext]}, 
	after={\stoptextbackground}, 
	style=slanted,
	title=yes,
	titleleft=,
	titleright={.},
	alternative=hanging,
	width=fit,
	right={~},
	way=bysection,
	prefix=yes,
	prefixsegments={chapter:section}]
%%%%%%%

\starttext

\startchapter[title={Topologie des nombres réels},reference=chap:R]

\startproclaim[lem:Q-Archimedien]{Proposition}
L'ensemble ${\Bbb Q}$ est {\bi archimédien}\index{archimédien}, c'est-à-dire que si $\epsilon \in {\Bbb Q}$ et $\epsilon > 0$, pour tout $R \in {\Bbb Q}$ tel que $R > 0$ il existe un entier $n \in {\Bbb N}$ tel que $n\epsilon > R$. 

Plus précisément il existe un unique entier $m \geq 0$ tel que $m\epsilon \leq R < (m+1)\epsilon$~: cet entier $m$ est appelé partie entière de $R/\epsilon$ et souvent noté $m = \lfloor R/\epsilon \rfloor$ (et l'entier $(m+1)$ est noté $m+1 = \lceil R/\epsilon \rceil$).
\stopproclaim

\stopchapter
\stoptext
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% end proclaim-leftbar.tex

Best regards: Otared

> On 20 Nov 2020, at 02:06, Johann Birnick <johann.birnick@hotmail.de> wrote:
> 
> On Thu, 2020-11-19 at 11:25 +0100, mf wrote:
>> Il 19/11/20 10:39, Johann Birnick ha scritto:
>>> Hello,
>>> 
>>> I want to setup some fancy theorem style for my math notes. For this I want
>>> to
>>> have a colored margin line next to my theorems. It should look like this:
>>> 
>>> https://i.ibb.co/F6L59pD/idea.png
>>> 
>>> The line should stretch over the whole theorem, not just the first line.
>>> (But the latter would be a beginning, though.)
>>> 
>>> Important to note is that the line should be *on the margin*, not in the
>>> text.
>>> 
>>> So do you have an idea on how I could do that? I would greatly appreciate
>>> your
>>> answer. Thank you!
>>> 

>> Look for \startsidebar \stopsidebar and \setupsidebar.
>> 
>> \setupsidebar [...,...] [..,..=..,..]
>>                    1           2
>>                   OPT
>> 1 NAME
>> 2 rulethickness      = DIMENSION
>>    rulecolor          = COLOR
>>    alternative        = NUMBER
>>    topoffset          = DIMENSION
>>    bottomoffset       = DIMENSION
>>    distance           = DIMENSION
>>    leftmargindistance = DIMENSION
>>    level              = NUMBER
>> 
>> Massi
> 
> Thank you! I have two more questions:
> 
> 1. Where can I find a documentation for this command? Even Google finds nothing.
> 
> 2. Unfortunately, adding \startsidebar and \stopsidebar into the `before` and
> `after` options of my enumeration messes up whitespace at the end. Here is a
> screenshot:
> 
> https://s12.directupload.net/images/201120/lfmwp5lh.png
> 
> The theorem is a normal enumeration. Like this:
> 
> \defineenumeration[Theorem][before=\startsidebar, after=stopsidebar]
> 
> I would greatly appreciate your help.
> 
> Thank you!
> Johann
> 
> ___________________________________________________________________________________
> 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
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Piecewise margin line
  2020-11-20  1:06   ` Johann Birnick
  2020-11-20  4:13     ` Otared Kavian
@ 2020-11-20  7:17     ` mf
  2020-11-20 13:34       ` Johann Birnick
  1 sibling, 1 reply; 6+ messages in thread
From: mf @ 2020-11-20  7:17 UTC (permalink / raw)
  To: ntg-context

Il 20/11/20 02:06, Johann Birnick ha scritto:
> On Thu, 2020-11-19 at 11:25 +0100, mf wrote:
>> Il 19/11/20 10:39, Johann Birnick ha scritto:
>>> Hello,
>>>
>>> I want to setup some fancy theorem style for my math notes. For this I want
>>> to
>>> have a colored margin line next to my theorems. It should look like this:
>>>
>>> https://i.ibb.co/F6L59pD/idea.png
>>>
>>> The line should stretch over the whole theorem, not just the first line.
>>> (But the latter would be a beginning, though.)
>>>
>>> Important to note is that the line should be *on the margin*, not in the
>>> text.
>>>
>>> So do you have an idea on how I could do that? I would greatly appreciate
>>> your
>>> answer. Thank you!
>>>
>> Look for \startsidebar \stopsidebar and \setupsidebar.
>>
>> \setupsidebar [...,...] [..,..=..,..]
>>                     1           2
>>                    OPT
>> 1 NAME
>> 2 rulethickness      = DIMENSION
>>     rulecolor          = COLOR
>>     alternative        = NUMBER
>>     topoffset          = DIMENSION
>>     bottomoffset       = DIMENSION
>>     distance           = DIMENSION
>>     leftmargindistance = DIMENSION
>>     level              = NUMBER
>>
>> Massi
> 
> Thank you! I have two more questions:
> 
> 1. Where can I find a documentation for this command? Even Google finds nothing.

I took it from the "Commands" manual. You can find it here:

./tex/texmf-context/doc/context/documents/general/qrcs/setup-en.pdf

in your ConTeXt directory.

> 2. Unfortunately, adding \startsidebar and \stopsidebar into the `before` and
> `after` options of my enumeration messes up whitespace at the end. Here is a
> screenshot:
> 
> https://s12.directupload.net/images/201120/lfmwp5lh.png
> 
> The theorem is a normal enumeration. Like this:
> 
> \defineenumeration[Theorem][before=\startsidebar, after=stopsidebar]
> 

\startsidebar and \stopsidebar should be called in horizontal mode, 
since you might want to mark in the margin only a part of a paragraph.
In that case the bar would extend from the start of the marked text 
until its end.
The default behavior of the bar is extending from the top of the first 
line to the bottom of the last one.
Once you ended a paragraph with \par, you're in a new line and the bar 
will extend to the bottom of it.

A solution could be something like this:

\dontleavehmode\startsidebar Theorem: ... \stopsidebar\par

Otherwise you could adjust the bottomoffset parameter to the line 
height, so that the bar ends a line height before its default.

That way you could keep

 > \defineenumeration[Theorem][before=\startsidebar, after=stopsidebar]

or, better:

\definesidebar[Theorem][bottomoffset=...]
\defineenumeration[Theorem][before={\startsidebar[Theorem]},after=\stopsidebar]

Massi
___________________________________________________________________________________
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
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Piecewise margin line
  2020-11-20  7:17     ` mf
@ 2020-11-20 13:34       ` Johann Birnick
  0 siblings, 0 replies; 6+ messages in thread
From: Johann Birnick @ 2020-11-20 13:34 UTC (permalink / raw)
  To: ntg-context

On Fri, 2020-11-20 at 08:17 +0100, mf wrote:
> Il 20/11/20 02:06, Johann Birnick ha scritto:
> > On Thu, 2020-11-19 at 11:25 +0100, mf wrote:
> > > Il 19/11/20 10:39, Johann Birnick ha scritto:
> > > > Hello,
> > > > 
> > > > I want to setup some fancy theorem style for my math notes. For this I
> > > > want
> > > > to
> > > > have a colored margin line next to my theorems. It should look like
> > > > this:
> > > > 
> > > > https://i.ibb.co/F6L59pD/idea.png
> > > > 
> > > > The line should stretch over the whole theorem, not just the first line.
> > > > (But the latter would be a beginning, though.)
> > > > 
> > > > Important to note is that the line should be *on the margin*, not in the
> > > > text.
> > > > 
> > > > So do you have an idea on how I could do that? I would greatly
> > > > appreciate
> > > > your
> > > > answer. Thank you!
> > > > 
> > > Look for \startsidebar \stopsidebar and \setupsidebar.
> > > 
> > > \setupsidebar [...,...] [..,..=..,..]
> > >                     1           2
> > >                    OPT
> > > 1 NAME
> > > 2 rulethickness      = DIMENSION
> > >     rulecolor          = COLOR
> > >     alternative        = NUMBER
> > >     topoffset          = DIMENSION
> > >     bottomoffset       = DIMENSION
> > >     distance           = DIMENSION
> > >     leftmargindistance = DIMENSION
> > >     level              = NUMBER
> > > 
> > > Massi
> > 
> > Thank you! I have two more questions:
> > 
> > 1. Where can I find a documentation for this command? Even Google finds
> > nothing.
> 
> I took it from the "Commands" manual. You can find it here:
> 
> ./tex/texmf-context/doc/context/documents/general/qrcs/setup-en.pdf
> 
> in your ConTeXt directory.
> 
> > 2. Unfortunately, adding \startsidebar and \stopsidebar into the `before`
> > and
> > `after` options of my enumeration messes up whitespace at the end. Here is a
> > screenshot:
> > 
> > https://s12.directupload.net/images/201120/lfmwp5lh.png
> > 
> > The theorem is a normal enumeration. Like this:
> > 
> > \defineenumeration[Theorem][before=\startsidebar, after=stopsidebar]
> > 
> 
> \startsidebar and \stopsidebar should be called in horizontal mode, 
> since you might want to mark in the margin only a part of a paragraph.
> In that case the bar would extend from the start of the marked text 
> until its end.
> The default behavior of the bar is extending from the top of the first 
> line to the bottom of the last one.
> Once you ended a paragraph with \par, you're in a new line and the bar 
> will extend to the bottom of it.
> 
> A solution could be something like this:
> 
> \dontleavehmode\startsidebar Theorem: ... \stopsidebar\par
> 
> Otherwise you could adjust the bottomoffset parameter to the line 
> height, so that the bar ends a line height before its default.
> 
> That way you could keep
> 
>  > \defineenumeration[Theorem][before=\startsidebar, after=stopsidebar]
> 
> or, better:
> 
> \definesidebar[Theorem][bottomoffset=...]
> \defineenumeration[Theorem][before={\startsidebar[Theorem]},after=\stopsidebar
> ]
> 
> Massi

Thank you very much. Now I understand why it happens. The `after` gets called
after the end of the paragraph.

Unfortunately,

[before=\dontleavehmode\startsidebar, after=\stopsidebar\par]

doesn't work, it doesn't change anything.
I have also tried adding

\nowhitespace
\startlinecorrection ... \stoplinecorrection

at certain positions, but it doesn't change anything. Also, I have tried to call
\startsidebar by hand after \startTheorem and call \stopsidebar with
[closesymbol=\stopsidebar]. That works! But there is no field in the enumeration
where I can put [...=\startsidebar]. The fields 'stopper', 'right',
'titlecommand' etc. don't work.

Do you have any further ideas?

There must be a possibility! You also need that e.g. for setting a background
color to your enumeration. I noticed that using

[before=\starttextbackground, after=\stoptextbackground]

also messes up whitespace... .

I would again greatly appreciate your help.

Thank you!
Johann

___________________________________________________________________________________
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
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2020-11-20 13:34 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-11-19  9:39 Piecewise margin line Johann Birnick
2020-11-19 10:25 ` mf
2020-11-20  1:06   ` Johann Birnick
2020-11-20  4:13     ` Otared Kavian
2020-11-20  7:17     ` mf
2020-11-20 13:34       ` Johann Birnick

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).