On Wed, Aug 18, 2010 at 12:11 AM, Gordon Tetlow <gordon_at_tetlows.org> wrote: > All, > > I sat down and rewrote the man tools from a relatively old codebase to a > single shell script. My original motivation was to allow multiple > configuration files so port installations did not have to mess with > /etc/manpath.config (like perl for example) when needing to manipulate the > manpath. After looking at the existing code, I figured I could rewrite it as > a shell script relatively easily. > > Script (install as /usr/bin/man, /usr/bin/manpath, /usr/bin/apropos, > /usr/bin/whatis) > http://people.freebsd.org/~gordon/man.sh<http://people.freebsd.org/%7Egordon/man.sh> > > Features of the new code: > > 1. BSD licensed (old code is GPL). > 2. Imports configuration from /usr/local/etc/man.d/*.conf and /etc/man.conf > (purposefully changed the manpath.config file since it is a different > syntax). > 3. Allows ports to override the toolset used to display the manpage based > on language. This was done to try to merge the functionality of the > japanese/man port into the base system as much as possible. > > I've tried to make this mirror the functionality, directory search order, > and arguments as the current base implementation. > > This brings me to my next point. I need some testers willing to try this > out. It would be particularly great if I could get some foreign language > testers with localized manpage installations. If something doesn't work the > way you expect, please contact me and I can help debug it (using man -ddd > <whatever> will generally give me the debug information I need). > > Thanks, > Gordon > I did some additional testing with the japanese/man-doc port and found the following was necessary: 1. Install my script as /usr/bin/man 2. Install japanese/man-doc 3. Create a /usr/local/etc/man.d/ja-man-doc.conf with the following contents: EQN_JA /usr/local/bin/geqn COL_JA /bin/cat NROFF_JA /usr/local/bin/groff -S -Wall -mtty-char -man -Tnippon -dlang=ja_JP.eucJP PIC_JA /usr/local/bin/gpic TBL_JA /usr/local/bin/gtbl TROFF_JA /usr/local/bin/groff -man -dlang=ja_JP.eucJP MANLOCALE ja_JP.eucJP 4. Create a symlink from /usr/share/man/ja.eucJP -> /usr/local/man/ja 5. Set LC_CTYPE=ja_JP.eucJP 6. man ls When all is said and done, 3 should be handled by the man-doc port while 4 is a problem. The current base system man uses the following search order for localized manpages (which I have emulated): Look in /usr/share/man/<lang>.<enc> /usr/share/man/ ... /usr/local/man/</lang>.<enc> /usr/local/man/ ... Without step 4 from above, if you were to attempt to get a localized manpage for ls(1) that resides in /usr/local/man/<lang>.<enc>, you would never see it because the english language manpage in /usr/share/man would be found first. The japanese man port gets around this by installing their own man implementation (jman) forcing /usr/local/man/ja before /usr/share/man in the search order. I'm interested in feedback about whether the search order should change or if I should leave it as is.Received on Wed Aug 18 2010 - 19:47:13 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:06 UTC