diff options
author | Guido van Rossum <guido@python.org> | 2001-10-19 01:18:43 (GMT) |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 2001-10-19 01:18:43 (GMT) |
commit | b6c1d5239cfeadd761d2055cc44212f7a6b7e5af (patch) | |
tree | 260289f4d9c056f7c0499ad906876fc8539c4f18 | |
parent | a660a34844f55dc2400a6ef6f2055b239b0aede7 (diff) | |
download | cpython-b6c1d5239cfeadd761d2055cc44212f7a6b7e5af.zip cpython-b6c1d5239cfeadd761d2055cc44212f7a6b7e5af.tar.gz cpython-b6c1d5239cfeadd761d2055cc44212f7a6b7e5af.tar.bz2 |
SF patch #443759: Add Interface to readline's add_history
This was submitted by Moshe, but apparently he's too busy to check it
in himself. He wrote:
Here is a function in GNU readline called add_history,
which is used to manage the history list. Though Python
uses this function internally, it does not expose it to
the Python programmer. This patch adds direct interface
to this function with documentation.
This could be used by friendly modules to "seed" the
history with commands.
-rw-r--r-- | Doc/lib/libreadline.tex | 4 | ||||
-rw-r--r-- | Modules/readline.c | 18 |
2 files changed, 22 insertions, 0 deletions
diff --git a/Doc/lib/libreadline.tex b/Doc/lib/libreadline.tex index 7350845..3988052 100644 --- a/Doc/lib/libreadline.tex +++ b/Doc/lib/libreadline.tex @@ -96,6 +96,10 @@ Set the readline word delimiters for tab-completion. Get the readline word delimiters for tab-completion. \end{funcdesc} +\begin{funcdesc}{add_history}{line} +Append a line to the history buffer, as if it was the last line typed. +\end{funcdesc} + \begin{seealso} \seemodule{rlcompleter}{Completion of Python identifiers at the diff --git a/Modules/readline.c b/Modules/readline.c index 49839c4..aa29a61 100644 --- a/Modules/readline.c +++ b/Modules/readline.c @@ -287,6 +287,23 @@ static char doc_set_completer_delims[] = "\ set_completer_delims(string) -> None\n\ set the readline word delimiters for tab-completion"; +static PyObject * +py_add_history(PyObject *self, PyObject *args) +{ + char *line; + + if(!PyArg_ParseTuple(args, "s:add_history", &line)) { + return NULL; + } + add_history(line); + Py_INCREF(Py_None); + return Py_None; +} + +static char doc_add_history[] = "\ +add_history(string) -> None\n\ +add a line to the history buffer"; + /* get the tab-completion word-delimiters that readline uses */ @@ -375,6 +392,7 @@ static struct PyMethodDef readline_methods[] = {"set_completer_delims", set_completer_delims, METH_VARARGS, doc_set_completer_delims}, + {"add_history", py_add_history, METH_VARARGS, doc_add_history}, {"get_completer_delims", get_completer_delims, METH_OLDARGS, doc_get_completer_delims}, |