A article about our new global history tree: https://nyxt.atlas.engineer/article/global-history-tree.org
it talks mostly about the benefits for an end-user. If you have any questions (technical or otherwise), please post them here!
So I know this feature is awesome and obviously my question is counterintuitive to it in some ways but how would I go about making Nyxt wipe both the global and standard history trees (so no history saved) on closure? I like the idea of it when browsing but don’t want any history saved anywhere after I close Nyxt. This is less for privacy reasons and more for keeping everything as a clean slate at all times.
You could always start with nosave
buffers, OR you could simply wipe the history file every time. You can delete ~/.local/share/nyxt/history
. You could add this as a function in your init file (that the history is deleted).
If you simply don’t want it to restore any buffers/state from the previous session, you can have a configuration like mine:
(define-configuration browser
((session-restore-prompt :always-restore)))
@jmercouris Thank you for the advice. Just for points of clarity on this. If I have it running in nosave from the beginning that won’t mess with the current history at all? So while it won’t persist anything would it still allow me history until I close Nyxt? I will attempt to test this but wanted to put the question out there in case I struggle with making it work haha
Also I do already use the restore piece but the correct way to do that and not restore would be the below instead yeah? Or am I doing it wrong haha
(define-configuration browser
((session-restore-prompt :never-restore)))
And now that I’ve done some playing with it I like your deleting of that history file being deleted via a function. How would I go about doing that on browser close. Obviously I could make a script in bash do something similar since it is just a file but I don’t think I can get it to do that on browser close. So if my init file could do that that would be great.
You could do something like
(define-command-global my-quit-function ()
(uiop:delete-file-if-exists (expand-data-path (data-profile (current-buffer))
(history-path (current-buffer))))
(quit))
then you would just call your delete function. You could also call it in your startup, or on some hook on some event. I hope that helps
Sorry, I meant to say you would call your ‘quit’ function in place of the default quit.
Awesome that works. I just overrode the keybinding for closing it out with that command instead. Might end up trying the startup piece sometime. But all good for now.