Man Linux: Main Page and Category List

NAME

       jbofihe - Lojban parser / grammar checker / word glosser

SYNOPSIS

       jbofihe  [-v] [ -h | --help | -? ] [ -k ] [ -t ] [-tf ] [ -l ] [ -b ] [
       -x ] [ -H ] [ -m ] [ -w width ] [-ie] [-re] [-se]  [-sev]  [-cr]  [-bt]
       [filename]

DESCRIPTION

       jbofihe  is  a  program that reads a piece of Lojban text and checks it
       for grammatical correctness.  If it passes, the output  will  show  the
       nesting  of  the  major  grammatical constructs by means of bracketing.
       Also, words will have their  approximate  English  translations  shown.
       Some of these translations are context-dependent.

OPTIONS

       -v     Show the program version and exit.

       -h     Show help page

       --help Show help page

       -?     Show help page

       -k     Display  lists  of  tokens  after  parse  and after pseudo-token
              insertion (mainly useful for debugging the lexer and parser).

       -t     Produce a syntax tree on stdout.  Nodes with only one child will
              be filtered out.

       -tf    Produce  a full syntax tree on stdout, including nodes with only
              one child.

       -l     Produce output for typesetting with LaTeX.

       -x     Produce plain text output.

       -w width
              Set the width of the screen (in characters) for the -x option.

       -H     Produce HTML output

       -b     Produce output in ’block’  mode,  where  each  block  shows  the
              Lojban,  the  English gloss and a term tag where applicable. The
              default is the same line.  Only applicable to -l and -x (not  to
              -h).

       -m     Show the amount of memory used by the processing.

       -ie    Display  elided  separators and terminators in the output.  They
              are  shown  in  upper  case,  to  distinguish  them  from  those
              originally present in the input text.

       -re    Require  the  input  text  to  have  all elidable cmavo actually
              present.  (May be useful for forcing the user to think about the
              grammatical  structure  of  the  input  text more carefully when
              debugging parse errors.)

       -se    Show any elidable cmavo that were present unnecessarily  in  the
              input  text.   Where a sequence of elidable cmavo occur, but not
              all could  have  been  elided,  a  list  of  possible  ’minimal’
              sequences  is  shown.   Each  ’minimal’  sequence is such that :
              removing any words from it would cause the meaning of  the  text
              to change (or make it ungrammatical); yet preserving any more of
              the original words is unnecessary to preserve  the  meaning  and
              grammatical  correctness  of  the  text.   Note, -se and -re are
              mutually incompatible.  If both switches are specified,  -re  is
              assumed.

       -sev   For each sequence of elidable cmavo, show where later ones could
              be valid before earlier ones, and where the non-elidable word at
              the  end  of  the  sequence could have been valid earlier in the
              sequence.  [This information is used to determine the output  of
              -se, so this is a verbose mode for -se].

       -cr    Allow  lujvo  to contain the cultural rafsi forms CCVVCy (CCVVCV
              at end of word) described  in  section  4.16  of  the  Reference
              Grammar.   This  affects  recognition of valid lujvo and fu’ivla
              forms (the latter since it affects the recognition  of  slinku’i
              failures).

       -bt    Show  backtrace  through the pending parser states when a syntax
              error occurs.  This may give some insight into what  the  parser
              was expecting to see next, to help in fixing the error.

              The backtrace comes in three parts.  The first part is a list of
              rules which are automatically reduced when the erroneous word is
              encountered.   In the extreme case, when everything prior to the
              erroneous word constitutes a complete text in its own right, the
              reduction  sequence  will  go  right  the  way to the rule which
              matches a complete text.  Generally though, this will not be the
              case.

              The  second  part  of  the report shows the conditions where the
              grammar requires the next word to be of a type other  than  that
              which  actually  appeared.  All the active rules are shown (with
              periods showing the active points), followed by a list  of  word
              classes  (i.e. selma’o or BRIVLA/CMENE etc) that would have been
              valid at this point.

              The third part of the report shows the  pending  states  on  the
              parser  stack.  This may give some information on whereabouts at
              a wider level the problem situation has occurred.

       filename
              The name of the file containing text to be parsed.  If  omitted,
              the text is read from standard input.

EXIT STATUS

       0      The  text  was  scanned  and  parsed successfully - the text was
              grammatically valid Lojban.

       1/2    The text had grammatical errors that were detected by  the  main
              parsing algorithm.

       3      The  text  contained words whose structure was not valid Lojban.
              No  grammatical  checking  of  the  text  was   performed;   the
              grammatical  function  of  the  erroneous  word(s)  could not be
              determined.

SEE ALSO

       cmafihe
              A program which does English word glossing without  the  grammar
              parsing and checking stage.  This is useful to get words quickly
              looked up when studying someone else’s text which contains  many
              grammatical errors.

       smujajgau
              A program for compiling binary dictionaries for use by jbofihe

FILES

       /usr/local/lib/jbofihe/smujmaji.dat
              This  file  contains  all  the  dictionary  data compiled (using
              smujajgau ) into  a  binary  format  to  facilitate  lookup  and
              search.

       /usr/local/bin/jbofihe
              The executable.

ENVIRONMENT

       JBOFIHE_DICTIONARY
              This  should  point  to  the  name  of  the  file containing the
              dictionary.  The default is /usr/local/lib/jbofihe/smujmaji.dat

BUGS

       ju’oru’e so’imei (Surely there are many).

REFERENCES

       http://go.to/jbofihe
              Home page for the jbofihe project

       http://www.rrbcurnow.freeuk.com/lojban/
              My Lojban page.

       http://www.lojban.org/
              Home page of the Lojban community

AUTHOR

       Richard Curnow <rpc@myself.com>

                                 January 2001                      jbofihe(1L)