NoSQL utility: edittable

NoSQL trivial table editor.

Usage: edittable [options] tablename [pattern]

Options:
    --list (-l)
      Convert the table into 'list' format before editing.
      Useful with tables that contain rows wider than the
      available screen. The table is then automatically
      converted back to the usual format when editing is
      complete.

    --no-lock (-L)
      Do not lock the target file before editing. This should
      be used with caution, but it may be useful to call the
      'edittable' utility from within other programs that do
      their own locking.

    --add-record (-a)
      Append a new empty record to the table being edited. Unless
      '-l' is also specified, non-TABs in the new record will be
      replaced by '#' signs, to help the user entering the new data
      without overwriting the column delimiters.

    --no-sort (-n)
      By default the table is kept sorted on its leftmost column,
      this option prevents that.

    --help (-h)
      Display this help text.

Notes:

Invokes whatever editor is defined in the EDITOR environment variable,
defaulting to vi(1) if the variable is unset. The editor should either
be vi(1) or one of its many compatible clones, like elvis(1), vim(1),
nvi(1), and so on.

Make sure not to break the table structure while editing, like removing
the dashline, removing the '|' delimiters or adding extra ones, or
by not respecting the list specification when editing in list format.
Upon leaving the editor, this program will try and check for a broken
table structure and prompt for corrections, but those checks aren't
bullet-proof and your mileage may vary.

If the optional "pattern" argument is specified, then only the rows
of the target table matching "pattern" are pulled into the editing
dialog and, when done, the result will be merged back into the main
table with 'updtable'. The "pattern" argument must be a valid grep(1)
basic regular expression pattern, which is matched case-insensitively
against the whole table body. Since 'updtable' is used, it will also
be possible to selectively remove records form the target table by
using the special delete string "..DEL.." . See 'updtable' for more.