In certain cases (e.g. running the current macro until the end of file) and auto-completion and auto-indentation was not getting turned off, causing certain commands to get interpreted incorrectly. Closes#2553, Closes#2545, Closes#2556
Fix Folder as Workspace toolbar button inconsist state while closing
Folder as Workspace windows directely (by clicking X button)
Fixes#2249, closes#2263
Closes#2034
This option configures the vertical scroll range of Scintilla.
Disable this will configure the scroll range to end at last line
(DEFAULT).
Enable this will configure the scroll range to end one page beyond the
last line.
Closes#2032
Added some more Change Case functions (Title Case, Sentence Case,
Invertcase, Randomcase).
Some of them have a normal and a blend version. The normal version will
change any formatting in the start/middle/end part of the word/sentence to
the chosen case. The blend version applies the changes only to the start
part but don't changes the middle/end part of the word/sentence. You can
use it when you want to keep some formatting in the middle/end part, for
instance CamelCase or proper nouns.
This feature allows users to monitor log files' writing, as Unix "tail -f"
command.
Here are the conditions of monitoring:
1. file to monitor should exist.
2. file will be set as readonly during monitoring.
3. each update will scroll to the last line.
closes#1007, closes#919, closes#834
When backups are enabled, playing back a macro that takes a while can
corrupt a file (see the mentioned issues). I tested this with a ~100,000
line text file, ~3.3MB in size. Created a macro of Down5, Delete10. Played
this till the end of the file. Took about 20s to run so it had a few
backup cycles during it. Reproduced it fairly easily and never had it
happen after this adjustment.
Fix macro playback inseting/removing characters randomly due to
auto-insert interfering during macro recording and playing back. (fixes
#649, fixes#970, fixes#304, fixes#992)
Make it take generic_string instead of TCHAR*, since at most callsites
we already have a generic_string.
Improve error handling. Depending on where we are in the function when
we get an error, we need to free the memory, unlock the memory, or
close the clipboard.
Note that if SetClipboardData succeeds then we should not do anything
more to the memory.
The session snapshot feature runs in its own thread and access to
Scintilla etc is not thread-safe. As a *temporary* and *non-exhaustive*
fix we guard some long-running operations (undo, redo, replace, sort)
with a mutex to prevent data corruption.