Improvements for VA Assist Pro and Code Assist

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
24 messages Options
12
Reply | Threaded
Open this post in threaded view
|

Re: Improvements for VA Assist Pro and Code Assist

Seth Berman
Hi Lou,

The whole precedence presentation in the completion list was never as clear as I originally intended it to be, so I understand the confusion.  Completions for C-style languages wouldn't deal with this issue, so it is a unique problem to solve.  I looked into just removing the auto-paren insertion capability at one point, but I had a hard time making the algorithm fast because it required a union of all messages from every precedence level...which meant I had to merge common items as the list was being built and this was too slow.  I'll probably give it another go someday.

When the list comes up...you can press <Ctrl+Shift+I> to flip the precedence levels that show first...that way you may be able to get to the correct one easier.

As a reminder, the following is a list of default keyboard shortcuts.  This can be found in Transcript->Options->Code Assist->Configure... | Select "Code Completion" from Feature box | Press "Key Bindings" on the bottom right of the pane.

Code Completion
<Ctrl+Space> - Request Code Completion

The following keys reflect the current settings that impact completion insertions.
<Enter> - (Append Mode) Insert Selected Completion 
<Shift+Enter> - (Append Mode) Insert Selected Completion and Jump To Next Argument
<Ctrl+Enter> - (Overwrite Mode) Insert Selected Completion
<Ctrl+Shift+Enter> - (Overwrite Mode) Insert Selected Completion and Jump To Next Argument

The following key sequences are used to perform live filtering in the completion popup.
Changes to the various filter settings will be reset once the popup closes.
<Ctrl+Shift+P> - Public/Private/All Method Visiblity
<Ctrl+Shift+O> - Show/Hide Methods Defined in Object
<Ctrl+Shift+I> - Inner/Outer Receivers Sort First for Method Completions
<Ctrl+Shift+U> - System/Prereq Application Visibility
<Ctrl+Shift+H> - Enable/Disable Prefer Hierarchy Sort for Method Completions

The following key sequences are used to open browsers on selected completions.
<Ctrl+Shift+M> - Open a Definition/Implementors Browser
<Ctrl+Shift+N> - Open a References/Senders Browser
 

On Wednesday, April 8, 2015 at 2:33:14 PM UTC-4, Louis LaBrunda wrote:
Hi Seth,

On Wednesday, April 8, 2015 at 12:44:01 PM UTC-4, Seth Berman wrote:
Hi Lou,

I will have to ask around about your first one concerning the organizer.  I can't recreate that, but I'm not as familiar with the organizer so I'll check with some others.

I'm going to have to guess on the second because I think I may know what you are saying, but not completely sure.
I'm assuming you are referring to code completion and auto-paren insertion?
If so, there could be multiple suggestions with the same name in the completion list.  Each suggestion will insert the same name, but at a different precedence level.  The parens will insert differently (or not at all) depending on the precedence level you are intending.  Perhaps you are consistently making the same precedence level choice and so the parens consistently go in the inappropriate location for the precedence level you were actually intending?
Just a guess....you could mean something else entirely but I'm not sure what that would be.

-- Seth

Thanks for the reply.  I think you may be right.  I will have to pay more attention to what I select from now on.  I have probably been lazy and just selected the first thing that looked good if not just the first thing.

Lou

--
You received this message because you are subscribed to the Google Groups "VA Smalltalk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To post to this group, send email to [hidden email].
Visit this group at http://groups.google.com/group/va-smalltalk.
For more options, visit https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Improvements for VA Assist Pro and Code Assist

Louis LaBrunda
Hey Seth,

Thanks for the info.  I will have to play a little to see how all these work.  One thing I find myself doing often is adding an #ifTrue:ifFalse: to an existing statement without such a test.  Is there a way to "select" the existing statement and using some key combination to put the existing statement within the ifTrue:[] or ifFalse:[] clause?

Lou

