postgresql/src/backend/utils/mb
Peter Eisentraut f85a485f89 Add support for automatically updating Unicode derived files
We currently have several sets of files generated from data provided
by Unicode.  These all have ad hoc rules and instructions for updating
when new Unicode versions appear, and it's not done consistently.

This patch centralizes and automates the process and makes it part of
the release checklist.  The Unicode and CLDR versions are specified in
Makefile.global.in.  There is a new make target "update-unicode" that
downloads all the relevant files and runs the generation script.

There is also a new script for generating the table of combining
characters for ucs_wcwidth().  That table is now in a separate include
file rather than hardcoded into the middle of other code.  This is
based on the script that was used for generating
d8594d123c, but the script itself wasn't
committed at that time.

Reviewed-by: John Naylor <john.naylor@2ndquadrant.com>
Discussion: https://www.postgresql.org/message-id/flat/c8d05f42-443e-6c23-819b-05b31759a37c@2ndquadrant.com
2020-01-09 10:08:14 +01:00
..
Unicode Add support for automatically updating Unicode derived files 2020-01-09 10:08:14 +01:00
conversion_procs Update copyrights for 2020 2020-01-01 12:21:45 -05:00
Makefile Add backend-only appendStringInfoStringQuoted 2019-12-10 17:12:56 -03:00
README Add backend-only appendStringInfoStringQuoted 2019-12-10 17:12:56 -03:00
conv.c Update copyrights for 2020 2020-01-01 12:21:45 -05:00
encnames.c Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
iso.c Remove cvs keywords from all files. 2010-09-20 22:08:53 +02:00
mbutils.c Update copyrights for 2020 2020-01-01 12:21:45 -05:00
stringinfo_mb.c Update copyrights for 2020 2020-01-01 12:21:45 -05:00
wchar.c Add support for automatically updating Unicode derived files 2020-01-09 10:08:14 +01:00
win866.c Remove cvs keywords from all files. 2010-09-20 22:08:53 +02:00
win1251.c Remove cvs keywords from all files. 2010-09-20 22:08:53 +02:00
wstrcmp.c pgindent run for 9.4 2014-05-06 12:12:18 -04:00
wstrncmp.c pgindent run for 9.4 2014-05-06 12:12:18 -04:00

README

src/backend/utils/mb/README

Encodings
=========

encnames.c:	public functions for both the backend and the frontend.
conv.c:		static functions and a public table for code conversion
wchar.c:	mostly static functions and a public table for mb string and
		multibyte conversion
mbutils.c:	public functions for the backend only.
		requires conv.c and wchar.c
stringinfo_mb.c: public backend-only multibyte-aware stringinfo functions
wstrcmp.c:	strcmp for mb
wstrncmp.c:	strncmp for mb
win866.c:	a tool to generate KOI8 <--> CP866 conversion table
iso.c:		a tool to generate KOI8 <--> ISO8859-5 conversion table
win1251.c:	a tool to generate KOI8 <--> CP1251 conversion table

Introduction
------------
	http://www.cprogramming.com/tutorial/unicode.html