Debian Bug report logs - #48529
xmms: Japanese patch is available, please apply it.

Package: xmms; Maintainer for xmms is (unknown);

Reported by: Takuo KITAME <kitame@excalibur.northeye.org>

Date: Thu, 28 Oct 1999 01:33:16 UTC

Severity: wishlist

Tags: moreinfo, wontfix

Merged with 97919

Done: damog@cerdita.damog.net (David Moreno Garza)

Bug is archived. No further changes may be made.

Toggle useless messages

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


Report forwarded to debian-bugs-dist@lists.debian.org, Josip Rodin <jrodin@jagor.srce.hr>:
Bug#48529; Package xmms. (full text, mbox, link).


Acknowledgement sent to Takuo KITAME <kitame@excalibur.northeye.org>:
New Bug report received and forwarded. Copy sent to Josip Rodin <jrodin@jagor.srce.hr>. (full text, mbox, link).


Message #5 received at submit@bugs.debian.org (full text, mbox, reply):

From: Takuo KITAME <kitame@excalibur.northeye.org>
To: submit@bugs.debian.org
Subject: xmms: Japanese patch is available, please apply it.
Date: Thu, 28 Oct 1999 10:24:47 +0900 (JST)
Package: xmms
Version: N/A
Severity: wishlist

XMMS can't display Japanese text at PlayList and FileInfo.
Please apply a patch to display  it.

Patch page.
<URL:http://www.geocities.co.jp/SiliconValley/6723/xmms-e.html>

Patch file.
<URL:http://www.geocities.co.jp/SiliconValley/6723/xmms-ja-patch.gz >

I think, this patch have no bad effect to other languages.

Regards.


Information forwarded to debian-bugs-dist@lists.debian.org, Josip Rodin <jrodin@jagor.srce.hr>:
Bug#48529; Package xmms. (full text, mbox, link).


Acknowledgement sent to Josip Rodin <jrodin@public.srce.hr>:
Extra info received and forwarded to list. Copy sent to Josip Rodin <jrodin@jagor.srce.hr>. (full text, mbox, link).


Message #10 received at 48529@bugs.debian.org (full text, mbox, reply):

From: Josip Rodin <jrodin@public.srce.hr>
To: Takuo KITAME <kitame@excalibur.northeye.org>, 48529@bugs.debian.org
Subject: Re: Bug#48529: xmms: Japanese patch is available, please apply it.
Date: Thu, 28 Oct 1999 17:27:19 +0200
On Thu, Oct 28, 1999 at 10:24:47AM +0900, Takuo KITAME wrote:
> Package: xmms
> Version: N/A
> Severity: wishlist
> 
> XMMS can't display Japanese text at PlayList and FileInfo.

Please confirm that with the latest package version, 0.9.5.1-3.

> Please apply a patch to display  it.
> 
> Patch page.
> <URL:http://www.geocities.co.jp/SiliconValley/6723/xmms-e.html>
> 
> Patch file.
> <URL:http://www.geocities.co.jp/SiliconValley/6723/xmms-ja-patch.gz >
> 
> I think, this patch have no bad effect to other languages.

Maybe not, but I won't risk applying a 160KB patch that's for an old
version, anyway.

-- 
enJoy -*/\*- don't even try to pronounce my first name


Information forwarded to debian-bugs-dist@lists.debian.org, Josip Rodin <jrodin@jagor.srce.hr>:
Bug#48529; Package xmms. (full text, mbox, link).


Acknowledgement sent to Takuo KITAME <kitame@northeye.org>:
Extra info received and forwarded to list. Copy sent to Josip Rodin <jrodin@jagor.srce.hr>. (full text, mbox, link).


Message #15 received at 48529@bugs.debian.org (full text, mbox, reply):

From: Takuo KITAME <kitame@northeye.org>
To: Josip Rodin <jrodin@public.srce.hr>, 48529@bugs.debian.org
Subject: Re: Bug#48529: xmms: Japanese patch is available, please apply it.
Date: Fri, 19 Nov 1999 00:23:54 +0900
[Message part 1 (text/plain, inline)]
Hello,