On Wednesday, April 8, 2015 at 2:55:44 PM UTC-4, Seth Berman wrote:
Hi Lou,

The whole precedence presentation in the completion list was never as clear as I originally intended it to be, so I understand the confusion.  Completions for C-style languages wouldn't deal with this issue, so it is a unique problem to solve.  I looked into just removing the auto-paren insertion capability at one point, but I had a hard time making the algorithm fast because it required a union of all messages from every precedence level...which meant I had to merge common items as the list was being built and this was too slow.  I'll probably give it another go someday.

When the list comes up...you can press <Ctrl+Shift+I> to flip the precedence levels that show first...that way you may be able to get to the correct one easier.

As a reminder, the following is a list of default keyboard shortcuts.  This can be found in Transcript->Options->Code Assist->Configure... | Select "Code Completion" from Feature box | Press "Key Bindings" on the bottom right of the pane.

Code Completion
<Ctrl+Space> - Request Code Completion

The following keys reflect the current settings that impact completion insertions.
<Enter> - (Append Mode) Insert Selected Completion 
<Shift+Enter> - (Append Mode) Insert Selected Completion and Jump To Next Argument
<Ctrl+Enter> - (Overwrite Mode) Insert Selected Completion
<Ctrl+Shift+Enter> - (Overwrite Mode) Insert Selected Completion and Jump To Next Argument

The following key sequences are used to perform live filtering in the completion popup.
Changes to the various filter settings will be reset once the popup closes.
<Ctrl+Shift+P> - Public/Private/All Method Visiblity
<Ctrl+Shift+O> - Show/Hide Methods Defined in Object
<Ctrl+Shift+I> - Inner/Outer Receivers Sort First for Method Completions
<Ctrl+Shift+U> - System/Prereq Application Visibility
<Ctrl+Shift+H> - Enable/Disable Prefer Hierarchy Sort for Method Completions

The following key sequences are used to open browsers on selected completions.
<Ctrl+Shift+M> - Open a Definition/Implementors Browser
<Ctrl+Shift+N> - Open a References/Senders Browser
 

On Wednesday, April 8, 2015 at 2:33:14 PM UTC-4, Louis LaBrunda wrote:
Hi Seth,

On Wednesday, April 8, 2015 at 12:44:01 PM UTC-4, Seth Berman wrote:
Hi Lou,

I will have to ask around about your first one concerning the organizer.  I can't recreate that, but I'm not as familiar with the organizer so I'll check with some others.

I'm going to have to guess on the second because I think I may know what you are saying, but not completely sure.
I'm assuming you are referring to code completion and auto-paren insertion?
If so, there could be multiple suggestions with the same name in the completion list.  Each suggestion will insert the same name, but at a different precedence level.  The parens will insert differently (or not at all) depending on the precedence level you are intending.  Perhaps you are consistently making the same precedence level choice and so the parens consistently go in the inappropriate location for the precedence level you were actually intending?
Just a guess....you could mean something else entirely but I'm not sure what that would be.

-- Seth

Thanks for the reply.  I think you may be right.  I will have to pay more attention to what I select from now on.  I have probably been lazy and just selected the first thing that looked good if not just the first thing.

Lou

--
You received this message because you are subscribed to the Google Groups "VA Smalltalk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To post to this group, send email to [hidden email].
Visit this group at http://groups.google.com/group/va-smalltalk.
For more options, visit https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Improvements for VA Assist Pro and Code Assist

Seth Berman
Hi Lou,

No there isn't...but that is an interesting idea.  I'll make note of it

-- Seth

On Wednesday, April 8, 2015 at 5:39:14 PM UTC-4, Louis LaBrunda wrote:
Hey Seth,

Thanks for the info.  I will have to play a little to see how all these work.  One thing I find myself doing often is adding an #ifTrue:ifFalse: to an existing statement without such a test.  Is there a way to "select" the existing statement and using some key combination to put the existing statement within the ifTrue:[] or ifFalse:[] clause?

Lou

