<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
  <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
  <META NAME="GENERATOR" CONTENT="GtkHTML/3.28.3">
</HEAD>
<BODY>
Le vendredi 03 septembre 2010 &#224; 01:50 +0200, Nicolas Delvaux a &#233;crit&nbsp;:<BR>
<BLOCKQUOTE TYPE=CITE>
    <BR>
    <BLOCKQUOTE TYPE=CITE>
<PRE>
As a side-note to the request, you can change your local psfu fonts
using psftools (from freshmeat if your distro doesn't supply it):
txt2psf to reproduce the font in a text form ('-' for blank pixels,
'#' for lit pixels),

 edit it to add more characters to the space glyph - e.g.

Unicode: [00000020];[000000a0];[0000202f];

 (to add U+202f to an existing U+00a0).

 and then txt2psf to convert the altered file to a psfu font.
</PRE>
    </BLOCKQUOTE>
    <BR>
    I wrote a simple script from this which update all fonts.<BR>
    This fix this bug for me and, as an extra bonus, it also implement most Unicode spaces.<BR>
    <BR>
    In the process I noticed that &quot;Lat2-Terminus16.psfu&quot; already supported all spaces, except narrow no-break space.<BR>
    I also noticed that some fonts have some duplicate mapping (eg. &quot;UniCyrExt_8x16.psf&quot; have &quot;Unicode: [00000020];[000000a0];[000000a0];&quot;)<BR>
    My script cleans all those things.<BR>
    <BR>
    You have to execute this script in the font directory (so from &quot;$KBD-SOURCE-DIR/data/consolefonts&quot;) and then you will find updated fonts in &quot;/tmp/psf&quot;.<BR>
    Then you just have to replace old ones in the src-dir and make/make install.<BR>
</BLOCKQUOTE>
<BR>
This was only a partial fix, because fonts that don't have a build-in Unicode map were still defective.<BR>
So I made a patch to update all unimaps files (so the 'data/unimaps' folder).<BR>
You can get it here: <A HREF="http://malaria.perso.sfr.fr/kbd/unimaps.patch">http://malaria.perso.sfr.fr/kbd/unimaps.patch</A><BR>
<BR>
I also made a tar.gz with an updated 'data/consolefonts' folder (thanks to my script). You can download it here: <A HREF="http://malaria.perso.sfr.fr/kbd/updated_consolefonts.tar.gz">http://malaria.perso.sfr.fr/kbd/updated_consolefonts.tar.gz</A><BR>
<BR>
So, basically, if you apply this patch and replace all fonts by their updated version, then your KBD will support all Unicode spaces (and so the 'narrow no-break space' which is the one I primarily want).<BR>
<BR>
<BR>
You can test with &quot;/usr/bin/printf '\uCODEx\n'&quot; where 'CODE' can be 0020, 00a0, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 200a or 202f.<BR>
(Yes, all are different kinds of Unicode spaces. See this site if you want more details about each char: <A HREF="http://www.fileformat.info/info/unicode/char/search.htm)">http://www.fileformat.info/info/unicode/char/search.htm</A> )<BR>
<BR>
Does it feel as a proper fix for you? If not, how can I improve it?<BR>
<BR>
Regards,<BR>
Nicolas<BR>
<BR>
ps: the script to update psf fonts is available here: <A HREF="http://malaria.perso.sfr.fr/kbd/update-psf.sh">http://malaria.perso.sfr.fr/kbd/update-psf.sh</A>
</BODY>
</HTML>