Josip Rodin <jrodin@public.srce.hr> wrote:
>> Please apply a patch to display  it.
>> 
>> Patch page.
>> <URL:http://www.geocities.co.jp/SiliconValley/6723/xmms-e.html>
>> 
>> Patch file.
>> <URL:http://www.geocities.co.jp/SiliconValley/6723/xmms-ja-patch.gz >
>> 
>> I think, this patch have no bad effect to other languages.
>
>Maybe not, but I won't risk applying a 160KB patch that's for an old
>version, anyway.

Well. I made a new patch for xmms-0.9.5.1-4 which is very simple than
before.

My patch using iconv(3) for Japanese code conversion.
How about this?

[Message part 2 (text/plain, inline)]
diff -x debian -ur xmms-0.9.5.1/Input/mpg123/Makefile.am xmms-0.9.5.1.new/Input/mpg123/Makefile.am
--- xmms-0.9.5.1/Input/mpg123/Makefile.am	Fri Jul 30 06:03:11 1999
+++ xmms-0.9.5.1.new/Input/mpg123/Makefile.am	Thu Nov 18 20:17:34 1999
@@ -9,7 +9,8 @@
 layer1.c layer2.c layer3.c tabinit.c equalizer.c http.c huffman.h mpg123.h  tables.h \
 dxhead.c dxhead.h \
 id3.c id3.h id3_frame.c id3_frame_content.c id3_frame_text.c \
-id3_frame_url.c id3_header.h id3_tag.c
+id3_frame_url.c id3_header.h id3_tag.c \
+jcode.c jcode.h
 
 
 if ARCH_X86
diff -x debian -ur xmms-0.9.5.1/Input/mpg123/Makefile.in xmms-0.9.5.1.new/Input/mpg123/Makefile.in
--- xmms-0.9.5.1/Input/mpg123/Makefile.in	Mon Sep 27 03:34:10 1999
+++ xmms-0.9.5.1.new/Input/mpg123/Makefile.in	Thu Nov 18 20:45:11 1999
@@ -126,7 +126,7 @@
 COMMON_CFLAGS = -I$(top_builddir) -I$(top_srcdir) -O2 -fomit-frame-pointer -funroll-all-loops 			-finline-functions -ffast-math @GTK_CFLAGS@ -D_REENTRANT
 
 
-COMMON_SRC = mpg123.c configure.c fileinfo.c common.c decode_2to1.c decode_4to1.c decode_ntom.c layer1.c layer2.c layer3.c tabinit.c equalizer.c http.c huffman.h mpg123.h  tables.h dxhead.c dxhead.h id3.c id3.h id3_frame.c id3_frame_content.c id3_frame_text.c id3_frame_url.c id3_header.h id3_tag.c
+COMMON_SRC = mpg123.c configure.c fileinfo.c common.c decode_2to1.c decode_4to1.c decode_ntom.c layer1.c layer2.c layer3.c tabinit.c equalizer.c http.c huffman.h mpg123.h  tables.h dxhead.c dxhead.h id3.c id3.h id3_frame.c id3_frame_content.c id3_frame_text.c id3_frame_url.c id3_header.h id3_tag.c jcode.h jcode.c
 
 
 @ARCH_X86_TRUE@EXTRA_CFLAGS = -DI386_ASSEM -DPENTIUM_OPT -DLINUX -DREAL_IS_FLOAT -m486
@@ -162,7 +162,7 @@
 @ARCH_X86_TRUE@@ARCH_PPC_TRUE@id3_frame_content.lo id3_frame_text.lo \
 @ARCH_X86_TRUE@@ARCH_PPC_TRUE@id3_frame_url.lo id3_tag.lo \
 @ARCH_X86_TRUE@@ARCH_PPC_TRUE@decode_i386.lo decode_i586.lo \
-@ARCH_X86_TRUE@@ARCH_PPC_TRUE@dct64_i386.lo getbits.lo
+@ARCH_X86_TRUE@@ARCH_PPC_TRUE@dct64_i386.lo getbits.lo  jcode.lo
 @ARCH_X86_TRUE@@ARCH_PPC_FALSE@libmpg123_la_OBJECTS =  mpg123.lo \
 @ARCH_X86_TRUE@@ARCH_PPC_FALSE@configure.lo fileinfo.lo common.lo \
 @ARCH_X86_TRUE@@ARCH_PPC_FALSE@decode_2to1.lo decode_4to1.lo \
