GNU bug report logs - #8744
23.3.50; rcirc prints gibberish

Previous Next

Package: emacs;

Reported by: Leo <sdl.web <at> gmail.com>

Date: Fri, 27 May 2011 17:22:02 UTC

Severity: normal

Found in version 23.3.50

Done: Leo <sdl.web <at> gmail.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 8744 in the body.
You can then email your comments to 8744 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to owner <at> debbugs.gnu.org, deniz <at> dogan.se, rcyeske <at> gmail.com, bug-gnu-emacs <at> gnu.org:
bug#8744; Package emacs. (Fri, 27 May 2011 17:22:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Leo <sdl.web <at> gmail.com>:
New bug report received and forwarded. Copy sent to deniz <at> dogan.se, rcyeske <at> gmail.com, bug-gnu-emacs <at> gnu.org. (Fri, 27 May 2011 17:22:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Leo <sdl.web <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 23.3.50; rcirc prints gibberish
Date: Sat, 28 May 2011 01:21:30 +0800
[Message part 1 (text/plain, inline)]
 1. Emacs -q
 2. M-x irc
 3. find out your nick by typing /me
 4. C-c C-q and input your nick there
 5. In the popup buffer type any utf-8 chars such as ♩♫

You may see something similar to the attached screenshot.

GNU Emacs 23.3.50.1 (x86_64-apple-darwin10.7.0, Carbon Version 1.6.0
 AppKit 1038.35) of 2011-05-27

[rcirc-bug.png (image/png, inline)]

Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#8744; Package emacs. (Sat, 28 May 2011 18:40:03 GMT) Full text and rfc822 format available.

Message #8 received at 8744 <at> debbugs.gnu.org (full text, mbox):

From: Deniz Dogan <deniz <at> dogan.se>
To: Leo <sdl.web <at> gmail.com>
Cc: 8744 <at> debbugs.gnu.org, Ryan Yeske <rcyeske <at> gmail.com>
Subject: Re: bug#8744: 23.3.50; rcirc prints gibberish
Date: Sat, 28 May 2011 19:53:42 +0200
On 2011-05-27 19:21, Leo wrote:
>   1. Emacs -q
>   2. M-x irc
>   3. find out your nick by typing /me
>   4. C-c C-q and input your nick there
>   5. In the popup buffer type any utf-8 chars such as ♩♫
>
> You may see something similar to the attached screenshot.
>
> GNU Emacs 23.3.50.1 (x86_64-apple-darwin10.7.0, Carbon Version 1.6.0
>   AppKit 1038.35) of 2011-05-27
>

For what it's worth, I cannot reproduce this on: GNU Emacs 24.0.50.1 
(i386-mingw-nt6.1.7601) of 2011-05-16 on 3249CTO




Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#8744; Package emacs. (Sun, 29 May 2011 01:13:01 GMT) Full text and rfc822 format available.

Message #11 received at 8744 <at> debbugs.gnu.org (full text, mbox):

From: Leo <sdl.web <at> gmail.com>
To: Deniz Dogan <deniz <at> dogan.se>
Cc: 8744 <at> debbugs.gnu.org, Ryan Yeske <rcyeske <at> gmail.com>
Subject: Re: bug#8744: 23.3.50; rcirc prints gibberish
Date: Sun, 29 May 2011 09:11:47 +0800
On 2011-05-29 01:53 +0800, Deniz Dogan wrote:
> For what it's worth, I cannot reproduce this on: GNU Emacs 24.0.50.1
> (i386-mingw-nt6.1.7601) of 2011-05-16 on 3249CTO

I observed the same bug on 24.0.50 with X11 on OSX running in Terminal.

Leo




Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#8744; Package emacs. (Sun, 29 May 2011 14:05:01 GMT) Full text and rfc822 format available.

Message #14 received at 8744 <at> debbugs.gnu.org (full text, mbox):

From: Leo <sdl.web <at> gmail.com>
To: 8744 <at> debbugs.gnu.org
Cc: Ryan Yeske <rcyeske <at> gmail.com>, Deniz Dogan <deniz <at> dogan.se>
Subject: Re: bug#8744: 23.3.50; rcirc prints gibberish
Date: Sun, 29 May 2011 22:04:27 +0800
The culprit is this line in rcirc-print:

  ;; only decode text from other senders, not ours                                                                                                                       
  (setq text (decode-coding-string text rcirc-decode-coding-system))

Any idea why not also decode message to ourselves?

Leo




Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#8744; Package emacs. (Sun, 29 May 2011 14:27:02 GMT) Full text and rfc822 format available.

Message #17 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Leo <sdl.web <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: Re: bug#8744: 23.3.50; rcirc prints gibberish
Date: Sun, 29 May 2011 22:26:22 +0800
On 2011-05-29 22:04 +0800, Leo wrote:
> The culprit is this line in rcirc-print:
>
>   ;; only decode text from other senders, not ours
>   (setq text (decode-coding-string text rcirc-decode-coding-system))
>
> Any idea why not also decode message to ourselves?

OK, found the reason. Will install the following patch soonish.

commit 0cd01fb856ec13223446cb77adf65a6b9867a455 (HEAD, refs/heads/leo-lisp-reader)
Date:   Sun May 29 22:17:23 2011 +0800

    Fix decoding issue for text to self in rcirc.el (#8744)
    
    Decoding is required due to change on 2006-04-08 by Eli Zaretskii.
---
 lisp/net/rcirc.el |    3 +--
 1 files changed, 1 insertions(+), 2 deletions(-)

	Modified lisp/net/rcirc.el
diff --git a/lisp/net/rcirc.el b/lisp/net/rcirc.el
index cbcac886..8fb5a98a 100644
--- a/lisp/net/rcirc.el
+++ b/lisp/net/rcirc.el
@@ -1428,9 +1428,8 @@ (defun rcirc-print (process sender response target text &optional activity)
 	      (old-point (point-marker))
 	      (fill-start (marker-position rcirc-prompt-start-marker)))
 
+	  (setq text (decode-coding-string text rcirc-decode-coding-system))
 	  (unless (string= sender (rcirc-nick process))
-	    ;; only decode text from other senders, not ours
-	    (setq text (decode-coding-string text rcirc-decode-coding-system))
 	    ;; mark the line with overlay arrow
 	    (unless (or (marker-position overlay-arrow-position)
 			(get-buffer-window (current-buffer))






Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#8744; Package emacs. (Sun, 29 May 2011 18:50:03 GMT) Full text and rfc822 format available.

Message #20 received at 8744 <at> debbugs.gnu.org (full text, mbox):

From: Marco Pessotto <melmothx <at> gmail.com>
To: 8744 <at> debbugs.gnu.org
Subject: Also use detect-coding-string?
Date: Sun, 29 May 2011 20:49:42 +0200
Couldn't this patch be modified as:

index b9f92ff..fa8da53 100644
--- a/rcirc.el
+++ b/rcirc.el
@@ -1456,10 +1456,11 @@ record activity."
 	(let ((moving (= (point) rcirc-prompt-end-marker))
 	      (old-point (point-marker))
 	      (fill-start (marker-position rcirc-prompt-start-marker)))
-
+	  
+	  (setq text 
+		(decode-coding-string text (detect-coding-string text t)))
 	  (unless (string= sender (rcirc-nick process))
-	    ;; only decode text from other senders, not ours
-	    (setq text (decode-coding-string text rcirc-decode-coding-system))
+
 	    ;; mark the line with overlay arrow
 	    (unless (or (marker-position overlay-arrow-position)
 			(get-buffer-window (current-buffer))


I was annoyed by ppl mixing encodings on the same channel and this seems
to fix it.

-- 
Marco




Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#8744; Package emacs. (Mon, 30 May 2011 02:40:02 GMT) Full text and rfc822 format available.

Message #23 received at 8744 <at> debbugs.gnu.org (full text, mbox):

From: Leo <sdl.web <at> gmail.com>
To: Marco Pessotto <melmothx <at> gmail.com>
Cc: 8744 <at> debbugs.gnu.org, Stefan Monnier <monnier <at> iro.umontreal.ca>
Subject: Re: bug#8744: Also use detect-coding-string?
Date: Mon, 30 May 2011 10:39:07 +0800
On 2011-05-30 02:49 +0800, Marco Pessotto wrote:
> Couldn't this patch be modified as:
[snipped 23 lines]

I just read
http://en.wikipedia.org/wiki/Internet_Relay_Chat#Character_encoding, so
this seems to be a good change.

Stefan, what do you think?

Should I make the change so that if rcirc-decode-coding-system is a
coding-system, it is used, otherwise detect the coding-system?

Leo




Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#8744; Package emacs. (Mon, 30 May 2011 06:43:02 GMT) Full text and rfc822 format available.

Message #26 received at 8744 <at> debbugs.gnu.org (full text, mbox):

From: Marco Pessotto <melmothx <at> gmail.com>
To: Leo <sdl.web <at> gmail.com>
Cc: 8744 <at> debbugs.gnu.org, Stefan Monnier <monnier <at> iro.umontreal.ca>
Subject: Re: bug#8744: Also use detect-coding-string?
Date: Mon, 30 May 2011 08:42:39 +0200
Leo <sdl.web <at> gmail.com> writes:

> On 2011-05-30 02:49 +0800, Marco Pessotto wrote:
>> Couldn't this patch be modified as:
> [snipped 23 lines]
>
> I just read
> http://en.wikipedia.org/wiki/Internet_Relay_Chat#Character_encoding, so
> this seems to be a good change.
>
> Stefan, what do you think?
>
> Should I make the change so that if rcirc-decode-coding-system is a
> coding-system, it is used, otherwise detect the coding-system?
>

The rcirc-decode-coding-system is by default set to 'utf-8, which is
(obviously a valid coding system), so the test, if i understand
correctly, would always be true.

My idea is that the client should try to detect automatically the
encoding used for each message received, using as first choices the
encodings set by the user. That's what all the major IRC clients do (like
irssi and weechat). 

Cheers

-- 
Marco




Reply sent to Leo <sdl.web <at> gmail.com>:
You have taken responsibility. (Mon, 30 May 2011 12:37:02 GMT) Full text and rfc822 format available.

Notification sent to Leo <sdl.web <at> gmail.com>:
bug acknowledged by developer. (Mon, 30 May 2011 12:37:02 GMT) Full text and rfc822 format available.

Message #31 received at 8744-done <at> debbugs.gnu.org (full text, mbox):

From: Leo <sdl.web <at> gmail.com>
To: Marco Pessotto <melmothx <at> gmail.com>
Cc: 8744-done <at> debbugs.gnu.org
Subject: Re: bug#8744: Also use detect-coding-string?
Date: Mon, 30 May 2011 20:36:33 +0800
Fixed in version 24.1.

Many thanks for the suggestion.




Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#8744; Package emacs. (Mon, 30 May 2011 13:34:02 GMT) Full text and rfc822 format available.

Message #34 received at 8744 <at> debbugs.gnu.org (full text, mbox):

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Marco Pessotto <melmothx <at> gmail.com>
Cc: 8744 <at> debbugs.gnu.org, Leo <sdl.web <at> gmail.com>
Subject: Re: bug#8744: Also use detect-coding-string?
Date: Mon, 30 May 2011 10:33:14 -0300
> The rcirc-decode-coding-system is by default set to 'utf-8, which is
> (obviously a valid coding system), so the test, if i understand
> correctly, would always be true.

> My idea is that the client should try to detect automatically the
> encoding used for each message received, using as first choices the
> encodings set by the user. That's what all the major IRC clients do (like
> irssi and weechat). 

IIUC that's exactly what you'll get if you set
rcirc-decode-coding-system to `undecided'.


        Stefan




Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#8744; Package emacs. (Mon, 30 May 2011 14:21:01 GMT) Full text and rfc822 format available.

Message #37 received at 8744 <at> debbugs.gnu.org (full text, mbox):

From: Marco Pessotto <melmothx <at> gmail.com>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: 8744 <at> debbugs.gnu.org, Leo <sdl.web <at> gmail.com>
Subject: Re: bug#8744: Also use detect-coding-string?
Date: Mon, 30 May 2011 16:18:47 +0200
Stefan Monnier <monnier <at> iro.umontreal.ca> writes:

>> The rcirc-decode-coding-system is by default set to 'utf-8, which is
>> (obviously a valid coding system), so the test, if i understand
>> correctly, would always be true.
>
>> My idea is that the client should try to detect automatically the
>> encoding used for each message received, using as first choices the
>> encodings set by the user. That's what all the major IRC clients do (like
>> irssi and weechat). 
>
> IIUC that's exactly what you'll get if you set
> rcirc-decode-coding-system to `undecided'.
>
>
>         Stefan

I tested this a bit and you're right. A line of documentation wouldn't
harm, anyway. Something like:

@@ -302,7 +302,9 @@ Called with 5 arguments, PROCESS, SENDER, RESPONSE, TARGET and TEXT."
   :group 'rcirc)
 
 (defcustom rcirc-decode-coding-system 'utf-8
-  "Coding system used to decode incoming irc messages."
+  "Coding system used to decode incoming irc messages.
+Set to 'undecided if you want the encoding of the incoming
+messages autodetected"
   :type 'coding-system
   :group 'rcirc)
 

Bests

-- 
Marco




Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#8744; Package emacs. (Tue, 31 May 2011 03:17:01 GMT) Full text and rfc822 format available.

Message #40 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Leo <sdl.web <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: Re: bug#8744: Also use detect-coding-string?
Date: Tue, 31 May 2011 11:16:02 +0800
On 2011-05-30 22:18 +0800, Marco Pessotto wrote:
>> IIUC that's exactly what you'll get if you set
>> rcirc-decode-coding-system to `undecided'.
>>
>>
>>         Stefan
>
> I tested this a bit and you're right. A line of documentation wouldn't
> harm, anyway. Something like:
>
> @@ -302,7 +302,9 @@ Called with 5 arguments, PROCESS, SENDER, RESPONSE, TARGET and TEXT."
>    :group 'rcirc)
>  
>  (defcustom rcirc-decode-coding-system 'utf-8
> -  "Coding system used to decode incoming irc messages."
> +  "Coding system used to decode incoming irc messages.
> +Set to 'undecided if you want the encoding of the incoming
> +messages autodetected"
>    :type 'coding-system
>    :group 'rcirc)

I was ignorant of this fact. I will revert my commit to my original
patch with the doc-string improvement from Marco in a day or two.

Leo





bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Tue, 28 Jun 2011 11:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 13 years and 358 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.