On Wednesday, April 8, 2015 at 2:55:44 PM UTC-4, Seth Berman wrote:
Hi Lou,

The whole precedence presentation in the completion list was never as clear as I originally intended it to be, so I understand the confusion.  Completions for C-style languages wouldn't deal with this issue, so it is a unique problem to solve.  I looked into just removing the auto-paren insertion capability at one point, but I had a hard time making the algorithm fast because it required a union of all messages from every precedence level...which meant I had to merge common items as the list was being built and this was too slow.  I'll probably give it another go someday.

When the list comes up...you can press <Ctrl+Shift+I> to flip the precedence levels that show first...that way you may be able to get to the correct one easier.

As a reminder, the following is a list of default keyboard shortcuts.  This can be found in Transcript->Options->Code Assist->Configure... | Select "Code Completion" from Feature box | Press "Key Bindings" on the bottom right of the pane.

Code Completion
<Ctrl+Space> - Request Code Completion

The following keys reflect the current settings that impact completion insertions.
<Enter> - (Append Mode) Insert Selected Completion 
<Shift+Enter> - (Append Mode) Insert Selected Completion and Jump To Next Argument
<Ctrl+Enter> - (Overwrite Mode) Insert Selected Completion
<Ctrl+Shift+Enter> - (Overwrite Mode) Insert Selected Completion and Jump To Next Argument

The following key sequences are used to perform live filtering in the completion popup.
Changes to the various filter settings will be reset once the popup closes.
<Ctrl+Shift+P> - Public/Private/All Method Visiblity
<Ctrl+Shift+O> - Show/Hide Methods Defined in Object
<Ctrl+Shift+I> - Inner/Outer Receivers Sort First for Method Completions
<Ctrl+Shift+U> - System/Prereq Application Visibility
<Ctrl+Shift+H> - Enable/Disable Prefer Hierarchy Sort for Method Completions

The following key sequences are used to open browsers on selected completions.
<Ctrl+Shift+M> - Open a Definition/Implementors Browser
<Ctrl+Shift+N> - Open a References/Senders Browser
 

On Wednesday, April 8, 2015 at 2:33:14 PM UTC-4, Louis LaBrunda wrote:
Hi Seth,

On Wednesday, April 8, 2015 at 12:44:01 PM UTC-4, Seth Berman wrote:
Hi Lou,

I will have to ask around about your first one concerning the organizer.  I can't recreate that, but I'm not as familiar with the organizer so I'll check with some others.

I'm going to have to guess on the second because I think I may know what you are saying, but not completely sure.
I'm assuming you are referring to code completion and auto-paren insertion?
If so, there could be multiple suggestions with the same name in the completion list.  Each suggestion will insert the same name, but at a different precedence level.  The parens will insert differently (or not at all) depending on the precedence level you are intending.  Perhaps you are consistently making the same precedence level choice and so the parens consistently go in the inappropriate location for the precedence level you were actually intending?
Just a guess....you could mean something else entirely but I'm not sure what that would be.

-- Seth

Thanks for the reply.  I think you may be right.  I will have to pay more attention to what I select from now on.  I have probably been lazy and just selected the first thing that looked good if not just the first thing.

Lou

--
You received this message because you are subscribed to the Google Groups "VA Smalltalk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To post to this group, send email to [hidden email].
Visit this group at http://groups.google.com/group/va-smalltalk.
For more options, visit https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Improvements for VA Assist Pro and Code Assist

Louis LaBrunda
Hi Seth,

I didn't think there was but it is cool that you will take a look!

I don't think one can select the text ahead of time as typing the first character will kill it.  But maybe inserting everything on a line (up to but not including the period ".") into one or the other of the blocks would be great.  As it is now one has to cut and paste it where it is wanted.  And maybe this could be extended to methods without block but just parms (maybe with parens added).

Lou

On Wednesday, April 8, 2015 at 6:43:06 PM UTC-4, Seth Berman wrote:
Hi Lou,

