[...]
However, maybe splitting "session" things out might help towards a better support for saving multiple instance configurations, and if we see that such changes would help on that subject too, the noise might be worth. Dimitar, Eugene, Nick, Matthew, Lex..., thoughts?
Hi Colomban,
A few random thoughts in no particular order:
1. Committing the project files can be useful since they contain build commands, indent settings and other stuff that is useful to share. User config files I am less convinced about in this use case. The OP could probably get most of what he wants by using a project file in git with "save sessions in project files" off. An improvement would be to have that setting also be in the project file so each project remembers what was set last time.
2. If the session is removed from the project file then where to store it? I would vote for a subdir of the user config dir perhaps with a (user settable) limit on how many. That way each user remembers which files they had open in that project.
3. Multiple instances would not benefit from having user session info saved separately unless we also switched to saving the remaining config immediately it was changed, not at shutdown. Then there would not be any race for the config file at shutdown. Without session management, multiple instances of course don't save their sessions, since they have no way of finding them again. Although this doesn't address accessing the same file from multiple instances it is a step in the right direction to making multiple instances safer but saving config immediately is a significant change (I think).
4. I have completely ignored session management since I am back on a DE where it doesn't work :) That is the problem with session management, it only works on some DEs and how well it works varies. So I think we should keep Dimitars patch available for as long as he cares to maintain it so individual users can add it if they want, but the variability makes it inappropriate to commit to Geany. Perhaps a link from the wiki to the patch tracker would be useful?
To summarise (in roughly increasing order of difficulty):
a. the OP use project files with sessions off b. the sessions off setting duplicated in the project files c. sessions removed from project files d. User config files saved on change and sessions saved on shutdown by non -i instances. e. Session management nirvana (unlikely :)
Cheers Lex
diff/patch is against commit 1ce4b1fac516f89dadb639cb773c76b68cfa286b
I'd like to ask for a review of the patch?
Apart what I said above, the patch looks very clean but:
- we use tabs for indent (width set to 4), not 2 spaces
- as said above, you need to add backward compatibility code, to load
the prefs to the old file as a fallback.
Best regards, Colomban _______________________________________________ Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel