私のpythonプログラムをCLIテキストエディタに入れ、エディタにテキストを入力し、終了時にテキストを変数に入れることができるpythonモジュールまたはコマンドはありますか?
現時点では、raw_input() を使用してユーザーに何かを入力してもらっていますが、それよりももう少し強力なものを CLI に表示したいと考えています。
私のpythonプログラムをCLIテキストエディタに入れ、エディタにテキストを入力し、終了時にテキストを変数に入れることができるpythonモジュールまたはコマンドはありますか?
現時点では、raw_input() を使用してユーザーに何かを入力してもらっていますが、それよりももう少し強力なものを CLI に表示したいと考えています。
サブプロセスを使用してユーザーの $EDITOR を起動し、一時ファイルを編集できます。
import tempfile
import subprocess
import os
t = tempfile.NamedTemporaryFile(delete=False)
try:
editor = os.environ['EDITOR']
except KeyError:
editor = 'nano'
subprocess.call([editor, t.name])
Python 用の curses ベースの本格的な UI ツールキットであるurwidを見ることができます。非常に洗練されたインターフェイスを定義することができ、さまざまな種類のテキストに対応するさまざまな編集ボックスが含まれています。
Windows のサポートが必要ない場合は、readline モジュールを使用して、シェル プロンプトのような基本的なコマンド ライン編集を行うことができます。