home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk1.iso / altsrc / articles / 11346 < prev    next >
Text File  |  1994-10-16  |  19KB  |  442 lines

  1. Path: wupost!math.ohio-state.edu!howland.reston.ans.net!pipex!sunic!news.funet.fi!news.csc.fi!news.helsinki.fi!news!Kari.Hurtta
  2. From: Kari.Hurtta@Helsinki.FI (Kari E. Hurtta)
  3. Newsgroups: alt.sources.d,alt.sources,alt.sources.patch
  4. Subject: Pointer: kehpager 1.21
  5. Followup-To: alt.sources.d
  6. Date: 16 Oct 1994 20:16:50 GMT
  7. Organization: University of Helsinki
  8. Lines: 424
  9. Message-ID: <KARI.HURTTA.94Oct16221650@kruuna.Helsinki.FI>
  10. References: <37rcd5$bq1@kruuna.Helsinki.FI>
  11. NNTP-Posting-Host: kruuna.helsinki.fi
  12. Mime-Version: 1.0
  13. Content-Type: text/plain; charset=ISO-8859-1
  14. Content-Transfer-Encoding: 8bit
  15. In-reply-to: hurtta@cc.Helsinki.FI's message of 16 Oct 1994 16:12:53 +0200
  16. Xref: wupost alt.sources.d:5608 alt.sources:11346
  17.  
  18. Kehpager is now available also in ftp.funet.fi,
  19. directory /pub/unix/tools/. See files
  20.     kehpager-1.2.README
  21.     kehpager-1.2.tar.gz
  22.     kehpager-1.2to1.21.README
  23.     kehpager-1.2to1.21.tar.gz
  24. kehpager-1.2to1.21.README: --------------------------------------------------
  25. kehpager V1.21 - Charset aware pager for VTxxx terminals
  26.  
  27. This patch updates kehpager from version 1.2 to version 1.21.
  28.  
  29. Look file patch1.COPYRIGHT to see your rights.
  30.  
  31.      Kehpager is a pager that displays the  contents  of  a  text
  32.      file on the terminal, one screenful at a time. It translates
  33.      file's charset to the terminal's charsets.  Too  long  lines
  34.      are  wrapped in between words. Kehpager  can also interprete
  35.      text/enriched and text/richtext -formatted text files.
  36.  
  37. Changes in this patch:
  38.  * Changed charset names UNICODE-1-1-UTF7 and UNICODE-1-1-UTF8
  39.    to UNICODE-1-1-UTF-7 and UNICODE-1-1-UTF-8. RFC1642 defines
  40.    UNICODE-1-1-UTF-7 as value of charset. UNICODE-1-1-UTF-8
  41.    is not defined in any RFCs. RFC1641 only hints that someone
  42.    may define charset as UNICODE-1-1-UTF-8. Charset value
  43.    UNICODE-1-1 (as defined in RFC1641) is not supported by
  44.    kehpager.
  45.  * New module schedule.c
  46.  * Minor bug fix on initalizing terminal (in SGI) when line 
  47.    discipline == 0 (Irix 4.0.5)
  48.  * Ported to Irix 5.2 -- let's hope that this still works with Irix 4.0.5 !
  49.  
  50. Applying patch:
  51.     Execute patch1.sh in kehpager's source directory
  52.  
  53. Installation
  54. SunOS 4:
  55.     Set correct value for use.keyboard.language -field in
  56.         kehpager.init (you can also comment it out if your
  57.         terminals is inteelligent enough). You probably also
  58.      want add
  59.        use.vt100.national_available: Enabled
  60.      to kehpager.init (this was default prior version 1.06).
  61.     Copy kehpager.init to library direction
  62.     Edit Makefile and put defination of GLOBAL_INIT_FILE
  63.       point correct location of kehpager.init
  64.       Also select correct compiler (gcc, or SUN's acc)
  65.       to Makefile.'s define.
  66.     Compile it with
  67.         make sunos4
  68.     Copy kehpager and kehpager.1 to correct directories
  69. SunOS 5:
  70.     Set correct value for use.keyboard.language -field in
  71.         kehpager.init (you can also comment it out if your
  72.         terminals is intelligent enough). You probably also
  73.      want add
  74.        use.vt100.national_available: Enabled
  75.      to kehpager.init (this was default prior version 1.06).
  76.     Copy kehpager.init to library direction
  77.     Edit Makefile and put defination of GLOBAL_INIT_FILE
  78.       point correct location of kehpager.init
  79.       Also select correct compiler (gcc, or SUN's acc)
  80.       to Makefile.'s define.
  81.     Compile it with
  82.         make sunos5
  83.     Copy kehpager and kehpager.1 to correct directories
  84. HP-UX:
  85.     Set correct value for use.keyboard.language -field in
  86.         kehpager.int (you can also comment it out if your
  87.         terminals is intelligent enough). You probably also
  88.      want add
  89.        use.vt100.national_available: Enabled
  90.      to kehpager.init.hpux (this was default prior version 1.06).
  91.     Copy kehpager.init.hpux to library direction
  92.     Edit Makefile.hpux and put defination of GLOBAL_INIT_FILE
  93.       point correct location of kehpager.init.hpux
  94.       Also select correct compiler (gcc, or HP's cc (ANSI C version))
  95.       to Makefile.hpux's define.
  96.     Compile it with
  97.         make -f Makefile.hpux
  98.     Copy kehpager and kehpager.1 to correct directories
  99. 386BSD, FreeBSD, NetBSD: (I haven't tested this!)
  100.     Set correct value for use.keyboard.language -field in
  101.         kehpager.init (you can also comment it out if your
  102.         terminals is intelligent enough). You probably also
  103.      want add
  104.        use.vt100.national_available: Enabled
  105.      to kehpager.init (this was default prior version 1.06).
  106.     Copy kehpager.init to library direction
  107.     Edit Makefile and put defination of GLOBAL_INIT_FILE
  108.       point correct location of kehpager.init
  109.     Compile it with
  110.         make -f Makefile.bsd
  111.     Copy kehpager and kehpager.1 to correct directories
  112. IRIX 4.0.5:
  113.     (I get ENOTDEV error when closing terminal, so there is still
  114.      some problems... To ignore that error, put -DCLOSEBUG to CFLAGS
  115.      in Makefile.irix. I haven't compiled that version of kehpager
  116.      in Irix 4.0.5)
  117.     Set correct value for use.keyboard.language -field in
  118.         kehpager.init (you can also comment it out if your
  119.         terminals is intelligent enough). You probably also
  120.      want add
  121.        use.vt100.national_available: Enabled
  122.      to kehpager.init (this was default prior version 1.06).
  123.     Copy kehpager.init to library direction
  124.     Edit Makefile.irix and put defination of GLOBAL_INIT_FILE
  125.       point correct location of kehpager.init
  126.     Compile it with
  127.         make -f Makefile.irix
  128.     Copy kehpager and kehpager.1 to correct directories. If you don't
  129.         have troff or groff, ask someone to compile kehpager.1
  130. IRIX 5.2:
  131.     (I don't know if there is same error in IRIX 5.2 as was in IRIX
  132.     4.0.5 (I don'r expect it). But if there is, you can ignore
  133.     error message with putting -DCLOSEBUG to CFLAGS
  134.      in Makefile.irix. )
  135.     Set correct value for use.keyboard.language -field in
  136.         kehpager.init (you can also comment it out if your
  137.         terminals is intelligent enough). You probably also
  138.      want add
  139.        use.vt100.national_available: Enabled
  140.      to kehpager.init (this was default prior version 1.06).
  141.     Copy kehpager.init to library direction
  142.     Edit Makefile.irix and put defination of GLOBAL_INIT_FILE
  143.       point correct location of kehpager.init
  144.     Compile it with
  145.         make -f Makefile.irix
  146.     Copy kehpager and kehpager.1 to correct directories. If you don't
  147.         have troff or groff, ask someone to compile kehpager.1
  148.  
  149.  
  150. Tested platforms:
  151.     Kehpager works on SunOS 4.1.2 (OS/MP 4.1B), 4.1.3, 5.2, 5.3, 
  152.     HP-UX A.09.01, IRIX 5.2 (at least some way).
  153.     There may be some errors in HP-UX A.09.01 version -- some tests
  154.     indicates that, but I haven't sure.
  155.  
  156. Compiler:
  157.     Kehpager is compiled with gcc in SunOS 4.1.2, 5.2, 5.3, HP-UX.
  158.     In HP-UX it is compiled with cc (ANSI C version).
  159.         (notice that ANSI C version of cc isn't bundled with HP-UX)
  160.     In IRIX 5.2 it is compiled with cc (in -xansi mode).
  161.     Kehpager compiles without error or warning messages 
  162.         (with gcc's -Wall in SunOs 5.2. Also HP's cc
  163.          don't give any warnigs even that it is more strict than
  164.          gcc).
  165.  
  166.     (This version isn't compiled with SUN's acc, as previous version was.)
  167.  
  168. Thanks to: 
  169.     Markus Kuhn <mskuhn@cip.informatik.uni-erlangen.de>
  170.     Tim Lasko <lasko@regent.enet.dec.com>
  171.     David E A Wilson <david@cs.uow.edu.au>
  172.     J÷rg Wunsch <joerg_wunsch@tcd-dresden.de>
  173. kehpager-1.2.README: --------------------------------------------------------
  174. kehpager V1.2 - Charset aware pager for VTxxx terminals
  175.  
  176.      Look file COPYRIGHT to see your rights.
  177.  
  178.      Kehpager is a pager that displays the  contents  of  a  text
  179.      file on the terminal, one screenful at a time. It translates
  180.      file's charset to the terminal's charsets.  Too  long  lines
  181.      are  wrapped in between words. Kehpager  can also interprete
  182.      text/enriched and text/richtext -formatted text files.
  183.  
  184.      Text/enriched is a clarification, simplification and refine-
  185.      ment  of  type  defined  as  text/richtext. Text/enriched is
  186.      intended to make text/richtext obsolete.
  187.  
  188.      When kehpager starts, it tests if the terminal supports  8 -
  189.      bit  characters  (see  also usage of options -e, -7 and -8).
  190.      If the terminal supports 8-bit  characters,  kehpager  turns
  191.      the  terminal  to  Multinational  mode.   Otherwise kehpager
  192.      turns the terminal to National mode and use current national
  193.      font  and  ASCII. National font is determined by asking key-
  194.      board language from the terminal.  Kehpager  may  also  uses
  195.      Special, Latin/1 and Technical fonts.
  196.  
  197.      Kehpager works on VT100, but VT300 is recommended.  Kehpager
  198.      doesn't  work  with  emulators where character conversion is
  199.      done for characters in line. Conversions should be done with
  200.      respect     of    bank    assigments    (G0   -   G3)    and
  201.      multinational/national -mode.
  202.  
  203. Kehpager knows following charsets:
  204.     Latin/1                      ISO-8859-1
  205.     Latin/2                      ISO-8859-2
  206.     Latin/3                      ISO-8859-3
  207.     Latin/4                      ISO-8859-4
  208.     Latin/5                      ISO-8859-9
  209.     Ascii                        US-ASCII
  210.     MS-DOS CP437                 X-CP437            (*)
  211.     Macintosh                    X-MAC
  212.     Multinational                X-DEC-MCS
  213.     Mnemonics encoding from RFC1345                (*)
  214.     Unicode 1.1 with UTF-7       UNICODE-1-1-UTF7        (*)
  215.     Unicode 1.1 with UTF-8       UNICODE-1-1-UTF8        (*)
  216.     French Canadian national     X-ISO646-CA
  217.     German national              X-ISO646-DE
  218.     Finnish national             X-ISO646-FI
  219.     French/Belgian national      X-ISO646-FR
  220.     Italian national             X-ISO646-ITA
  221.     Norwegian national           X-ISO646-NO
  222.     Swedish national             X-ISO646-SE
  223.     Spanish national             X-ISO646-SPA
  224.     British national (UK-ASCII)  X-UK-ASCII
  225.  
  226.     (*) subset
  227.  
  228. So kehpager are still missings many charsets: 
  229.     some national fonts (for support of national mode of terminal)
  230.     some ISO 8859 fonts (for support of MIME)
  231.  
  232. All charsets aren't complete. Specially kehpager knows only
  233. small subset from Unicode 1.1 and mnemonics encoding. 'Raw'
  234. Unicode (ie. UCS-2 encoding) isn't supported. You can get list
  235. of known characters with command 'kehpager -T3'.
  236.  
  237. You can get charset listing with command 'kehpager -cs'.
  238.  
  239. If you want add charsets, ask help from me (Kari.Hurtta@Helsinki.FI).
  240. You can also check files charset.c and control.c (see 'sets' array).
  241. If you add charsets to kehpager, I like to get diffs.
  242.  
  243. Severe limitation is, that kehpager requires that letters are written 
  244. form left to right. This limitation is not easy lift. This affect at
  245. least routines in control.c and formating machine (wrap_line) in
  246. window.c.
  247.  
  248. Text/enriched commands:
  249.     Bold        implemented
  250.     Italic        implemented as command Underline
  251.     Fixed        has no-op
  252.     Smaller        NOT implemented
  253.     Bigger        NOT implemented
  254.     Underline    implemented
  255.     Center        implemented
  256.     FlushLeft    implemented
  257.     FlushRight    implemented
  258.     FlushBoth    implemented
  259.     Indent        implemented
  260.     IndentRight    implemented
  261.     Excerpt        implemented 
  262.     Verbatim    implemented
  263.     Nofill        implemented (if I understood this)
  264.     Param        implemented (but commands in param are still executed)
  265.    - Enriched interpreter is stack based, so balancing rule must stricly be
  266.     followed; unrecognized commands also must be balanced
  267.    - By default justification of text is selectable (if input.full_justify
  268.     is false, it is FlushLeft, else it is FlushBoth. 
  269.     Default value is false)
  270.    - FlushRight and Center changes semantic of TAB character
  271.  
  272. Installation
  273. SunOS 4:
  274.     Set correct value for use.keyboard.language -field in
  275.         kehpager.init (you can also comment it out if your
  276.         terminals is inteelligent enough). You probably also
  277.      want add
  278.        use.vt100.national_available: Enabled
  279.      to kehpager.init (this was default prior version 1.06).
  280.     Copy kehpager.init to library direction
  281.     Edit Makefile and put defination of GLOBAL_INIT_FILE
  282.       point correct location of kehpager.init
  283.       Also select correct compiler (gcc, or SUN's acc)
  284.       to Makefile.'s define.
  285.     Compile it with
  286.         make sunos4
  287.     Copy kehpager and kehpager.1 to correct directories
  288. SunOS 5:
  289.     Set correct value for use.keyboard.language -field in
  290.         kehpager.init (you can also comment it out if your
  291.         terminals is intelligent enough). You probably also
  292.      want add
  293.        use.vt100.national_available: Enabled
  294.      to kehpager.init (this was default prior version 1.06).
  295.     Copy kehpager.init to library direction
  296.     Edit Makefile and put defination of GLOBAL_INIT_FILE
  297.       point correct location of kehpager.init
  298.       Also select correct compiler (gcc, or SUN's acc)
  299.       to Makefile.'s define.
  300.     Compile it with
  301.         make sunos5
  302.     Copy kehpager and kehpager.1 to correct directories
  303. HP-UX:
  304.     Set correct value for use.keyboard.language -field in
  305.         kehpager.int (you can also comment it out if your
  306.         terminals is intelligent enough). You probably also
  307.      want add
  308.        use.vt100.national_available: Enabled
  309.      to kehpager.init.hpux (this was default prior version 1.06).
  310.     Copy kehpager.init.hpux to library direction
  311.     Edit Makefile.hpux and put defination of GLOBAL_INIT_FILE
  312.       point correct location of kehpager.init.hpux
  313.       Also select correct compiler (gcc, or HP's cc (ANSI C version))
  314.       to Makefile.hpux's define.
  315.     Compile it with
  316.         make -f Makefile.hpux
  317.     Copy kehpager and kehpager.1 to correct directories
  318. 386BSD, FreeBSD, NetBSD: (I haven't tested this!)
  319.     Set correct value for use.keyboard.language -field in
  320.         kehpager.init (you can also comment it out if your
  321.         terminals is intelligent enough). You probably also
  322.      want add
  323.        use.vt100.national_available: Enabled
  324.      to kehpager.init (this was default prior version 1.06).
  325.     Copy kehpager.init to library direction
  326.     Edit Makefile and put defination of GLOBAL_INIT_FILE
  327.       point correct location of kehpager.init
  328.     Compile it with
  329.         make -f Makefile.bsd
  330.     Copy kehpager and kehpager.1 to correct directories
  331. IRIX 4:
  332.     (I get ENOTDEV error when closing terminal, so there is still
  333.      some problems...)
  334.     Set correct value for use.keyboard.language -field in
  335.         kehpager.init (you can also comment it out if your
  336.         terminals is intelligent enough). You probably also
  337.      want add
  338.        use.vt100.national_available: Enabled
  339.      to kehpager.init (this was default prior version 1.06).
  340.     Copy kehpager.init to library direction
  341.     Edit Makefile and put defination of GLOBAL_INIT_FILE
  342.       point correct location of kehpager.init
  343.     Compile it with
  344.         make -f Makefile.irix
  345.     Copy kehpager and kehpager.1 to correct directories. If you don't
  346.         hace troff or groff, ask someone to compile kehpager.1
  347.  
  348.  
  349. Tested platforms:
  350.     Kehpager works on SunOS 4.1.2 (OS/MP 4.1B), 4.1.3, 5.2, 5.3, 
  351.     HP-UX A.09.01, IRIX 4.0.5 (at least some way).
  352.  
  353. Compiler:
  354.     Kehpager is compiled with gcc in SunOS 4.1.2, 5.2, 5.3
  355.     In HP-UX it is compiled with cc (ANSI C version).
  356.         (notice that ANSI C version of cc isn't bundled with HP-UX)
  357.     In SunOS 4.1.3 it is compiled with acc.
  358.     In IRIX 4.0.5 it is compiled with cc (in -xansi mode).
  359.     Kehpager compiles without error or warning messages 
  360.         (with gcc's -Wall in SunOs 5.2. Also HP's cc
  361.          don't give any warnigs even that it is more strict than
  362.          gcc).
  363.  
  364. Changes to version 1.1:
  365.     Terminal output is buffered
  366.     New options: -sp, -sp+, -j, -j+, -st, -st+, -rt, -tn, -in,
  367.         -erc, -pm, -pm+, --, -rs, -rs+, -IT, -MN, -MN:n, 
  368.         -U7, -U8
  369.     Option processing is disabable now ('option' --)
  370.      Composed input for HORN, RING BELOW, LINE BELOW and CIRCUMFLEX BELOW
  371.     Initfile fields: keyboard.toggle_eatspc, input.eat_spaces,
  372.         input.full_justify, keyboard.toggle_time, input.tab_step,
  373.         input.indent_step, keyboard.toggle_pagemode, input.pagemode,
  374.         keyboard.tab_step,keyboard.tab_step.self_insert,
  375.         keyboard.tab_step.enter, keyboard.indent_step,
  376.         keyboard.indent_step.self_insert, keyboard.indent_step.enter, 
  377.         env.size, exit.newline, use.query_size
  378.     charsets: Italian, Mnemonics encoding, 
  379.         more characters from MS-DOS CP437, 
  380.             Unicode 1.1 with UTF-7 and UTF-8 encodings. 
  381.             (No support for Unicode decomposition/composition)
  382.     Handling of pagebreaks (FF, richtext's <np>)
  383.     Text/Enriched is better
  384.     Screen updating is better in some situtations 
  385.         (specially SEARCH: -prompt works nicer)
  386.         Updated Text/Enriched according RFC1563 (previous version
  387.                   of enriched specification was RFC1523):
  388.                   - Added FlushBoth environment
  389.                   - Now Text/Enriched allows initial state justification 
  390.                     to be any of FlushLeft, FlushRight or FlushBoth (in 
  391.                     RFC1523 it was FlushBoth ie. fully justified). 
  392.                   > Because kehpager heve difficulties with fully justified
  393.                     text (kehpager may print justified text twise), I changed
  394.                     default state to be FlushLeft. That is: default value
  395.                     of input.full_justify is now false.
  396.     Content-type: text/richtext 
  397.     Compiles with Sun's acc (on SunOS 4) and IRIX's cc
  398.     Many bug fixes
  399.     Support for rc -shell, now $SHELL is matched agaist to table
  400.         Added some changes posted by 
  401.             J÷rg Wunsch <joerg_wunsch@tcd-dresden.de> so this propably
  402.             compiles on 386BSD, FreeBSD and NetBSD
  403.         $LINES overdrives use.terminal.lines and $COLUMNS overdrives
  404.                  use.terminal.columns (if env.size is set)
  405.      I marked VT500 as unsupported, because I don't have seen manuals yet.
  406.         Now kehpager asks terminal size from terminal itself (as
  407.                   'resize' does it). Disable with -rs or 
  408.                   use.query_size: Disabled
  409.         Now esc.c don't eat nulls and binding to Ctrl-space 
  410.         (ie. NUL) is possible
  411.  
  412. Changes to version 1.14:
  413.                 Avoid unnecessary redrawing of window when remapped by setting
  414.                   windows priority temporary to zero (so now SEARCH: -prompt
  415.                   works little nicer)
  416.                 Support for Unicode 1.1 with UTF-7 and UTF-8 encodings. 
  417.                   Only small part of Unicode is supported. No support for
  418.                   Unicode decomposition/composition.
  419.                 Options: -U7, -U8
  420.                 MAP_RFC134 replaced with MAP_UNICODE11
  421.                 MAP_UTF7, MAP_UTF8
  422.                 Now internal characters are type CHAR_IDX
  423.                 Latin/3 213 fixed
  424.                   from LATIN CAPITAL LETTER O WITH DOT ABOVE
  425.                   to LATIN CAPITAL LETTER G WITH DOT ABOVE
  426.                 Latin/4 241 fixed
  427.                   from LATIN SMALL LETTER N WITH OGONEK
  428.                   to LATIN SMALL LETTER N WITH CEDILLA
  429.                 Latin/4 209 fixed
  430.                   from LATIN CAPITAL LETTER N WITH OGONEK
  431.                   to LATIN CAPITAL LETTER N WITH CEDILLA
  432.  
  433. Thanks to: 
  434.     Markus Kuhn <mskuhn@cip.informatik.uni-erlangen.de>
  435.     Tim Lasko <lasko@regent.enet.dec.com>
  436.     David E A Wilson <david@cs.uow.edu.au>
  437.     J÷rg Wunsch <joerg_wunsch@tcd-dresden.de>
  438. -----------------------------------------------------------------------------
  439. --
  440. - K E H                                      /  ElΣmΣ on monimutkaista
  441.   Kari.Hurtta@Helsinki.FI
  442.