From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.comp.tex.context/27107 Path: news.gmane.org!not-for-mail From: Hans Hagen Newsgroups: gmane.comp.tex.context Subject: Re: \setupframed[...][...=...] Date: Wed, 12 Apr 2006 10:56:31 +0200 Message-ID: <443CC0BF.1080205@wxs.nl> References: <443C48FF.40504@seznam.cz> Reply-To: mailing list for ConTeXt users NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Trace: sea.gmane.org 1144832204 30747 80.91.229.2 (12 Apr 2006 08:56:44 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Wed, 12 Apr 2006 08:56:44 +0000 (UTC) Original-X-From: ntg-context-bounces@ntg.nl Wed Apr 12 10:56:42 2006 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 ciao.gmane.org with esmtp (Exim 4.43) id 1FTb9Q-0008SE-I2 for gctc-ntg-context-518@m.gmane.org; Wed, 12 Apr 2006 10:56:36 +0200 Original-Received: from localhost (localhost [127.0.0.1]) by ronja.ntg.nl (Postfix) with ESMTP id 2D82312778; Wed, 12 Apr 2006 10:56:36 +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 14125-01-3; Wed, 12 Apr 2006 10:56:31 +0200 (CEST) Original-Received: from ronja.vet.uu.nl (localhost [127.0.0.1]) by ronja.ntg.nl (Postfix) with ESMTP id 3D2F01277E; Wed, 12 Apr 2006 10:56:31 +0200 (CEST) Original-Received: from localhost (localhost [127.0.0.1]) by ronja.ntg.nl (Postfix) with ESMTP id 73D551277E for ; Wed, 12 Apr 2006 10:56:29 +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 14125-01-2 for ; Wed, 12 Apr 2006 10:56:28 +0200 (CEST) Original-Received: from mail.pragma-ade.net (dsl-212-84-128-085.solcon.nl [212.84.128.85]) by ronja.ntg.nl (Postfix) with SMTP id 3808C12778 for ; Wed, 12 Apr 2006 10:56:28 +0200 (CEST) Original-Received: from [10.100.1.102] (unverified [10.100.1.102]) by controller-1 (SurgeMail 3.5b3) with ESMTP id 12272 for ; Wed, 12 Apr 2006 12:56:28 +0400 User-Agent: Thunderbird 1.5 (Windows/20051201) Original-To: mailing list for ConTeXt users In-Reply-To: <443C48FF.40504@seznam.cz> X-Server: High Performance Mail Server - http://surgemail.com r=-274017400 X-Authenticated-User: hagen@controller-1 X-Virus-Scanned: amavisd-new at ntg.nl X-BeenThere: ntg-context@ntg.nl X-Mailman-Version: 2.1.7 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:27107 Archived-At: Vit Zyka wrote: > Hi, > > I tied to extend \setupframed[...=...] to also \setupframed[...][...=...]: > > --------------------------------- > \unprotect > \def\setupframed{\dodoubleempty\dosetupframed} > \def\dosetupframed{% > \ifsecondargument > \@EA\dodoublesetupframed > \else > \@EA\dosinglesetupframed > \fi > } > \def\dosinglesetupframed[#1][#2]{\getparameters[\??oi][#1]} > \def\dodoublesetupframed[#1][#2]{% > \bgroup > \def\dodoubleempty{}% > \def\doframed[##1]{##1}% > \xdef\tmp{\getvalue{#1}}% > \egroup > > \@EA\setvalue\@EA{\@EA#1\@EA}\@EA{\@EA\dodoubleempty\@EA\doframed\@EA[\tmp,#2]}% > } > \protect > > \starttext > \setupframed[framecolor=yellow] \framed{A} > \defineframed[myframed][framecolor=blue] \myframed{B} > \setupframe[myframe][framecolor=red] \myframed{C} > \stoptext > ------------------------------------- > > it works but with fully expansion of options. So it works a bit > differently in a cases > 1) > \def\ONorOFF{off} > \defineframed[myframed][frame=\ONorOFF] > \def\ONorOFF{on}\myframed{A} > > 2) > \def\ONorOFF{off} > \defineframed[myframed][frame=\ONorOFF] > \setupframed[myframe][framecolor=red] > \def\ONorOFF{on}\myframed{A} > > Is there some simple solution? Or it has to be rewritten in a way like > sure, later (fields do something similar) > other \definesomething[...] (storing every parameter/definition-instance > in a macro)? If sometimes this code would be reviewed I vote for doing > \setupframed in this 'standard' ConTeXt way. > the reason for not doing it that way is that it takes less memory; framed preallocates quite some hash entries Hans ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------