From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Juri Linkov Newsgroups: gmane.emacs.bugs,gmane.emacs.pretest.bugs Subject: bug#4039: C-x 8 RET with prefix arg doesn't repeat character Date: Tue, 04 Aug 2009 22:51:47 +0300 Organization: JURTA Message-ID: <87prbbfjcc.fsf@mail.jurta.org> Reply-To: Juri Linkov , 4039@emacsbugs.donarmstrong.com NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=gb2312 Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1249418877 14603 80.91.229.12 (4 Aug 2009 20:47:57 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 4 Aug 2009 20:47:57 +0000 (UTC) To: emacs-pretest-bug@gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Tue Aug 04 22:47:50 2009 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1MYQvE-0000sB-CU for geb-bug-gnu-emacs@m.gmane.org; Tue, 04 Aug 2009 22:47:48 +0200 Original-Received: from localhost ([127.0.0.1]:56476 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MYQvD-0001I2-IL for geb-bug-gnu-emacs@m.gmane.org; Tue, 04 Aug 2009 16:47:47 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1MYQuM-00010I-Lo for bug-gnu-emacs@gnu.org; Tue, 04 Aug 2009 16:46:54 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1MYQuI-0000xx-Rd for bug-gnu-emacs@gnu.org; Tue, 04 Aug 2009 16:46:54 -0400 Original-Received: from [199.232.76.173] (port=57657 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MYQuI-0000xs-HP for bug-gnu-emacs@gnu.org; Tue, 04 Aug 2009 16:46:50 -0400 Original-Received: from rzlab.ucr.edu ([138.23.92.77]:51835) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1MYQuH-0002up-QH for bug-gnu-emacs@gnu.org; Tue, 04 Aug 2009 16:46:50 -0400 Original-Received: from rzlab.ucr.edu (rzlab.ucr.edu [127.0.0.1]) by rzlab.ucr.edu (8.14.3/8.14.3/Debian-5) with ESMTP id n74Kkltb017349; Tue, 4 Aug 2009 13:46:47 -0700 Original-Received: (from debbugs@localhost) by rzlab.ucr.edu (8.14.3/8.14.3/Submit) id n74Ke6Er016673; Tue, 4 Aug 2009 13:40:06 -0700 X-Loop: owner@emacsbugs.donarmstrong.com Resent-From: Juri Linkov Resent-To: bug-submit-list@donarmstrong.com Resent-CC: Emacs Bugs Resent-Date: Tue, 04 Aug 2009 20:40:06 +0000 Resent-Message-ID: Resent-Sender: owner@emacsbugs.donarmstrong.com X-Emacs-PR-Message: report 4039 X-Emacs-PR-Package: emacs X-Emacs-PR-Keywords: Original-Received: via spool by submit@emacsbugs.donarmstrong.com id=B.124941793016158 (code B ref -1); Tue, 04 Aug 2009 20:40:06 +0000 Original-Received: (at submit) by emacsbugs.donarmstrong.com; 4 Aug 2009 20:32:10 +0000 X-Spam-Bayes: score:0.5 Bayes not run. spammytokens:Tokens not available. hammytokens:Tokens not available. Original-Received: from fencepost.gnu.org (fencepost.gnu.org [140.186.70.10]) by rzlab.ucr.edu (8.14.3/8.14.3/Debian-5) with ESMTP id n74KW5dV016153 for ; Tue, 4 Aug 2009 13:32:06 -0700 Original-Received: from mail.gnu.org ([199.232.76.166]:45513 helo=mx10.gnu.org) by fencepost.gnu.org with esmtp (Exim 4.67) (envelope-from ) id 1MYQg1-0007tU-03 for emacs-pretest-bug@gnu.org; Tue, 04 Aug 2009 16:32:05 -0400 Original-Received: from Debian-exim by monty-python.gnu.org with spam-scanned (Exim 4.60) (envelope-from ) id 1MYQfv-0000nP-VU for emacs-pretest-bug@gnu.org; Tue, 04 Aug 2009 16:32:04 -0400 Original-Received: from smtp-out1.starman.ee ([85.253.0.3]:45198 helo=mx1.starman.ee) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1MYQfv-0000nH-Cm for emacs-pretest-bug@gnu.org; Tue, 04 Aug 2009 16:31:59 -0400 X-Virus-Scanned: by Amavisd-New at mx1.starman.ee Original-Received: from mail.starman.ee (82.131.70.102.cable.starman.ee [82.131.70.102]) by mx1.starman.ee (Postfix) with ESMTP id C48CA3F4194 for ; Tue, 4 Aug 2009 23:31:53 +0300 (EEST) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.50 (x86_64-pc-linux-gnu) X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6, seldom 2.4 (older, 4) X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6 (newer, 2) Resent-Date: Tue, 04 Aug 2009 16:46:54 -0400 X-BeenThere: bug-gnu-emacs@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:29871 gmane.emacs.pretest.bugs:24912 Archived-At: Typing C-u 5 C-x 8 ' a is supposed to insert 5 characters of =A8=A2 in a row (modulo the reported bug#4037). However, typing C-u 5 C-x 8 RET E1 RET inserts just 1 character (`E1' is the code point of =A8=A2). I propose to fix `ucs-insert' to accept the same arguments as `insert-char', i.e. `character', `count' and `inherit': Index: lisp/international/mule-cmds.el =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /sources/emacs/emacs/lisp/international/mule-cmds.el,v retrieving revision 1.362 diff -c -r1.362 mule-cmds.el *** lisp/international/mule-cmds.el 15 Jul 2009 12:28:09 -0000 1.362 --- lisp/international/mule-cmds.el 4 Aug 2009 19:50:42 -0000 *************** *** 2941,2959 **** (t (cdr (assoc-string input (ucs-names) t)))))) =20=20 ! (defun ucs-insert (arg) ! "Insert a character of the given Unicode code point. Interactively, prompts for a Unicode character name or a hex number ! using `read-char-by-name'." ! (interactive (list (read-char-by-name "Unicode (name or hex): "))) ! (if (stringp arg) ! (setq arg (string-to-number arg 16))) (cond ! ((not (integerp arg)) ! (error "Not a Unicode character code: %S" arg)) ! ((or (< arg 0) (> arg #x10FFFF)) ! (error "Not a Unicode character code: 0x%X" arg))) ! (insert-and-inherit arg)) =20=20 (define-key ctl-x-map "8\r" 'ucs-insert) =20=20 --- 2941,2968 ---- (t (cdr (assoc-string input (ucs-names) t)))))) =20=20 ! (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'. ! 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 (stringp character) ! (setq character (string-to-number character 16))) (cond ! ((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)))) =20=20 (define-key ctl-x-map "8\r" 'ucs-insert) --=20 Juri Linkov http://www.jurta.org/emacs/