![]() |
#1 |
Member
![]() Posts: 21
Karma: 88
Join Date: Mar 2008
Location: Paraguay
Device: Samsung Galaxy Tab S2
|
Find replace history not saved between sessions
Hi, all,
I am using Sigil on Linux, Ubuntu 18.04 LTS. Since version 0.9.18 I am compiling Sigil by myself, running all right, almost without problems. Now I compiled and installed v. 1.1.0. The one problem I encountered is with "Find-Replace" - Sigil used to show previous searches, but not anymore. When I start Sigil, no previous searches are there in the drop down input field. That happens in the three last versions, 0.9.18, 1.0.0 and 1.1.0. Any ideas? |
![]() |
![]() |
![]() |
#2 |
A Hairy Wizard
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 3,347
Karma: 20171571
Join Date: Dec 2012
Location: Charleston, SC today
Device: iPhone 15/11/X/6/iPad 1,2,Air & Air Pro/Surface Pro/Kindle PW & Fire
|
Hmmm....seems to work ok on Windows10.
|
![]() |
![]() |
Advert | |
|
![]() |
#3 |
Sigil Developer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 8,759
Karma: 5706256
Join Date: Nov 2009
Device: many
|
The code is still there and has not been touched in a long time. These are stored in the sigil.ini file under "find_replace" settings group and look for "find_strings" and "replace_strings" settings.
The sigil.ini is a pure text file. So examine it to see if those entries are missing. And make sure you have read and write permissions on that file. Last edited by KevinH; 02-07-2020 at 01:46 PM. |
![]() |
![]() |
![]() |
#4 |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 28,568
Karma: 204127028
Join Date: Jan 2010
Device: Nexus 7, Kindle Fire HD
|
I'll check on my Arch machine later on tonight, but I don't think I've noticed any issues in that regard. It's possible you're compiling against a buggy Qt5 version, but I've not heard of any bugs that sound like that.
It's possible, I guess, that you have some corruption in your Sigil.ini file. You could try backing it up, moving it, and seeing if it works with a brand-new generated ini file. If it works, copy stuff back from the old one a little bit at a time so you can find where the corruption might be. Your search strings might contain some corrupt data from back when we tried the failed experiment with utf-8 settings files. Last edited by DiapDealer; 02-07-2020 at 01:04 PM. |
![]() |
![]() |
![]() |
#5 | |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 5,727
Karma: 24031401
Join Date: Dec 2010
Device: Kindle PW2
|
Quote:
As KevinH & DiapDealer have already mentioned, most likely your sigil.ini file is corrupted. The easiest way to fix this is to simply rename/delete your current sigil.ini file. Last edited by Doitsu; 02-07-2020 at 03:45 PM. |
|
![]() |
![]() |
Advert | |
|
![]() |
#6 |
Member
![]() Posts: 21
Karma: 88
Join Date: Mar 2008
Location: Paraguay
Device: Samsung Galaxy Tab S2
|
Thanks for the replies!
I had tried working with a new sigil.ini, with the same result. Now I erased all .ini files, to start Sigil from scratch. Still the same problem. sigil.ini gets generated all right, saves other stuff (see attached: lastfolderopen and recentfiles), but not the searches. When I restart Sigil, again find replace is empty. BTW, my Qt5 version is 5.9.5+dfsg-0ubuntu2.4 Last edited by poxi1023; 02-07-2020 at 03:31 PM. |
![]() |
![]() |
![]() |
#7 | |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 28,568
Karma: 204127028
Join Date: Jan 2010
Device: Nexus 7, Kindle Fire HD
|
That's certainly weird. It's not saving ANY F&R settings (other than whether F&R is open or not).
Should be stuff like: Quote:
|
|
![]() |
![]() |
![]() |
#8 |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 28,568
Karma: 204127028
Join Date: Jan 2010
Device: Nexus 7, Kindle Fire HD
|
I'm wondering if there's an ifdef based on Qt's version that's somehow causing problems with writing the settings. Qt5.9.5 is just as about as old a version of Qt that the latest versions of Sigil will work with, but most of the compile time Qt version checks are QtWebEngine related. For the other aspects of Sigil, 5.9.5 should work fine.
Does it build up a search/replace history as long as Sigil stays open? I think I might still have an 18.04 VM set up. I'll see if I can do some testing over the weekend. Last edited by DiapDealer; 02-07-2020 at 03:50 PM. |
![]() |
![]() |
![]() |
#9 |
Sigil Developer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 8,759
Karma: 5706256
Join Date: Nov 2009
Device: many
|
I think this means that the FindReplace Destructor is not being called for some reason by this version of Qt.
Please try the following for me: 1. edit Sigil/src/MailUI/FindReplace.cpp 2. copy line 80 (call to WriteSettings) 3. paste it just before line 124(just before QWidget::close(). Then run make again and test things. If that helps, then the FindReplace destructor call is never getting evoked or is invoked too late for some reason. Please let us know if that helps... |
![]() |
![]() |
![]() |
#10 |
Sigil Developer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 8,759
Karma: 5706256
Join Date: Nov 2009
Device: many
|
BTW, if that helps, we can make that move for all platforms since it is safer to do a call to WriteSettings() in close() instead of the destructor in general.
|
![]() |
![]() |
![]() |
#11 | ||
Member
![]() Posts: 21
Karma: 88
Join Date: Mar 2008
Location: Paraguay
Device: Samsung Galaxy Tab S2
|
Quote:
![]() Quote:
|
||
![]() |
![]() |
![]() |
#12 |
Sigil Developer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 8,759
Karma: 5706256
Join Date: Nov 2009
Device: many
|
What happens if you manually close the Find and Replace window after trying some searches before closing Sigil? After the manual close writesetting should tell SettingsStore to update itself. Please check the sigil.ini file before quitting out of Sigil to see if anything is being written.
|
![]() |
![]() |
![]() |
#13 |
cosiñeiro
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 1,406
Karma: 2451781
Join Date: Apr 2014
Device: BQ Cervantes 4
|
Hi, I use the same Ubuntu version as poxi1023, but linked against qt 5.14.0 and I cannot reproduce the issue.
sigil.ini contains [find_replace] category with relevant find_strings based on my usage. New searchs will be added when the program is closed. |
![]() |
![]() |
![]() |
#14 |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 28,568
Karma: 204127028
Join Date: Jan 2010
Device: Nexus 7, Kindle Fire HD
|
I'm able to duplicate this issue (sort of) with Qt5.9.5 on an old Mint 19 VM. I say sort of, because I have the same lack of F&R settings being written to disk, but I'm also getting a segfault whenever Sigil closes (though I can't make out any obvious adverse effects from the segfault).
Will do some testing. |
![]() |
![]() |
![]() |
#15 |
Sigil Developer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 8,759
Karma: 5706256
Join Date: Nov 2009
Device: many
|
If it segfaults before the F&R destructor is called that could prevent any call to WriteSettings().
Does moving WriteSettings in FindReplace.cpp from the destructor (line 80) to right before line 124 in close() help in your set-up? KevinH |
![]() |
![]() |
![]() |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Behaviour of history and spaces in find/replace text boxes | arspr | Editor | 0 | 01-01-2014 05:04 PM |
Find Replace | unrulyguides | Sigil | 5 | 02-17-2012 08:38 PM |
Find/Replace Won't Find | Rand Brittain | Sigil | 7 | 09-24-2011 04:35 AM |
Find / replace | bremler | Sigil | 6 | 12-17-2010 03:26 PM |
Using Find/Replace with BD | Otter | Sony Reader | 7 | 02-28-2009 01:49 PM |