4TH NOV - LEE'S UPDATE

Hi Beta Users,

Thank you all for your feedback regarding bugs especially those regarding missing text or lag issues. Mirrorscape, your bug report regarding lag was just sensational (the best yet) - you helped us find a particularly nasty bug that was virtually invisible had it not been for your detailed analysis. It’s because of people like you that help us solve these issues much faster than we could normally. So, a big thank you. That’s certainly, not to belittle other’s bug reports - just that this was a standout in solving a bug that we just couldn’t replicate until Mirrorcapes post.

We have made resonably good progress in trying to find and fix the root causes of the lag and missing text issues, and have pretty much fixed the font and font sizing changing issue.

With the lagging text issue, we started to make changes to how the dictionary looks up words. Currently, every character entered triggers a dictionary lookup if the dictionary is enabled in Edit>Options - Auto-Correction Tab.
Capture.PNG
The dictionary is extremely efficient in the way it does its lookups, but we thought it must be the dictionary as we couldn’t re-produce this issue ourselves. So, we introduced a timer based system where dictionary lookups are only triggered if the user pauses typing for .5 of a second, we also restricted the range of the dictionary text to search. We had almost completed this when we started working through Mirrorscapes post:
https://forum.literatureandlatte.com/t/does-doing-this-make-your-scrivener-lag-addressed/8424/27
Then we found a nasty bug that had to do with a very expensive event that was being triggered, when it shouldn’t be, that actually paralysed our own machines if we focused on triggering the event. So, we backed out the dictionary changes and made a fix to the event code triggering. We’d like to test with this fix extensively first before we decide whether to make the dictionary changes as we can always re-introduce the dictionary efficiencies again - but, I’m thinking we may not need to with the current fix? I want to take this step by step.

The missing text we believe we may have also fixed - once again, we are struggling to reproduce this consistently. Unfortunately, this potential fix involved augmenting the source code for Qt itself (Qt is the C++ framework on which we build Scrivener for Windows). What this means is we can’t simply swap out an old and new Scrivener.exe file when we release beta 1.3. We have to go through an unistall and reinstall process as all the library code (dlls etc.) have had to be re-built. This frightens me a little as some users have had trouble swapping out previous Scrivener.exe files with new ones - but this is a complete uninstall and reinstall.

So, we’re going to continue testing the beta and making other smaller fixes for the next couple of days to ensure that what we think we have fixed we have before releasing it. I’ll also need to work on the installer a little bit to ensure it behaves nicely. I’m thinking if all goes well either late Sat or Sunday this week.

Currently, we have fixed the following in beta 1.3 (there will be a few more that we’ll fix tomorrow)

  1. In the corkboard view, if you drill down into a text file by clicking on the icon in the upper left hand corner of an index card and then click on a folder in the inspector nothing happens - you are not taken to the corkboard view of that folder’s contents as you are supposed to. (in fact if you keep clicking on the folder Scrivener acts like you have double clicked and want to change the folder’s name rather than see the corkboard).

If you try to get back to the corkboard by clicking on the icon at the top of the screen - e.g. The icon in between the icon for scrivenings and the icon for the outliner - you get a blank corkboard, despite the fact that the folder highlighted contains numerous text files.

The only way to get back to the corkboard here is to click on one of the text files in the inspector and then click on the folder icon again, which this time takes you to the corkboard view. Note - it does not seem to matter here if the text file that you click on in the inspector is the same as the one you drilled down into on the corkboard, it seems that the mere act of clicking on a text file icon in the inspector is what matters. We have fixed this.

  1. The spell checker is not recognising certain words, specifically contractions containing the apostrophe ( ’ ). For example, the following words are underlined in red like so:
    I’ve
    Isn’t
    Doesn’t
    Mustn’t
    Couldn’t
    Wouldn’t etc. This has been fixed.

  2. Scrivener was not preserving first line indentation. It now does.

  3. Selecting text does not populate the synopsis; the opening lines of the document did instead. Now if no text is selected the opening lines populate the synopsis, otherwise if text is selected the selected text populates the synopsis.

  4. Pressing CTRL + ARROW UP or ARROW DOWN didn’t work work in the Editor. It only jumped from word to word horizontally (left and right). Pressing CTRL + ARROW UP now takes you to beginning of paragraph, CTRL + ARROW DOWN - end of paragraph, CTRL+ LEFT - next word the left, CTRL+RIGHT - next word on the right.

  5. Fonts and font sizes are now maintained. There is still an issue with empty paragraph’s fonts which we will need to address when we re-write part of the rich text parser. However, this fix certainly put a smile on my face now that my fonts and font sizes persist. This was driving me bonkers!

  6. Any changes to the outliner columns, selections etc. will persist.

