change tile info format in info.txt

I'm moving toward allowing per-board-size counts with faces and values
staying the same. So it makes more sense to have face and values be
the first columns.
This commit is contained in:
Eric House 2022-04-04 08:12:29 +02:00
parent b150ef471b
commit 5a65d0a3db
34 changed files with 837 additions and 762 deletions

View file

@ -15,41 +15,45 @@
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
CHARSET: utf-8 CHARSET: utf-8
LANGCODE:ar_AR LANGCODE:ar
LANGNAME:Arabic
XLOC_HEADER:0x8500 XLOC_HEADER:0x8500
# This looks really weird in most text editors because the mix of
# right-to-left and left-to-right scripts confuses them
<BEGIN_TILES> <BEGIN_TILES>
2 8 'ﺀ' 'ﺀ' 8 2
2 10 'ﺃ' 'ﺃ' 10 2
8 1 '' '' 1 8
4 2 'ﺏ' 'ﺏ' 2 4
4 2 'ﺕ' 'ﺕ' 2 4
3 2 'ﺙ' 'ﺙ' 2 3
4 1 'ﺝ' 'ﺝ' 1 4
3 1 'ﺡ' 'ﺡ' 1 3
3 1 'ﺥ' 'ﺥ' 1 3
3 2 'ﺩ' 'ﺩ' 2 3
3 3 'ﺫ' 'ﺫ' 3 3
3 2 'ﺭ' 'ﺭ' 2 3
3 3 'ﺯ' 'ﺯ' 3 3
3 2 'ﺱ' 'ﺱ' 2 3
3 3 'ﺵ' 'ﺵ' 3 3
3 4 'ﺹ' 'ﺹ' 4 3
3 4 'ﺽ' 'ﺽ' 4 3
2 4 'ﻁ' 'ﻁ' 4 2
2 5 'ﻅ' 'ﻅ' 5 2
3 4 'ﻉ' 'ﻉ' 4 3
2 8 'ﻍ' 'ﻍ' 8 2
3 3 'ﻑ' 'ﻑ' 3 3
3 3 'ﻕ' 'ﻕ' 3 3
3 4 'ﻙ' 'ﻙ' 4 3
4 1 'ﻝ' 'ﻝ' 1 4
3 1 'ﻡ' 'ﻡ' 1 3
3 1 'ﻥ' 'ﻥ' 1 3
3 1 '' '' 1 3
2 10 'ﺅ' 'ﺅ' 10 2
3 1 'ﻭ' 'ﻭ' 1 3
3 1 'ﻯ' 'ﻯ' 1 3
2 6 'ﺉ' 'ﺉ' 6 2
2 0 {"_"} {"_"} 0 2
<END_TILES> <END_TILES>

View file

@ -16,7 +16,8 @@
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
LANGCODE:ca_ES LANGCODE:ca
LANGNAME:Catalan
CHARSET: utf-8 CHARSET: utf-8
NEEDSSORT:true NEEDSSORT:true
@ -62,33 +63,33 @@ XLOC_HEADER:0x8C00
<BEGIN_TILES> <BEGIN_TILES>
2 0 {"_"} {"_"} 0 2
12 1 'A|a' 'A|a' 1 12
2 3 'B|b' 'B|b' 3 2
3 2 'C|c' 'C|c' 2 3
1 10 'Ç|ç' 'Ç|ç' 10 1
3 2 'D|d' 'D|d' 2 3
13 1 'E|e' 'E|e' 1 13
1 4 'F|f' 'F|f' 4 1
2 3 'G|g' 'G|g' 3 2
1 8 'H|h' 'H|h' 8 1
8 1 'I|i' 'I|i' 1 8
1 8 'J|j' 'J|j' 8 1
4 1 'L|l' 'L|l' 1 4
1 10 {"L·L|L-L|ĿL|l·l|l-l|ŀl"} {"L·L|L-L|ĿL|l·l|l-l|ŀl"} 10 1
3 2 'M|m' 'M|m' 2 3
6 1 'N|n' 'N|n' 1 6
1 10 {"NY|ny|Ny|nY"} {"NY|ny|Ny|nY"} 10 1
5 1 'O|o' 'O|o' 1 5
2 3 'P|p' 'P|p' 3 2
1 8 {"QU|qu|Qu|qU"} {"QU|qu|Qu|qU"} 8 1
8 1 'R|r' 'R|r' 1 8
8 1 'S|s' 'S|s' 1 8
5 1 'T|t' 'T|t' 1 5
4 1 'U|u' 'U|u' 1 4
1 4 'V|v' 'V|v' 4 1
1 10 'X|x' 'X|x' 10 1
1 8 'Z|z' 'Z|z' 8 1
<END_TILES> <END_TILES>
# #
# NOTES: # NOTES:

View file

@ -1,41 +0,0 @@
# -*-mode: Makefile; coding: utf-8; -*-
# Copyright 2002-2008 by Eric House (xwords@eehouse.org). All rights reserved.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
XWLANG=Czech
LANGCODE=cs_CZ
ENC = UTF-8
TARGET_TYPE ?= WINCE
include ../Makefile.langcommon
SOURCEDICT ?= $(XWDICTPATH)/Czech/Czech.2-1-6.dict.gz
$(XWLANG)Main.dict.gz: $(SOURCEDICT) Makefile
zcat $< | tr -d '\r' | \
sed 's,.,\U\0,g' | \
grep '^[AÁBCČDĎEÉĚFGHIÍJKLMNŇOÓPRŘSŠTŤUÚŮVXYÝZŽ]*$$' | \
gzip -c > $@
# Everything but creating of the Main.dict file is inherited from the
# "parent" Makefile.langcommon in the parent directory.
clean: clean_common
rm -f $(XWLANG)Main.dict.gz *.bin $(XWLANG)*.pdb $(XWLANG)*.seb
help:
@echo 'make [SOURCEDICT=$(XWDICTPATH)/$(XWLANG)/czech2_5.dict.gz]'

1
xwords4/dawg/Czech/Makefile Symbolic link
View file

@ -0,0 +1 @@
Makefile.blex

View file

@ -0,0 +1,41 @@
# -*-mode: Makefile; coding: utf-8; -*-
# Copyright 2002-2008 by Eric House (xwords@eehouse.org). All rights reserved.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
XWLANG=Czech
LANGCODE=cs_CZ
ENC = UTF-8
TARGET_TYPE ?= WINCE
include ../Makefile.langcommon
SOURCEDICT ?= $(XWDICTPATH)/Czech/Czech.2-1-6.dict.gz
$(XWLANG)Main.dict.gz: $(SOURCEDICT) Makefile
zcat $< | tr -d '\r' | \
sed 's,.,\U\0,g' | \
grep '^[AÁBCČDĎEÉĚFGHIÍJKLMNŇOÓPRŘSŠTŤUÚŮVXYÝZŽ]*$$' | \
gzip -c > $@
# Everything but creating of the Main.dict file is inherited from the
# "parent" Makefile.langcommon in the parent directory.
clean: clean_common
rm -f $(XWLANG)Main.dict.gz *.bin $(XWLANG)*.pdb $(XWLANG)*.seb
help:
@echo 'make [SOURCEDICT=$(XWDICTPATH)/$(XWLANG)/czech2_5.dict.gz]'

View file

@ -25,12 +25,12 @@ TARGET_TYPE ?= WINCE
include ../Makefile.langcommon include ../Makefile.langcommon
SOURCEDICT ?= $(XWDICTPATH)/Czech/blex.dict.gz SOURCEDICT ?= $(XWDICTPATH)/Czech/blex.dict
all: $(XWLANG)2to5.xwd all: $(XWLANG)2to5.xwd
$(XWLANG)Main.dict.gz: $(SOURCEDICT) Makefile $(XWLANG)Main.dict.gz: $(SOURCEDICT) Makefile
zcat $< | tr -d '\r' | \ cat $< | tr -d '\r' | \
sed 's,.,\U\0,g' | \ sed 's,.,\U\0,g' | \
grep '^[AÁBCČDĎEÉĚFGHIÍJKLMNŇOÓPRŘSŠTŤUÚŮVXYÝZŽ]*$$' | \ grep '^[AÁBCČDĎEÉĚFGHIÍJKLMNŇOÓPRŘSŠTŤUÚŮVXYÝZŽ]*$$' | \
gzip -c > $@ gzip -c > $@

View file

@ -15,7 +15,8 @@
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
LANGCODE:cs_CZ LANGCODE:cs
LANGNAME:Czech
CHARSET:utf-8 CHARSET:utf-8
# deal with DOS files # deal with DOS files
@ -39,46 +40,46 @@ LANGINFO: Unicode-aware systems. </p>
# Czech-ISO8859-2==0x11. Low byte is padding. # Czech-ISO8859-2==0x11. Low byte is padding.
XLOC_HEADER:0x9100 XLOC_HEADER:0x9100
#COUNT VAL FACE #FACE VAL COUNT[15]
<BEGIN_TILES> <BEGIN_TILES>
2 0 {"_"} {"_"} 0 2
5 1 'A' 'A' 1 5
2 2 'Á' 'Á' 2 2
2 3 'B' 'B' 3 2
3 2 'C' 'C' 2 3
1 4 'Č' 'Č' 4 1
3 1 'D' 'D' 1 3
1 8 'Ď' 'Ď' 8 1
5 1 'E' 'E' 1 5
2 3 'É' 'É' 3 2
2 3 'Ě' 'Ě' 3 2
1 5 'F' 'F' 5 1
1 5 'G' 'G' 5 1
3 2 'H' 'H' 2 3
4 1 'I' 'I' 1 4
3 2 'Í' 'Í' 2 3
2 2 'J' 'J' 2 2
3 1 'K' 'K' 1 3
3 1 'L' 'L' 1 3
3 2 'M' 'M' 2 3
5 1 'N' 'N' 1 5
1 6 'Ň' 'Ň' 6 1
6 1 'O' 'O' 1 6
1 7 'Ó' 'Ó' 7 1
3 1 'P' 'P' 1 3
3 1 'R' 'R' 1 3
2 4 'Ř' 'Ř' 4 2
4 1 'S' 'S' 1 4
2 4 'Š' 'Š' 4 2
4 1 'T' 'T' 1 4
1 7 'Ť' 'Ť' 7 1
3 2 'U' 'U' 2 3
1 5 'Ú' 'Ú' 5 1
1 4 'Ů' 'Ů' 4 1
4 1 'V' 'V' 1 4
1 10 'X' 'X' 10 1
2 2 'Y' 'Y' 2 2
2 4 'Ý' 'Ý' 4 2
2 2 'Z' 'Z' 2 2
1 4 'Ž' 'Ž' 4 1
<END_TILES> <END_TILES>

View file

@ -1,3 +1,4 @@
# -*- mode: conf; coding: utf-8; -*-
# Copyright 2005 by Eric House (xwords@eehouse.org). All rights reserved. # Copyright 2005 by Eric House (xwords@eehouse.org). All rights reserved.
# #
# This program is free software; you can redistribute it and/or # This program is free software; you can redistribute it and/or
@ -14,7 +15,8 @@
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
LANGCODE:da_DK LANGCODE:da
LANGNAME:Danish
CHARSET: utf-8 CHARSET: utf-8
# deal with DOS files # deal with DOS files
@ -42,33 +44,33 @@ LANGINFO: are three non-English letters: 'Å', 'Æ' and 'Ø'. </p>
XLOC_HEADER:0x8900 XLOC_HEADER:0x8900
<BEGIN_TILES> <BEGIN_TILES>
2 0 {"_"} {"_"} 0 2
7 1 'A|a' 'A|a' 1 7
2 4 'Å|å' 'Å|å' 4 2
2 4 'Æ|æ' 'Æ|æ' 4 2
4 3 'B|b' 'B|b' 3 4
2 8 'C|c' 'C|c' 8 2
5 2 'D|d' 'D|d' 2 5
9 1 'E|e' 'E|e' 1 9
3 3 'F|f' 'F|f' 3 3
3 3 'G|g' 'G|g' 3 3
2 4 'H|h' 'H|h' 4 2
4 3 'I|i' 'I|i' 3 4
2 4 'J|j' 'J|j' 4 2
4 3 'K|k' 'K|k' 3 4
5 2 'L|l' 'L|l' 2 5
3 3 'M|m' 'M|m' 3 3
6 1 'N|n' 'N|n' 1 6
5 2 'O|o' 'O|o' 2 5
2 4 'Ø|ø' 'Ø|ø' 4 2
2 4 'P|p' 'P|p' 4 2
6 1 'R|r' 'R|r' 1 6
5 2 'S|s' 'S|s' 2 5
5 2 'T|t' 'T|t' 2 5
3 3 'U|u' 'U|u' 3 3
3 3 'V|v' 'V|v' 3 3
1 8 'X|x' 'X|x' 8 1
2 4 'Y|y' 'Y|y' 4 2
1 8 'Z|z' 'Z|z' 8 1
<END_TILES> <END_TILES>
# should ignore all after the <END_TILES> above # should ignore all after the <END_TILES> above

View file

@ -15,8 +15,8 @@
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
LANGCODE:nl_NL LANGNAME:Danish
LANGCODE:nl
# deal with DOS files # deal with DOS files
LANGFILTER: tr -d '\r' LANGFILTER: tr -d '\r'
@ -41,32 +41,32 @@ XLOC_HEADER:0x8B00
<BEGIN_TILES> <BEGIN_TILES>
2 0 {"_"} {"_"} 0 2
6 1 'A|a' 'A|a' 1 6
2 3 'B|b' 'B|b' 3 2
2 5 'C|c' 'C|c' 5 2
5 2 'D|d' 'D|d' 2 5
18 1 'E|e' 'E|e' 1 18
2 4 'F|f' 'F|f' 4 2
3 3 'G|g' 'G|g' 3 3
2 4 'H|h' 'H|h' 4 2
4 1 'I|i' 'I|i' 1 4
2 4 'J|j' 'J|j' 4 2
3 3 'K|k' 'K|k' 3 3
3 3 'L|l' 'L|l' 3 3
3 3 'M|m' 'M|m' 3 3
10 1 'N|n' 'N|n' 1 10
6 1 'O|o' 'O|o' 1 6
2 3 'P|p' 'P|p' 3 2
1 10 'Q|q' 'Q|q' 10 1
5 2 'R|r' 'R|r' 2 5
5 2 'S|s' 'S|s' 2 5
5 2 'T|t' 'T|t' 2 5
3 4 'U|u' 'U|u' 4 3
2 4 'V|v' 'V|v' 4 2
2 5 'W|w' 'W|w' 5 2
1 8 'X|x' 'X|x' 8 1
1 8 'Y|y' 'Y|y' 8 1
2 4 'Z|z' 'Z|z' 4 2
<END_TILES> <END_TILES>
# should ignore all after the <END_TILES> above # should ignore all after the <END_TILES> above

View file

@ -15,7 +15,8 @@
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
LANGCODE:en_US LANGCODE:en
LANGNAME:English
# deal with DOS files # deal with DOS files
LANGFILTER: tr -d '\r' LANGFILTER: tr -d '\r'
@ -39,33 +40,33 @@ LANGINFO: will simply be excluded from the dictionary.</p>
XLOC_HEADER:0x8100 XLOC_HEADER:0x8100
<BEGIN_TILES> <BEGIN_TILES>
2 0 {"_"} {"_"} 0 2
9 1 'A|a' 'A|a' 1 9
2 3 'B|b' 'B|b' 3 2
2 3 'C|c' 'C|c' 3 2
4 2 'D|d' 'D|d' 2 4
12 1 'E|e' 'E|e' 1 12
2 4 'F|f' 'F|f' 4 2
3 2 'G|g' 'G|g' 2 3
2 4 'H|h' 'H|h' 4 2
9 1 'I|i' 'I|i' 1 9
1 8 'J|j' 'J|j' 8 1
1 5 'K|k' 'K|k' 5 1
4 1 'L|l' 'L|l' 1 4
2 3 'M|m' 'M|m' 3 2
6 1 'N|n' 'N|n' 1 6
8 1 'O|o' 'O|o' 1 8
2 3 'P|p' 'P|p' 3 2
1 10 'Q|q' 'Q|q' 10 1
6 1 'R|r' 'R|r' 1 6
4 1 'S|s' 'S|s' 1 4
6 1 'T|t' 'T|t' 1 6
4 1 'U|u' 'U|u' 1 4
2 4 'V|v' 'V|v' 4 2
2 4 'W|w' 'W|w' 4 2
1 8 'X|x' 'X|x' 8 1
2 4 'Y|y' 'Y|y' 4 2
1 10 'Z|z' 'Z|z' 10 1
<END_TILES> <END_TILES>
# should ignore all after the <END> above # should ignore all after the <END> above

View file

