Re: [NTG-context] Sorting question

2006-01-23 Thread Vit Zyka
Henning Hraban Ramm wrote:
 Am 2006-01-23 um 01:08 schrieb Vit Zyka:
 
 ä (adiaeresis) is identical to a, ö (odiaeresis) identical to o, ü
 (udiaeresis) identical to u, the same for uppercase. ß (ssharp) is
 edentical to ss (same for uppercase, but in uppercase it's written
 as SS anyway).


 Hmmm, that is not complete: I understand that every ü, Ü, u, U  comes 
 to single group, but is uüUÜ? Let say yes. Then try
 
 
 I didn't test your code, but u, ü, U and Ü should be handled as same  
 (in normal German order)
 and u=U, ü=ue=Ü=Ue=UE in German phone book order.

Hmmm, I feel that the situation is more complicated (same as in Czech). 
Proper sorting needs several (3 or 4, perhaps some languages more?) passes:

1. pass: division - define which letters comes to the same group (it can 
be also group of letters) - defined for newtexutil.rb

2. pass: sorting with the simplified rules e.g. ü=ue=Ü=Ue=UE

3. pass: if all letter are the same according the 2. pass, then apply 
e.g. üueÜUeUE

4. ??? (perhaps problems with Czech 'Ch').

After that:

'Üb'  'üz'  'Üz'

 Greetlings from Lake Constance!

Enjoy it.
Vit

___
ntg-context mailing list
ntg-context@ntg.nl
http://www.ntg.nl/mailman/listinfo/ntg-context


Re: [NTG-context] Sorting question

2006-01-22 Thread Vit Zyka

Bernd Militzer wrote:

Hello,

is it possible to produce a sorted list without unsing the entry
\Ueberall in text?

%
\definesorting[person][personen]
\setupsorting[person][criterium = all]
%
\person{Unsinn, Klaus}
\person{Militzer, Bernd}
\person{Horten, Hans}
\person[Ueberall]{Überall, Heinrich}
%
\placelistofpersonen


 Any ideas?

We need to define (German?) sorting rules for newtexexec (newtexutil). 
Tell me in between 'Ü' have to be sorted I will try to prepare a code 
for this rule.


Vit



Thanks, Bernd





%#ConTeXt

%
%   allgemeine Grundeinstellung
%
\enableregime[windows]  % Eingabe-Codierung
\mainlanguage[de]   % Sprachmodus   
\usetypescript[modern][texnansi] 
\setupbodyfont[12pt]

%
%   Die besondere Seitenanpassung
%
\setuppapersize[a4][a4]
\setuplayout[location=singlesided]

\setuplayout[
backspace=2.46cm,topspace=1.2cm,
top=0cm,bottom=0cm,topdistance=0cm,bottomdistance=0cm,
header=1.5cm,footer=1.0cm,headerdistance=0cm,footerdistance=0cm,
leftedge=0cm,rightedge=0cm,leftedgedistance=0cm,rightedgedistance=0cm,

leftmargin=1.5cm,rightmargin=1.0cm,leftmargindistance=0.42cm,rightmargindistance=0.42cm,
width=16.5cm,height=27.4cm,
]
%
%
%   Z�hler f�r die lfdNr.
%
\global\newcount\xlfd \xlfd=0
% 
\def\LFD{\futurelet\testchar\MitOptArgLFD}

%

