Hi.
Taking point from the proposition to merge the recent files, what do you think about considering the recent files a logical part of the file list, and load/save the open/recent file lists together? This way, we will have better/more recent files (one set for each project) without the need to override geany.conf on each file open/close. N.B. Since the list will be handled together, "Project based session files" will affect the recent file list too.
Per-project interface settings (mostly the interface layout) seems reasonable too IMHO. I have several programming projects, and the message window/side bar are very convinient for them. But for my other projects, one with XSMP documentation/snippets and another with BDF files, the message window/side bar are practically useless.
As a side effect, if per-project recent files and interface settings are implemented, Eugene's sm will be able to restore the Geany-s state better. Isn't it time to make the two sm-s functionally more similar, so we could choose one based on the implementation only?