@@ -172,7 +172,7 @@
 @ARCH_X86_TRUE@@ARCH_PPC_FALSE@id3_frame_content.lo id3_frame_text.lo \
 @ARCH_X86_TRUE@@ARCH_PPC_FALSE@id3_frame_url.lo id3_tag.lo \
 @ARCH_X86_TRUE@@ARCH_PPC_FALSE@decode_i386.lo decode_i586.lo \
-@ARCH_X86_TRUE@@ARCH_PPC_FALSE@dct64_i386.lo getbits.lo
+@ARCH_X86_TRUE@@ARCH_PPC_FALSE@dct64_i386.lo getbits.lo jcode.lo
 @ARCH_X86_FALSE@@ARCH_PPC_TRUE@libmpg123_la_OBJECTS =  mpg123.lo \
 @ARCH_X86_FALSE@@ARCH_PPC_TRUE@configure.lo fileinfo.lo common.lo \
 @ARCH_X86_FALSE@@ARCH_PPC_TRUE@decode_2to1.lo decode_4to1.lo \
@@ -181,7 +181,7 @@
 @ARCH_X86_FALSE@@ARCH_PPC_TRUE@http.lo dxhead.lo id3.lo id3_frame.lo \
 @ARCH_X86_FALSE@@ARCH_PPC_TRUE@id3_frame_content.lo id3_frame_text.lo \
 @ARCH_X86_FALSE@@ARCH_PPC_TRUE@id3_frame_url.lo id3_tag.lo decode.lo \
-@ARCH_X86_FALSE@@ARCH_PPC_TRUE@dct64.lo
+@ARCH_X86_FALSE@@ARCH_PPC_TRUE@dct64.lo jcode.lo
 @ARCH_X86_FALSE@@ARCH_PPC_FALSE@libmpg123_la_OBJECTS =  mpg123.lo \
 @ARCH_X86_FALSE@@ARCH_PPC_FALSE@configure.lo fileinfo.lo common.lo \
 @ARCH_X86_FALSE@@ARCH_PPC_FALSE@decode_2to1.lo decode_4to1.lo \
@@ -190,7 +190,7 @@
 @ARCH_X86_FALSE@@ARCH_PPC_FALSE@http.lo dxhead.lo id3.lo id3_frame.lo \
 @ARCH_X86_FALSE@@ARCH_PPC_FALSE@id3_frame_content.lo id3_frame_text.lo \
 @ARCH_X86_FALSE@@ARCH_PPC_FALSE@id3_frame_url.lo id3_tag.lo decode.lo \
-@ARCH_X86_FALSE@@ARCH_PPC_FALSE@dct64.lo
+@ARCH_X86_FALSE@@ARCH_PPC_FALSE@dct64.lo jcode.lo
 COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
 LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
 CCLD = $(CC)
@@ -346,6 +346,8 @@
 equalizer.lo equalizer.o : equalizer.c mpg123.h ../../xmms/plugin.h \
 	../../libxmms/util.h dxhead.h
 fileinfo.lo fileinfo.o : fileinfo.c mpg123.h ../../xmms/plugin.h \
+	../../libxmms/util.h dxhead.h
+jcode.lo jcode.o : jcode.c mpg123.h ../../xmms/plugin.h \
 	../../libxmms/util.h dxhead.h
 http.lo http.o : http.c mpg123.h ../../xmms/plugin.h \
 	../../libxmms/util.h dxhead.h ../../config.h
diff -x debian -ur xmms-0.9.5.1/Input/mpg123/fileinfo.c xmms-0.9.5.1.new/Input/mpg123/fileinfo.c
--- xmms-0.9.5.1/Input/mpg123/fileinfo.c	Tue Aug 31 03:36:29 1999
+++ xmms-0.9.5.1.new/Input/mpg123/fileinfo.c	Thu Nov 18 20:21:05 1999
@@ -3,6 +3,7 @@
 #include <sys/stat.h>
 #include <fcntl.h>
 #include "mpg123.h"
