ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: h h extern <pragma@wxs.nl>
Subject: Re: cz support
Date: Tue, 25 Jan 2005 20:54:33 +0100	[thread overview]
Message-ID: <41F6A3F9.1040704@wxs.nl> (raw)
In-Reply-To: <41F580A3.90203@seznam.cz>

Vit Zyka wrote:
> Hallo Hans and other ConTeXters,
> 
> I have started to collect and clean up Czech ConTeXt localization. And I 
> have discovered that Tomas Hudec includeded Czech (non-trivial) sorting 
> rules into texutils.pl (calling czsort.pl from Jan Pazdziora). 
> Unfortunately it was not incorporated into official ConTeXt disribution.
> 
> Hans, what is your prefereble solution in case of local sorting rules? I 
> know, there is \definesortkey, but this mechanism is insufficient for 
> Czech. I think that calling external Perl sorting routine is a suitable 
> solution. If so, it can be incorporated into current version? Files are 
> attached.

in order to do that:

- the pm code should move into texutil
- we should find a way to hook the switch into texexec

now, apart from such an effort, i think we should rethink sorting;

- no funny encodings which demands the sorter to be encoding aware
- no locale dependencies
- readable sorting code -)

steps:

- write named glyphs to the output:
- no longer use direct code in definecommand and defineaccent, i.e.
- define the fallbacks as 'definecharacter ones'

the last two steps actually come first (since adam l. is quite fluent in the 
character names and such, i guess that the both of us need to look into that and 
do that in 'one move'); after that i can rewrite the sort/index code to become
aware of named glyphs and languages, and we can then plug in language specific 
sorting rules [taking care of xml at teh same time]

[it's worth considering to drop the non etex code]

named glyphs are not so much a problem, but we need to clean up the
fallback encoding defs a bit in order to prevent funny expansion

\def\literateencodedtokens
   {% \let\dohandleaccent   \keephandleaccent
    % \let\dohandlecommand  \keephandlecommand
    \let\dohandlecharacter\keephandlecharacter}

\def\convertmeaning#1\to % watch the double expansion !
   {\bgroup
      \honorunexpanded
     %\dontexpandencoding % new
      \literateencodedtokens % newer
      \xdef\@@globalexpanded{#1}%
      \xdef\@@globalexpanded{\@@globalexpanded}%
    \egroup
    \convertcommand\@@globalexpanded\to}

\protect

\enableencoding[texnansi] \setupregister[index][keyexpansion=yes]

\starttext

\defineactivecharacter * {\eacute} test \index{test \eacute * \'e test}

\stoptext



-----------------------------------------------------------------
                                           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
-----------------------------------------------------------------

  reply	other threads:[~2005-01-25 19:54 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-01-24 23:11 Vit Zyka
2005-01-25 19:54 ` h h extern [this message]
2005-01-26 10:17   ` Vit Zyka

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=41F6A3F9.1040704@wxs.nl \
    --to=pragma@wxs.nl \
    --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).