What about saving/restoring the desktop(s) for each project, how to deal with that?
I would like to be able to save the exact state before switching to another project, and to be able to restore that later. To give an example, is not rare in a project to need at the same time:
- a spreadsheet where with my electronic parts inventory
- a datasheet often opened multiple times, one at the page for ports registers, another copy opened at the ADC, another at the electrical specs, another at the pinout, and so on
- very often I need the pinouts from more than one chip at the same time, in the end having to handle 5-10 pdf open at the same time
- many times a reference to the PCB layout is needed, too, then another for the circuit diagram (schematic). Often a schematic diagram is drawn over many pages, so jumping between 2-3 pages to follow a signal is not unusual
- then there is the IDE, which is usually a full beast in itself, most of the times an Eclipse with its gazzilion of windows and views, depending by the microcontroller type, other times I use a generic VS code for most common microcontrollers like the typical AVR in an Arduino. If it's a FPGA, that's usually twice than an Eclipse.
- might be another window with VM for LTspice opened too, not always
- many web browser tabs with various online docs or projects
- often aside from the hardware board, I need a PC program to process or to display something. When lucky, a simple terminal windows already available from a C IDE is enough, but it is not rare the case when some small Python program is needed to post process or to maybe to plot some data
- it is not rare when measuring/testing instruments need their scripts to run SCPI commands, so yet another terminal, or maybe some GUI to capture screenshots from the oscilloscope, and so on.
You got the idea, too many things needed at the same time.
I didn't count how many, but it can easily be 10...100 windows at the same time if I count each one inside the IDE, simulators, web tabs, pdf tabs and so on. Some are grouped, which is great, but they are still too many to switch, even with all the ALT+Tab and all the KDE CTRL+Wheel tricks.
Then, it is very time consuming to re-open a closed project, and to navigate each source code or each doc page where I left them a week ago. Would have been great to be able to save all those opened windows, like a snapshot.
So far the closest way to my wish would be to keep a virtual machine (VM) for each project, to keep everything inside the VM, and suspend the VM when switching projects, instead of shutting down the VM. Would require a lot of discipline and even with VM snapshots, a lot of disk space.
Any ideas how to save/restore the working mess without a VM?