There might be one of the 32767 Elpa/Melpa add-ons that do this, but Emacs is very explicit in its doc that buffers, named or not, do not get saved. This is why when you click "New" in GUI Emacs you are forced to create a file before the edit window appears.
Yeah.....but it started as a Microsoft product and unless you download the VSCodium version, comes with a massive amount of "tracker" code to tell Microsoft all about you so they can push ads out and/or otherwise find some way of selling your personal information.
I tried VSCodium for a while, but you had to add a repo for it and it kept failing updates because it was "too busy." I think it is just a couple of guys and a personal Web site so it doesn't have the hardware behind it that a full repo able to handle thousands of simultaneous users would have.
Well, crash might have been a bit heavy.
Usually it is because I have the thing minimized and apply updates that need a reboot (Ubuntu) and I reboot without looking to see what is open. Ubuntu 20.04 LTS early on had/has some serious bugs with SSD drives. If you have a bunch of threads performing I/O on SSD, it will encounter a "Deadly Embrace" despite the fact you are reading/writing to different files in every thread. The entire machine will lock up and the drive light will be on.
Admittedly that hasn't happened in the past month and theoretically it could also have been related to BOINC.
When one creates a new buffer in Scite, the SciTE.session file doesn't properly record it for posterity. It would be way cool if there was a .SciTE.cache directory where all of the disconnected buffers were written.
In Scite I have
.SciTEUser.properties open in tab 1.
fred_notes.txt open in tab 2
SciTEGlobal.properties open in tab 3
Untitled* open in tab 4
roland@roland-HP-EliteDesk-800-G2-SFF:~$ cat .SciTE.session
[code]# SciTE session file
position.left=1920
position.top=0
position.width=1920
position.height=1043
position.maximize=1
mru.1.path=/home/roland/SciTE.properties
mru.2.path=/home/roland/.SciTEUser.properties
mru.3.path=/run/user/1000/gvfs/blah=even-more-blah,share=such-blah/fred_notes.txt
mru.4.path=/usr/share/scite/SciTEGlobal.properties
search.1.findwhat=save
search.2.findwhat=font
search.3.findwhat=session
buffer.1.path=/home/roland/.SciTEUser.properties
buffer.1.position=1405
buffer.1.scroll=0
buffer.2.path=/run/user/1000/gvfs/blah=even-more-blah,share=such-blah/fred_notes.txt
buffer.2.position=1
buffer.2.scroll=0
buffer.3.path=/usr/share/scite/SciTEGlobal.properties
buffer.3.position=4231
buffer.3.scroll=135
roland@roland-HP-EliteDesk-800-G2-SFF:~$
[/code]
I'm thinking (and I've been warned about thinking before) that if .SciTEUser.cache existed as a directory, File->New would create a tab named Untitled but an actual file in SciTEUser.cache of Untitled-some-GUID then the session information could be accurate and persistent buffers would automagically be saved/restored.