reopen 1002883 thanks Hi, ow...@bugs.debian.org (2024-10-16 at 1509.02 +0000): > * Deal with Unicode v15 > Closes: #1002883, #930315 > * Add debian/README.source explaining how to upgrade to latest Unicode > version
Thank you! Lastest is v16, released months ago. ;) I think the README.source instructions would be complete by including the awk command somehow. With new releases the code must get the changes from UnicodeData.txt (refresh-unirange.sh) and Blocks.txt (currently awk oneliner). Remember: > Now I provide the patch, via Debian, to support Unicode v14 by again > following the instructions included in README: > ---8<--- > Uniname may be updated by obtaining a new version of the file UnicodeData.txt > from the Unicode consortium (http://www.unicode.org) and executing > the command: > > awk -f genunames.awk < UnicodeData.txt > unames.c > --->8--- > > But other file has no helper tool, first time I did it mostly manually > and it was boring and error prone: > ---8<--- > If Unicde ranges are added you will also need to update the file unirange.c. > Then recompile. > --->8--- > > For this unirange.c I recently wrote a script to perform the > update. It depends on bash, sed, printf, and other shell tools, > instead of awk as the unames.c one. Just run it in source main > directory, with path to Blocks.txt as single argument. Also I am trying to understand the logic behind the small changes you did to the script. It seems once you have the unicode-data package installed, you can not override it by passing a file. And the top comment looks a bit misleading with no blank lines. So I propose a new script version, and a second script wrapping the awk line. Then instructions in README.source could be: ---8<--- You can change the code to support a given Unicode version by getting the data files from http://ftp.unicode.org/Public/ ... /ucd/, or lastest version avaliable in Debian, and running two scripts sudo apt install unicode-data # or download .txt files by hand debian/refresh-unirange.sh [optional/path/to/Blocks.txt] debian/refresh-unames.sh [optional/path/to/UnicodeData.txt] (see https://bugs.debian.org/1002883) --->8--- With all this I think you can support v16 and have a 2.28-2 truly up to date. See attached files. And I hope that when v17 is released (next year, I suppose), you should be able to update everything yourself using the two scripts alone, maybe even automatize at build time. Cheers, GSR
refresh-unames.sh
Description: Bourne shell script
refresh-unirange.sh
Description: Bourne shell script
uniutils-2.28-unicode16.diff.gz
Description: application/gzip