@ -16,7 +16,7 @@
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
XWLANG=Finish XWLANG=Kotus_2007
LANGCODE=fi_FI LANGCODE=fi_FI
TARGET_TYPE ?= WINCE TARGET_TYPE ?= WINCE
ENC = UTF-8 ENC = UTF-8

View file

@ -17,6 +17,7 @@
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
LANGCODE:fi LANGCODE:fi
LANGNAME:Finnish
CHARSET: utf-8 CHARSET: utf-8
LANGFILTER: tr -d '\r' LANGFILTER: tr -d '\r'
@ -32,30 +33,30 @@ XLOC_HEADER:0x9900
# From wikipedia # From wikipedia
<BEGIN_TILES> <BEGIN_TILES>
2 0 {"_"} {"_"} 0 2
10 1 'A|a' 'A|a' 1 10
5 2 'Ä|ä' 'Ä|ä' 2 5
1 8 'B|b' 'B|b' 8 1
1 10 'C|c' 'C|c' 10 1
1 7 'D|d' 'D|d' 7 1
8 1 'E|e' 'E|e' 1 8
1 8 'F|f' 'F|f' 8 1
1 8 'G|g' 'G|g' 8 1
2 4 'H|h' 'H|h' 4 2
10 1 'I|i' 'I|i' 1 10
2 4 'J|j' 'J|j' 4 2
5 2 'K|k' 'K|k' 2 5
5 2 'L|l' 'L|l' 2 5
3 3 'M|m' 'M|m' 3 3
9 1 'N|n' 'N|n' 1 9
5 2 'O|o' 'O|o' 2 5
1 7 'Ö|ö' 'Ö|ö' 7 1
2 4 'P|p' 'P|p' 4 2
2 4 'R|r' 'R|r' 4 2
7 1 'S|s' 'S|s' 1 7
9 1 'T|t' 'T|t' 1 9
4 3 'U|u' 'U|u' 3 4
2 4 'V|v' 'V|v' 4 2
1 8 'W|w' 'W|w' 8 1
2 4 'Y|y' 'Y|y' 4 2
<END_TILES> <END_TILES>

View file

@ -1,32 +0,0 @@
# -*-mode: Makefile -*-
# Copyright 2002 by Eric House (xwords@eehouse.org). All rights reserved.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
XWLANG=French
LANGCODE=fr_FR
TARGET_TYPE ?= FRANK
include ../Makefile.langcommon
$(XWLANG)Main.dict.gz: ods3.txt.gz
zcat $< | sed 's/[[:lower:]]*/\U&/' | gzip >$@
# Everything but creating of the Main.dict file is inherited from the
# "parent" Makefile.langcommon in the parent directory.
clean: clean_common
rm -f $(XWLANG)Main.dict.gz *.bin $(XWLANG)*.pdb $(XWLANG)*.seb

View file

@ -0,0 +1 @@
Makefile.ODS7

View file

@ -14,7 +14,8 @@
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
LANGCODE:fr_FR LANGCODE:fr
LANGNAME:French
# deal with DOS files # deal with DOS files
LANGFILTER: tr -d '\r' LANGFILTER: tr -d '\r'
@ -37,31 +38,31 @@ LANGINFO: dropping those words from the list prior to compression.</p>
XLOC_HEADER:0x8200 XLOC_HEADER:0x8200
<BEGIN_TILES> <BEGIN_TILES>
2 0 {"_"} {"_"} 0 2
9 1 'A|a' 'A|a' 1 9
2 3 'B|b' 'B|b' 3 2
2 3 'C|c' 'C|c' 3 2
3 2 'D|d' 'D|d' 2 3
15 1 'E|e' 'E|e' 1 15
2 4 'F|f' 'F|f' 4 2
2 2 'G|g' 'G|g' 2 2
2 4 'H|h' 'H|h' 4 2
8 1 'I|i' 'I|i' 1 8
1 8 'J|j' 'J|j' 8 1
1 10 'K|k' 'K|k' 10 1
5 1 'L|l' 'L|l' 1 5
3 2 'M|m' 'M|m' 2 3
6 1 'N|n' 'N|n' 1 6
6 1 'O|o' 'O|o' 1 6
2 3 'P|p' 'P|p' 3 2
1 8 'Q|q' 'Q|q' 8 1
6 1 'R|r' 'R|r' 1 6
6 1 'S|s' 'S|s' 1 6
6 1 'T|t' 'T|t' 1 6
6 1 'U|u' 'U|u' 1 6
2 4 'V|v' 'V|v' 4 2
1 10 'W|w' 'W|w' 10 1
1 10 'X|x' 'X|x' 10 1
1 10 'Y|y' 'Y|y' 10 1
1 10 'Z|z' 'Z|z' 10 1
<END_TILES> <END_TILES>

View file

@ -1,44 +0,0 @@
# -*- mode: makefile; coding: utf-8; -*-
# Copyright 2002 - 2010 by Eric House (xwords@eehouse.org). All
# rights reserved.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
XWLANG = German
LANGCODE = de_DE
ENC = UTF-8
TARGET_TYPE ?= WINCE
include ../Makefile.langcommon
SOURCEDICT ?= $(XWDICTPATH)/German/HansGerman.dict.gz
$(XWLANG)Main.dict.gz: $(SOURCEDICT) Makefile
file -z $(SOURCEDICT) | grep -q 'UTF-8 Unicode text' || exit 1
zcat $< \
| sed 's,.,\U\0,g' \
| sed -e 's/ß/SS/g' \
| grep '^[AÄBCDEFGHIJKLMNOÖPQRSTUÜVWXYZ]*$$' \
| gzip -c > $@
# Everything but creating of the Main.dict file is inherited from the
# "parent" Makefile.langcommon in the parent directory.
clean: clean_common
rm -f $(XWLANG)Main.dict.gz *.bin $(XWLANG)*.pdb $(XWLANG)*.seb
help:
@echo 'make [SOURCEDICT=HansGerman.dict.gz|deutsch.dict.gz]'

View file

@ -0,0 +1 @@
Makefile.sf

View file

@ -0,0 +1,44 @@
# -*- mode: makefile; coding: utf-8; -*-
# Copyright 2002 - 2010 by Eric House (xwords@eehouse.org). All
# rights reserved.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
XWLANG = German
LANGCODE = de_DE
ENC = UTF-8
TARGET_TYPE ?= WINCE
include ../Makefile.langcommon
SOURCEDICT ?= $(XWDICTPATH)/German/HansGerman.dict.gz
$(XWLANG)Main.dict.gz: $(SOURCEDICT) Makefile
file -z $(SOURCEDICT) | grep -q 'UTF-8 Unicode text' || exit 1
zcat $< \
| sed 's,.,\U\0,g' \
| sed -e 's/ß/SS/g' \
| grep '^[AÄBCDEFGHIJKLMNOÖPQRSTUÜVWXYZ]*$$' \
| gzip -c > $@
# Everything but creating of the Main.dict file is inherited from the
# "parent" Makefile.langcommon in the parent directory.
clean: clean_common
rm -f $(XWLANG)Main.dict.gz *.bin $(XWLANG)*.pdb $(XWLANG)*.seb
help:
@echo 'make [SOURCEDICT=HansGerman.dict.gz|deutsch.dict.gz]'

View file

@ -16,7 +16,8 @@
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
LANGCODE:de_DE LANGCODE:de
LANGNAME:German
CHARSET: utf-8 CHARSET: utf-8
# deal with DOS files # deal with DOS files
@ -46,37 +47,36 @@ LANGINFO: contain letters not found on tiles.</p>
# German==3. Low byte is padding # German==3. Low byte is padding
XLOC_HEADER:0x8300 XLOC_HEADER:0x8300
<BEGIN_TILES> <BEGIN_TILES>
2 0 {"_"} {"_"} 0 2
5 1 'A|a' 'A|a' 1 5
1 6 'Ä|ä' 'Ä|ä' 6 1
2 3 'B|b' 'B|b' 3 2
2 4 'C|c' 'C|c' 4 2
4 1 'D|d' 'D|d' 1 4
15 1 'E|e' 'E|e' 1 15
2 4 'F|f' 'F|f' 4 2
3 2 'G|g' 'G|g' 2 3
4 2 'H|h' 'H|h' 2 4
6 1 'I|i' 'I|i' 1 6
1 6 'J|j' 'J|j' 6 1
2 4 'K|k' 'K|k' 4 2
3 2 'L|l' 'L|l' 2 3
4 3 'M|m' 'M|m' 3 4
9 1 'N|n' 'N|n' 1 9
3 2 'O|o' 'O|o' 2 3
1 8 'Ö|ö' 'Ö|ö' 8 1
1 4 'P|p' 'P|p' 4 1
1 10 'Q|q' 'Q|q' 10 1
6 1 'R|r' 'R|r' 1 6
7 1 'S|s' 'S|s' 1 7
6 1 'T|t' 'T|t' 1 6
6 1 'U|u' 'U|u' 1 6
1 6 'Ü|ü' 'Ü|ü' 6 1
1 6 'V|v' 'V|v' 6 1
1 3 'W|w' 'W|w' 3 1
1 8 'X|x' 'X|x' 8 1
1 10 'Y|y' 'Y|y' 10 1
1 3 'Z|z' 'Z|z' 3 1
<END_TILES> <END_TILES>
# should ignore all after the <END_TILES> above # should ignore all after the <END_TILES> above

