<p></p>
<blockquote>
<p dir="auto">it doesn't mean .session and .geany is next to each other</p>
</blockquote>
<p dir="auto">I just listed the major options I could think of at the time.</p>
<blockquote>
<p dir="auto">basically I'm undecided between <code>~/.cache/geany/sessions/</code> and <code>~/.config/geany/sessions/</code></p>
</blockquote>
<p dir="auto">It depends on what you consider "session" settings.  It seems different classification schemes are being mixed up under the "session" banner.  For instance, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/users/elextr/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/elextr">@elextr</a> stated that only settings affecting edited files are config and all GUI settings are session.  That seems to better fit division by shared/personal.  In a project, settings that affect edited files could be shared, while GUI settings are based on personal preference.</p>
<p dir="auto">I consider any setting Geany automatically manages as "session", while settings users explicitly set in preferences as "config".</p>
<ul dir="auto">
<li>window geometry and position are managed by Geany/window manager/etc, <em>not</em> explicitly set by user in preferences ⇒ session</li>
<li>sidebar/msgwin position, also determined by Geany, though <em>implicitly</em> set by user ⇒ session</li>
<li>sidebar/msgwin location (left/right, bottom/right), <em>explicitly</em> set by user in preferences ⇒ config</li>
<li>gray area – sidebar/msgwin visibility.  There is a setting in preferences.  But Geany uses it to save state.  Since Geany manages it, I would consider it session.  A couple ways to resolve this:
<ul dir="auto">
<li>Save the <em>explicitly</em> set preference as "config".  Save the auto-managed state in "session".  Session normally overrides config, but when session is reset, the config is used as the default.</li>
<li>Add a setting for whether to save/restore state or always use the explicitly set config.</li>
<li>Just pick one (config/session) and consider it an "exception" to usual rule.</li>
</ul>
</li>
</ul>
<p dir="auto">Using this guideline, pretty much anything in session can be regenerated without consequence (since they'd all be auto-managed).  If the session file is lost, the worst that would happen is the user would have to reopen some files.  So <code>~/.cache</code> would be suitable.</p>
<p dir="auto">But if "session" files contain a lot of settings that can't be regenerated, <code>~/.config</code> might make more sense.  But then the config folder could become cluttered with orphaned session files (whose original project files have been moved or deleted).  So it would be a bit more important for Geany to be able to periodically clean up the session folder.  (Clutter in <code>~/.cache</code> is more tolerable, but I'd still want to eventually add cleanup capabilities to Geany.)</p>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />You are receiving this because you are subscribed to this thread.<br />Reply to this email directly, <a href="https://github.com/geany/geany/issues/3015#issuecomment-977872756">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/AAIOWJ6MSBXZXS7TR57NSMLUNTRFTANCNFSM5ISB55XQ">unsubscribe</a>.<br />Triage notifications on the go with GitHub Mobile for <a href="https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675">iOS</a> or <a href="https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub">Android</a>.
<img src="https://github.com/notifications/beacon/AAIOWJ5UXJ6RJLUYEUOWTNTUNTRFTA5CNFSM5ISB55X2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOHJESO5A.gif" height="1" width="1" alt="" /></p>
<script type="application/ld+json">[
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ViewAction",
"target": "https://github.com/geany/geany/issues/3015#issuecomment-977872756",
"url": "https://github.com/geany/geany/issues/3015#issuecomment-977872756",
"name": "View Issue"
},
"description": "View this Issue on GitHub",
"publisher": {
"@type": "Organization",
"name": "GitHub",
"url": "https://github.com"
}
}
]</script>