aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--etc/NEWS3
-rw-r--r--lisp/ChangeLog5
-rw-r--r--lisp/international/mule-cmds.el40
-rw-r--r--src/ChangeLog6
-rw-r--r--src/editfns.c23
5 files changed, 37 insertions, 40 deletions
diff --git a/etc/NEWS b/etc/NEWS
index 88887ebf9d..9eac4af64a 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -140,6 +140,9 @@ invokes `set-buffer-file-coding-system'.
** Setting `enable-remote-dir-locals' to non-nil allows directory
local variables on remote hosts.
+** `insert-char' is now a command, and `ucs-insert' an obsolete alias
+for it.
+
* Editing Changes in Emacs 24.2
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 55c8f3a793..6606940740 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,8 @@
+2012-07-16 René Kyllingstad <[email protected]> (tiny change)
+
+ * international/mule-cmds.el (ucs-insert): Make it an obsolete
+ alias for insert-char.
+
2012-07-16 Fabián Ezequiel Gallina <fgallina@cuca>
* progmodes/python.el: Simplified imenu implementation.
diff --git a/lisp/international/mule-cmds.el b/lisp/international/mule-cmds.el
index 137a43b3d1..a91c71b030 100644
--- a/lisp/international/mule-cmds.el
+++ b/lisp/international/mule-cmds.el
@@ -2954,43 +2954,7 @@ point or a number in hash notation, e.g. #o21430 for octal,
(t
(cdr (assoc-string input (ucs-names) t))))))
-(defun ucs-insert (character &optional count inherit)
- "Insert COUNT copies of CHARACTER of the given Unicode code point.
-Interactively, prompts for a Unicode character name or a hex number
-using `read-char-by-name'.
-
-You can type a few of the first letters of the Unicode name and
-use completion. If you type a substring of the Unicode name
-preceded by an asterisk `*' and use completion, it will show all
-the characters whose names include that substring, not necessarily
-at the beginning of the name.
-
-This function also accepts a hexadecimal number of Unicode code
-point or a number in hash notation, e.g. #o21430 for octal,
-#x2318 for hex, or #10r8984 for decimal.
-
-The optional third arg INHERIT (non-nil when called interactively),
-says to inherit text properties from adjoining text, if those
-properties are sticky."
- (interactive
- (list (read-char-by-name "Unicode (name or hex): ")
- (prefix-numeric-value current-prefix-arg)
- t))
- (unless count (setq count 1))
- (if (and (stringp character)
- (string-match-p "\\`[0-9a-fA-F]+\\'" character))
- (setq character (string-to-number character 16)))
- (cond
- ((null character)
- (error "Not a Unicode character"))
- ((not (integerp character))
- (error "Not a Unicode character code: %S" character))
- ((or (< character 0) (> character #x10FFFF))
- (error "Not a Unicode character code: 0x%X" character)))
- (if inherit
- (dotimes (i count) (insert-and-inherit character))
- (dotimes (i count) (insert character))))
-
-(define-key ctl-x-map "8\r" 'ucs-insert)
+(define-obsolete-variable-alias 'ucs-insert 'insert-char "24.2")
+(define-key ctl-x-map "8\r" 'insert-char)
;;; mule-cmds.el ends here
diff --git a/src/ChangeLog b/src/ChangeLog
index 9949c65ba7..4a77507e55 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,9 @@
+2012-07-16 René Kyllingstad <[email protected]> (tiny change)
+
+ * editfns.c (Finsert_char): Make it interactive, and make the
+ second arg optional. Copy interactive spec and docstring from
+ ucs-insert.
+
2012-07-17 Paul Eggert <[email protected]>
* floatfns.c (Fabs): Do not wrap fabs inside IN_FLOAT (Bug#11913).
diff --git a/src/editfns.c b/src/editfns.c
index 32d11faa21..5dc561a400 100644
--- a/src/editfns.c
+++ b/src/editfns.c
@@ -2368,11 +2368,28 @@ usage: (insert-before-markers-and-inherit &rest ARGS) */)
return Qnil;
}
-DEFUN ("insert-char", Finsert_char, Sinsert_char, 2, 3, 0,
+DEFUN ("insert-char", Finsert_char, Sinsert_char, 1, 3,
+ "(list (read-char-by-name \"Unicode (name or hex): \")\
+ (prefix-numeric-value current-prefix-arg)\
+ t))",
doc: /* Insert COUNT copies of CHARACTER.
+Interactively, prompts for a Unicode character name or a hex number
+using `read-char-by-name'.
+
+You can type a few of the first letters of the Unicode name and
+use completion. If you type a substring of the Unicode name
+preceded by an asterisk `*' and use completion, it will show all
+the characters whose names include that substring, not necessarily
+at the beginning of the name.
+
+This function also accepts a hexadecimal number of Unicode code
+point or a number in hash notation, e.g. #o21430 for octal,
+#x2318 for hex, or #10r8984 for decimal.
+
Point, and before-insertion markers, are relocated as in the function `insert'.
The optional third arg INHERIT, if non-nil, says to inherit text properties
-from adjoining text, if those properties are sticky. */)
+from adjoining text, if those properties are sticky. If called
+interactively, INHERIT is t. */)
(Lisp_Object character, Lisp_Object count, Lisp_Object inherit)
{
int i, stringlen;
@@ -2382,6 +2399,8 @@ from adjoining text, if those properties are sticky. */)
char string[4000];
CHECK_CHARACTER (character);
+ if (NILP (count))
+ XSETFASTINT (count, 1);
CHECK_NUMBER (count);
c = XFASTINT (character);