changeset 91080:6e2eacd2aadb

*** empty log message ***
author Kenichi Handa <handa@m17n.org>
date Mon, 05 Nov 2007 12:48:41 +0000
parents 5b7ab62ae6bd
children 2c767d9f0bb1
files etc/NEWS.unicode
diffstat 1 files changed, 191 insertions(+), 30 deletions(-) [+]
line wrap: on
line diff
--- a/etc/NEWS.unicode	Fri Nov 02 03:19:28 2007 +0000
+++ b/etc/NEWS.unicode	Mon Nov 05 12:48:41 2007 +0000
@@ -1,7 +1,9 @@
 GNU Emacs NEWS -- history of user-visible changes.
 
-Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
-          Free Software Foundation, Inc.
+Copyright (C) 2007 Free Software Foundation, Inc.
+Copyright (C) 2007
+  National Institute of Advanced Industrial Science and Technology (AIST)
+  Registration Number H14PRO021
 See the end of the file for license conditions.
 
 Please send Emacs bug reports to bug-gnu-emacs@gnu.org.
@@ -9,10 +11,8 @@
 
 This file is about changes in the Emacs "unicode" branch.
 
-Fixme: The notes about Emacs 23 are quite incomplete.
-
 
-* Changes in Emacs 23.1
+* Changes in Emacs Unicode
 
 ** The Emacs character set is now a superset of Unicode.  
 (It has about four times the code space, which should be plenty).
@@ -23,10 +23,6 @@
 coding system can still read and write data in the old internal
 encoding.
 
-There are still charsets which contain disjoint sets of characters
-where this is necessary or useful, especially for various Far Eastern
-sets which are problematic with Unicode.
-
 Since the internal encoding is also used by default for byte-compiled
 files -- i.e. the normal coding system for byte-compiled Lisp files is
 now utf-8-Emacs -- Lisp containing non-ASCII characters which is
@@ -47,44 +43,209 @@
 The dimension of a charset is now 0, 1, 2, or 3, and the size of each
 dimension is no longer limited to 94 or 96.
 
-Generic characters no longer exist.  
+A dynamic charset priority list is used to infer the charset of
+characters for display.
+
+** New minor mode Auto Composition Mode composes characters automatically
+when they are displayed.  This mode is globally on by default.
 
-A dynamic charset priority list is used to infer the charset of
-unicodes for display &c.
+** Emacs now supports local fonts (fonts installed in the same machine
+as Emacs is running) by freetype and fontconfig libraries.  On X, they
+are drived via Xft library with antialias support.  Fontconfig-like
+font names (e.g. monospace-12) are also accepted.
+
+** New language environments Chinese-GBK, Chinese-GB18030, and
+TaiViet.
 
 ** The following facilities are obsolete:
 
 Minor modes: unify-8859-on-encoding-mode, unify-8859-on-decoding-mode
 
 
