履歴バックエンドJSON - xonsh.history.json

xonsh履歴バックエンドのJSONバージョンを実装します。

class xonsh.history.json.JsonCommandField(field、hist、default = None )[ソース]

歴史の 'cmds'部分のフィールド。

履歴の 'cmds'部分のフィールドを表します。

可能であれば、関連するデータをバッファに問い合わせます。さもなければ、ファイルからデータを遅延取得します。

パラメーター:
フィールド : str

照会するフィールドの名前。

hist : ヒストリオブジェクト

照会する履歴オブジェクト。

デフォルト : オプション

キーが存在しない場合に返されるデフォルト値です。

i_am_at_the_front()[ソース]

コマンドフィールドがキューの先頭にあるかどうかをテストします。

class xonsh.history.json.JsonHistory(filename = None、sessionid = None、buffersize = 100、gc = True、** meta )[ソース]

JSONファイルで実装されたXonsh履歴バックエンド。

JsonHistoryは2つの追加アクションを実装diffしていreplayます。

定期的にディスクにフラッシュされるメモリ内バッファとしてのxonshセッションの履歴を表します。

パラメーター:
filename : str、オプション

履歴ファイルの場所です$XONSH_DATA_DIR/xonsh-{sessionid}.json。既定値は です。

sessionid : int、uuid、str、optional

現在のセッション識別子は、設定されていない場合は新しいセッションIDを生成します。

buffersize : int、optional

メモリ内の最大バッファサイズ。

メタ : オプション

履歴とともに保存するトップレベルのメタデータ kwargs 'cmds'と 'sessionid'は許可されず、上書きされます。

gc : bool、オプション

ガベージコレクタフラグを実行します。

all_items(newest_first = False、** kwargs )[ソース]

XONSH_DATA_DIRにあるすべての履歴を返します。

yield形式:{'inp':cmd、 'rtn':0、...}

append(cmd )[ソース]

履歴にコマンドを追加します。履歴をファイルに定期的にフラッシュします。

パラメーター:
cmd : dict

このdictには、履歴リストに追加するコマンドに関する情報が含まれています。それは、キーとinp、 rtnを含んでいなければなりませんts。これらのキー名は、HistoryEntryクラス内のインスタンス変数として定義された同じ名前を反映します。

戻り値:
hf : JsonHistoryFlusherまたはNone

履歴をフラッシュするために生成されたスレッド

flush(at_exit = False )[ソース]

現在のコマンドバッファをディスクにフラッシュします。

パラメーター:
at_exit : bool、オプション

JsonHistoryFlusherがバックグラウンドでスレッドとして動作するか、すぐに実行されブロックされるかどうか。

戻り値:
hf : JsonHistoryFlusherまたはNone

履歴をフラッシュするために生成されたスレッド

info()[ソース]

シェル履歴に関する情報の集まり。

戻り値:
dictまたはcollections.OrderedDict

履歴情報をstrキーのペアとして格納します。

items(newest_first = False )[ソース]

現在のセッションの履歴項目を表示します。

run_gc(サイズ= None、blocking = True )[ソース]

ガベージコレクタを実行します。

パラメーター:
size:intと文字列のタプル

残ることができるサイズと単位を決定します。

ブロッキング:ブール

ブロッキングを設定した場合は、gcアクションが終了するまで待ちます。

クラスxonsh.history.json.JsonHistoryFlusher(ファイル名、バッファ、キュー、cond、at_exit = False、* args、** kwargs )[ソース]

シェル履歴をディスクに定期的にフラッシュします。

履歴をフラッシュするためのスレッド。

dump()[ソース]

キャッシュされた履歴を外部ストレージに書き込みます。

i_am_at_the_front()[ソース]

フラッシャーがキューの前面にあるかどうかをテストします。

run()[ソース]

スレッドのアクティビティを表すメソッド。

サブクラスでこのメソッドをオーバーライドできます。標準のrun()メソッドは、オブジェクトのコンストラクタに渡された呼び出し可能オブジェクトを、argsおよびkwargs引数からそれぞれ取得されたシーケンシャルおよびキーワード引数を持つtarget引数(存在する場合)として呼び出します。

クラスxonsh.history.json.JsonHistoryGC(wait_for_shell = True、サイズ= None、* args、** kwargs )[ソース]

シェル履歴のガベージコレクション。

古い履歴をガベージコレクションするスレッド

shellを(そしてxonshrcがロードされるのを待って)作業を開始するのを待つかもしれません。

files(only_unlocked = False )[ソース]

履歴ファイルを検索して返します。必要に応じて、ロックされたファイルを除外することができます。

これは最後の閉時間でソートされます。(タイムスタンプ、cmdsの数、ファイル名)タプルのリストを返します。

run()[ソース]

スレッドのアクティビティを表すメソッド。

サブクラスでこのメソッドをオーバーライドできます。標準のrun()メソッドは、オブジェクトのコンストラクタに渡された呼び出し可能オブジェクトを、argsおよびkwargs引数からそれぞれ取得されたシーケンシャルおよびキーワード引数を持つtarget引数(存在する場合)として呼び出します。