changeset 4469:c661944aa259

Fill out docstrings for #'translate-region, #'make-char-table. 2008-05-25 Aidan Kehoe <kehoea@parhasard.net> * chartab.c (Fmake_char_table): Document the default return values for the various char table types. * editfns.c (Ftranslate_region): Document why `generic' char tables are preferable to `char' char tables for this function.
author Aidan Kehoe <kehoea@parhasard.net>
date Sun, 25 May 2008 22:54:33 +0200
parents a78d697ccd2c
children c76b1bc6bd28
files src/ChangeLog src/chartab.c src/editfns.c
diffstat 3 files changed, 33 insertions(+), 14 deletions(-) [+]
line wrap: on
line diff
--- a/src/ChangeLog	Sun May 25 21:11:35 2008 +0200
+++ b/src/ChangeLog	Sun May 25 22:54:33 2008 +0200
@@ -1,3 +1,11 @@
+2008-05-25  Aidan Kehoe  <kehoea@parhasard.net>
+
+	* chartab.c (Fmake_char_table): 
+	Document the default return values for the various char table
+	types. 
+	* editfns.c (Ftranslate_region): Document why `generic' char tables
+	are preferable to `char' char tables for this function. 
+
 2008-05-21  Aidan Kehoe  <kehoea@parhasard.net>
 
 	* fileio.c (Fmake_symbolic_link):
--- a/src/chartab.c	Sun May 25 21:11:35 2008 +0200
+++ b/src/chartab.c	Sun May 25 22:54:33 2008 +0200
@@ -566,25 +566,32 @@
 sorts of values.  The different char table types are
 
 `category'
-	Used for category tables, which specify the regexp categories
-	that a character is in.  The valid values are nil or a
-	bit vector of 95 elements.  Higher-level Lisp functions are
-	provided for working with category tables.  Currently categories
+	Used for category tables, which specify the regexp categories that a
+	character is in.  The valid values are nil or a bit vector of 95
+	elements, and values default to nil.  Higher-level Lisp functions
+	are provided for working with category tables.  Currently categories
 	and category tables only exist when Mule support is present.
 `char'
-	A generalized char table, for mapping from one character to
-	another.  Used for case tables, syntax matching tables,
-	`keyboard-translate-table', etc.  The valid values are characters.
+	A generalized char table, for mapping from one character to another.
+	Used for case tables, syntax matching tables,
+	`keyboard-translate-table', etc.  The valid values are characters,
+	and the default result given by `get-char-table' if a value hasn't
+	been set for a given character or for a range that includes it, is
+	?\x00.
 `generic'
-        An even more generalized char table, for mapping from a
-	character to anything.
+        An even more generalized char table, for mapping from a character to
+	anything. The default result given by `get-char-table' is nil.
 `display'
-	Used for display tables, which specify how a particular character
-	is to appear when displayed.  #### Not yet implemented.
+	Used for display tables, which specify how a particular character is
+	to appear when displayed.  #### Not yet implemented; currently, the
+	display table code uses generic char tables, and it's not clear that
+	implementing this char table type would be useful.
 `syntax'
 	Used for syntax tables, which specify the syntax of a particular
 	character.  Higher-level Lisp functions are provided for
-	working with syntax tables.  The valid values are integers.
+	working with syntax tables.  The valid values are integers, and the
+	default result given by `get-char-table' is the syntax code for
+	`inherit'.
 */
        (type))
 {
--- a/src/editfns.c	Sun May 25 21:11:35 2008 +0200
+++ b/src/editfns.c	Sun May 25 22:54:33 2008 +0200
@@ -1824,8 +1824,12 @@
 nil (nil meaning don't replace.)
 
 If TABLE is a char-table, its elements describe the mapping between
-characters and their replacements.  The char-table should be of type
-`char' or `generic'.
+characters and their replacements.  The char-table should be of type `char'
+or `generic'.  If the value given by `put-char-table' for a given character
+is nil, that character will not be translated by `translate-region'.  Since
+`char' char-tables can never return nil to `put-char-table', and since most
+translation involves a subset of the possible XEmacs characters, not all of
+them, the most generally useful table type here is `generic'.
 
 Returns the number of substitutions performed.
 */