+#include "jcode.h"
 
 static GtkWidget *window = NULL, *hbox, *vbox, *id3_frame, *table, *mpeg_frame, *mpeg_box;
 static GtkWidget *title_label, *title_entry;
@@ -50,6 +51,7 @@
 
 	stripped_len = mpg123_strip_spaces(tag, length);
 	text = g_strdup_printf("%-*.*s", stripped_len, stripped_len, tag);
+	str_conv( &text, detectJcode(text), "EUC-JP");
 	gtk_entry_set_text(entry, text);
 	g_free(text);
 }
@@ -59,6 +61,7 @@
 	gchar *text;
 
 	text = gtk_entry_get_text(entry);
+	str_conv( &text, "EUC-JP", "SJIS");
 	memset(tag, ' ', length);
 	memcpy(tag, text, strlen(text) > length ? length : strlen(text));
 }
Only in xmms-0.9.5.1.new/Input/mpg123: jcode.c
Only in xmms-0.9.5.1.new/Input/mpg123: jcode.h
diff -x debian -ur xmms-0.9.5.1/Input/mpg123/mpg123.c xmms-0.9.5.1.new/Input/mpg123/mpg123.c
--- xmms-0.9.5.1/Input/mpg123/mpg123.c	Thu Sep 23 07:04:04 1999
+++ xmms-0.9.5.1.new/Input/mpg123/mpg123.c	Thu Nov 18 20:21:19 1999
@@ -5,6 +5,7 @@
 #include <string.h>
 #include <stdlib.h>
 #include <pthread.h>
+#include "jcode.h"
 
 static long outscale = 32768;
 
@@ -704,7 +705,7 @@
 		 * Unable to get ID3 tag.
 		 */
 		ret = mpg123_format_song_title(NULL, filename);
-
+	str_conv( &ret, detectJcode(ret), "EUC-JP");
 	return ret;
 }
 
diff -x debian -ur xmms-0.9.5.1/xmms/main.c xmms-0.9.5.1.new/xmms/main.c
--- xmms-0.9.5.1/xmms/main.c	Thu Nov 18 23:49:28 1999
+++ xmms-0.9.5.1.new/xmms/main.c	Thu Nov 18 23:00:58 1999
@@ -389,7 +389,7 @@
 		xmms_cfg_read_boolean(cfgfile, "xmms", "playlist_shaded", &cfg.playlist_shaded);
 		xmms_cfg_read_boolean(cfgfile, "xmms", "playlist_visible", &cfg.playlist_visible);
 		if (!xmms_cfg_read_string(cfgfile, "xmms", "playlist_font", &cfg.playlist_font))
-			cfg.playlist_font = g_strdup("-adobe-helvetica-bold-r-*-*-10-*");
+			cfg.playlist_font = g_strdup("-adobe-helvetica-bold-r-*-*-10-*,-misc-fixed-medium-r-normal--10-90-*-*-*-*-*");
 		xmms_cfg_read_int(cfgfile, "xmms", "playlist_position", &cfg.playlist_position);
 		xmms_cfg_read_int(cfgfile, "xmms", "equalizer_x", &cfg.equalizer_x);
 		xmms_cfg_read_int(cfgfile, "xmms", "equalizer_y", &cfg.equalizer_y);
@@ -421,7 +421,7 @@
 	}
 	else
 	{
-		cfg.playlist_font = g_strdup("-adobe-helvetica-bold-r-*-*-10-*");
+		cfg.playlist_font = g_strdup("-adobe-helvetica-bold-r-*-*-10-*,-misc-fixed-medium-r-normal--10-90-*-*-*-*-*");
 	}
 	g_free(filename);
 }
