ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: Johann Birnick <johann.birnick@hotmail.de>
To: ntg-context@ntg.nl
Subject: Re: Piecewise margin line
Date: Fri, 20 Nov 2020 14:34:19 +0100	[thread overview]
Message-ID: <DB8PR03MB6236BC18EF325E8E21D40DD2FBFF0@DB8PR03MB6236.eurprd03.prod.outlook.com> (raw)
In-Reply-To: <1a5bcb39-2235-12d1-8481-099ed9417621@fastwebnet.it>

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
___________________________________________________________________________________

      reply	other threads:[~2020-11-20 13:34 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-11-19  9:39 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 message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=DB8PR03MB6236BC18EF325E8E21D40DD2FBFF0@DB8PR03MB6236.eurprd03.prod.outlook.com \
    --to=johann.birnick@hotmail.de \
    --cc=ntg-context@ntg.nl \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).