[Github-comments] [geany/geany] [session-split] More things to session (Issue #3007)

xiota notifications at xxxxx
Tue Nov 23 04:02:05 UTC 2021


A better rule of thumb for session variables would be anything the user does not or cannot set explicitly.  Or put another way, Geany should avoid resetting/undoing what the user has explicitly set.  If there is a setting in the preferences dialog, or elsewhere, it should not be a session config.  This has precedence, for instance, with the filetype auto-detection.  Geany does *not* redetect filetype on reload because the user *might* have explicitly changed it.

* MRU – session – not explicitly set by the user
* Window position and geometry  – session – not explicitly set by the user
* Sidebar/msgwin location – *not* session – explicitly set by user in preferences.
* Sidebar/msgwin position – session – not explicitly set by user.  (The user can change it, but this is an *implicit* change.  There is no *explicit* setting in preferences or elsewhere.)

-----

@elextr Your definition is overly inclusive.  Only a handful of settings don't fit your criteria as session variables.  You essentially confirm this when you stated, "I have defaulted to yes if I'm unsure".  (You give a different reason for that default, but using an unsuitable definition of "session" would contribute that that problem.)

The core of the definition you suggest is:

>  a setting that an individual user is likely to change, possibly often...

That would be detected by running diff on sequential config files (as I suggested).  Although I did not mention collecting samples from multiple users, I pretty much took it as a given since it is a common, well-known approach to avoid over-specificity.  Configs that change more frequently across a greater number of users are better candidates than configs that do or don't change for only one (or a few).

> and it doesn't affect the files being edited

That part is arbitrary.  You and other devs have described project files as just "named sessions".  You state that indent settings are *not* session config, but indent settings are part of project files (indicating that it likely *is* session config).

There are only a handful of settings that affect the edited file.  Default encoding, line endings.  The vast majority of other settings affect the editing environment (eg, GUI), but not the edited files.


-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/issues/3007#issuecomment-976151338
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.geany.org/pipermail/github-comments/attachments/20211122/5df29ba0/attachment.htm>


More information about the Github-comments mailing list