You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

74 lines
2.2 KiB
Plaintext

Metadata-Version: 2.0
Name: python-editor
Version: 1.0.4
Summary: Programmatically open an editor, capture the result.
Home-page: https://github.com/fmoo/python-editor
Author: Peter Ruibal
Author-email: ruibalp@gmail.com
License: Apache
Keywords: editor library vim emacs
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Topic :: Software Development :: Libraries
`python-editor` is a library that provides the `editor` module for programmatically
interfacing with your system's $EDITOR.
Examples
--------
```python
import editor
commit_msg = editor.edit(contents=b"# Enter commit message here")
```
Opens an editor, prefilled with the contents, `# Enter commit message here`.
When the editor is closed, returns the contents (bytes) in variable `commit_msg`.
Note that the argument to `contents` needs to be a bytes object on Python 3.
```python
editor.edit(file="README.txt")
```
Opens README.txt in an editor. Changes are saved in place. If there is
a `contents` argument then the file contents will be overwritten.
```python
editor.edit(..., use_tty=True)
```
Opens the editor in a TTY. This is usually done in programs which output is
piped to other programs. In this case the TTY is used as the editor's stdout,
allowing interactive usage.
How it Works
------------
`editor` first looks for the ${EDITOR} environment variable. If set, it uses
the value as-is, without fallbacks.
If no $EDITOR is set, editor will search through a list of known editors, and
use the first one that exists on the system.
For example, on Linux, `editor` will look for the following editors in order:
* vim
* emacs
* nano
When calling `editor.edit`, an editor will be opened in a subprocess, inheriting
the parent process's stdin, stdout.