\def\MitOptArgLFD{\ifx[\testchar%
 \let\next\OptArgLFD \else %
 \let\next \NoOptArgLFD \fi \next}
%
% setzte den Z�hler auf bestimmten Wert
%
\def\OptArgLFD[#1]{%
{\global\xlfd=\number#1}
}
%
% erh�he den Wert um 1
% und gebe den Z�hler aus
% Besonderheit 
% zweistellige Ausgabe der Zahl also 01., 02. ... 10. 11. ...

% und Punkt
%
\def\NoOptArgLFD{%
{\global\advance\xlfd by 1\relax}
\ifnum\xlfd10
0\fi
\number\xlfd.
}
%
%Linie nach dem Namen
%
\def\myrule{ {\thinrules[n=1]\par}}
%
%
%
\starttext
%
%
% 1. ex no prob
%

\definesorting[personA][personenA]
\setupsorting[personA][criterium = all,before=\LFD,after=\myrule]

\personA{Unsinn, Klaus}
\personA{Militzer, Bernd}
\personA{Horten, Hans}


\placelistofpersonenA

\page

% 2. ex prob �berall on wrong position

%

\definesorting[personB][personenB]
\setupsorting[personB][criterium = all,before=\LFD,after=\myrule]

\personB{Unsinn, Klaus}
\personB{Militzer, Bernd}
\personB{Horten, Hans}
\personB{�berall, Heinrich}

\placelistofpersonenB

\page

% 3. ex prob �berall is missing

%
\definesorting[personC][personenC]
\setupsorting[personC][criterium = all,before=\LFD,after=\myrule]

\personC{Unsinn, Klaus}
\personC{Militzer, Bernd}
\personC{Horten, Hans}
\personC[Ueberall]{�berall, Heinrich}

\placelistofpersonenC

\page

% 4. ex prob �berall is missing

%
\definesorting[personD][personenD]
\setupsorting[personD][criterium = all,before=\LFD,after=\myrule]

\personD{Unsinn, Klaus}
\personD{Militzer, Bernd}
\personD{Horten, Hans}
\personD[Ueberall]{�berall, Heinrich}

First I use \Ueberall\ in text

\placelistofpersonenD

\page

\stoptext




___
ntg-context mailing list
ntg-context@ntg.nl
http://www.ntg.nl/mailman/listinfo/ntg-context


--
===
Ing. Vít Zýka, Ph.D. TYPOkvítek

database publishing  databazove publikovani
data maintaining and typesetting in typographic quality
priprava dat a jejich sazba v typograficke kvalite

tel.: (+420) 777 198 189 www: http://typokvitek.com
===

___
ntg-context mailing list
ntg-context@ntg.nl
http://www.ntg.nl/mailman/listinfo/ntg-context


Re: [NTG-context] Sorting question

2006-01-22 Thread Mojca Miklavec
On 1/22/06, Vit Zyka wrote:

 We need to define (German?) sorting rules for newtexexec (newtexutil).
 Tell me in between 'Ü' have to be sorted I will try to prepare a code
 for this rule.

ä (adiaeresis) is identical to a, ö (odiaeresis) identical to o, ü
(udiaeresis) identical to u, the same for uppercase. ß (ssharp) is
edentical to ss (same for uppercase, but in uppercase it's written
as SS anyway).

Mojca
___
ntg-context mailing list
ntg-context@ntg.nl
http://www.ntg.nl/mailman/listinfo/ntg-context


Re: [NTG-context] Sorting question

2006-01-22 Thread Henning Hraban Ramm

Am 2006-01-22 um 20:36 schrieb Mojca Miklavec:

We need to define (German?) sorting rules for newtexexec  
(newtexutil).

Tell me in between 'Ü' have to be sorted I will try to prepare a code
for this rule.

ä (adiaeresis) is identical to a, ö (odiaeresis) identical to o, ü
(udiaeresis) identical to u, the same for uppercase. ß (ssharp) is
edentical to ss (same for uppercase, but in uppercase it's written
as SS anyway).


Additionally there's the 'phone book' sorting, where
ä = ae, ö = oe, ü = ue, ß = ss

The former should be default, the latter an option.

Other accented characters same as unaccented (in both sortings).


Greetlings from Lake Constance!
Hraban
---
http://www.fiee.net/texnique/
http://contextgarden.net
http://www.cacert.org (I'm an assurer)

___
ntg-context mailing list
ntg-context@ntg.nl
http://www.ntg.nl/mailman/listinfo/ntg-context


Re: [NTG-context] Sorting question

2006-01-22 Thread Vit Zyka

Mojca Miklavec wrote:

On 1/22/06, Vit Zyka wrote:



We need to define (German?) sorting rules for newtexexec (newtexutil).
Tell me in between 'Ü' have to be sorted I will try to prepare a code
for this rule.



ä (adiaeresis) is identical to a, ö (odiaeresis) identical to o, ü
(udiaeresis) identical to u, the same for uppercase. ß (ssharp) is
edentical to ss (same for uppercase, but in uppercase it's written
as SS anyway).


Hmmm, that is not complete: I understand that every ü, Ü, u, U comes to 
single group, but is uüUÜ? Let say yes. Then try

--
\input sort-ini.tex

\useregime[win]
\enableregime[windows]  % Eingabe-Codierung
\mainlanguage[de]   % Sprachmodus   
\usetypescript[modern][texnansi]

\startmode[sortorder-de]
  \exportsortexpansion{u}{u+1}
  \exportsortexpansion{udiaeresis}{u+2}
  \exportsortexpansion{U}{u+3}
  \exportsortexpansion{Udiaeresis}{u+4}
  \exportsortdivision{u+1}{u}
  \exportsortdivision{u+2}{u}
  \exportsortdivision{u+3}{u}
  \exportsortdivision{u+4}{u}
\stopmode

\setmode{sortorder-de}

\starttext

\definesorting[person][personen]
\setupsorting[person][criterium = all]
%\def\person#1{#1\expanded{\index{#1}}, }
%\def\person#1{#1\index{#1}, }

\person{Unsinn, Klaus}
\person{Militzer, Bernd}
\person{Horten, Hans}
%\person{Überall, Heinrich}
\person{\Udiaeresis berall, Heinrich}

Index:
\placelistofpersonen
%\placeindex[alternative=A]

\stoptext
--

Comments:
- newtexexec is needed!
- works for both index/sorting
- works only for \Udiaeresis not for direct Ü! Strange! Why?

Vit

___
ntg-context mailing list
ntg-context@ntg.nl
http://www.ntg.nl/mailman/listinfo/ntg-context


Re: [NTG-context] Sorting question

2006-01-22 Thread Henning Hraban Ramm

Am 2006-01-23 um 01:08 schrieb Vit Zyka:

ä (adiaeresis) is identical to a, ö (odiaeresis) identical to o, ü
(udiaeresis) identical to u, the same for uppercase. ß (ssharp) is
edentical to ss (same for uppercase, but in uppercase it's written
as SS anyway).


Hmmm, that is not complete: I understand that every ü, Ü, u, U  
comes to single group, but is uüUÜ? Let say yes. Then try


I didn't test your code, but u, ü, U and Ü should be handled as same  
(in normal German order)

and u=U, ü=ue=Ü=Ue=UE in German phone book order.

Greetlings from Lake Constance!
Hraban
---
http://www.fiee.net/texnique/
http://contextgarden.net
http://www.cacert.org (I'm an assurer)

___
ntg-context mailing list
ntg-context@ntg.nl
http://www.ntg.nl/mailman/listinfo/ntg-context