After this beta is released. I expect we’ll be pretty busy for the next month fixing up the parser, associated import issues, and the remainder of editor bugs. So, the daily updates will become a little mundane for a while as we will not have a whole of improvement to show until these are fixed properly.

Lee

Awesome! :smiley:

You mentioned beta 1.3 (which means we should be testing 1.2 right now?) and I went to check my version and realized…I can’t. Shouldn’t there be a menu item in the Help menu called “About” that lists version info and the like? Or is that to be added when we’re out of beta?

Or is there another way to see this info?

I would also love to be able to see what version I’m running. I downloaded and installed 1.2 but the only place I can see the version is, from what I can determine, on my shortcut on the Startup Menu, which still reads “1.0”.

Thanks, and once again, thank you for a Windows version of Scrivener. :smiley: You programmers have made me very happy. :smiley:

This update is definitely promising.

For the installer, would it be possible to:

  1. Prompt an uninstallation when it is first run with Scrivener installed?
  2. Host it up on the core server and a mirror just in case?

If you’ve located the nasty bug (which, I must say, is great news for everyone!), squashed it completely, then it would be perfect.

If you would like to share, perhaps offering a means for us to test (and attempt to extensively break) the program would help a lot as well. Checking bug fixes to make sure they are persistent and consistent, and that future fixes don’t break existing fixes is another prominent job of bug hunting and software testing.

There are limits to the program, but if we could help in any way, many of us are happy to. :slight_smile:

Excellent and impressive, Lee (I’ve been an upon-a-times interventionist and depth software grue).

I wouldn’t worry about the uninstall-install, for these reasons:

  • it’s a much healthier process in many regards than replacing individual exes/dlls
  • it’s a much safer process, vis-a-vis either malware/false alerts, or people making mistakes
  • I think everyone knows about software upgrades of the usual kind, and if they don’t, now’s a chance to learn once and be forever confident, a plus.

One thought is that the best installers actually do any necessary uninstall for you. If you can manage that, then a new installer should be a treat to use.

Good story too of the finding of real things in the software, and of your approach to becoming sure.

Best to you and the team, Lee,
Clive

I second this inquiry. Is there a mechanism to check what version I’m running aside from my faulty memory?

I’m more excited about the first line and spellchecking fixes than is healthy, really. Thank you so much for keeping us updated! I hope your–and everyone else’s that’s participating–NaNo ventures are going well.

Holy cow, what a thorough update! Thank you for doing all this! So pumped to see what you come up as bug fixes go on.

Sounds awesome, Lee. Can’t wait for the update, esp. the indent and dictionary fixes. We all appreciate your hard work :smiley:

That font bug was driving me crazy. So glad it’s fixed. :smiley:

Thank you so much for the update and for all your hard work to exterminate the bugs :slight_smile:

I will look at adding a version number as this makes complete sense.

I will look at making the installation process as automated and seamless as possible.

Thanks.

Lee

Along with the text sizing issue, will the tab setting be fixed? Regardless of what the tab is on a new document, when re-opening the project, not only is the font changed back, but the tab is reset to one inch. In some cases the tab was missing altogether except on the first line.

Great :smiley: Fonts are pretty much the one thing I’m a bit OCD on, I like to use Calibri and size 11; I guess, to each their own. Fixing this is awesome indeed. Thanks for all the hard work you’re doing for this!

Just wanted to add a thank you!

Great progress, Lee.

The font properties fix and the indent are the two features that I’ve missed most, and having my control navigation buttons act as my fingers/brain expect will be a treat. Since I turned off auto-correction and spell check, my lagging text problems have stopped, but will be nice to turn on these features again.

I love this project and the community!
Vanessa

You guys are doing a great job of bringing this project up in the atmosphere where it belongs, thanks for the hard work!

re: the lag issue, I’m probably echoing a hundred other posts, but all of the lag I’ve experienced was a direct result of autosaving - I’m on a pretty swift computer, and the autosave locks up the program for about five seconds. Kicking it from two seconds of inactivity to fifteen has prevented the majority of lag problems for me, because if I’m pausing for 15 seconds in my writing, there’s a fair chance I’ll be pausing for 20, whereas the same isn’t true that if I stop for two seconds I’m likely to stop for seven.