On Mon, Feb 23, 2009 at 4:23 AM, Agathoklis D. Hatzimanikas <[email protected]> wrote: > On Mon, Feb 23, at 12:35 Ryan Isaacs wrote: >> > On Sun, Feb 22, 2009 at 05:33:27PM -0600, Ryan Isaacs wrote: >> >> After completing my lfs build, I'm seeing some block characters in >> >> some man pages. >> >> >> >> For example, for 'man udev', towards the bottom of the first page, I >> >> see a # sign between 2 block characters (squares). I presume these >> >> should be quotes. > > This is an escaped single quote, which is translated into "acute accent" > 'ยด', hexadecimal '00B4', decimal 180. > You can generate it e.g., while in vim by using something like, > > echo nr2char(str2nr('00B4', 16)) >
When I "execute" this in vi, I get the block character, whether I have LANG unset, set to 'en_US.UTF-8' or 'en_US.ISO-8859-1'. >> >> I set LANG to en_US.iso88591 in step 7.9. I've since tried setting >> >> 'export LANG=' to both en_US and en_US.utf8 within a bash shell, but >> >> still see the block chars. > > You have to fix first the environment, i.e., en_US.utf8 is not a > valid locale, but en_US.UTF-8 is. > The same LFS page you are referring below, I think it has all the > information you need. > Setting LANG to 'en_US.UTF-8', I'm still seeing the block character in 'man udev'. >> >> I found that if I log in, and 'unset LANG', the man page for udev is >> displayed correctly, with single quotes instead of the block chars. >> That's probably not the correct solution, though, right? > > That is because (probably) falls back to "C" locale which displays them as > single quotes. > >> I'm not sure what "installing these locales" would mean? What section >> in the LFS book would that refer to? I did the complete book, >> unmodified. > > Locales are installed either while you are building Glibc or anytime > by using the 'localedef' command. Refer back to the glibc page. > If I see the locales listed in 'locale -a', does that mean they are installed? I'm pretty sure I executed the block of localedef commands in the Glibc section 6.9. >> I did go back and read the groff section (6.40), and I don't >> explicitly remember doing the sed command to tell Groff to use ASCII >> equivalents for single quotes and dashes, although I doubt I would >> have skipped it. Where would the change to font/devutf8/R.proto come >> out to in my completed system to I can confirm the step? >> >> Lastly, I derived my LANG setting of 'en_US.ISO-8859-1' from the steps >> in section 7.9. > > As a side note. There is absolutely no need to use IS0-8859-1. > UTF-8 will use one byte for all the Ascii characters and up to 4 bytes > for cyrillic or greek characters, so space is not a valid reason. > As a plus by using UTF-8, you will have proper communication with the rest > of the world that is using characters other than the Ascii set. > Anyway, the ISO group no longer maintains those *absurd* ISO's encodings. > I got the ISO-8859-1 setting using the steps in section 7.9, not because I explicitly wanted to use it. Executing command 'LC_ALL=en_US locale charmap' yielded "ISO-8859-1", so according to the section 7.9 directions, I set LANG=en_US.ISO-8859-1. I think I follow you about UTF-8 being a better choice, but nonetheless setting to that hasn't removed the block characters from 'man udev'. So, if my locales do seem to be correctly installed, I'm suspicious that I executed the sed command in section 6.40 (groff). That sed command modified font/devutf8/R.proto, but I don't seem to have that file on my LFS system post-build. Is there anyway to confirm not that the sed command was executed (redirecting unicode single quotes to ASCII equivalents)? At this point (live lfs system), should I rebuild and reinstall groff? -- www.risaacs.com [email protected] -- http://linuxfromscratch.org/mailman/listinfo/lfs-support FAQ: http://www.linuxfromscratch.org/lfs/faq.html Unsubscribe: See the above information page