View file

@ -28,7 +28,7 @@ include ../Makefile.langcommon
# Pass in your own dict here by setting DICT # Pass in your own dict here by setting DICT
# DICT ?= $(XWDICTPATH)/English/CSW.dict.gz # DICT ?= $(XWDICTPATH)/English/CSW.dict.gz
DICT ?= $(XWDICTPATH)/English/COSD.dict.gz DICT ?= $(XWDICTPATH)/English/CSW15.dict
# tr 'AE' 'ÄË' doesn't work, so use sed. Note that although we're # tr 'AE' 'ÄË' doesn't work, so use sed. Note that although we're
# pulling words up to 15 letters in length there are none longer than # pulling words up to 15 letters in length there are none longer than
@ -36,12 +36,10 @@ DICT ?= $(XWDICTPATH)/English/COSD.dict.gz
# only one is worth publishing. # only one is worth publishing.
$(XWLANG)Main.dict.gz: $(DICT) $(XWLANG)Main.dict.gz: $(DICT)
@echo "building $@ from $<" @echo "building $@ from $<"
zcat $< | \ cat $< | \
sed 's/[[:lower:]]*/\U&/' | \ sed 's/[[:lower:]]*/\U&/' | \
grep -e '^[A-F]\{2,15\}$$' | \ grep -e '^[A-F]\{2,15\}$$' | \
echo CAFEBABE DEADBEEF $$(cat -) | \ echo CAFEBABE DEADBEEF $$(cat -) | \
sed 's/A/Ä/g' | \
sed 's/E/Ë/g' | \
tr ' ' '\n' | sort | gzip > $@ tr ' ' '\n' | sort | gzip > $@
# Everything but creating of the Main.dict file is inherited from the # Everything but creating of the Main.dict file is inherited from the

View file

@ -16,13 +16,12 @@
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
LANGCODE:HEX LANGCODE:hex
LANGNAME:Hex
# uppercase all # uppercase all
LANGFILTER: | sed -e 's/[[:lower:]]*/\U&/' LANGFILTER: | sed -e 's/[[:lower:]]*/\U&/'
LANGFILTER: | grep -x '[A-F]\{2,15\}' LANGFILTER: | grep -x '[A-F]\{2,15\}'
LANGFILTER: | sed 's/A/Ä/'
LANGFILTER: | sed 's/E/Ë/'
LANGFILTER: | sort -u LANGFILTER: | sort -u
D2DARGS: -term 10 D2DARGS: -term 10
@ -50,12 +49,12 @@ XLOC_HEADER:0xFF00
<BEGIN_TILES> <BEGIN_TILES>
4 0 {"_"} {"_"} 0 4
9 1 'Ä|ä' 'A|a' 1 9
2 3 'B|b' 'B|b' 3 2
2 3 'C|c' 'C|c' 3 2
4 2 'D|d' 'D|d' 2 4
12 1 'Ë|ë' 'E|e' 1 12
2 4 'F|f' 'F|f' 4 2
<END_TILES> <END_TILES>
# should ignore all after the <END_TILES> above # should ignore all after the <END_TILES> above

View file

@ -1,6 +1,7 @@
# -*- mode: conf; coding: utf-8; -*- # -*- mode: conf; coding: utf-8; -*-
LANGCODE:hu_HU LANGCODE:hu
LANGNAME:Hungarian
CHARSET: utf-8 CHARSET: utf-8
BUILD_FLAGS:ALLOWS_DUPLICATES BUILD_FLAGS:ALLOWS_DUPLICATES
@ -22,43 +23,43 @@ LANGFILTER: | tr '1234567' '\001\002\003\004\005\006\007'
XLOC_HEADER:0x9400 XLOC_HEADER:0x9400
<BEGIN_TILES> <BEGIN_TILES>
2 0 {"_"} {"_"} 0 2
6 1 'A|a' 'A|a' 1 6
4 1 'Á|á' 'Á|á' 1 4
3 2 'B|b' 'B|b' 2 3
1 5 'C|c' 'C|c' 5 1
1 7 {"CS|cs"} {"CS|cs"} 7 1
3 2 'D|d' 'D|d' 2 3
6 1 'E|e' 'E|e' 1 6
3 3 'É|é' 'É|é' 3 3
2 4 'F|f' 'F|f' 4 2
3 2 'G|g' 'G|g' 2 3
2 4 {"GY|gy"} {"GY|gy"} 4 2
2 3 'H|h' 'H|h' 3 2
3 1 'I|i' 'I|i' 1 3
1 5 'Í|í' 'Í|í' 5 1
2 4 'J|j' 'J|j' 4 2
6 1 'K|k' 'K|k' 1 6
4 1 'L|l' 'L|l' 1 4
1 8 {"LY|ly"} {"LY|ly"} 8 1
3 1 'M|m' 'M|m' 1 3
4 1 'N|n' 'N|n' 1 4
1 5 {"NY|ny"} {"NY|ny"} 5 1
3 1 'O|o' 'O|o' 1 3
3 2 'Ó|ó' 'Ó|ó' 2 3
2 4 'Ö|ö' 'Ö|ö' 4 2
1 7 'Ő|ö' 'Ő|ö' 7 1
2 4 'P|p' 'P|p' 4 2
4 1 'R|r' 'R|r' 1 4
3 1 'S|s' 'S|s' 1 3
2 3 {"SZ|sz"} {"SZ|sz"} 3 2
5 1 'T|t' 'T|t' 1 5
1 10 {"TY|ty"} {"TY|ty"} 10 1
2 4 'U|u' 'U|u' 4 2
1 7 'Ú|ú' 'Ú|ú' 7 1
2 4 'Ü|ü' 'Ü|ü' 4 2
1 7 'Ű|ű' 'Ű|ű' 7 1
2 3 'V|v' 'V|v' 3 2
2 4 'Z|z' 'Z|z' 4 2
1 8 {"ZS|zs"} {"ZS|zs"} 8 1
<END_TILES> <END_TILES>

View file

@ -25,12 +25,12 @@ TARGET_TYPE = WINCE
include ../Makefile.langcommon include ../Makefile.langcommon
# Pass in your own dict here by setting DICT # Pass in your own dict here by setting DICT
DICT ?= $(XWDICTPATH)/English/CSW.dict.gz DICT ?= $(XWDICTPATH)/English/CSW15.dict
# tr 'AE' 'ÄË' doesn't work, so use sed. # tr 'AE' 'ÄË' doesn't work, so use sed.
$(XWLANG)Main.dict.gz: $(DICT) $(XWLANG)Main.dict.gz: $(DICT)
@echo "building $@ from $<" @echo "building $@ from $<"
zcat $< | sed 's/[[:lower:]]*/\U&/' | grep -e '^[A-F]\{2,8\}$$' | \ cat $< | sed 's/[[:lower:]]*/\U&/' | grep -e '^[A-F]\{2,8\}$$' | \
echo CAFEBABE DEADBEEF $$(cat -) | \ echo CAFEBABE DEADBEEF $$(cat -) | \
sed 's/A/Ä/g' | \ sed 's/A/Ä/g' | \
sed 's/E/Ë/g' | \ sed 's/E/Ë/g' | \

View file

@ -16,7 +16,8 @@
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
LANGCODE:HEX LANGCODE:hë
LANGNAME:Hëx
# uppercase all # uppercase all
LANGFILTER: | sed -e 's/[[:lower:]]*/\U&/' LANGFILTER: | sed -e 's/[[:lower:]]*/\U&/'
@ -50,12 +51,12 @@ XLOC_HEADER:0xFF00
<BEGIN_TILES> <BEGIN_TILES>
4 0 {"_"} {"_"} 0 4
9 1 'Ä' 'Ä|ä' 1 9
2 3 'B' 'B|b' 3 2
2 3 'C' 'C|c' 3 2
4 2 'D' 'D|d' 2 4
12 1 'Ë' 'Ë|ë' 1 12
2 4 'F' 'F|f' 4 2
<END_TILES> <END_TILES>
# should ignore all after the <END_TILES> above # should ignore all after the <END_TILES> above

