0

次のようなスクリプトからIDLEシェル履歴にコードをプッシュできるようにしたい

>>>somecode = """
def somefunc():
    pass
"""
>>>idlelib.some_unknown_add_to_history_method(somecode)
>>><ALT-p>

結果:

>>>def somefunc():
    pass

コードを手動でシェルに貼り付けたり入力したりした場合と同じように、somefuncを編集して再評価できるようにします。これを行うための既存の方法はありますか、それともIDLE拡張機能を作成する必要がありますか?

4

1 に答える 1

1

IDLEは、シェル履歴にアイテムを挿入する方法を提供していません。PyShell.pyのコードを変更できます。

IDLE拡張機能の多くの例については、IdleXプロジェクトをご覧ください。IDLEセッション全体で永続的な履歴を提供するための拡張機能があります。これは、独自の拡張機能を作成するための良い出発点になる可能性があります。そのプロジェクトのPersistentHistory.pyを参照してください。

Ctrl + Enterを押して、エディターから直接コードの一部を編集および再評価できるSubCode拡張機能がお勧めです。エディターでコードを強調表示し、F9キーを押して実行することもできます。

于 2012-11-06T19:46:55.350 に答える