diff -x debian -ur xmms-0.9.5.1/xmms/playlist_list.c xmms-0.9.5.1.new/xmms/playlist_list.c
--- xmms-0.9.5.1/xmms/playlist_list.c	Fri Jul 30 06:03:12 1999
+++ xmms-0.9.5.1.new/xmms/playlist_list.c	Thu Nov 18 23:03:10 1999
@@ -235,7 +235,7 @@
 	gdk_gc_set_foreground(gc, get_skin_color(SKIN_PLEDIT_NORMALBG));
 	gdk_draw_rectangle(obj, gc, TRUE, pl->pl_widget.x, pl->pl_widget.y, width, height);
 
-	if (font = gdk_font_load(cfg.playlist_font))
+	if (font = gdk_fontset_load(cfg.playlist_font))
 	{
 		list = get_playlist();
 		pl->pl_fheight = font->ascent + font->descent + 1;
diff -x debian -ur xmms-0.9.5.1/xmms/textbox.c xmms-0.9.5.1.new/xmms/textbox.c
--- xmms-0.9.5.1/xmms/textbox.c	Fri Jul 30 06:03:13 1999
+++ xmms-0.9.5.1.new/xmms/textbox.c	Thu Nov 18 23:44:44 1999
@@ -55,9 +55,9 @@
 		cw = tb->tb_pixmap_width - tb->tb_offset;
 		if (cw > tb->tb_widget.width)
 			cw = tb->tb_widget.width;
-		gdk_draw_pixmap(obj, tb->tb_widget.gc, src, tb->tb_offset, 0, tb->tb_widget.x, tb->tb_widget.y, cw, 6);
+		gdk_draw_pixmap(obj, tb->tb_widget.gc, src, tb->tb_offset, 0, tb->tb_widget.x, tb->tb_widget.y, cw, 12);
 		if (cw < tb->tb_widget.width)
-			gdk_draw_pixmap(obj, tb->tb_widget.gc, src, 0, 0, tb->tb_widget.x + cw, tb->tb_widget.y, tb->tb_widget.width - cw, 6);
+			gdk_draw_pixmap(obj, tb->tb_widget.gc, src, 0, 0, tb->tb_widget.x + cw, tb->tb_widget.y, tb->tb_widget.width - cw, 12);
 	}
 }
 
@@ -185,7 +185,53 @@
 {
 	gint length, i, x, y;
 	GdkGC *gc;
+	GdkFont *font;
 
+#ifndef NO_STR_CONV
+	  if (font = gdk_fontset_load(cfg.playlist_font)) {
+	    if(tb->tb_pixmap) gdk_pixmap_unref(tb->tb_pixmap);
+
+	    if(tb->tb_pixmap_text);
+	    g_free(tb->tb_pixmap_text);
+
+	    length = strlen(tb->tb_text);
+	    tb->tb_pixmap_width = gdk_text_width(font, tb->tb_text, length);
+
+	    if (tb->tb_pixmap_width<=tb->tb_widget.width) {
+	      tb->tb_pixmap_width=tb->tb_widget.width;
+
+	      tb->tb_pixmap_text=g_strdup(tb->tb_text);
+
+	      if(tb->tb_timeout_tag) {
+		gtk_timeout_remove(tb->tb_timeout_tag);
+		tb->tb_timeout_tag=0;
+	      }
+
+	    } else {
+	      tb->tb_pixmap_text=g_malloc(sizeof(gchar)*(length + 1 + 7));
+	      strcpy(tb->tb_pixmap_text, tb->tb_text);
+	      strcat(tb->tb_pixmap_text, "  ***  ");
+
+	      length = strlen(tb->tb_pixmap_text);
+	      tb->tb_pixmap_width = gdk_text_width(font, tb->tb_pixmap_text, length);       
+	    }
+
+	    tb->tb_pixmap = gdk_pixmap_new(mainwin->window, tb->tb_pixmap_width,12, gdk_visual_get_best_depth());
+
+	    gc = tb->tb_widget.gc;
+
+	    gdk_gc_set_foreground(gc,get_skin_color(SKIN_PLEDIT_NORMALBG));
+	    gdk_draw_rectangle(tb->tb_pixmap, gc, TRUE, 0, 0, tb->tb_pixmap_width, 12);
+
+	    gdk_gc_set_foreground(gc,get_skin_color(SKIN_PLEDIT_NORMAL));
+
+	    gdk_draw_text(tb->tb_pixmap, font, gc, 0, font->ascent, tb->tb_pixmap_text, length);
+	    gdk_font_unref(font);
+
+	    free(tb->tb_pixmap_text);
+	    tb->tb_pixmap_text=g_strdup(tb->tb_text);
+	  }
+#else
 	if (tb->tb_pixmap)
 		gdk_pixmap_unref(tb->tb_pixmap);
 
@@ -335,8 +381,7 @@
 		}
 		gdk_draw_pixmap(tb->tb_pixmap, gc, get_skin_pixmap(tb->tb_skin_index), x, y, i * 5, 0, 5, 6);
 	}
