Opened 11 years ago

Closed 10 years ago

#191 closed enhancement (duplicate)

Need to be able to customize theme on per-buddy basis

Reported by: elephas Owned by: datallah
Milestone: Component: pidgin (gtk)
Version: 2.0 Keywords: customization font buddy


Problem: some of my buddies write me in languages that use glyphs present only in special fonts. But those fonts look too ugly for the rest of my buddies who write me in English etc. To solve this problem, I have to run 2 different message clients: Pidgin for English etc and Google Talk for special glyphs. If Pidgin had a feature of setting a theme (including font face) on per-buddy basis, I'd be able to use just Pidgin only.

Change History (12)

comment:1 Changed 11 years ago by khc

fontconfig provides a way to set up a font list that can be used for exactly that purpose.

comment:2 Changed 11 years ago by lschiere

  • Owner set to elb

Ethan, I know this is an invalid bug, but I'm hoping you can provide some tips to the user before closing this. I suspect you have dealt with this sort of thing.

comment:3 Changed 11 years ago by elb

The reply by khc gets straight to the point -- fontconfig allows you to select a set of fonts to be used for Gtk+ rendering, and the appropriate set of fonts should make things prettier.

The basic tactic you'll want to use is to put a general-purpose font first in your list, and follow it with fonts for particular character sets. For example, I use:

                        <family>Kochi Gothic</family>
                        <family>Baekmuk Gulim</family>
                        <family>Bitstream Cyberbit</family>

(I really only care about the first two, the remainder just clean up glyphs for testing, more or less.)

comment:4 in reply to: ↑ description Changed 11 years ago by elephas

Well, I found the file fonts.conf in my ...\GTK\2.0\etc\fonts , added this section there:


<family>sans-serif</family> <prefer>

<family>Tahoma</family> <family>Sylfaen</family>



and, in the input area I see squares, on the message log area I see squares but the recipient with Google Talk sees the text I meant. Would it be much, much easier for Joe the user to at least edit some Pidgin's config file instead of tinkering with the GTK setup?

comment:5 Changed 11 years ago by elb

I should have known this was Windows. This explains why you think that every program should set its own font -- Windows has no plan for fonts.

I don't know what you would do, there.

comment:6 Changed 11 years ago by khc

  • Cc datallah added

maybe datallah knows

comment:7 Changed 11 years ago by datallah

Fontconfig (which generates/uses fonts.conf) isn't used by the Win32 Pango backend (it is, however, used by the Freetype backend even on Windows (which is why sometimes fonts will work in guifications popups, but not in pidgin itelf)).

I believe the way around this is to edit the ...\etc\pango\pango.aliases file and to include the necessary fonts in the alias lists there.

Instead of editing the global pango.aliases file which will be replaced when the GTK+ Runtime is upgraded, you should copy it to your local home directory and edit it there:

  • C:\Documents and Settings\<username>\.pango.aliases

NOTE the leading '.' as it is necessary; Windows Explorer will not let you create a file with that name - you'll need to rename it from a cmd prompt or through a text editor.

comment:8 Changed 11 years ago by elephas

well, I made the change suggested by datallah:

courier = "courier new,sylfaen"

tahoma = "sylfaen,tahoma,browallia new,mingliu,simhei,gulimche,ms gothic,kartika,latha,mangal"
sans = "sylfaen,tahoma,arial,browallia new,mingliu,simhei,gulimche,ms gothic,kartika,latha,mangal"
serif = "sylfaen,tahoma,times new roman,angsana new,mingliu,simsun,gulimche,ms gothic,kartika,latha,mangal"
monospace = "courier new,sylfaen,courier monothai,mingliu,simsun,gulimche,ms gothic,kartika,latha,mangal"
  • but now I am getting just different kind of boxes instead of letters: before the change the boxes were empty inside, now after this change the boxes show 8 tiny lines inside, still I can't read what I type but my buddies with Google talk still see what I type. So this fix does not help. And regardless whether it helps or not, I still feel like it's too complicated for Joe User the Average. Joe User-friendly fix would be linking a buddy (or at least an account) to a theme which theme should expose the settings for each font used - entry area, log area etc, sizes, colors....

comment:9 Changed 11 years ago by rlaager

No, the user-friendly fix would be to have a proper font subsystem and a distro that configured the default fonts and font preference order to something reasonable. You're on Windows, so you don't even make it past the first issue.

comment:10 Changed 11 years ago by elb

  • Cc datallah removed
  • Owner changed from elb to datallah

I'm inclined to close this 'invalid'; but since I don't know anything about Windows, I will instead reassign it to datallah who may do so if he likes.

This really isn't a Pidgin problem, it's a Windows (or Windows Gtk+, if you think Gtk+ should go fixing fundamental Windows limitations) problem.

comment:11 Changed 11 years ago by datallah

Replying to elephas:

  • but now I am getting just different kind of boxes instead of letters: before the change the boxes were empty inside, now after this change the boxes show 8 tiny lines inside, still I can't read what I type but my buddies with Google talk still see what I type.

Pango still isn't able to find a glyph for the characters it is trying to render - hence the "boxes". Pango can't use all Windows fonts (there are a number of reports on this in thee gnome bugzilla) - it is possible that you're running into this - it is also possible that you still haven't included a suitable font.

With regard to the "Joe User-friendly" aspect, rlaager and elb are right. This isn't something that pidgin itself should do - such things are handled upstream of us.

comment:12 Changed 10 years ago by datallah

  • Resolution set to duplicate
  • Status changed from new to closed

Duplicate of #604

Note: See TracTickets for help on using tickets.
All information, including names and email addresses, entered onto this website or sent to mailing lists affiliated with this website will be public. Do not post confidential information, especially passwords!