summaryrefslogtreecommitdiff
path: root/python/pythonrc
diff options
context:
space:
mode:
authorzachir <zachir@librem.one>2024-06-06 15:33:59 -0500
committerzachir <zachir@librem.one>2024-06-06 15:33:59 -0500
commit22cc3518826b714d54535abb0480b8699d720d53 (patch)
tree4c10d1a3520cbe173ef2698633ad81f89bac8648 /python/pythonrc
parent83972d16872ee0181387808d1814d7c323a59dae (diff)
parentf2956712c043c592e1c52eedbd4a901e8bb7423f (diff)
Merge branch 'master' into cas
Diffstat (limited to 'python/pythonrc')
-rw-r--r--python/pythonrc24
1 files changed, 24 insertions, 0 deletions
diff --git a/python/pythonrc b/python/pythonrc
new file mode 100644
index 0000000..cd954b6
--- /dev/null
+++ b/python/pythonrc
@@ -0,0 +1,24 @@
+def is_vanilla() -> bool:
+ import sys
+ return not hasattr(__builtins__, '__IPYTHON__') and 'bpython' not in sys.argv[0]
+
+
+def setup_history():
+ import os
+ import atexit
+ import readline
+ from pathlib import Path
+
+ if state_home := os.environ.get('XDG_STATE_HOME'):
+ state_home = Path(state_home)
+ else:
+ state_home = Path.home() / '.local' / 'state'
+
+ history: Path = state_home / 'python_history'
+
+ readline.read_history_file(str(history))
+ atexit.register(readline.write_history_file, str(history))
+
+
+if is_vanilla():
+ setup_history()