View file

@ -15,7 +15,8 @@
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
LANGCODE:it_IT LANGCODE:it
LANGNAME:Italian
# deal with DOS files # deal with DOS files
LANGFILTER: tr -d '\r' LANGFILTER: tr -d '\r'
@ -35,31 +36,31 @@ XLOC_HEADER:0x8A00
# tile values taken from http://www.gtoal.com/wordgames/details/italian/ # tile values taken from http://www.gtoal.com/wordgames/details/italian/
<BEGIN_TILES> <BEGIN_TILES>
2 0 {"_"} {"_"} 0 2
13 1 'A|a' 'A|a' 1 13
3 5 'B|b' 'B|b' 5 3
4 4 'C|c' 'C|c' 4 4
3 5 'D|d' 'D|d' 5 3
13 1 'E|e' 'E|e' 1 13
2 8 'F|f' 'F|f' 8 2
3 5 'G|g' 'G|g' 5 3
2 8 'H|h' 'H|h' 8 2
13 1 'I|i' 'I|i' 1 13
0 1 'J|j' 'J|j' 1 0
0 1 'K|k' 'K|k' 1 0
5 3 'L|l' 'L|l' 3 5
5 3 'M|m' 'M|m' 3 5
6 2 'N|n' 'N|n' 2 6
13 1 'O|o' 'O|o' 1 13
3 5 'P|p' 'P|p' 5 3
1 10 'Q|q' 'Q|q' 10 1
6 2 'R|r' 'R|r' 2 6
6 2 'S|s' 'S|s' 2 6
6 2 'T|t' 'T|t' 2 6
5 3 'U|u' 'U|u' 3 5
4 4 'V|v' 'V|v' 4 4
0 1 'W|w' 'W|w' 1 0
0 1 'X|x' 'X|x' 1 0
0 1 'Y|y' 'Y|y' 1 0
2 8 'Z|z' 'Z|z' 8 2
<END_TILES> <END_TILES>

View file

@ -220,7 +220,8 @@ endif
frankspecials.bin: ../frank_mkspecials.py $(BMPFILES) frankspecials.bin: ../frank_mkspecials.py $(BMPFILES)
$< $(BLANK_INFO) $(LANG_SPECIAL_INFO) > $@ $< $(BLANK_INFO) $(LANG_SPECIAL_INFO) > $@
$(XWLANG)%.$(FRANK_EXT): dawg$(XWLANG)%.stamp $(XWLANG)%_flags.bin $(XWLANG)%_newheader.bin charcount.bin table.bin values.bin frankspecials.bin $(XWLANG)%.$(FRANK_EXT): dawg$(XWLANG)%.stamp $(XWLANG)%_flags.bin $(XWLANG)%_newheader.bin \
charcount.bin table.bin values.bin frankspecials.bin
cat $(XWLANG)$*_flags.bin $(XWLANG)$*_newheader.bin charcount.bin table.bin values.bin \ cat $(XWLANG)$*_flags.bin $(XWLANG)$*_newheader.bin charcount.bin table.bin values.bin \
frankspecials.bin $(XWLANG)StartLoc.bin \ frankspecials.bin $(XWLANG)StartLoc.bin \
$$(ls dawg$(XWLANG)$*_*.bin) > $@ $$(ls dawg$(XWLANG)$*_*.bin) > $@
@ -273,6 +274,9 @@ allbins:
$(MAKE) TARGET_TYPE=FRANK byodbins $(MAKE) TARGET_TYPE=FRANK byodbins
rm palmspecials.bin rm palmspecials.bin
extraCounts.bin: ../xloc.py info.txt
../xloc.py -ec -out $@
table.bin: ../xloc.py table.bin: ../xloc.py
ifdef NEWDAWG ifdef NEWDAWG
../xloc.py $(ENCP) -tn -out $@ ../xloc.py $(ENCP) -tn -out $@
@ -298,6 +302,15 @@ $(XWLANG)%_note.bin:
echo -n $(DICTNOTE) > $@ echo -n $(DICTNOTE) > $@
perl -e "print pack(\"c\",0)" >> $@ perl -e "print pack(\"c\",0)" >> $@
langCode.bin: ../xloc.py
../xloc.py -info LANGCODE -out $@
langName.bin: ../xloc.py
../xloc.py -info LANGNAME -out $@
otherCounts.bin: ../xloc.py
../xloc.py -oc -out otherCounts.bin
$(XWLANG)%_md5sum.bin: $(XWLANG)%_md5sum.bin:
cat table.bin values.bin frankspecials.bin $(XWLANG)StartLoc.bin \ cat table.bin values.bin frankspecials.bin $(XWLANG)StartLoc.bin \
dawg$(XWLANG)$*_*.bin | md5sum | awk '{print $$1}' | tr -d '\n' > $@ dawg$(XWLANG)$*_*.bin | md5sum | awk '{print $$1}' | tr -d '\n' > $@
@ -308,7 +321,8 @@ $(XWLANG)%_headerFlags.bin:
perl -e "print pack(\"n\",$$FLAGS)" > $@ perl -e "print pack(\"n\",$$FLAGS)" > $@
$(XWLANG)%_newheader.bin: $(XWLANG)%_wordcount.bin $(XWLANG)%_note.bin \ $(XWLANG)%_newheader.bin: $(XWLANG)%_wordcount.bin $(XWLANG)%_note.bin \
$(XWLANG)%_md5sum.bin $(XWLANG)%_headerFlags.bin $(XWLANG)%_md5sum.bin $(XWLANG)%_headerFlags.bin langCode.bin \
langName.bin otherCounts.bin
SIZ=0; \ SIZ=0; \
for FILE in $+; do \ for FILE in $+; do \
SIZ=$$(($$SIZ + $$(ls -l $$FILE | awk '{print $$5}'))); \ SIZ=$$(($$SIZ + $$(ls -l $$FILE | awk '{print $$5}'))); \

View file

@ -16,7 +16,8 @@
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
LANGCODE:pl_PL LANGCODE:pl
LANGNAME:Polish
CHARSET:utf-8 CHARSET:utf-8
# deal with DOS files # deal with DOS files
@ -50,39 +51,39 @@ LANGINFO: other languages it&apos;s the first.</p>
XLOC_HEADER:0x8800 XLOC_HEADER:0x8800
<BEGIN_TILES> <BEGIN_TILES>
9 1 'A|a' 'A|a' 1 9
1 5 'Ą|ą' 'Ą|ą' 5 1
2 3 'B|b' 'B|b' 3 2
3 2 'C|c' 'C|c' 2 3
1 6 'Ć|ć' 'Ć|ć' 6 1
3 2 'D|d' 'D|d' 2 3
7 1 'E|e' 'E|e' 1 7
1 5 'Ę|ę' 'Ę|ę' 5 1
1 5 'F|f' 'F|f' 5 1
2 3 'G|g' 'G|g' 3 2
2 3 'H|h' 'H|h' 3 2
8 1 'I|i' 'I|i' 1 8
2 3 'J|j' 'J|j' 3 2
3 3 'K|k' 'K|k' 3 3
3 2 'L|l' 'L|l' 2 3
2 3 'Ł|ł' 'Ł|ł' 3 2
3 2 'M|m' 'M|m' 2 3
5 1 'N|n' 'N|n' 1 5
1 7 'Ń|ń' 'Ń|ń' 7 1
6 1 'O|o' 'O|o' 1 6
1 5 'Ó|ó' 'Ó|ó' 5 1
3 2 'P|p' 'P|p' 2 3
4 1 'R|r' 'R|r' 1 4
4 1 'S|s' 'S|s' 1 4
1 5 'Ś|ś' 'Ś|ś' 5 1
3 2 'T|t' 'T|t' 2 3
2 3 'U|u' 'U|u' 3 2
4 1 'W|w' 'W|w' 1 4
4 2 'Y|y' 'Y|y' 2 4
5 1 'Z|z' 'Z|z' 1 5
1 9 'Ź|ź' 'Ź|ź' 9 1
1 5 'Ż|ż' 'Ż|ż' 5 1
# the blank *must* be last here!!! # the blank *must* be last here!!!
2 0 {"_"} {"_"} 0 2
<END_TILES> <END_TILES>

View file

