Received: from webgate.proteosys.de (mail.proteosys-ag.com [62.225.9.49]) by lucy.proteosys (8.11.0/8.9.3/SuSE Linux 8.9.3-0.1) with ESMTP id f38KN8429096 for ; Sun, 8 Apr 2001 22:23:08 +0200 Received: by webgate.proteosys.de (8.11.0/8.11.0) with ESMTP id f38KN8H21630 . for ; Sun, 8 Apr 2001 22:23:08 +0200 Received: from mail.Uni-Mainz.DE (mailserver1.zdv.Uni-Mainz.DE [134.93.8.30]) by mailgate1.zdv.Uni-Mainz.DE (8.11.0/8.10.2) with ESMTP id f38KN7V18270 for ; Sun, 8 Apr 2001 22:23:07 +0200 (MET DST) MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----_=_NextPart_001_01C0C069.B9579E00" Received: from mailgate2.zdv.Uni-Mainz.DE (mailgate2.zdv.Uni-Mainz.DE [134.93.8.57]) by mail.Uni-Mainz.DE (8.9.3/8.9.3) with ESMTP id WAA08338 for ; Sun, 8 Apr 2001 22:23:07 +0200 (MEST) Received: from mail.listserv.gmd.de (mail.listserv.gmd.de [192.88.97.5]) by mailgate2.zdv.Uni-Mainz.DE (8.11.0/8.10.2) with ESMTP id f38KN6J08670 for ; Sun, 8 Apr 2001 22:23:06 +0200 (MET DST) X-MimeOLE: Produced By Microsoft Exchange V6.5 Received: from mail.listserv.gmd.de (192.88.97.5) by mail.listserv.gmd.de (LSMTP for OpenVMS v1.1a) with SMTP id <7.D99990B9@mail.listserv.gmd.de>; Sun, 8 Apr 2001 22:22:24 +0200 Received: from RELAY.URZ.UNI-HEIDELBERG.DE by RELAY.URZ.UNI-HEIDELBERG.DE (LISTSERV-TCP/IP release 1.8b) with spool id 493336 for LATEX-L@RELAY.URZ.UNI-HEIDELBERG.DE; Sun, 8 Apr 2001 22:23:02 +0200 Received: from ix.urz.uni-heidelberg.de (mail.urz.uni-heidelberg.de [129.206.119.234]) by relay.urz.uni-heidelberg.de (8.8.8/8.8.8) with ESMTP id WAA09135 for ; Sun, 8 Apr 2001 22:23:00 +0200 (MET DST) Received: from relay.uni-heidelberg.de (relay.uni-heidelberg.de [129.206.100.212]) by ix.urz.uni-heidelberg.de (8.8.8/8.8.8) with ESMTP id WAA52878 for ; Sun, 8 Apr 2001 22:23:01 +0200 Received: from sender.ngi.de (sender.ngi.de [212.79.47.18]) by relay.uni-heidelberg.de (8.10.2+Sun/8.10.2) with ESMTP id f38KN1f13460 for ; Sun, 8 Apr 2001 22:23:01 +0200 (MET DST) Received: from istrati.zdv.uni-mainz.de (manz-3e364fd3.pool.mediaWays.net [62.54.79.211]) by sender.ngi.de (Postfix) with ESMTP id B9AD396D59 for ; Sun, 8 Apr 2001 22:13:46 +0200 (CEST) Received: (from latex3@localhost) by istrati.zdv.uni-mainz.de (8.9.3/8.9.3/SuSE Linux 8.9.3-0.1) id WAA23431; Sun, 8 Apr 2001 22:20:03 +0200 In-Reply-To: References: Return-Path: X-Mailer: VM 6.75 under Emacs 20.4.1 X-Authentication-Warning: istrati.zdv.uni-mainz.de: latex3 set sender to frank@mittelbach-online.de using -f Content-class: urn:content-classes:message Subject: Re: Justification/std template Date: Sun, 8 Apr 2001 21:20:03 +0100 Message-ID: <15056.51187.541315.208840@istrati.zdv.uni-mainz.de> X-MS-Has-Attach: X-MS-TNEF-Correlator: From: "Frank Mittelbach" Sender: "Mailing list for the LaTeX3 project" To: "Multiple recipients of list LATEX-L" Reply-To: "Mailing list for the LaTeX3 project" Status: R X-Status: X-Keywords: X-UID: 4030 This is a multi-part message in MIME format. ------_=_NextPart_001_01C0C069.B9579E00 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Lars, > I just noticed that the std template of type justification in the xhj > package globally sets the paragraph justification; at least its = settings > aren't contained in an environment. How should one then go about with > implementing an environment that simply changes the justification for = the > paragraphs inside it? To me this seems like a task which should be = simple; > it shouldn't require using the galley2 interfaces. what's wrong with the idea of using something like the galley inferface throughout (beside the fact that it isn't good enough yet (even as a = prototype implementation))? but i think that if you want extended control like offered by the galley interface you can't simply turn it on and off but have to stay within = its model. but perhaps you are right and the whole thing needs further thought. throughout last week i worked on a frontmatter template interface for = handling complex author/address relations etc. and for that I also needed to = interface to paragraph justification. Since the galley interface isn't yet good to = be usable in arbitrary circumstances I ended up implementnig a very = primitive version of the xhj templates that can work on their own (just to get = that frontmatter stuff working) as side issue: is the xhj template at the right level of detail anyhow? in a number of classes i wrote in the past i used the following = definition to get myself something like a paragraph justification/setup interface = where i could define named instances: \newcommand*\DeclareParagraphLayout[9]{ \@namedef{#1Para}{ \fontsize{#2}{#3}\selectfont #9 \setlength\parindent {#4} \setlength\leftskip {#5} \setlength\rightskip {#6} \@rightskip\rightskip \setlength\parfillskip{#7} \setlength\parskip {#8} } } this was then used like this: \DeclareParagraphLayout{XFMaddress} {10pt}{11pt} {0pt}{\bodytextparindent plus 1fil} {\bodytextparindent plus 1fil}{0pt} {0pt} {\SetInternalRegister\hyphenpenalty{2000} \SetInternalRegister\finalhyphendemerits{20000} \itshape } in other words, like the justification template plus some fontsize/baselineskip info, plus some extra stuff if needed. my experience was that those things nearly always needed specification anyhow, so why not combine them? any thoughts? frank ------_=_NextPart_001_01C0C069.B9579E00 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Re: Justification/std template

