From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.comp.tex.context/44733 Path: news.gmane.org!not-for-mail From: "Wolfgang Schuster" Newsgroups: gmane.comp.tex.context Subject: Re: Equivalent of LaTeX \cancel? and Thanks! Date: Tue, 14 Oct 2008 10:10:47 +0200 Message-ID: <115224fb0810140110g20615db6i6ed3955aaa93b6fd@mail.gmail.com> References: <48F206FF.8090007@wxs.nl> Reply-To: mailing list for ConTeXt users NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1223971958 31751 80.91.229.12 (14 Oct 2008 08:12:38 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 14 Oct 2008 08:12:38 +0000 (UTC) To: "mailing list for ConTeXt users" Original-X-From: ntg-context-bounces@ntg.nl Tue Oct 14 10:13:34 2008 Return-path: Envelope-to: gctc-ntg-context-518@m.gmane.org Original-Received: from ronja.vet.uu.nl ([131.211.172.88] helo=ronja.ntg.nl) by lo.gmane.org with esmtp (Exim 4.50) id 1Kpf25-0001Te-Ke for gctc-ntg-context-518@m.gmane.org; Tue, 14 Oct 2008 10:13:33 +0200 Original-Received: from localhost (localhost [127.0.0.1]) by ronja.ntg.nl (Postfix) with ESMTP id 9BA3B1FD19; Tue, 14 Oct 2008 10:12:26 +0200 (CEST) Original-Received: from ronja.ntg.nl ([127.0.0.1]) by localhost (smtp.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with LMTP id 22340-01-2; Tue, 14 Oct 2008 10:11:24 +0200 (CEST) Original-Received: from ronja.vet.uu.nl (localhost [127.0.0.1]) by ronja.ntg.nl (Postfix) with ESMTP id D51701FC90; Tue, 14 Oct 2008 10:11:24 +0200 (CEST) Original-Received: from localhost (localhost [127.0.0.1]) by ronja.ntg.nl (Postfix) with ESMTP id 4A77C1FC84 for ; Tue, 14 Oct 2008 10:11:24 +0200 (CEST) Original-Received: from ronja.ntg.nl ([127.0.0.1]) by localhost (smtp.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with LMTP id 22340-01 for ; Tue, 14 Oct 2008 10:10:47 +0200 (CEST) Original-Received: from mu-out-0910.google.com (mu-out-0910.google.com [209.85.134.186]) by ronja.ntg.nl (Postfix) with ESMTP id B4AD51FCC6 for ; Tue, 14 Oct 2008 10:10:47 +0200 (CEST) Original-Received: by mu-out-0910.google.com with SMTP id w9so2030613mue.4 for ; Tue, 14 Oct 2008 01:10:47 -0700 (PDT) Original-Received: by 10.103.203.4 with SMTP id f4mr4286635muq.8.1223971847447; Tue, 14 Oct 2008 01:10:47 -0700 (PDT) Original-Received: by 10.103.215.10 with HTTP; Tue, 14 Oct 2008 01:10:47 -0700 (PDT) In-Reply-To: <48F206FF.8090007@wxs.nl> Content-Disposition: inline X-Virus-Scanned: amavisd-new at ntg.nl X-BeenThere: ntg-context@ntg.nl X-Mailman-Version: 2.1.9 Precedence: list List-Id: mailing list for ConTeXt users List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: ntg-context-bounces@ntg.nl Errors-To: ntg-context-bounces@ntg.nl X-Virus-Scanned: amavisd-new at ntg.nl Xref: news.gmane.org gmane.comp.tex.context:44733 Archived-At: On Sun, Oct 12, 2008 at 4:17 PM, Hans Hagen wrote: > Benjamin R. Haskell wrote: >> Hi all, >> >> I recently transitioned from LaTeX to ConTeXt. There was some particular >> thing I needed to do (which escapes me at the moment) that was far, far >> easier to do in ConTeXt than in LaTeX. And, as I've learned, I've found >> that that's quite often the case. So, a huge thank you to everyone >> involved. >> >> A couple hours ago I was annoyed that I couldn't find an equivalent for >> the LaTeX 'cancel' environment/command/style(?)[1]. Now, I'm truly amazed >> that 'cancel' required a whole package. >> >> After discovering that 'underline' and 'strikethrough' were implemented as >> overlays, I quickly coded up the following: >> >> \startuseMPgraphic{MyCancel} >> draw (0,.2*\overlayheight)--(\overlaywidth,\overlayheight); >> \stopuseMPgraphic >> \defineoverlay[mycancel][\useMPgraphic{MyCancel}] >> >> \def\cancel#1{\framed[background=mycancel,frame=off]{#1}} >> >> >> Now, I'm sure this is not *quite* the right way to do it. The 'cancel'ed >> items end up being placed too high on the line, and other spacings are >> slightly off. But, taking a cue from underlining, I kept the MyCancel >> graphic and tried: >> >> \definetextbackground >> [cancel] >> [location=text, >> alternative=1, >> background=mycancel] >> % plus boilerplate for setting up \startcancel\stopcancel >> >> ....But, while composing this email, I found what I wanted, which still >> isn't ``right'' in some sense: >> >> \def\cancel#1{\framed[background=mycancel,frame=off,width=fit,height=fit,strut=no]{#1}} >> >> I found the parameters for \framed. I'm still learning to Read The >> Fantastic Manuals, but sent this anyway since I wanted to say thanks. > > > \startuseMPgraphic{mpos:par:cancel} > for i=1 upto nofmultipars : > draw > .2[llcorner multipars[i],ulcorner multipars[i]] -- > .2[urcorner multipars[i],lrcorner multipars[i]] ; > endfor ; > \stopuseMPgraphic > > \definetextbackground[cancel][location=text,mp=mpos:par:cancel] > > \def\startcancel{\starttextbackground[cancel]} > \def\stopcancel {\stoptextbackground} > \def\cancel {\groupedcommand\startcancel\stopcancel} > > however, this is kind of fuzzy when you cross lines > > an alternative is to use: > > \definetextbackground[cancel][location=text,alternative=4,background=,frame=off] > > \definestartstop > [cancel] > [before={\starttextbackground[cancel]}, > after=\stoptextbackground] \definestartstop is not neccessary because \definetextbackground defines \start/\stopcancel and \cancel as shortcuts ;-) > however, there is a glitch in the drawing so you need a patch > > \startMPinclusions > def draw_multi_pars = > for i=1 upto nofmultipars : > do_draw_par(multipars[i]) ; > if boxgridtype= 1 : > draw baseline_grid (multipars[i],if multilocs[i]=1: down else: up > fi,true) ; % withcolor boxgridcolor ; > elseif boxgridtype= 2 : > draw baseline_grid (multipars[i],if multilocs[i]=1: down else: up > fi,false) ; % withcolor boxgridcolor ; > elseif boxgridtype= 3 : > draw baseline_grid (multipars[i],if multilocs[i]=1: down else: up > fi,true) ; % withcolor boxgridcolor ; > draw baseline_grid (multipars[i],if multilocs[i]=1: down else: up > fi,true) shifted (0,ExHeight) ; % withcolor boxgridcolor ; > elseif boxgridtype= 4 : > draw baseline_grid (multipars[i],if multilocs[i]=1: down else: up > fi,true) shifted (0,ExHeight/2) ; % withcolor boxgridcolor ; > elseif boxgridtype=11 : > draw > graphic_grid(multipars[i],boxgriddistance,boxgriddistance,boxgriddistance/2,boxgriddistance/2) > ; > elseif boxgridtype=12 : > draw graphic_grid(multipars[i],boxgriddistance,boxgriddistance,0,0) ; > fi ; > endfor ; > enddef ; > \stopMPinclusions > > (will be fixed in the next release) Wolfgang ___________________________________________________________________________________ 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://tex.aanhet.net archive : https://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___________________________________________________________________________________