Whole Tomato Software Forums
Whole Tomato Software Forums
Main Site | Profile | Register | Active Topics | Members | Search | FAQ
 All Forums
 Visual Assist
 Technical Support
 VA deletes word upon accepting suggestion

You must be registered to post a reply.
Click here to register.

Screensize:
UserName:
Password:
Format: BoldItalicizeUnderlineStrikethrough Align leftCenterAlign right Insert horizontal ruleUpload and insert imageInsert hyperlinkInsert email addressInsert codeInsert quoted textInsert listInsert Emoji
   
Message:

Forum code is on.
Html is off.

 
Check to subscribe to this topic.
   

T O P I C    R E V I E W
Queequeg Posted - Aug 28 2019 : 09:08:56 AM
I'll walk through what I just did. I use | as the cursor.
auto file = fopen(|dataDir + "/2077530669904.points.txt", "rb");

I want to change this line to
auto file = fopen(QUtil_s(dataDir + "/2077530669904.points.txt"), "rb");

So I enter the first two characters:
auto file = fopen(QU|dataDir + "/2077530669904.points.txt", "rb");

Now I get the right suggestion for the `QUtil_s` function. Great. I hit Tab. VA then proceeds with *deleting* the next word.
auto file = fopen(QUtil_s() + "/2077530669904.points.txt"), "rb");

So I hit undo.
auto file = fopen(QUtil_s| + "/2077530669904.points.txt"), "rb");

Nope, undo again.
auto file = fopen(QUdataDir| + "/2077530669904.points.txt"), "rb");

Well, also not helpful. Why is the cursor after the word that was deleted? But whatever.

So now I need to move the cursor back and add a space.
auto file = fopen(QU |dataDir + "/2077530669904.points.txt"), "rb");

Then move back again, to get the suggestions again with `Ctrl+Space`.
auto file = fopen(QU| dataDir + "/2077530669904.points.txt"), "rb");

Only now the suggestions suck, and VA suggests QUdpSocket instead of what I want. So now I have to delete the characters again.
auto file = fopen(| dataDir + "/2077530669904.points.txt"), "rb");

And type QU again.
auto file = fopen(QU| dataDir + "/2077530669904.points.txt"), "rb");

Now it suggests QUtil_s again. I hit Tab.
auto file = fopen(QUtil_s(|) dataDir + "/2077530669904.points.txt"), "rb");

And VA auto-fills in the braces. Again, I have to correct VA by deleting the brace. Plus of course the space that VA forced me to enter.
auto file = fopen(QUtil_s(|dataDir + "/2077530669904.points.txt"), "rb");

And now, finally, I can get where I wanted to.

Frustrating all the way. It would have been way faster without VA.

So. Can I disable that VA deletes words?

If not, what I'd like to see is an additional Undo point. If you're trying to be helpful by deleting a word, don't assume that that is what I always want. Sometimes it is, sometimes it isn't. Give me another Undo point before the deletion, so I can undo it, but still get the suggestion.

VA_X.dll file version 10.9.2302.0 built 2018.12.13
DevEnv.exe version 15.9.28307.586 Professional
msenv.dll version 15.0.28307.421
Comctl32.dll version 6.10.16299.1268
Windows 10 10.0 1709 Build 16299.1268
16 processors (x86-64, WOW64)
Language info: 1252, 0x409
5   L A T E S T    R E P L I E S    (Newest First)
feline Posted - Sep 02 2019 : 08:56:55 AM
It is certainly a possible solution. Strange as it may seem, we have only very recently found this bug, so we haven't done a lot of evaluating it yet.

Hopefully knowing what is going on here, and changing the setting is helping you.
Queequeg Posted - Sep 01 2019 : 6:55:46 PM
@feline Thank you for clarifying.

Wouldn't it be better to use CompletionOverwriteBehavior=1 as the default then instead of continuing to ship a known bug?
feline Posted - Aug 31 2019 : 08:14:05 AM
You are quite right, unfortunately there is a bug in our logic. When you are accepting a function name or a typedef then a known symbol after the caret will be deleted, even though it should not be. If you are accepting a different type of symbol then the symbol won't be deleted. A bit confusing until you pin down the pattern at work here with this bug:

case=140801

The work around for the bug is the registry setting CompletionOverwriteBehavior, which takes priority, so we never try and delete the symbol name following the caret. I don't currently have an estimate for when we will fix this bug, but at least we do have a reliable work around for it.
Queequeg Posted - Aug 30 2019 : 08:52:26 AM
But it says "0 = default behavior: VA will overwrite text unless it is a known symbol".
And `dataDir` should be a known symbol, yet it is overwritten. Isn't this a bug?
accord Posted - Aug 29 2019 : 5:59:51 PM
Can you please visit the following link?
https://support.wholetomato.com/default.asp?W640

If you change it to "1 = never overwrite text" after exiting all instances of Visual Studio, that should do what you are asking for.

© 2023 Whole Tomato Software, LLC Go To Top Of Page
Snitz Forums 2000