-* Lisp changes in Emacs 23.1
+* Lisp changes in Emacs Unicode
+
+** Character code, representation, and charset changes.
+
+Now character code space is 0x0..0x3FFFFF with no gap.  Among them,
+characters of code 0x0..0x10FFFF are Unicode characters of the same
+code points.  Characters of code 0x3FFF80..0x3FFFFF are raw 8-bit
+bytes.
+
+Generic characters no longer exist.  
+
+In buffer and string, characters are represented by UTF-8 byte
+sequence in a multibyte buffer/string.
+
+The concept of charset is changed.  A single character may belong to
+multiple charset (e.g. a-grave (U+00E0) belongs to charsets unicode,
+iso-8859-1, iso-8859-3, and etc).
+
+*** The new function `characterp' returns t if and only if the argument
+is a character.
+
+*** The new function `max-char' returns the maximum character code
+(currently it is #x3FFFFF).
+
+*** The function `encode-char' and `decode-char' now accepts any
+character sets.
+
+*** The function `define-charset' now accepts completely different
+form of argments (old-style arguments still works).
+
+*** The new function `define-charset-alias' defines an alias of a
+charset.
+
+*** The value of the function `char-charset' depends of the current
+priorities of charsets.
+
+*** The new function `charset-priority-list' returns the list of
+charsets ordered by priority.
+
+*** The new function `set-charset-priority' sets pliorities of
+charsets.
 
-map-char-table's behaviour has changed.
+*** The new function `unibyte-charset' returns the current unibyte
+charset.  The unibyte charset determins how unibyte/multibyte
+conversion is done.
+
+*** The new function `set-unibyte-charset' sets the unibyte charset.
+
+*** The new function `unibyte-string' make a unibyte string from
+bytes.
+
+** Code conversion changes
+
+*** The new function `define-coding-system' should be used to define a
+coding system instead of `make-coding-system' (which is obsolete now).
+
+*** The functions `encode-coding-region' and `decode-coding-region'
+have the optional 4th argument to specify where the result of
+conversion should go.
+
+*** The functions `encode-coding-string' and `decode-coding-string'
+have the optional 4th argument specifying a buffer to store the result
+of conversion.
+
+*** The new fuction `with-coding-priority' executs the body part with
+the specified coding system priority order.
+
+*** The new function `check-coding-systems-region' checks if the text
+in the region is encodable by the specified coding systems.
+
+*** The new function `coding-system-aliases' returns a list of aliases
+of a coding system.
+
+*** The new function `coding-system-charset-list' returns a list of
+charsets supported by a coding system.
+
+*** The new funciton `coding-system-priority-list' returns a list of
+coding systems ordered by their priorities.
+
+*** Thew new function `set-coding-system-priority' sets priorities of
+coding systems.
+
+** Composition changes
 
-New functions: characterp, max-char, map-charset-chars,
-define-charset-alias, primary-charset, set-primary-charset,
-unify-charset, clear-charset-maps, charset-priority-list,
-set-charset-priority, define-coding-system,
-define-coding-system-alias, coding-system-aliases, langinfo,
-string-to-multibyte.
+*** New functions and variables `auto-composition-mode' and
+`global-auto-composition-mode' toggles the new minor mode Auto
+Composition Mode locally and globally.
+
+*** New variable `auto-composition-function' is a function used in
+Auto Composition Mode to compose characters.  The default value is the
+function `auto-compose-chars'.
+
+*** New variable `auto-compose-current-font' is set to the current
+font-object while characters are being composed in Auto Composition
+Mode.
+
+** Font Backend changes.
+
+*** New frame parameter `font-backend' specifies a list of
+font-backends supported by the frame's graphic device.  On X, they are
+currently `x' and `xft'.
+
+*** New function `fontp' checks if the argument is a font-spec
+or font-entity.
+
+*** New function `font-spec' creates a new font-spec object.
+
+*** New function `font-get' returns a font property value.
+
+*** New function `font-put' sets a font property value.
+
+*** New function `list-fonts' returns a list of font-entities matching
+with the give specificaiton.
+
+*** New function `list-families' returns a list family names of
+available fonts.
+
+*** New function `font-font' returns a font-entity best matching with
+the given specification.
+
+*** New function `font-xlfd-name' returns an XLFD name of a give font
+(font-spec, font-entity, or font-object).
+
+*** New function `clear-font-cache' clears all font caches.
 
-Changed functions: copy-sequence, decode-char, encode-char,
-set-fontset-font, new-fontset, modify-syntax-entry, define-charset,
-modify-category-entry
+** The function get-char-code-property now accepts many Unicode base
+character properties.  They are `name', `general-category',
+`canonical-combining-class', `bidi-class', `decomposition',
+`decimal-digit-value', `digit-value', `numeric-value', `mirrord',
+`old-name', `iso-10646-comment', `uppercase', `lowercase', and
+`titlecase'.
+
+** Thew new function `define-char-code-property' defines a character
+code property.
+
+** The new function `char-code-property-description' returns the
+description string of a cahracter code property.
+
+*** The new variable `find-word-boundary-function-table' is a
+char-table of functions to search for a word boundary.
+
+*** The new variable `char-script-table' is a char-table of script
+names.
+
+*** The new variable `char-width-table' is a char-table of character
+widths.
 
-Obsoleted: char-bytes, chars-in-region, set-coding-priority,
-char-valid-p
+*** The new variable `print-charset-text-property' controls how to
+handle `charset' text property on printing a string.
+
+*** Thew new variable `printable-chars' is a char-table defining if a
+character is printable or not.
+
+*** The new function `robin-define-package' defines a Robin package
+which is an input method system different from Quail.
+
+*** The new function `robin-modify-package' modifies an existing Robin
+package.
+
+*** The new function `robin-use-package' start using a Robin package
+as an input method.
+
+** The functions `modify-syntax-entry' and `modify-category-entry' now
+accepts a cons of characters as the first argument, and modify all
+entries in that range of characters.
+
+** The function `set-fontset-font' now accepts a script name as the
+second argument, and has the optional 5th argument to control how to
+set the font.
+
+** The functions `char-bytes', `chars-in-region', `set-coding-priority',
+, `make-coding-system', and `char-valid-p' are now obsolete.
 
 
 * Incompatible Lisp changes
 
-Deleted functions: make-coding-system, register-char-codings,
-coding-system-spec
+** The behavior of map-char-table has changed.  It may call the
+specified function with a cons (FROM . TO) as a key if characters in
+that range has the same value.
 
-** The character codes for characters from the
-eight-bit-control/eight-bit-graphic charsets aren't now in the range
-128-255.
+** The value of the function `charset-id' is now always 0.
 
+** The functions `register-char-codings' and `coding-system-spec' are
+deleted.
 
 
 ----------------------------------------------------------------------