Hi,
On several occasions, we discussed that it would be a good thing to save the find/replace settings. So I wrote it.
Note that when you check "regular expressions", Geany remembers the "case sensitive" state, and restores it when regex is unchecked. This remembered state is not saved, so after restart, you'll get "regular expressions" and "case sensitive" 1:1.
The state was partially wrong, shared between the Find and Replace dialogs (their settings are separate), so I created separate states. Truth to be said, I can't grasp why regex and case are bound like that.
Is there any reason to stash_group_display(fif_prefs) each time the FiF dialog is shown, instead of doing it once on dialog creation? The fif settings won't change between invokations.