No there isn't...but that is an interesting idea.  I'll make note of it

-- Seth

On Wednesday, April 8, 2015 at 5:39:14 PM UTC-4, Louis LaBrunda wrote:
Hey Seth,

Thanks for the info.  I will have to play a little to see how all these work.  One thing I find myself doing often is adding an #ifTrue:ifFalse: to an existing statement without such a test.  Is there a way to "select" the existing statement and using some key combination to put the existing statement within the ifTrue:[] or ifFalse:[] clause?

Lou

On Wednesday, April 8, 2015 at 2:55:44 PM UTC-4, Seth Berman wrote:
Hi Lou,

The whole precedence presentation in the completion list was never as clear as I originally intended it to be, so I understand the confusion.  Completions for C-style languages wouldn't deal with this issue, so it is a unique problem to solve.  I looked into just removing the auto-paren insertion capability at one point, but I had a hard time making the algorithm fast because it required a union of all messages from every precedence level...which meant I had to merge common items as the list was being built and this was too slow.  I'll probably give it another go someday.

When the list comes up...you can press <Ctrl+Shift+I> to flip the precedence levels that show first...that way you may be able to get to the correct one easier.

As a reminder, the following is a list of default keyboard shortcuts.  This can be found in Transcript->Options->Code Assist->Configure... | Select "Code Completion" from Feature box | Press "Key Bindings" on the bottom right of the pane.

Code Completion
<Ctrl+Space> - Request Code Completion

The following keys reflect the current settings that impact completion insertions.
<Enter> - (Append Mode) Insert Selected Completion 
<Shift+Enter> - (Append Mode) Insert Selected Completion and Jump To Next Argument
<Ctrl+Enter> - (Overwrite Mode) Insert Selected Completion
<Ctrl+Shift+Enter> - (Overwrite Mode) Insert Selected Completion and Jump To Next Argument

The following key sequences are used to perform live filtering in the completion popup.
Changes to the various filter settings will be reset once the popup closes.
<Ctrl+Shift+P> - Public/Private/All Method Visiblity
<Ctrl+Shift+O> - Show/Hide Methods Defined in Object
<Ctrl+Shift+I> - Inner/Outer Receivers Sort First for Method Completions
<Ctrl+Shift+U> - System/Prereq Application Visibility
<Ctrl+Shift+H> - Enable/Disable Prefer Hierarchy Sort for Method Completions

The following key sequences are used to open browsers on selected completions.
<Ctrl+Shift+M> - Open a Definition/Implementors Browser
<Ctrl+Shift+N> - Open a References/Senders Browser
 

On Wednesday, April 8, 2015 at 2:33:14 PM UTC-4, Louis LaBrunda wrote:
Hi Seth,

On Wednesday, April 8, 2015 at 12:44:01 PM UTC-4, Seth Berman wrote:
Hi Lou,

I will have to ask around about your first one concerning the organizer.  I can't recreate that, but I'm not as familiar with the organizer so I'll check with some others.

I'm going to have to guess on the second because I think I may know what you are saying, but not completely sure.
I'm assuming you are referring to code completion and auto-paren insertion?
If so, there could be multiple suggestions with the same name in the completion list.  Each suggestion will insert the same name, but at a different precedence level.  The parens will insert differently (or not at all) depending on the precedence level you are intending.  Perhaps you are consistently making the same precedence level choice and so the parens consistently go in the inappropriate location for the precedence level you were actually intending?
Just a guess....you could mean something else entirely but I'm not sure what that would be.

-- Seth

Thanks for the reply.  I think you may be right.  I will have to pay more attention to what I select from now on.  I have probably been lazy and just selected the first thing that looked good if not just the first thing.

Lou

--
You received this message because you are subscribed to the Google Groups "VA Smalltalk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To post to this group, send email to [hidden email].
Visit this group at http://groups.google.com/group/va-smalltalk.
For more options, visit https://groups.google.com/d/optout.
12