Lars,

 > I just noticed that the std template of = type justification in the xhj
 > package globally sets the paragraph = justification; at least its settings
 > aren't contained in an environment. How = should one then go about with
 > implementing an environment that simply = changes the justification for the
 > paragraphs inside it? To me this seems = like a task which should be simple;
 > it shouldn't require using the galley2 = interfaces.

what's wrong with the idea of using something like the = galley inferface
throughout (beside the fact that it isn't good enough = yet (even as a prototype
implementation))?

but i think that if you want extended control like = offered by the galley
interface you can't simply turn it on and off but = have to stay within its
model.

but perhaps you are right and the whole thing needs = further thought.

throughout last week i worked on a frontmatter = template interface for handling
complex author/address relations etc. and for that I = also needed to interface
to paragraph justification. Since the galley = interface isn't yet good to be
usable in arbitrary circumstances I ended up = implementnig a very primitive
version of the xhj templates that can work on their = own (just to get that
frontmatter stuff working)

as side issue: is the xhj template at the right level = of detail anyhow?

in a number of classes i wrote in the past i used the = following definition to
get myself something like a paragraph = justification/setup interface where i
could define named instances:

\newcommand*\DeclareParagraphLayout[9]{
 \@namedef{#1Para}{
  \fontsize{#2}{#3}\selectfont
          = #9
  \setlength\parindent  {#4}
  \setlength\leftskip   {#5}
  \setlength\rightskip  {#6}
  \@rightskip\rightskip
  \setlength\parfillskip{#7}
  \setlength\parskip    = {#8}
  }
}

this was then used like this:

\DeclareParagraphLayout{XFMaddress}
  {10pt}{11pt}
  {0pt}{\bodytextparindent plus 1fil}
       = {\bodytextparindent plus 1fil}{0pt}
  {0pt}
  = {\SetInternalRegister\hyphenpenalty{2000}
   = \SetInternalRegister\finalhyphendemerits{20000}
   \itshape
  }

in other words, like the justification template plus = some
fontsize/baselineskip info, plus some extra stuff if = needed.

my experience was that those things nearly always = needed specification
anyhow, so why not combine them?

any thoughts?

frank

------_=_NextPart_001_01C0C069.B9579E00--