olivierkes / manuskript

A open-source tool for writers
http://www.theologeek.ch/manuskript
GNU General Public License v3.0
1.74k stars 229 forks source link

Problems copying and pasting texts in the writing section #650

Open Hucksaw opened 4 years ago

Hucksaw commented 4 years ago

I am a user of Xubuntu 16.04, it also happened to me in Zorin. The program is broken by copying and pasting long texts (3000 words or more approximately) in the writing part. After this the program does not respond and you have to close it. (Excuse me my English but I'm using the Google translator.) Thank you.

gedakc commented 4 years ago

We've had performance issues with the automatic revision saving feature.

Can you try disabling revisions?

Go to Edit -> Settings -> Revisions and remove the check mark from Keep revisions.

Then try the copy and paste again.

Eusorph commented 4 years ago

@gedakc I did disable "Keep revisions" on Windows 10 and it did absolutely nothing: if you work with texts that are longer than 3000 words, the app freezes.

worstje commented 4 years ago

I kind of reproduced it on Windows 10 here using 'Lorem Ipsum' texts, although it does get unstuck after a while, so there is technically no need to kill the process. (Assuming it is the same issue.)

Based on several attempts of bashing Ctrl+C while it was stuck, it appears to get stuck while doing the spellcheck. Varying up my copy-pasta attempts in length changes up the length of time it takes, and disabling spellchecking in the view menu prevents the lockup completely. This issue is not limited to copy-paste: a similar delay happens when you switch to a huge text you haven't opened yet.

The apparent cause is that the entire text being entered is being spellchecked right away.

I am not sure about the current implementation, but ideally we only spellcheck the bits that are in the viewport, and leave other bits to be figured out at a later point.

@Hucksaw If you disable Spellcheck through Tools -> Spellcheck, does it still happen?

@Eusorph Assuming you were able to reproduce this same issue, can you verify on your end if the spellcheck is to blame?