@ -14,7 +14,8 @@
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
LANGCODE:pt_PT LANGCODE:pt
LANGNAME:Portuguese
CHARSET: utf-8 CHARSET: utf-8
# deal with DOS files # deal with DOS files
@ -41,31 +42,31 @@ XLOC_HEADER:0x8D00
<BEGIN_TILES> <BEGIN_TILES>
3 0 {"_"} {"_"} 0 3
14 1 'A|a' 'A|a' 1 14
3 3 'B|b' 'B|b' 3 3
4 2 'C|c' 'C|c' 2 4
2 3 'Ç|ç' 'Ç|ç' 3 2
5 2 'D|d' 'D|d' 2 5
11 1 'E|e' 'E|e' 1 11
2 4 'F|f' 'F|f' 4 2
2 4 'G|g' 'G|g' 4 2
2 4 'H|h' 'H|h' 4 2
10 1 'I|i' 'I|i' 1 10
2 5 'J|j' 'J|j' 5 2
5 2 'L|l' 'L|l' 2 5
6 1 'M|m' 'M|m' 1 6
4 3 'N|n' 'N|n' 3 4
10 1 'O|o' 'O|o' 1 10
4 2 'P|p' 'P|p' 2 4
1 6 'Q|q' 'Q|q' 6 1
6 1 'R|r' 'R|r' 1 6
8 1 'S|s' 'S|s' 1 8
5 1 'T|t' 'T|t' 1 5
7 1 'U|u' 'U|u' 1 7
2 4 'V|v' 'V|v' 4 2
1 8 'X|x' 'X|x' 8 1
1 8 'Z|z' 'Z|z' 8 1
<END_TILES> <END_TILES>
# should ignore all after the <END_TILES> above # should ignore all after the <END_TILES> above

View file

@ -18,6 +18,7 @@
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
LANGCODE:ro LANGCODE:ro
LANGNAME:Romanian
# deal with DOS files # deal with DOS files
LANGFILTER: tr -d '\r' LANGFILTER: tr -d '\r'
@ -42,29 +43,29 @@ XLOC_HEADER:0x9500
# Number Value Letter # Number Value Letter
<BEGIN_TILES> <BEGIN_TILES>
2 0 {"_"} {"_"} 0 2
11 1 'A|a' 'A|a' 1 11
2 9 'B|b' 'B|b' 9 2
5 1 'C|c' 'C|c' 1 5
4 2 'D|d' 'D|d' 2 4
9 1 'E|e' 'E|e' 1 9
2 8 'F|f' 'F|f' 8 2
2 9 'G|g' 'G|g' 9 2
1 10 'H|h' 'H|h' 10 1
10 1 'I|i' 'I|i' 1 10
1 10 'J|j' 'J|j' 10 1
4 1 'L|l' 'L|l' 1 4
3 4 'M|m' 'M|m' 4 3
6 1 'N|n' 'N|n' 1 6
5 1 'O|o' 'O|o' 1 5
4 2 'P|p' 'P|p' 2 4
7 1 'R|r' 'R|r' 1 7
5 1 'S|s' 'S|s' 1 5
7 1 'T|t' 'T|t' 1 7
6 1 'U|u' 'U|u' 1 6
2 8 'V|v' 'V|v' 8 2
1 10 'X|x' 'X|x' 10 1
1 10 'Z|z' 'Z|z' 10 1
<END_TILES> <END_TILES>
# should ignore all after the <END> above # should ignore all after the <END> above

View file

@ -16,7 +16,8 @@
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
LANGCODE:ru_RU LANGCODE:ru
LANGNAME:Russian
CHARSET:windows-1251 CHARSET:windows-1251
# deal with DOS files # deal with DOS files
@ -38,38 +39,38 @@ LANGINFO: contain letters not listed below are removed.</p>
XLOC_HEADER:0x8F00 XLOC_HEADER:0x8F00
<BEGIN_TILES> <BEGIN_TILES>
8 1 'Ŕ' 'Ŕ' 1 8
2 3 'Á' 'Á' 3 2
4 1 'Â' 'Â' 1 4
2 3 'Ă' 'Ă' 3 2
2 2 'Ä' 'Ä' 2 2
7 1 'Ĺ' 'Ĺ' 1 7
1 4 'Ć' 'Ć' 4 1
1 3 'Ç' 'Ç' 3 1
7 1 'Č' 'Č' 1 7
1 2 'É' 'É' 2 1
4 2 'Ę' 'Ę' 2 4
4 2 'Ë' 'Ë' 2 4
2 3 'Ě' 'Ě' 3 2
4 1 'Í' 'Í' 1 4
9 1 'Î' 'Î' 1 9
4 2 'Ď' 'Ď' 2 4
5 1 'Đ' 'Đ' 1 5
5 1 'Ń' 'Ń' 1 5
7 1 'Ň' 'Ň' 1 7
4 2 'Ó' 'Ó' 2 4
1 5 'Ô' 'Ô' 5 1
1 4 'Ő' 'Ő' 4 1
1 4 'Ö' 'Ö' 4 1
1 3 '×' '×' 3 1
1 4 'Ř' 'Ř' 4 1
1 5 'Ů' 'Ů' 5 1
1 10 'Ú' 'Ú' 10 1
2 2 'Ű' 'Ű' 2 2
4 1 'Ü' 'Ü' 1 4
1 8 'Ý' 'Ý' 8 1
1 5 'Ţ' 'Ţ' 5 1
2 2 'ß' 'ß' 2 2
2 0 {"_"} {"_"} 0 2
<END_TILES> <END_TILES>
# should ignore all after the <END_TILES> above # should ignore all after the <END_TILES> above

View file

@ -16,7 +16,8 @@
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
LANGCODE:sk_SK LANGCODE:sk
LANGNAME:Slovak
CHARSET:utf-8 CHARSET:utf-8
# deal with DOS files # deal with DOS files
@ -38,47 +39,47 @@ XLOC_HEADER:0x9300
#COUNT VAL FACE #COUNT VAL FACE
# converted from http://www.deskovehry.info/pravidla/scrabble/scrabble-sk.htm # converted from http://www.deskovehry.info/pravidla/scrabble/scrabble-sk.htm
<BEGIN_TILES> <BEGIN_TILES>
9 1 'A' 'A|a' 1 9
1 4 'Á' 'Á|á' 4 1
1 10 'Ä' 'Ä|ä' 10 1
2 4 'B' 'B|b' 4 2
1 4 'C' 'C|c' 4 1
1 5 'Č' 'Č|č' 5 1
3 2 'D' 'D|d' 2 3
1 8 'Ď' 'Ď|ď' 8 1
8 1 'E' 'E|e' 1 8
1 7 'É' 'É|é' 7 1
1 8 'F' 'F|f' 8 1
1 8 'G' 'G|g' 8 1
1 4 'H' 'H|h' 4 1
5 1 'I' 'I|i' 1 5
1 5 'Í' 'Í|í' 5 1
2 3 'J' 'J|j' 3 2
3 2 'K' 'K|k' 2 3
3 2 'L' 'L|l' 2 3
1 10 'Ĺ' 'Ĺ|ĺ' 10 1
1 7 'Ľ' 'Ľ|ľ' 7 1
4 2 'M' 'M|m' 2 4
5 1 'N' 'N|n' 1 5
1 8 'Ň' 'Ň|ň' 8 1
9 1 'O' 'O|o' 1 9
1 8 'Ô' 'Ô|ô' 8 1
1 10 'Ó' 'Ó|ó' 10 1
3 2 'P' 'P|p' 2 3
4 1 'R' 'R|r' 1 4
1 10 'Ŕ' 'Ŕ|ŕ' 10 1
4 1 'S' 'S|s' 1 4
1 5 'Š' 'Š|š' 5 1
4 1 'T' 'T|t' 1 4
1 7 'Ť' 'Ť|ť' 7 1
2 3 'U' 'U|u' 3 2
1 7 'Ú' 'Ú|ú' 7 1
4 1 'V' 'V|v' 1 4
1 10 'X' 'X|x' 10 1
1 4 'Y' 'Y|y' 4 1
1 5 'Ý' 'Ý|ý' 5 1
1 4 'Z' 'Z|z' 4 1
1 5 'Ž' 'Ž|ž' 5 1
# the blank *must* be last here!!! # the blank *must* be last here!!!
2 0 {"_"} {"_"} 0 2
<END_TILES> <END_TILES>

View file

