A typical workflow for me is opening Vim (MacVim to be precise), doing:
:NERDTree <bookmark>
then manually opening various subdirectories I want to use. Often it's the same set of directories I had open when I was last working on the project. I'm aware of the O
recursive-open command but if it's a large tree I then have to go and close a load of them to clear the screen up.
Is there any way of saving the ones that are open / the general 'state'?
Unfortunately, there is no way to do this in NERDTree - yet. If you feel like the feature deserves attention, however, you can add it yourself or submit a request for it on GitHub, and it will be available to you soon.
Edit: I took the liberty of submitting the feature request myself; you can track its status here.
Sure just save the session with ":mksession ~/mysession.vim". ":mks" works too. Then just source the file and there you go.