-
-	
+#endif /* NO_STR_CONV */	
 }
 
 void textbox_set_scroll(TextBox * tb, gboolean s)
@@ -372,7 +417,7 @@
 	tb->tb_widget.x = x;
 	tb->tb_widget.y = y;
 	tb->tb_widget.width = w;
-	tb->tb_widget.height = 6;
+	tb->tb_widget.height = 12;
 	tb->tb_widget.visible = 1;
 	tb->tb_widget.button_press_cb = textbox_button_press;
 	tb->tb_widget.button_release_cb = textbox_button_release;
[Message part 3 (text/plain, inline)]
-- 
Takuo KITAME
  kitame@northeye.org

Information forwarded to debian-bugs-dist@lists.debian.org, Josip Rodin <jrodin@jagor.srce.hr>:
Bug#48529; Package xmms. (full text, mbox, link).


Acknowledgement sent to Josip Rodin <jrodin@public.srce.hr>:
Extra info received and forwarded to list. Copy sent to Josip Rodin <jrodin@jagor.srce.hr>. (full text, mbox, link).


Message #20 received at 48529@bugs.debian.org (full text, mbox, reply):

From: Josip Rodin <jrodin@public.srce.hr>
To: Takuo KITAME <kitame@northeye.org>, 48529@bugs.debian.org
Subject: Re: Bug#48529: xmms: Japanese patch is available, please apply it.
Date: Thu, 18 Nov 1999 16:39:45 +0100
On Fri, Nov 19, 1999 at 12:23:54AM +0900, Takuo KITAME wrote:
> >> Please apply a patch to display  it.
> >> Patch file.
> >> <URL:http://www.geocities.co.jp/SiliconValley/6723/xmms-ja-patch.gz >
> >> 
> >> I think, this patch have no bad effect to other languages.
> >
> >Maybe not, but I won't risk applying a 160KB patch that's for an old
> >version, anyway.
> 
> Well. I made a new patch for xmms-0.9.5.1-4 which is very simple than
> before.
> 
> My patch using iconv(3) for Japanese code conversion.
> How about this?

Hm, still a wee bit too big. :( And other Japanese people didn't complain
much about XMMS so far, there was just one tiny patch and it is included in
latest .deb version.

You should send this patch of yours to the upstream people, either
peter@xmms.org or crocodile@xmms.org, so it gets included there.

-- 
enJoy -*/\*- don't even try to pronounce my first name


Tags added: moreinfo Request was from Josip Rodin <joy@cibalia.gkvk.hr> to control@bugs.debian.org. (full text, mbox, link).


Tags added: wontfix Request was from Josip Rodin <joy@cibalia.gkvk.hr> to control@bugs.debian.org. (full text, mbox, link).


Merged 48529 97919. Request was from Josip Rodin <joy@cibalia.gkvk.hr> to control@bugs.debian.org. (full text, mbox, link).


Bug closed, send any further explanations to arafune@debian.org Request was from damog@cerdita.damog.net (David Moreno Garza) to control@bugs.debian.org. (full text, mbox, link).


Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Sun, 17 Jun 2007 17:25:36 GMT) (full text, mbox, link).


Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Mon Jun 5 03:19:47 2023; Machine Name: buxtehude

Debian Bug tracking system

Debbugs is free software and licensed under the terms of the GNU Public License version 2. The current version can be obtained from https://bugs.debian.org/debbugs-source/.

Copyright © 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson, 2005-2017 Don Armstrong, and many other contributors.