@ -19,9 +19,12 @@
# no way can unix sort handle the control chars I'm adding to text # no way can unix sort handle the control chars I'm adding to text
# below # below
LANGCODE:es
LANGNAME:Spanish
NEEDSSORT:true NEEDSSORT:true
CHARSET: utf-8 CHARSET: utf-8
# MSDos LF chars go bye-bye # MSDos LF chars go bye-bye
LANGFILTER: tr -d '\r' LANGFILTER: tr -d '\r'
@ -77,34 +80,34 @@ LANGCODE:es_ES
XLOC_HEADER:0x8600 XLOC_HEADER:0x8600
<BEGIN_TILES> <BEGIN_TILES>
2 0 {"_"} {"_"} 0 2
12 1 'A|a' 'A|a' 1 12
2 3 'B|b' 'B|b' 3 2
4 3 'C|c' 'C|c' 3 4
1 5 {"CH|ch|Ch|cH",true,true} {"CH|ch|Ch|cH",true,true} 5 1
5 2 'D|d' 'D|d' 2 5
12 1 'E|e' 'E|e' 1 12
1 4 'F|f' 'F|f' 4 1
2 2 'G|g' 'G|g' 2 2
2 4 'H|h' 'H|h' 4 2
6 1 'I|i' 'I|i' 1 6
1 8 'J|j' 'J|j' 8 1
4 1 'L|l' 'L|l' 1 4
1 8 {"LL|ll|Ll|lL", true, true} {"LL|ll|Ll|lL",true,true} 8 1
2 3 'M|m' 'M|m' 3 2
5 1 'N|n' 'N|n' 1 5
1 8 'Ñ|ñ' 'Ñ|ñ' 8 1
9 1 'O|o' 'O|o' 1 9
2 3 'P|p' 'P|p' 3 2
1 5 'Q|q' 'Q|q' 5 1
5 1 'R|r' 'R|r' 1 5
1 8 {"RR|rr|Rr|rR",true,true} {"RR|rr|Rr|rR",true,true} 8 1
6 1 'S|s' 'S|s' 1 6
4 1 'T|t' 'T|t' 1 4
5 1 'U|u' 'U|u' 1 5
1 4 'V|v' 'V|v' 4 1
1 8 'X|x' 'X|x' 8 1
1 4 'Y|y' 'Y|y' 4 1
1 10 'Z|z' 'Z|z' 10 1
<END_TILES> <END_TILES>
# should ignore all after the <END> above # should ignore all after the <END> above

View file

@ -26,13 +26,14 @@ TARGET_TYPE ?= WINCE
include ../Makefile.langcommon include ../Makefile.langcommon
SOURCEDICT ?= $(XWDICTPATH)/Swedish/swedish15.utf8.gz SOURCEDICT ?= $(XWDICTPATH)/Swedish/swedish15.txt
# Q and W are not available as tiles, but I'm told there's a custom in # Q and W are not available as tiles, but I'm told there's a custom in
# Swedish play of allowing blanks to stand for those letters as well. # Swedish play of allowing blanks to stand for those letters as well.
# So we don't exclude words with those letters from the dictionary. # So we don't exclude words with those letters from the dictionary.
$(XWLANG)Main.dict.gz: $(SOURCEDICT) Makefile $(XWLANG)Main.dict.gz: $(SOURCEDICT) Makefile
zcat $< | sed 's/[[:lower:]]*/\U&/' | \ cat $< | iconv -f ISO-8859-1 -t $(ENC) | \
sed 's/[[:lower:]]*/\U&/' | \
LANG=$(LANGCODE):$(ENC) grep '^[A-ZÄÅÆÖÜ]\{2,15\}$$' | \ LANG=$(LANGCODE):$(ENC) grep '^[A-ZÄÅÆÖÜ]\{2,15\}$$' | \
gzip -c > $@ gzip -c > $@

View file

@ -16,7 +16,8 @@
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
CHARSET: utf-8 CHARSET: utf-8
LANGCODE:sv_SE LANGCODE:sv
LANGNAME:Swedish
LANGFILTER: tr -d '\r' LANGFILTER: tr -d '\r'
# uppercase all # uppercase all
@ -33,45 +34,44 @@ LANGINFO: and W, and adds Ä, Å, Æ, Ö and Ü.</p>
XLOC_HEADER:0x8700 XLOC_HEADER:0x8700
<BEGIN_TILES> <BEGIN_TILES>
2 0 {"_"} {"_"} 0 2
8 1 'A|a' 'A|a' 1 8
# A with two dots # A with two dots
2 3 'Ä|ä' 'Ä|ä' 3 2
# A with circle # A with circle
2 4 'Å|å' 'Å|å' 4 2
# Æ tile only available for blanks # Æ tile only available for blanks
0 1 'Æ|æ' 'Æ|æ' 1 0
2 4 'B|b' 'B|b' 4 2
1 8 'C|c' 'C|c' 8 1
5 1 'D|d' 'D|d' 1 5
7 1 'E|e' 'E|e' 1 7
2 3 'F|f' 'F|f' 3 2
3 2 'G|g' 'G|g' 2 3
2 2 'H|h' 'H|h' 2 2
5 1 'I|i' 'I|i' 1 5
1 7 'J|j' 'J|j' 7 1
3 2 'K|k' 'K|k' 2 3
5 1 'L|l' 'L|l' 1 5
3 2 'M|m' 'M|m' 2 3
6 1 'N|n' 'N|n' 1 6
5 2 'O|o' 'O|o' 2 5
# O with two dots # O with two dots
2 4 'Ö|ö' 'Ö|ö' 4 2
2 4 'P|p' 'P|p' 4 2
# Q tile only available for blanks # Q tile only available for blanks
0 1 'Q|q' 'Q|q' 1 0
8 1 'R|r' 'R|r' 1 8
8 1 'S|s' 'S|s' 1 8
8 1 'T|t' 'T|t' 1 8
3 4 'U|u' 'U|u' 4 3
# Ü tile only available for blanks # Ü tile only available for blanks
0 1 'Ü|ü' 'Ü|ü' 1 0
2 3 'V|v' 'V|v' 3 2
# W tile only available for blanks # W tile only available for blanks
0 1 'W|w' 'W|w' 1 0
1 8 'X|x' 'X|x' 8 1
1 7 'Y|y' 'Y|y' 7 1
1 10 'Z|z' 'Z|z' 10 1
<END_TILES> <END_TILES>

View file

@ -14,7 +14,8 @@
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
LANGCODE:tr_TR LANGCODE:tr
LANGNAME:Turkish
CHARSET: utf-8 CHARSET: utf-8
LANGINFO: <p>Turkish is untested with actual wordlists!</p> LANGINFO: <p>Turkish is untested with actual wordlists!</p>
@ -22,34 +23,34 @@ LANGINFO: <p>Turkish is untested with actual wordlists!</p>
XLOC_HEADER:0x8400 XLOC_HEADER:0x8400
<BEGIN_TILES> <BEGIN_TILES>
2 0 {"_"} {"_"} 0 2
12 1 'A' 'A' 1 12
2 3 'B' 'B' 3 2
2 4 'C' 'C' 4 2
2 4 'Ç' 'Ç' 4 2
2 3 'D' 'D' 3 2
8 1 'E' 'E' 1 8
1 7 'F' 'F' 7 1
1 5 'G' 'G' 5 1
1 8 'Ğ' 'Ğ' 8 1
1 5 'H' 'H' 5 1
4 2 'I' 'I' 2 4
7 1 'İ' 'İ' 1 7
1 10 'J' 'J' 10 1
7 1 'K' 'K' 1 7
7 1 'L' 'L' 1 7
4 2 'M' 'M' 2 4
5 1 'N' 'N' 1 5
3 2 'O' 'O' 2 3
1 7 'Ö' 'Ö' 7 1
1 5 'P' 'P' 5 1
6 1 'R' 'R' 1 6
3 2 'S' 'S' 2 3
2 4 'Ş' 'Ş' 4 2
5 1 'T' 'T' 1 5
3 2 'U' 'U' 2 3
2 3 'Ü' 'Ü' 3 2
1 7 'V' 'V' 7 1
2 3 'Y' 'Y' 3 2
2 4 'Z' 'Z' 4 2
<END_TILES> <END_TILES>

View file

