ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: "Jairo A. del Rio" <jairoadelrio6@gmail.com>
To: mailing list for ConTeXt users <ntg-context@ntg.nl>
Subject: Re: Using \overloaded
Date: Sun, 24 Jan 2021 16:20:33 -0500	[thread overview]
Message-ID: <CAKyqqaaq0qcAXLtDAihzigu1saX2d0v8jKc8Zv=6pdykJzersQ@mail.gmail.com> (raw)
In-Reply-To: <b953b7e4-6676-bfe0-bb14-22d0dad1be17@rik.users.panix.com>


[-- Attachment #1.1: Type: text/plain, Size: 3752 bytes --]

Hi, Rik. If it helps, flags are explained in lowlevel-security manual:

https://www.pragma-ade.com/general/manuals/lowlevel-security.pdf

Jairo :)

El dom, 24 de ene. de 2021 a la(s) 16:16, Rik Kabel (
ConTeXt@rik.users.panix.com) escribió:

> On 1/24/2021 04:33, Wolfgang Schuster wrote:
> > Rik Kabel schrieb am 24.01.2021 um 05:13:
> >> Hans and all,
> >>
> >> Preparing my standard environments for future strict enforcement of
> >> overloading prevention, I have run into one issue.
> >>
> >> I had been using the following construction to change the formatting
> >> of URLs:
> >>
> >>     \let\OrigHyphenatedurl\hyphenatedurl
> >>     \starttexdefinition hyphenatedurl #URL
> >>        \begingroup
> >>          \URLfont\OrigHyphenatedurl{#URL}
> >>        \endgroup
> >>     \stoptexdefinition
> >
> >
> > You can use a hook to change the font for \hyphenatedurl.
> >
> > \starttext
> >
> > \hyphenatedurl{https://wiki.contextgarden.net/Main_Page}
> >
> > \appendtoks
> >   \it
> > \to \everyhyphenatedurl
> >
> > \hyphenatedurl{https://wiki.contextgarden.net/Main_Page}
> >
> > \stoptext
> >
> >
> >> This results in the following warning about overloading \hyphenatedurl:
> >>
> >>     csname overload > warning, protection level 3, control sequence
> >>     'hyphenatedurl', properties 'permanent protected', file
> >>     'env_layout.mkvi', line 1
> >>
> >> I have tried adding \overloaded to indicate the intentional
> >> overloading, but \overloaded cannot be used with \starttexdefinition,
> >> so I rewrote it as:
> >>
> >>     \let\OrigHyphenatedurl\hyphenatedurl
> >>     \overloaded\define[1]\hyphenatedurl{%
> >>        \begingroup%
> >>          \URLfont\OrigHyphenatedurl{#1}%
> >>        \endgroup}%
> >>
> >> but that (and also with \overloaded\def\hyphenatedurl#1...) gives the
> >> same (except for the line number) warning:
> >>
> >>     csname overload > warning, protection level 3, control sequence
> >>     'hyphenatedurl', properties 'permanent protected', file
> >>     'env_layout.mkvi', line 822
> >>
> >> So, what is the proper way to indicate intentional overloading? Or
> >> should this redefinition be done in another way?
> >
> >
> > The best solution is *to not* overload commands because there are either
> > alternative ways to achieve the desired result or other commands which
> > can be used.
> >
> >
> > \overloadmode=4
> >
> > \starttext
> >
> > \permanent\def\mycommand#1{[#1]}
> >
> > \mycommand{Old definition}
> >
> > \pushoverloadmode
> >
> > \aliased\let\originalmycommand\mycommand
> >
> > \permanent\def\mycommand#1%
> >   {{\it\originalmycommand{#1}}}
> >
> > \popoverloadmode
> >
> > \mycommand{New definition}
> >
> > \stoptext
> >
> >
> > Wolfgang
>
> Thank you, Wolfgang (and Hans),
>
> The hook is perfect for this. I had avoided that construction for a long
> time thinking that it is too low-level, but looking at it again it seems
> to be the right thing here.
>
> I can find no information on \aliased and the push/pop for overloademode
> and such, so will leave documenting that in the wiki to somebody with a
> few more clues.
>
> --
> Rik
>
>
> ___________________________________________________________________________________
> 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
>
> ___________________________________________________________________________________
>

[-- Attachment #1.2: Type: text/html, Size: 5508 bytes --]

[-- Attachment #2: Type: text/plain, Size: 493 bytes --]

___________________________________________________________________________________
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:[~2021-01-24 21:20 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-24  4:13 Rik Kabel
2021-01-24  9:33 ` Wolfgang Schuster
2021-01-24 21:16   ` Rik Kabel
2021-01-24 21:20     ` Jairo A. del Rio [this message]
2021-01-24 21:53     ` Hans Hagen
2021-01-24 11:56 ` Hans Hagen

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='CAKyqqaaq0qcAXLtDAihzigu1saX2d0v8jKc8Zv=6pdykJzersQ@mail.gmail.com' \
    --to=jairoadelrio6@gmail.com \
    --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).