python: fix pdb history
This commit is contained in:
@@ -256,8 +256,7 @@ in
|
|||||||
"ghostty" = createDotLink "ghostty";
|
"ghostty" = createDotLink "ghostty";
|
||||||
};
|
};
|
||||||
home.file = {
|
home.file = {
|
||||||
".pdbrc" = {
|
".pdbrc" = { source = config.lib.file.mkOutOfStoreSymlink "${dotfiles}/python/.pdbrc";};
|
||||||
source = config.lib.file.mkOutOfStoreSymlink "${dotfiles}/python/.pdbrc";
|
".pdb_startup.py" = { source = config.lib.file.mkOutOfStoreSymlink "${dotfiles}/python/.pdb_startup.py";};
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
17
python/.pdb_startup.py
Normal file
17
python/.pdb_startup.py
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
import atexit
|
||||||
|
import os
|
||||||
|
|
||||||
|
try:
|
||||||
|
import readline
|
||||||
|
historyPath = os.path.expanduser("~/.pdb_history")
|
||||||
|
readline.clear_history()
|
||||||
|
if os.path.exists(historyPath):
|
||||||
|
readline.read_history_file(historyPath)
|
||||||
|
|
||||||
|
def save_history(historyPath=historyPath):
|
||||||
|
import readline
|
||||||
|
readline.write_history_file(historyPath)
|
||||||
|
|
||||||
|
atexit.register(save_history)
|
||||||
|
except ImportError:
|
||||||
|
pass
|
||||||
@@ -1,18 +1 @@
|
|||||||
# ~/.pdbrc
|
import importlib.util, os; spec = importlib.util.spec_from_file_location("pdb_startup", os.path.expanduser("~/.pdb_startup.py")); mod = importlib.util.module_from_spec(spec); spec.loader.exec_module(mod)
|
||||||
import atexit
|
|
||||||
import os
|
|
||||||
import readline
|
|
||||||
|
|
||||||
# Define where the pdb command history will be saved
|
|
||||||
historyPath = os.path.expanduser("~/.pdb_history")
|
|
||||||
|
|
||||||
# Read existing history if it exists
|
|
||||||
if os.path.exists(historyPath):
|
|
||||||
readline.read_history_file(historyPath)
|
|
||||||
|
|
||||||
# Register a hook to automatically save history when exiting pdb
|
|
||||||
def save_history(historyPath=historyPath):
|
|
||||||
import readline
|
|
||||||
readline.write_history_file(historyPath)
|
|
||||||
|
|
||||||
atexit.register(save_history)
|
|
||||||
|
|||||||
Reference in New Issue
Block a user