@ -54,12 +54,18 @@ def splitFaces( buf ):
return faces return faces
def loadCountsAndValues( fh, numFaces, data ): def loadCountsAndValues( fh, numFaces, extraData, data ):
twoBytesFmt = struct.Struct('BB')
for ii in range(numFaces): for ii in range(numFaces):
pair = twoBytesFmt.unpack(fh.read(twoBytesFmt.size)) data[ii]['counts'] = {15: int.from_bytes(fh.read(1), 'little')}
data[ii]['count'] = int(pair[0]) data[ii]['val'] = int.from_bytes(fh.read(1), 'little')
data[ii]['val'] = int(pair[1]) if extraData:
buf = io.BytesIO(extraData)
while True:
siz = int.from_bytes(buf.read(1), 'little')
if not siz: break
for ii in range(numFaces):
count = int.from_bytes(buf.read(1), 'little')
data[ii]['counts'][siz] = count
def eatBitmap( fh ): def eatBitmap( fh ):
nCols = int(oneByteFmt.unpack(fh.read(oneByteFmt.size))[0]) nCols = int(oneByteFmt.unpack(fh.read(oneByteFmt.size))[0])
@ -142,6 +148,7 @@ def process(args):
with open(args.DAWG, "rb") as dawg: with open(args.DAWG, "rb") as dawg:
nWords = 0 nWords = 0
extraData = None
headerFmt = struct.Struct('!HH') headerFmt = struct.Struct('!HH')
(flags, headerLen) = headerFmt.unpack(dawg.read(headerFmt.size)) (flags, headerLen) = headerFmt.unpack(dawg.read(headerFmt.size))
@ -162,7 +169,22 @@ def process(args):
sys.exit(0) sys.exit(0)
md5Sum = getNullTermParam(header) md5Sum = getNullTermParam(header)
print( 'header: read sum: {}'.format(md5Sum), file=sys.stderr ) print( 'header: read sum: {}'.format(md5Sum), file=sys.stderr )
except:
# skip header flags
header.read(2)
print( 'header: skipped flags', file=sys.stderr)
langCode = getNullTermParam(header)
langName = getNullTermParam(header)
print('header: langCode: {}; langName: {}'.format(langCode, langName),
file=sys.stderr)
extraSize = int.from_bytes(header.read(1), 'little')
print( 'header: extraSize: {}'.format(extraSize), file=sys.stderr )
extraData = header.read(extraSize)
except Exception as ex:
print( 'header: exception!! {} '.format(ex) )
md5Sum = None md5Sum = None
if args.GET_SUM: if args.GET_SUM:
@ -214,7 +236,7 @@ def process(args):
langCode = 0x7F & oneByteFmt.unpack(dawg.read(oneByteFmt.size))[0] langCode = 0x7F & oneByteFmt.unpack(dawg.read(oneByteFmt.size))[0]
dawg.read( oneByteFmt.size ) # skip byte dawg.read( oneByteFmt.size ) # skip byte
loadCountsAndValues( dawg, numFaces, data ) loadCountsAndValues( dawg, numFaces, extraData, data )
loadSpecialData( dawg, data ) loadSpecialData( dawg, data )
offsetStruct = struct.Struct('!L') offsetStruct = struct.Struct('!L')

View file

@ -8,7 +8,12 @@ def errorOut(msg):
def mkParser(): def mkParser():
parser = argparse.ArgumentParser() parser = argparse.ArgumentParser()
parser.add_argument('-enc', dest = 'ENCODING', type = str, help = 'use this encoding' ) parser.add_argument('-enc', dest = 'ENCODING', type = str, help = 'use this encoding' )
parser.add_argument('-tn', dest = 'DO_TABLE', action = 'store_true', help = 'output table file' ) parser.add_argument('-tn', dest = 'DO_TABLE', action = 'store_true',
help = 'output table file' )
parser.add_argument('-oc', dest = 'DO_OTHERCOUNTS', action = 'store_true',
help = 'write extra (non-15x15 board) counts' )
parser.add_argument('-info', dest = 'INFO_KEY', type = str,
help = 'info.txt keyword to write null-terminated' )
# parser.add_argument('-tn', dest = 'UNICODE', default = False, # parser.add_argument('-tn', dest = 'UNICODE', default = False,
# action = 'store_true', help = 'assume unicode') # action = 'store_true', help = 'assume unicode')
@ -53,8 +58,10 @@ def parseTileInfo(infoFile, encoding):
if sEndTiles.match(line): if sEndTiles.match(line):
break break
else: else:
(count, val, face) = line.split(None, 2) (face, val, counts) = line.split(None, 2)
result['_TILES'].append((count, val, face)) result['_TILES'].append({'counts': counts,
'val': val,
'face': face})
elif sBeginTiles.match(line): elif sBeginTiles.match(line):
inTiles = True inTiles = True
else: else:
@ -71,12 +78,18 @@ def printLetters( letters, outfile ):
letters = ' '.join(letters) letters = ' '.join(letters)
outfile.write(letters.encode('utf8')) outfile.write(letters.encode('utf8'))
def writeInfoFile(xlocToken, key, outfile):
val = xlocToken[key]
assert val
outfile.write(val.encode('utf8'))
outfile.write(struct.pack('B', 0 ))
def writeMapFile(xlocToken, outfile): def writeMapFile(xlocToken, outfile):
print('writeMapFile()') print('writeMapFile(out={})'.format(outfile))
tiles = xlocToken['_TILES'] tiles = xlocToken['_TILES']
specialCount = 0 specialCount = 0
for tile in tiles: for tile in tiles:
face = tile[2] face = tile['face']
match = sSingleCharMatch.match(face) match = sSingleCharMatch.match(face)
if match: if match:
printLetters( match.group(1), outfile ) printLetters( match.group(1), outfile )
@ -94,13 +107,39 @@ def writeMapFile(xlocToken, outfile):
def writeValuesFile(xlocToken, outfile): def writeValuesFile(xlocToken, outfile):
header = xlocToken.get('XLOC_HEADER') or errorOut('no XLOC_HEADER found') header = xlocToken.get('XLOC_HEADER') or errorOut('no XLOC_HEADER found')
print('writing header: {}'.format(header)) print('writeValuesFile(out={}): writing header: {}'.format(outfile, header))
outfile.write(struct.pack('!H', int(header, 16))) outfile.write(struct.pack('!H', int(header, 16)))
cs = xlocToken.get('COUNT_SIZES', '15').split()
useOffset = cs.index('15')
nCounts = 0
for tile in xlocToken['_TILES']: for tile in xlocToken['_TILES']:
val = int(tile[0]) counts = tile['counts'].split()
count = int(tile[1]) assert nCounts == 0 or nCounts == len(counts)
outfile.write(struct.pack('BB', val, count)) nCounts = len(counts)
assert nCounts == len(cs)
outfile.write(struct.pack('B', int(counts[useOffset])))
val = int(tile['val'])
outfile.write(struct.pack('B', val))
def writeOtherCounts(xlocToken, outfile):
cs = xlocToken.get('COUNT_SIZES', '15').split()
tiles = xlocToken['_TILES']
# Write the size of the data so it can be skipped by the reader,
# which won't know how many faces the tile set has yet.
totalSiz = (len(cs) - 1) * (1 + len(tiles))
outfile.write(struct.pack('B', totalSiz))
for useOffset in range(len(cs)):
siz = int(cs[useOffset])
if siz == 15: continue
outfile.write(struct.pack('B', siz))
for tile in tiles:
count = tile['counts'].split()[useOffset]
outfile.write(struct.pack('B', int(count)))
def main(): def main():
print('{}.main {} called'.format(sys.argv[0], sys.argv[1:])) print('{}.main {} called'.format(sys.argv[0], sys.argv[1:]))
@ -111,6 +150,10 @@ def main():
errorOut('{} not found'.format(infoFile)) errorOut('{} not found'.format(infoFile))
xlocToken = parseTileInfo(infoFile, args.ENCODING) xlocToken = parseTileInfo(infoFile, args.ENCODING)
if args.INFO_KEY and args.OUTFILE:
with open(args.OUTFILE, 'wb') as outfile:
writeInfoFile(xlocToken, args.INFO_KEY, outfile);
if args.DO_TABLE or args.TABLE_FILE: if args.DO_TABLE or args.TABLE_FILE:
path = args.TABLE_FILE or args.OUTFILE path = args.TABLE_FILE or args.OUTFILE
with open(path, 'wb') as outfile: with open(path, 'wb') as outfile:
@ -127,6 +170,10 @@ def main():
with open(path, 'wb') as outfile: with open(path, 'wb') as outfile:
writeValuesFile( xlocToken, outfile ) writeValuesFile( xlocToken, outfile )
if args.DO_OTHERCOUNTS and args.OUTFILE:
with open(args.OUTFILE, 'wb') as outfile:
writeOtherCounts(xlocToken, outfile)
############################################################################## ##############################################################################
if __name__ == '__main__': if __name__ == '__main__':
main() main()