Documentation Home
MySQL Internals Manual

MySQL Internals Manual  /  ...  /  The cmd-line-utils Directory

A.1.4 The cmd-line-utils Directory

Command-line utilities (libedit and readline).

There are two subdirectories: \readline and \libedit. All the files here are "non-MySQL" files, in the sense that MySQL AB didn't produce them, it just uses them. It should be unnecessary to study the programs in these files unless you are writing or debugging a tty-like client for MySQL, such as mysql.exe.

The \readline subdirectory contains the files of the GNU Readline Library, "a library for reading lines of text with interactive input and history editing". The programs are copyrighted by the Free Software Foundation.

The \libedit (library of edit functions) subdirectory has files written by Christos Zoulas. They are distributed and modifed under the BSD License. These files are for editing the line contents.

These are the program files in the \libedit subdirectory:

  • chared.c --- character editor

  • common.c --- common editor functions

  • el.c --- editline interface functions

  • emacs.c --- emacs functions

  • fgetln.c --- get line

  • hist.c --- history access functions

  • history.c --- more history access functions

  • key.c --- procedures for maintaining the extended-key map

  • map.c --- editor function definitions

  • parse.c --- parse an editline extended command

  • prompt.c --- prompt printing functions

  • read.c --- terminal read functions

  • readline.c --- read line

  • refresh.c --- "lower level screen refreshing functions"

  • search.c --- "history and character search functions"

  • sig.c --- for signal handling

  • strlcpy.c --- string copy

  • term.c --- "editor/termcap-curses interface"

  • tokenizer.c --- Bourne shell line tokenizer

  • tty.c --- for a tty interface

  • unvis.c --- reverse effect of vis.c

  • vi.c --- commands used when in the vi (editor) mode

  • vis.c --- encode characters