Discussion:
[Eric] Autocompletion behaviour
Alex Gerhardt-Bourke
2018-10-19 03:46:47 UTC
Permalink
Is there a way to change the behavior of autocompletion so that eric never forces a match, but still displays the drop-down suggestion list?

For further clarification, my current experience with autocomplete turned on is that if there is only one match, the match will automatically fill, if there is more than one match, a drop-down of current matches will display. I like the drop down but do not like the automatic fill.


I am also wondering if it is possible, and if so how, to get autocomplete suggestions from imported modules outside of the python standard library.

Regards,
Alex.
Christos Sevastiadis
2018-10-19 17:42:45 UTC
Permalink
Dear Alex,

The behavior of my Eric is like what you are asking for. When I am typing
something the suggestions are be showing in a list. Continuing typing more,
the list is shortening. With the arrow keys I can select what I want and
with the TAB key it is typed. Maybe I do not understand what do you mean
with fill.

For imported modules autocomplete support you have to install the plugin
for Rope, which is for refactoring, and then activate its Autocomplete
function in Settings.Preferences.Editor.Autocompletion.Rope. I have already
set all the options of Settings.Preferences.Editor.Autocompletion.Eric.

Regards
Christos Sevastiadis
Tobias Rzepka
2018-10-19 20:11:02 UTC
Permalink
_______________________________________________
Eric mailing list
***@riverbankcomputing.com
https://www.riverbankcomputing.com/mailman/listinfo/eric
Alex Gerhardt-Bourke
2018-10-20 03:54:22 UTC
Permalink
Hi Tobias,

Thanks for that, that’s exactly what I needed. It seems as though the checkbox works opposite to how it should! Next time I’ll be sure to check all the mouse hover over texts.

Christos, thanks for your recommendations on other plugins. I’m still familiarizing myself with Eric so didn’t know which functionalities are built-in and which are plug-ins.

Alex.

________________________________
From: Eric <eric-***@riverbankcomputing.com> on behalf of Tobias Rzepka <***@gmail.com>
Sent: Saturday, October 20, 2018 4:11:02 AM
To: ***@riverbankcomputing.com
Subject: Re: [Eric] Autocompletion behaviour


Hello Alex,

you can configure it under Settings -> Preferences -> Editor -> Autocompletion -> QScintilla. Keep the first checkbox ("Show single") unchecked. If you stay a little while over the text, you'll see a tooltip with a good hint about the function of the specific setting.

You should also try out the eric plugins which support autocompletion. I prefer jedi, but you can also choose Eric assistant or rope (or even all of them together).

Tobias

Alex Gerhardt-Bourke schrieb am 19.10.2018 um 05:46:
Is there a way to change the behavior of autocompletion so that eric never forces a match, but still displays the drop-down suggestion list?

For further clarification, my current experience with autocomplete turned on is that if there is only one match, the match will automatically fill, if there is more than one match, a drop-down of current matches will display. I like the drop down but do not like the automatic fill.


I am also wondering if it is possible, and if so how, to get autocomplete suggestions from imported modules outside of the python standard library.

Regards,
Alex.
Alex Gerhardt-Bourke
2018-10-20 04:31:32 UTC
Permalink
Hi All,

I have installed the three other Autocompletion tools – eric assistant, jedi, and Rope; none of them seem are currently showing autocompletions for imported modules. For example, I have installed and imported a module called jieba, typing “jieba.” and then pressing ctrl+space shows nothing. Starting to type directly after typing “jieba.” shows matches from other modules, but none from jieba. For example, typing jieba.cut brings many matches from PyQt5 and eric6, but none from jieba. The function cut_for_search from jieba doesn’t show up at all.

Is there some configuration I have missed?

________________________________
From: Eric <eric-***@riverbankcomputing.com> on behalf of Alex Gerhardt-Bourke <***@hotmail.com>
Sent: Saturday, October 20, 2018 11:54:22 AM
To: Tobias Rzepka; ***@riverbankcomputing.com
Subject: Re: [Eric] Autocompletion behaviour

Hi Tobias,

Thanks for that, that’s exactly what I needed. It seems as though the checkbox works opposite to how it should! Next time I’ll be sure to check all the mouse hover over texts.

Christos, thanks for your recommendations on other plugins. I’m still familiarizing myself with Eric so didn’t know which functionalities are built-in and which are plug-ins.

Alex.

________________________________
From: Eric <eric-***@riverbankcomputing.com> on behalf of Tobias Rzepka <***@gmail.com>
Sent: Saturday, October 20, 2018 4:11:02 AM
To: ***@riverbankcomputing.com
Subject: Re: [Eric] Autocompletion behaviour


Hello Alex,

you can configure it under Settings -> Preferences -> Editor -> Autocompletion -> QScintilla. Keep the first checkbox ("Show single") unchecked. If you stay a little while over the text, you'll see a tooltip with a good hint about the function of the specific setting.

You should also try out the eric plugins which support autocompletion. I prefer jedi, but you can also choose Eric assistant or rope (or even all of them together).

Tobias

Alex Gerhardt-Bourke schrieb am 19.10.2018 um 05:46:
Is there a way to change the behavior of autocompletion so that eric never forces a match, but still displays the drop-down suggestion list?

For further clarification, my current experience with autocomplete turned on is that if there is only one match, the match will automatically fill, if there is more than one match, a drop-down of current matches will display. I like the drop down but do not like the automatic fill.


I am also wondering if it is possible, and if so how, to get autocomplete suggestions from imported modules outside of the python standard library.

Regards,
Alex.
Detlev Offenbach
2018-10-20 10:52:46 UTC
Permalink
Am Samstag, 20. Oktober 2018, 06:31:32 CEST schrieb Alex Gerhardt-Bourke:
> Hi All,
>
> I have installed the three other Autocompletion tools – eric assistant,
> jedi, and Rope; none of them seem are currently showing autocompletions for
> imported modules. For example, I have installed and imported a module
> called jieba, typing “jieba.” and then pressing ctrl+space shows nothing.
> Starting to type directly after typing “jieba.” shows matches from other
> modules, but none from jieba. For example, typing jieba.cut brings many
> matches from PyQt5 and eric6, but none from jieba. The function
> cut_for_search from jieba doesn’t show up at all.
>
> Is there some configuration I have missed?

After the installation of these plug-ins, you will find additional
configuration pages for auto completion and call tips. On these pages you have
to enable the modules you want to want to get support from. You should look at
"Mouse Click Handlers" as well. With that you can configure a navigation
feature (e.g. Ctrl+Click on a method usage jumps to the method definition).

Detlev

>
> ________________________________
> From: Eric <eric-***@riverbankcomputing.com> on behalf of Alex
> Gerhardt-Bourke <***@hotmail.com> Sent: Saturday, October 20, 2018
> 11:54:22 AM
> To: Tobias Rzepka; ***@riverbankcomputing.com
> Subject: Re: [Eric] Autocompletion behaviour
>
> Hi Tobias,
>
> Thanks for that, that’s exactly what I needed. It seems as though the
> checkbox works opposite to how it should! Next time I’ll be sure to check
> all the mouse hover over texts.
>
> Christos, thanks for your recommendations on other plugins. I’m still
> familiarizing myself with Eric so didn’t know which functionalities are
> built-in and which are plug-ins.
>
> Alex.
>
> ________________________________
> From: Eric <eric-***@riverbankcomputing.com> on behalf of Tobias Rzepka
> <***@gmail.com> Sent: Saturday, October 20, 2018 4:11:02 AM
> To: ***@riverbankcomputing.com
> Subject: Re: [Eric] Autocompletion behaviour
>
>
> Hello Alex,
>
> you can configure it under Settings -> Preferences -> Editor ->
> Autocompletion -> QScintilla. Keep the first checkbox ("Show single")
> unchecked. If you stay a little while over the text, you'll see a tooltip
> with a good hint about the function of the specific setting.
>
> You should also try out the eric plugins which support autocompletion. I
> prefer jedi, but you can also choose Eric assistant or rope (or even all of
> them together).
>
> Tobias
>
> Alex Gerhardt-Bourke schrieb am 19.10.2018 um 05:46:
> Is there a way to change the behavior of autocompletion so that eric never
> forces a match, but still displays the drop-down suggestion list?
>
> For further clarification, my current experience with autocomplete turned on
> is that if there is only one match, the match will automatically fill, if
> there is more than one match, a drop-down of current matches will display.
> I like the drop down but do not like the automatic fill.
>
>
> I am also wondering if it is possible, and if so how, to get autocomplete
> suggestions from imported modules outside of the python standard library.
>
> Regards,
> Alex.
>
>
>
>
> _______________________________________________
> Eric mailing list
> ***@riverbankcomputing.com<mailto:***@riverbankcomputing.com>
> https://www.riverbankcomputing.com/mailman/listinfo/eric

--
Detlev Offenbach
***@die-offenbachs.de
Alex Gerhardt-Bourke
2018-10-20 12:51:50 UTC
Permalink
Hi Detlev,



I saw the new config pages for the new plug-ins and have enabled them all, but I still don’t get the desired results. Behaviour is still as described in my last email.





________________________________
From: Detlev Offenbach <***@die-offenbachs.de>
Sent: Saturday, October 20, 2018 6:52:46 PM
To: ***@riverbankcomputing.com
Cc: Alex Gerhardt-Bourke; Tobias Rzepka; ***@riverbankcomputing.com
Subject: Re: [Eric] Autocompletion behaviour


Am Samstag, 20. Oktober 2018, 06:31:32 CEST schrieb Alex Gerhardt-Bourke:
> Hi All,
>
> I have installed the three other Autocompletion tools – eric assistant,
> jedi, and Rope; none of them seem are currently showing autocompletions for
> imported modules. For example, I have installed and imported a module
> called jieba, typing “jieba.” and then pressing ctrl+space shows nothing.
> Starting to type directly after typing “jieba.” shows matches from other
> modules, but none from jieba. For example, typing jieba.cut brings many
> matches from PyQt5 and eric6, but none from jieba. The function
> cut_for_search from jieba doesn’t show up at all.
>
> Is there some configuration I have missed?

After the installation of these plug-ins, you will find additional
configuration pages for auto completion and call tips. On these pages you have
to enable the modules you want to want to get support from. You should look at
"Mouse Click Handlers" as well. With that you can configure a navigation
feature (e.g. Ctrl+Click on a method usage jumps to the method definition).

Detlev

>
> ________________________________
> From: Eric <eric-***@riverbankcomputing.com> on behalf of Alex
> Gerhardt-Bourke <***@hotmail.com> Sent: Saturday, October 20, 2018
> 11:54:22 AM
> To: Tobias Rzepka; ***@riverbankcomputing.com
> Subject: Re: [Eric] Autocompletion behaviour
>
> Hi Tobias,
>
> Thanks for that, that’s exactly what I needed. It seems as though the
> checkbox works opposite to how it should! Next time I’ll be sure to check
> all the mouse hover over texts.
>
> Christos, thanks for your recommendations on other plugins. I’m still
> familiarizing myself with Eric so didn’t know which functionalities are
> built-in and which are plug-ins.
>
> Alex.
>
> ________________________________
> From: Eric <eric-***@riverbankcomputing.com> on behalf of Tobias Rzepka
> <***@gmail.com> Sent: Saturday, October 20, 2018 4:11:02 AM
> To: ***@riverbankcomputing.com
> Subject: Re: [Eric] Autocompletion behaviour
>
>
> Hello Alex,
>
> you can configure it under Settings -> Preferences -> Editor ->
> Autocompletion -> QScintilla. Keep the first checkbox ("Show single")
> unchecked. If you stay a little while over the text, you'll see a tooltip
> with a good hint about the function of the specific setting.
>
> You should also try out the eric plugins which support autocompletion. I
> prefer jedi, but you can also choose Eric assistant or rope (or even all of
> them together).
>
> Tobias
>
> Alex Gerhardt-Bourke schrieb am 19.10.2018 um 05:46:
> Is there a way to change the behavior of autocompletion so that eric never
> forces a match, but still displays the drop-down suggestion list?
>
> For further clarification, my current experience with autocomplete turned on
> is that if there is only one match, the match will automatically fill, if
> there is more than one match, a drop-down of current matches will display.
> I like the drop down but do not like the automatic fill.
>
>
> I am also wondering if it is possible, and if so how, to get autocomplete
> suggestions from imported modules outside of the python standard library.
>
> Regards,
> Alex.
>
>
>
>
> _______________________________________________
> Eric mailing list
> ***@riverbankcomputing.com<mailto:***@riverbankcomputing.com>
> https://www.riverbankcomputing.com/mailman/listinfo/eric

--
Detlev Offenbach
***@die-offenbachs.de
Detlev Offenbach
2018-10-20 12:58:37 UTC
Permalink
Hi Alex,

did you install API files (for eric Assistant and QScintilla completers) and
selected the options that suit your needs? Maybe (partial) screenshots may
help to illustrate the issue.

Detlev

Am Samstag, 20. Oktober 2018, 14:51:50 CEST schrieb Alex Gerhardt-Bourke:
> Hi Detlev,
>
>
>
> I saw the new config pages for the new plug-ins and have enabled them all,
> but I still don’t get the desired results. Behaviour is still as described
> in my last email.
>
>
>
>
>
> ________________________________
> From: Detlev Offenbach <***@die-offenbachs.de>
> Sent: Saturday, October 20, 2018 6:52:46 PM
> To: ***@riverbankcomputing.com
> Cc: Alex Gerhardt-Bourke; Tobias Rzepka; ***@riverbankcomputing.com
> Subject: Re: [Eric] Autocompletion behaviour
>
> Am Samstag, 20. Oktober 2018, 06:31:32 CEST schrieb Alex Gerhardt-Bourke:
> > Hi All,
> >
> > I have installed the three other Autocompletion tools – eric assistant,
> > jedi, and Rope; none of them seem are currently showing autocompletions
> > for
> > imported modules. For example, I have installed and imported a module
> > called jieba, typing “jieba.” and then pressing ctrl+space shows nothing.
> > Starting to type directly after typing “jieba.” shows matches from other
> > modules, but none from jieba. For example, typing jieba.cut brings many
> > matches from PyQt5 and eric6, but none from jieba. The function
> > cut_for_search from jieba doesn’t show up at all.
> >
> > Is there some configuration I have missed?
>
> After the installation of these plug-ins, you will find additional
> configuration pages for auto completion and call tips. On these pages you
> have to enable the modules you want to want to get support from. You should
> look at "Mouse Click Handlers" as well. With that you can configure a
> navigation feature (e.g. Ctrl+Click on a method usage jumps to the method
> definition).
>
> Detlev
>
> > ________________________________
> > From: Eric <eric-***@riverbankcomputing.com> on behalf of Alex
> > Gerhardt-Bourke <***@hotmail.com> Sent: Saturday, October 20, 2018
> > 11:54:22 AM
> > To: Tobias Rzepka; ***@riverbankcomputing.com
> > Subject: Re: [Eric] Autocompletion behaviour
> >
> > Hi Tobias,
> >
> > Thanks for that, that’s exactly what I needed. It seems as though the
> > checkbox works opposite to how it should! Next time I’ll be sure to check
> > all the mouse hover over texts.
> >
> > Christos, thanks for your recommendations on other plugins. I’m still
> > familiarizing myself with Eric so didn’t know which functionalities are
> > built-in and which are plug-ins.
> >
> > Alex.
> >
> > ________________________________
> > From: Eric <eric-***@riverbankcomputing.com> on behalf of Tobias
> > Rzepka
> > <***@gmail.com> Sent: Saturday, October 20, 2018 4:11:02 AM
> > To: ***@riverbankcomputing.com
> > Subject: Re: [Eric] Autocompletion behaviour
> >
> >
> > Hello Alex,
> >
> > you can configure it under Settings -> Preferences -> Editor ->
> > Autocompletion -> QScintilla. Keep the first checkbox ("Show single")
> > unchecked. If you stay a little while over the text, you'll see a tooltip
> > with a good hint about the function of the specific setting.
> >
> > You should also try out the eric plugins which support autocompletion. I
> > prefer jedi, but you can also choose Eric assistant or rope (or even all
> > of
> > them together).
> >
> > Tobias
> >
> > Alex Gerhardt-Bourke schrieb am 19.10.2018 um 05:46:
> > Is there a way to change the behavior of autocompletion so that eric never
> > forces a match, but still displays the drop-down suggestion list?
> >
> > For further clarification, my current experience with autocomplete turned
> > on is that if there is only one match, the match will automatically fill,
> > if there is more than one match, a drop-down of current matches will
> > display. I like the drop down but do not like the automatic fill.
> >
> >
> > I am also wondering if it is possible, and if so how, to get autocomplete
> > suggestions from imported modules outside of the python standard library.
> >
> > Regards,
> > Alex.
> >
> >
> >
> >
> > _______________________________________________
> > Eric mailing list
> > ***@riverbankcomputing.com<mailto:***@riverbankcomputing.com>
> > https://www.riverbankcomputing.com/mailman/listinfo/eric
>
> --
> Detlev Offenbach
> ***@die-offenbachs.de

--
Detlev Offenbach
***@die-offenbachs.de
Alex Gerhardt-Bourke
2018-10-20 13:07:20 UTC
Permalink
Hi Detlev,



I did install the qscintilla API, but didn’t realise I needed to for eric Assistant. Now checking, there don’t seem to be any new APIs to install. I installed the plugins as user plugins and searching for all .api files in the user plugins install directory doesn’t return any api files for anything other than various python versions, QScintilla2, and PyQt.



Alex.



________________________________
From: Detlev Offenbach <***@die-offenbachs.de>
Sent: Saturday, October 20, 2018 8:58:37 PM
To: Alex Gerhardt-Bourke
Cc: ***@riverbankcomputing.com
Subject: Re: [Eric] Autocompletion behaviour

Hi Alex,

did you install API files (for eric Assistant and QScintilla completers) and
selected the options that suit your needs? Maybe (partial) screenshots may
help to illustrate the issue.

Detlev

Am Samstag, 20. Oktober 2018, 14:51:50 CEST schrieb Alex Gerhardt-Bourke:
> Hi Detlev,
>
>
>
> I saw the new config pages for the new plug-ins and have enabled them all,
> but I still don’t get the desired results. Behaviour is still as described
> in my last email.
>
>
>
>
>
> ________________________________
> From: Detlev Offenbach <***@die-offenbachs.de>
> Sent: Saturday, October 20, 2018 6:52:46 PM
> To: ***@riverbankcomputing.com
> Cc: Alex Gerhardt-Bourke; Tobias Rzepka; ***@riverbankcomputing.com
> Subject: Re: [Eric] Autocompletion behaviour
>
> Am Samstag, 20. Oktober 2018, 06:31:32 CEST schrieb Alex Gerhardt-Bourke:
> > Hi All,
> >
> > I have installed the three other Autocompletion tools – eric assistant,
> > jedi, and Rope; none of them seem are currently showing autocompletions
> > for
> > imported modules. For example, I have installed and imported a module
> > called jieba, typing “jieba.” and then pressing ctrl+space shows nothing.
> > Starting to type directly after typing “jieba.” shows matches from other
> > modules, but none from jieba. For example, typing jieba.cut brings many
> > matches from PyQt5 and eric6, but none from jieba. The function
> > cut_for_search from jieba doesn’t show up at all.
> >
> > Is there some configuration I have missed?
>
> After the installation of these plug-ins, you will find additional
> configuration pages for auto completion and call tips. On these pages you
> have to enable the modules you want to want to get support from. You should
> look at "Mouse Click Handlers" as well. With that you can configure a
> navigation feature (e.g. Ctrl+Click on a method usage jumps to the method
> definition).
>
> Detlev
>
> > ________________________________
> > From: Eric <eric-***@riverbankcomputing.com> on behalf of Alex
> > Gerhardt-Bourke <***@hotmail.com> Sent: Saturday, October 20, 2018
> > 11:54:22 AM
> > To: Tobias Rzepka; ***@riverbankcomputing.com
> > Subject: Re: [Eric] Autocompletion behaviour
> >
> > Hi Tobias,
> >
> > Thanks for that, that’s exactly what I needed. It seems as though the
> > checkbox works opposite to how it should! Next time I’ll be sure to check
> > all the mouse hover over texts.
> >
> > Christos, thanks for your recommendations on other plugins. I’m still
> > familiarizing myself with Eric so didn’t know which functionalities are
> > built-in and which are plug-ins.
> >
> > Alex.
> >
> > ________________________________
> > From: Eric <eric-***@riverbankcomputing.com> on behalf of Tobias
> > Rzepka
> > <***@gmail.com> Sent: Saturday, October 20, 2018 4:11:02 AM
> > To: ***@riverbankcomputing.com
> > Subject: Re: [Eric] Autocompletion behaviour
> >
> >
> > Hello Alex,
> >
> > you can configure it under Settings -> Preferences -> Editor ->
> > Autocompletion -> QScintilla. Keep the first checkbox ("Show single")
> > unchecked. If you stay a little while over the text, you'll see a tooltip
> > with a good hint about the function of the specific setting.
> >
> > You should also try out the eric plugins which support autocompletion. I
> > prefer jedi, but you can also choose Eric assistant or rope (or even all
> > of
> > them together).
> >
> > Tobias
> >
> > Alex Gerhardt-Bourke schrieb am 19.10.2018 um 05:46:
> > Is there a way to change the behavior of autocompletion so that eric never
> > forces a match, but still displays the drop-down suggestion list?
> >
> > For further clarification, my current experience with autocomplete turned
> > on is that if there is only one match, the match will automatically fill,
> > if there is more than one match, a drop-down of current matches will
> > display. I like the drop down but do not like the automatic fill.
> >
> >
> > I am also wondering if it is possible, and if so how, to get autocomplete
> > suggestions from imported modules outside of the python standard library.
> >
> > Regards,
> > Alex.
> >
> >
> >
> >
> > _______________________________________________
> > Eric mailing list
> > ***@riverbankcomputing.com<mailto:***@riverbankcomputing.com>
> > https://www.riverbankcomputing.com/mailman/listinfo/eric
>
> --
> Detlev Offenbach
> ***@die-offenbachs.de

--
Detlev Offenbach
***@die-offenbachs.de
Detlev Offenbach
2018-10-20 14:10:52 UTC
Permalink
Hi,

that seems to be correct. The eric assistant will use the same installed API
files (see APIs config page). Additionally, it will extract APIs from a
project once you open it. The rope plug-in determines completions and calltips
dynamically for the opened project. The jedi plug-in should do this for random
files (Tobias knows better on this).

Detlev

Am Samstag, 20. Oktober 2018, 15:07:20 CEST schrieb Alex Gerhardt-Bourke:
> Hi Detlev,
>
>
>
> I did install the qscintilla API, but didn’t realise I needed to for eric
> Assistant. Now checking, there don’t seem to be any new APIs to install. I
> installed the plugins as user plugins and searching for all .api files in
> the user plugins install directory doesn’t return any api files for
> anything other than various python versions, QScintilla2, and PyQt.
>
>
>
> Alex.
>
>
>
> ________________________________
> From: Detlev Offenbach <***@die-offenbachs.de>
> Sent: Saturday, October 20, 2018 8:58:37 PM
> To: Alex Gerhardt-Bourke
> Cc: ***@riverbankcomputing.com
> Subject: Re: [Eric] Autocompletion behaviour
>
> Hi Alex,
>
> did you install API files (for eric Assistant and QScintilla completers) and
> selected the options that suit your needs? Maybe (partial) screenshots may
> help to illustrate the issue.
>
> Detlev
>
> Am Samstag, 20. Oktober 2018, 14:51:50 CEST schrieb Alex Gerhardt-Bourke:
> > Hi Detlev,
> >
> >
> >
> > I saw the new config pages for the new plug-ins and have enabled them all,
> > but I still don’t get the desired results. Behaviour is still as described
> > in my last email.
> >
> >
> >
> >
> >
> > ________________________________
> > From: Detlev Offenbach <***@die-offenbachs.de>
> > Sent: Saturday, October 20, 2018 6:52:46 PM
> > To: ***@riverbankcomputing.com
> > Cc: Alex Gerhardt-Bourke; Tobias Rzepka; ***@riverbankcomputing.com
> > Subject: Re: [Eric] Autocompletion behaviour
> >
> > Am Samstag, 20. Oktober 2018, 06:31:32 CEST schrieb Alex Gerhardt-Bourke:
> > > Hi All,
> > >
> > > I have installed the three other Autocompletion tools – eric assistant,
> > > jedi, and Rope; none of them seem are currently showing autocompletions
> > > for
> > > imported modules. For example, I have installed and imported a module
> > > called jieba, typing “jieba.” and then pressing ctrl+space shows
> > > nothing.
> > > Starting to type directly after typing “jieba.” shows matches from other
> > > modules, but none from jieba. For example, typing jieba.cut brings many
> > > matches from PyQt5 and eric6, but none from jieba. The function
> > > cut_for_search from jieba doesn’t show up at all.
> > >
> > > Is there some configuration I have missed?
> >
> > After the installation of these plug-ins, you will find additional
> > configuration pages for auto completion and call tips. On these pages you
> > have to enable the modules you want to want to get support from. You
> > should
> > look at "Mouse Click Handlers" as well. With that you can configure a
> > navigation feature (e.g. Ctrl+Click on a method usage jumps to the method
> > definition).
> >
> > Detlev
> >
> > > ________________________________
> > > From: Eric <eric-***@riverbankcomputing.com> on behalf of Alex
> > > Gerhardt-Bourke <***@hotmail.com> Sent: Saturday, October 20, 2018
> > > 11:54:22 AM
> > > To: Tobias Rzepka; ***@riverbankcomputing.com
> > > Subject: Re: [Eric] Autocompletion behaviour
> > >
> > > Hi Tobias,
> > >
> > > Thanks for that, that’s exactly what I needed. It seems as though the
> > > checkbox works opposite to how it should! Next time I’ll be sure to
> > > check
> > > all the mouse hover over texts.
> > >
> > > Christos, thanks for your recommendations on other plugins. I’m still
> > > familiarizing myself with Eric so didn’t know which functionalities are
> > > built-in and which are plug-ins.
> > >
> > > Alex.
> > >
> > > ________________________________
> > > From: Eric <eric-***@riverbankcomputing.com> on behalf of Tobias
> > > Rzepka
> > > <***@gmail.com> Sent: Saturday, October 20, 2018 4:11:02 AM
> > > To: ***@riverbankcomputing.com
> > > Subject: Re: [Eric] Autocompletion behaviour
> > >
> > >
> > > Hello Alex,
> > >
> > > you can configure it under Settings -> Preferences -> Editor ->
> > > Autocompletion -> QScintilla. Keep the first checkbox ("Show single")
> > > unchecked. If you stay a little while over the text, you'll see a
> > > tooltip
> > > with a good hint about the function of the specific setting.
> > >
> > > You should also try out the eric plugins which support autocompletion. I
> > > prefer jedi, but you can also choose Eric assistant or rope (or even all
> > > of
> > > them together).
> > >
> > > Tobias
> > >
> > > Alex Gerhardt-Bourke schrieb am 19.10.2018 um 05:46:
> > > Is there a way to change the behavior of autocompletion so that eric
> > > never
> > > forces a match, but still displays the drop-down suggestion list?
> > >
> > > For further clarification, my current experience with autocomplete
> > > turned
> > > on is that if there is only one match, the match will automatically
> > > fill,
> > > if there is more than one match, a drop-down of current matches will
> > > display. I like the drop down but do not like the automatic fill.
> > >
> > >
> > > I am also wondering if it is possible, and if so how, to get
> > > autocomplete
> > > suggestions from imported modules outside of the python standard
> > > library.
> > >
> > > Regards,
> > > Alex.
> > >
> > >
> > >
> > >
> > > _______________________________________________
> > > Eric mailing list
> > > ***@riverbankcomputing.com<mailto:***@riverbankcomputing.com>
> > > https://www.riverbankcomputing.com/mailman/listinfo/eric
> >
> > --
> > Detlev Offenbach
> > ***@die-offenbachs.de
>
> --
> Detlev Offenbach
> ***@die-offenbachs.de

--
Detlev Offenbach
***@die-offenbachs.de
Alex Gerhardt-Bourke
2018-10-20 14:28:50 UTC
Permalink
[cid:***@01D468C3.ED0E5D40]



[cid:***@01D468C4.0EE2CB90]



Despite having the plug-ins enabled and APIs installed, this is how autocomplete is currently behaving. One screenshot shows that functions from other modules are showing up when they shouldn’t, and as cut_for_search is not present we also see that the functions from the jieba module are not showing up.



This doesn’t seem like desired behavior at all so really appreciate any help getting to the bottom of this.



Alex.



________________________________
From: Detlev Offenbach <***@die-offenbachs.de>
Sent: Saturday, October 20, 2018 10:10:52 PM
To: ***@riverbankcomputing.com
Cc: Alex Gerhardt-Bourke
Subject: Re: [Eric] Autocompletion behaviour

Hi,

that seems to be correct. The eric assistant will use the same installed API
files (see APIs config page). Additionally, it will extract APIs from a
project once you open it. The rope plug-in determines completions and calltips
dynamically for the opened project. The jedi plug-in should do this for random
files (Tobias knows better on this).

Detlev

Am Samstag, 20. Oktober 2018, 15:07:20 CEST schrieb Alex Gerhardt-Bourke:
> Hi Detlev,
>
>
>
> I did install the qscintilla API, but didn’t realise I needed to for eric
> Assistant. Now checking, there don’t seem to be any new APIs to install. I
> installed the plugins as user plugins and searching for all .api files in
> the user plugins install directory doesn’t return any api files for
> anything other than various python versions, QScintilla2, and PyQt.
>
>
>
> Alex.
>
>
>
> ________________________________
> From: Detlev Offenbach <***@die-offenbachs.de>
> Sent: Saturday, October 20, 2018 8:58:37 PM
> To: Alex Gerhardt-Bourke
> Cc: ***@riverbankcomputing.com
> Subject: Re: [Eric] Autocompletion behaviour
>
> Hi Alex,
>
> did you install API files (for eric Assistant and QScintilla completers) and
> selected the options that suit your needs? Maybe (partial) screenshots may
> help to illustrate the issue.
>
> Detlev
>
> Am Samstag, 20. Oktober 2018, 14:51:50 CEST schrieb Alex Gerhardt-Bourke:
> > Hi Detlev,
> >
> >
> >
> > I saw the new config pages for the new plug-ins and have enabled them all,
> > but I still don’t get the desired results. Behaviour is still as described
> > in my last email.
> >
> >
> >
> >
> >
> > ________________________________
> > From: Detlev Offenbach <***@die-offenbachs.de>
> > Sent: Saturday, October 20, 2018 6:52:46 PM
> > To: ***@riverbankcomputing.com
> > Cc: Alex Gerhardt-Bourke; Tobias Rzepka; ***@riverbankcomputing.com
> > Subject: Re: [Eric] Autocompletion behaviour
> >
> > Am Samstag, 20. Oktober 2018, 06:31:32 CEST schrieb Alex Gerhardt-Bourke:
> > > Hi All,
> > >
> > > I have installed the three other Autocompletion tools – eric assistant,
> > > jedi, and Rope; none of them seem are currently showing autocompletions
> > > for
> > > imported modules. For example, I have installed and imported a module
> > > called jieba, typing “jieba.” and then pressing ctrl+space shows
> > > nothing.
> > > Starting to type directly after typing “jieba.” shows matches from other
> > > modules, but none from jieba. For example, typing jieba.cut brings many
> > > matches from PyQt5 and eric6, but none from jieba. The function
> > > cut_for_search from jieba doesn’t show up at all.
> > >
> > > Is there some configuration I have missed?
> >
> > After the installation of these plug-ins, you will find additional
> > configuration pages for auto completion and call tips. On these pages you
> > have to enable the modules you want to want to get support from. You
> > should
> > look at "Mouse Click Handlers" as well. With that you can configure a
> > navigation feature (e.g. Ctrl+Click on a method usage jumps to the method
> > definition).
> >
> > Detlev
> >
> > > ________________________________
> > > From: Eric <eric-***@riverbankcomputing.com> on behalf of Alex
> > > Gerhardt-Bourke <***@hotmail.com> Sent: Saturday, October 20, 2018
> > > 11:54:22 AM
> > > To: Tobias Rzepka; ***@riverbankcomputing.com
> > > Subject: Re: [Eric] Autocompletion behaviour
> > >
> > > Hi Tobias,
> > >
> > > Thanks for that, that’s exactly what I needed. It seems as though the
> > > checkbox works opposite to how it should! Next time I’ll be sure to
> > > check
> > > all the mouse hover over texts.
> > >
> > > Christos, thanks for your recommendations on other plugins. I’m still
> > > familiarizing myself with Eric so didn’t know which functionalities are
> > > built-in and which are plug-ins.
> > >
> > > Alex.
> > >
> > > ________________________________
> > > From: Eric <eric-***@riverbankcomputing.com> on behalf of Tobias
> > > Rzepka
> > > <***@gmail.com> Sent: Saturday, October 20, 2018 4:11:02 AM
> > > To: ***@riverbankcomputing.com
> > > Subject: Re: [Eric] Autocompletion behaviour
> > >
> > >
> > > Hello Alex,
> > >
> > > you can configure it under Settings -> Preferences -> Editor ->
> > > Autocompletion -> QScintilla. Keep the first checkbox ("Show single")
> > > unchecked. If you stay a little while over the text, you'll see a
> > > tooltip
> > > with a good hint about the function of the specific setting.
> > >
> > > You should also try out the eric plugins which support autocompletion. I
> > > prefer jedi, but you can also choose Eric assistant or rope (or even all
> > > of
> > > them together).
> > >
> > > Tobias
> > >
> > > Alex Gerhardt-Bourke schrieb am 19.10.2018 um 05:46:
> > > Is there a way to change the behavior of autocompletion so that eric
> > > never
> > > forces a match, but still displays the drop-down suggestion list?
> > >
> > > For further clarification, my current experience with autocomplete
> > > turned
> > > on is that if there is only one match, the match will automatically
> > > fill,
> > > if there is more than one match, a drop-down of current matches will
> > > display. I like the drop down but do not like the automatic fill.
> > >
> > >
> > > I am also wondering if it is possible, and if so how, to get
> > > autocomplete
> > > suggestions from imported modules outside of the python standard
> > > library.
> > >
> > > Regards,
> > > Alex.
> > >
> > >
> > >
> > >
> > > _______________________________________________
> > > Eric mailing list
> > > ***@riverbankcomputing.com<mailto:***@riverbankcomputing.com>
> > > https://www.riverbankcomputing.com/mailman/listinfo/eric
> >
> > --
> > Detlev Offenbach
> > ***@die-offenbachs.de
>
> --
> Detlev Offenbach
> ***@die-offenbachs.de

--
Detlev Offenbach
***@die-offenbachs.de
Detlev Offenbach
2018-10-20 16:43:08 UTC
Permalink
What is jieba? Where is it installed with respect to the project? It is hard
to guess, what the situation is on your system.

Detlev

Am Samstag, 20. Oktober 2018, 16:28:50 CEST schrieb Alex Gerhardt-Bourke:
> [cid:***@01D468C3.ED0E5D40]
>
>
>
> [cid:***@01D468C4.0EE2CB90]
>
>
>
> Despite having the plug-ins enabled and APIs installed, this is how
> autocomplete is currently behaving. One screenshot shows that functions
> from other modules are showing up when they shouldn’t, and as
> cut_for_search is not present we also see that the functions from the jieba
> module are not showing up.
>
>
>
> This doesn’t seem like desired behavior at all so really appreciate any help
> getting to the bottom of this.
>
>
>
> Alex.
>
>
>
> ________________________________
> From: Detlev Offenbach <***@die-offenbachs.de>
> Sent: Saturday, October 20, 2018 10:10:52 PM
> To: ***@riverbankcomputing.com
> Cc: Alex Gerhardt-Bourke
> Subject: Re: [Eric] Autocompletion behaviour
>
> Hi,
>
> that seems to be correct. The eric assistant will use the same installed API
> files (see APIs config page). Additionally, it will extract APIs from a
> project once you open it. The rope plug-in determines completions and
> calltips dynamically for the opened project. The jedi plug-in should do
> this for random files (Tobias knows better on this).
>
> Detlev
>
> Am Samstag, 20. Oktober 2018, 15:07:20 CEST schrieb Alex Gerhardt-Bourke:
> > Hi Detlev,
> >
> >
> >
> > I did install the qscintilla API, but didn’t realise I needed to for eric
> > Assistant. Now checking, there don’t seem to be any new APIs to install. I
> > installed the plugins as user plugins and searching for all .api files in
> > the user plugins install directory doesn’t return any api files for
> > anything other than various python versions, QScintilla2, and PyQt.
> >
> >
> >
> > Alex.
> >
> >
> >
> > ________________________________
> > From: Detlev Offenbach <***@die-offenbachs.de>
> > Sent: Saturday, October 20, 2018 8:58:37 PM
> > To: Alex Gerhardt-Bourke
> > Cc: ***@riverbankcomputing.com
> > Subject: Re: [Eric] Autocompletion behaviour
> >
> > Hi Alex,
> >
> > did you install API files (for eric Assistant and QScintilla completers)
> > and selected the options that suit your needs? Maybe (partial)
> > screenshots may help to illustrate the issue.
> >
> > Detlev
> >
> > Am Samstag, 20. Oktober 2018, 14:51:50 CEST schrieb Alex Gerhardt-Bourke:
> > > Hi Detlev,
> > >
> > >
> > >
> > > I saw the new config pages for the new plug-ins and have enabled them
> > > all,
> > > but I still don’t get the desired results. Behaviour is still as
> > > described
> > > in my last email.
> > >
> > >
> > >
> > >
> > >
> > > ________________________________
> > > From: Detlev Offenbach <***@die-offenbachs.de>
> > > Sent: Saturday, October 20, 2018 6:52:46 PM
> > > To: ***@riverbankcomputing.com
> > > Cc: Alex Gerhardt-Bourke; Tobias Rzepka; ***@riverbankcomputing.com
> > > Subject: Re: [Eric] Autocompletion behaviour
> > >
> > > Am Samstag, 20. Oktober 2018, 06:31:32 CEST schrieb Alex Gerhardt-
Bourke:
> > > > Hi All,
> > > >
> > > > I have installed the three other Autocompletion tools – eric
> > > > assistant,
> > > > jedi, and Rope; none of them seem are currently showing
> > > > autocompletions
> > > > for
> > > > imported modules. For example, I have installed and imported a module
> > > > called jieba, typing “jieba.” and then pressing ctrl+space shows
> > > > nothing.
> > > > Starting to type directly after typing “jieba.” shows matches from
> > > > other
> > > > modules, but none from jieba. For example, typing jieba.cut brings
> > > > many
> > > > matches from PyQt5 and eric6, but none from jieba. The function
> > > > cut_for_search from jieba doesn’t show up at all.
> > > >
> > > > Is there some configuration I have missed?
> > >
> > > After the installation of these plug-ins, you will find additional
> > > configuration pages for auto completion and call tips. On these pages
> > > you
> > > have to enable the modules you want to want to get support from. You
> > > should
> > > look at "Mouse Click Handlers" as well. With that you can configure a
> > > navigation feature (e.g. Ctrl+Click on a method usage jumps to the
> > > method
> > > definition).
> > >
> > > Detlev
> > >
> > > > ________________________________
> > > > From: Eric <eric-***@riverbankcomputing.com> on behalf of Alex
> > > > Gerhardt-Bourke <***@hotmail.com> Sent: Saturday, October 20,
> > > > 2018
> > > > 11:54:22 AM
> > > > To: Tobias Rzepka; ***@riverbankcomputing.com
> > > > Subject: Re: [Eric] Autocompletion behaviour
> > > >
> > > > Hi Tobias,
> > > >
> > > > Thanks for that, that’s exactly what I needed. It seems as though the
> > > > checkbox works opposite to how it should! Next time I’ll be sure to
> > > > check
> > > > all the mouse hover over texts.
> > > >
> > > > Christos, thanks for your recommendations on other plugins. I’m still
> > > > familiarizing myself with Eric so didn’t know which functionalities
> > > > are
> > > > built-in and which are plug-ins.
> > > >
> > > > Alex.
> > > >
> > > > ________________________________
> > > > From: Eric <eric-***@riverbankcomputing.com> on behalf of Tobias
> > > > Rzepka
> > > > <***@gmail.com> Sent: Saturday, October 20, 2018 4:11:02 AM
> > > > To: ***@riverbankcomputing.com
> > > > Subject: Re: [Eric] Autocompletion behaviour
> > > >
> > > >
> > > > Hello Alex,
> > > >
> > > > you can configure it under Settings -> Preferences -> Editor ->
> > > > Autocompletion -> QScintilla. Keep the first checkbox ("Show single")
> > > > unchecked. If you stay a little while over the text, you'll see a
> > > > tooltip
> > > > with a good hint about the function of the specific setting.
> > > >
> > > > You should also try out the eric plugins which support autocompletion.
> > > > I
> > > > prefer jedi, but you can also choose Eric assistant or rope (or even
> > > > all
> > > > of
> > > > them together).
> > > >
> > > > Tobias
> > > >
> > > > Alex Gerhardt-Bourke schrieb am 19.10.2018 um 05:46:
> > > > Is there a way to change the behavior of autocompletion so that eric
> > > > never
> > > > forces a match, but still displays the drop-down suggestion list?
> > > >
> > > > For further clarification, my current experience with autocomplete
> > > > turned
> > > > on is that if there is only one match, the match will automatically
> > > > fill,
> > > > if there is more than one match, a drop-down of current matches will
> > > > display. I like the drop down but do not like the automatic fill.
> > > >
> > > >
> > > > I am also wondering if it is possible, and if so how, to get
> > > > autocomplete
> > > > suggestions from imported modules outside of the python standard
> > > > library.
> > > >
> > > > Regards,
> > > > Alex.
> > > >
> > > >
> > > >
> > > >
> > > > _______________________________________________
> > > > Eric mailing list
> > > > ***@riverbankcomputing.com<mailto:***@riverbankcomputing.com>
> > > > https://www.riverbankcomputing.com/mailman/listinfo/eric
> > >
> > > --
> > > Detlev Offenbach
> > > ***@die-offenbachs.de
> >
> > --
> > Detlev Offenbach
> > ***@die-offenbachs.de
>
> --
> Detlev Offenbach
> ***@die-offenbachs.de

--
Detlev Offenbach
***@die-offenbachs.de
Christos Sevastiadis
2018-10-20 18:44:18 UTC
Permalink
Alex,

In my installation, with multiple virtual environments (conda
environments), I set Eric and Rope in both Autocompletion
(Settings.Preferences.Editor.Autocompletion) and Calltips
(Settings.Preferences.Editor.Calltips), and Jedi in "Documentation Viewer"
(Settings.Preferences.Editor."Documentation Viewer"). Also, I have
activated the PluginRefactoringRope in Plugins."Plugin Infos...". The
Eric's behavior is as intended, showing the correct results for any module
I use, even my Project's modules.

Christos
Alex Gerhardt-Bourke
2018-10-21 01:57:53 UTC
Permalink
Hi Detlev,



Jieba is a module for parsing Chinese sentences, its functionality isn’t really important, more so using it as an example to show that autocompletion plugins aren’t searching imported modules.

Here’s another example using the os module

[cid:***@01D46923.A559E1D0]

While the curdir functions from os are showing, many functions from other modules that do not exist in os are showing up.



If I use an installed module outside of the standard python library, such as jieba, the jieba attributes don’t show at all.

My current set up is I have eric6 installed in its own conda environment, and jieba installed in another conda environment. Note that I can run my project in eric6 using jieba, so eric knows where to find the jieba module.



Christos – I tried to mimic your setup, infact my configurations were already as you described. Do you get the same output as I do in the picture attached?



Alex.



________________________________
From: Detlev Offenbach <***@die-offenbachs.de>
Sent: Sunday, October 21, 2018 12:43:08 AM
To: ***@riverbankcomputing.com
Cc: Alex Gerhardt-Bourke
Subject: Re: [Eric] Autocompletion behaviour

What is jieba? Where is it installed with respect to the project? It is hard
to guess, what the situation is on your system.

Detlev

Am Samstag, 20. Oktober 2018, 16:28:50 CEST schrieb Alex Gerhardt-Bourke:
> [cid:***@01D468C3.ED0E5D40]
>
>
>
> [cid:***@01D468C4.0EE2CB90]
>
>
>
> Despite having the plug-ins enabled and APIs installed, this is how
> autocomplete is currently behaving. One screenshot shows that functions
> from other modules are showing up when they shouldn’t, and as
> cut_for_search is not present we also see that the functions from the jieba
> module are not showing up.
>
>
>
> This doesn’t seem like desired behavior at all so really appreciate any help
> getting to the bottom of this.
>
>
>
> Alex.
>
>
>
> ________________________________
> From: Detlev Offenbach <***@die-offenbachs.de>
> Sent: Saturday, October 20, 2018 10:10:52 PM
> To: ***@riverbankcomputing.com
> Cc: Alex Gerhardt-Bourke
> Subject: Re: [Eric] Autocompletion behaviour
>
> Hi,
>
> that seems to be correct. The eric assistant will use the same installed API
> files (see APIs config page). Additionally, it will extract APIs from a
> project once you open it. The rope plug-in determines completions and
> calltips dynamically for the opened project. The jedi plug-in should do
> this for random files (Tobias knows better on this).
>
> Detlev
>
> Am Samstag, 20. Oktober 2018, 15:07:20 CEST schrieb Alex Gerhardt-Bourke:
> > Hi Detlev,
> >
> >
> >
> > I did install the qscintilla API, but didn’t realise I needed to for eric
> > Assistant. Now checking, there don’t seem to be any new APIs to install. I
> > installed the plugins as user plugins and searching for all .api files in
> > the user plugins install directory doesn’t return any api files for
> > anything other than various python versions, QScintilla2, and PyQt.
> >
> >
> >
> > Alex.
> >
> >
> >
> > ________________________________
> > From: Detlev Offenbach <***@die-offenbachs.de>
> > Sent: Saturday, October 20, 2018 8:58:37 PM
> > To: Alex Gerhardt-Bourke
> > Cc: ***@riverbankcomputing.com
> > Subject: Re: [Eric] Autocompletion behaviour
> >
> > Hi Alex,
> >
> > did you install API files (for eric Assistant and QScintilla completers)
> > and selected the options that suit your needs? Maybe (partial)
> > screenshots may help to illustrate the issue.
> >
> > Detlev
> >
> > Am Samstag, 20. Oktober 2018, 14:51:50 CEST schrieb Alex Gerhardt-Bourke:
> > > Hi Detlev,
> > >
> > >
> > >
> > > I saw the new config pages for the new plug-ins and have enabled them
> > > all,
> > > but I still don’t get the desired results. Behaviour is still as
> > > described
> > > in my last email.
> > >
> > >
> > >
> > >
> > >
> > > ________________________________
> > > From: Detlev Offenbach <***@die-offenbachs.de>
> > > Sent: Saturday, October 20, 2018 6:52:46 PM
> > > To: ***@riverbankcomputing.com
> > > Cc: Alex Gerhardt-Bourke; Tobias Rzepka; ***@riverbankcomputing.com
> > > Subject: Re: [Eric] Autocompletion behaviour
> > >
> > > Am Samstag, 20. Oktober 2018, 06:31:32 CEST schrieb Alex Gerhardt-
Bourke:
> > > > Hi All,
> > > >
> > > > I have installed the three other Autocompletion tools – eric
> > > > assistant,
> > > > jedi, and Rope; none of them seem are currently showing
> > > > autocompletions
> > > > for
> > > > imported modules. For example, I have installed and imported a module
> > > > called jieba, typing “jieba.” and then pressing ctrl+space shows
> > > > nothing.
> > > > Starting to type directly after typing “jieba.” shows matches from
> > > > other
> > > > modules, but none from jieba. For example, typing jieba.cut brings
> > > > many
> > > > matches from PyQt5 and eric6, but none from jieba. The function
> > > > cut_for_search from jieba doesn’t show up at all.
> > > >
> > > > Is there some configuration I have missed?
> > >
> > > After the installation of these plug-ins, you will find additional
> > > configuration pages for auto completion and call tips. On these pages
> > > you
> > > have to enable the modules you want to want to get support from. You
> > > should
> > > look at "Mouse Click Handlers" as well. With that you can configure a
> > > navigation feature (e.g. Ctrl+Click on a method usage jumps to the
> > > method
> > > definition).
> > >
> > > Detlev
> > >
> > > > ________________________________
> > > > From: Eric <eric-***@riverbankcomputing.com> on behalf of Alex
> > > > Gerhardt-Bourke <***@hotmail.com> Sent: Saturday, October 20,
> > > > 2018
> > > > 11:54:22 AM
> > > > To: Tobias Rzepka; ***@riverbankcomputing.com
> > > > Subject: Re: [Eric] Autocompletion behaviour
> > > >
> > > > Hi Tobias,
> > > >
> > > > Thanks for that, that’s exactly what I needed. It seems as though the
> > > > checkbox works opposite to how it should! Next time I’ll be sure to
> > > > check
> > > > all the mouse hover over texts.
> > > >
> > > > Christos, thanks for your recommendations on other plugins. I’m still
> > > > familiarizing myself with Eric so didn’t know which functionalities
> > > > are
> > > > built-in and which are plug-ins.
> > > >
> > > > Alex.
> > > >
> > > > ________________________________
> > > > From: Eric <eric-***@riverbankcomputing.com> on behalf of Tobias
> > > > Rzepka
> > > > <***@gmail.com> Sent: Saturday, October 20, 2018 4:11:02 AM
> > > > To: ***@riverbankcomputing.com
> > > > Subject: Re: [Eric] Autocompletion behaviour
> > > >
> > > >
> > > > Hello Alex,
> > > >
> > > > you can configure it under Settings -> Preferences -> Editor ->
> > > > Autocompletion -> QScintilla. Keep the first checkbox ("Show single")
> > > > unchecked. If you stay a little while over the text, you'll see a
> > > > tooltip
> > > > with a good hint about the function of the specific setting.
> > > >
> > > > You should also try out the eric plugins which support autocompletion.
> > > > I
> > > > prefer jedi, but you can also choose Eric assistant or rope (or even
> > > > all
> > > > of
> > > > them together).
> > > >
> > > > Tobias
> > > >
> > > > Alex Gerhardt-Bourke schrieb am 19.10.2018 um 05:46:
> > > > Is there a way to change the behavior of autocompletion so that eric
> > > > never
> > > > forces a match, but still displays the drop-down suggestion list?
> > > >
> > > > For further clarification, my current experience with autocomplete
> > > > turned
> > > > on is that if there is only one match, the match will automatically
> > > > fill,
> > > > if there is more than one match, a drop-down of current matches will
> > > > display. I like the drop down but do not like the automatic fill.
> > > >
> > > >
> > > > I am also wondering if it is possible, and if so how, to get
> > > > autocomplete
> > > > suggestions from imported modules outside of the python standard
> > > > library.
> > > >
> > > > Regards,
> > > > Alex.
> > > >
> > > >
> > > >
> > > >
> > > > _______________________________________________
> > > > Eric mailing list
> > > > ***@riverbankcomputing.com<mailto:***@riverbankcomputing.com>
> > > > https://www.riverbankcomputing.com/mailman/listinfo/eric
> > >
> > > --
> > > Detlev Offenbach
> > > ***@die-offenbachs.de
> >
> > --
> > Detlev Offenbach
> > ***@die-offenbachs.de
>
> --
> Detlev Offenbach
> ***@die-offenbachs.de

--
Detlev Offenbach
***@die-offenbachs.de
Christos Sevastiadis
2018-10-21 20:05:49 UTC
Permalink
Alex,

I installed the jieba module either to test it. Anyway, with any imported
module in my current Project, typing the name of the module or typing the
name of an imported object from a module, installed in the environment or
saved in my project's path, the Autocompletion lists the correct results.
Let say, typing "jieba." lists jieba objects. If I type something that it
is not included in the objects attributes then the Autocompletion list is
populated with matches from other imported objects. Sometimes it needs some
time the modules to be read. When you are changing the settings in
preferences I suggest you to close and open again your project. Also, I
suppose that you selected something in the "Project Type" in the "Project
Properties". In my case I have selected "PyQt5 GUI", for which I selected
the Python-3.7, Python-3.6 and PyQt5 APIs from "Add from installed APIS" in
Settings.Preferences.Editor.APIs, for Python3 Language and "PyQT5 GUI"
"Project Type". In my Python setup I use the base Conda environment for
development and a created one for my Eric installation. I haven't tried to
use another Conda environment, different than the base, for development.

Each Autocompletion list entry has an icon on the beginning - boxes in blue
and yellow, a notepad with a pen etc. Unfortunately I don't know how to
interpret them exactly but only suggestions I can do.

Christos
Alex Gerhardt-Bourke
2018-10-22 01:55:45 UTC
Permalink
Thankyou for trying that out for me. After reading what you wrote, I tried installing the module into various conda environments.
Installing jieba into the base environment did not help the plugin at all, but installing it into my eric6 environment did help the plugin find the module objects.
This is very irritating – I tend to use environments pretty extensively, having a new environment for every project. I will play around with more settings and see if I can get the plugins working with conda environments and report back on any findings.

Thanks again for your help.

________________________________
From: Eric <eric-***@riverbankcomputing.com> on behalf of Christos Sevastiadis <***@auth.gr>
Sent: Monday, October 22, 2018 4:05:49 AM
To: ***@riverbankcomputing.com
Subject: Re: [Eric] Autocompletion behaviour

Alex,

I installed the jieba module either to test it. Anyway, with any imported module in my current Project, typing the name of the module or typing the name of an imported object from a module, installed in the environment or saved in my project's path, the Autocompletion lists the correct results. Let say, typing "jieba." lists jieba objects. If I type something that it is not included in the objects attributes then the Autocompletion list is populated with matches from other imported objects. Sometimes it needs some time the modules to be read. When you are changing the settings in preferences I suggest you to close and open again your project. Also, I suppose that you selected something in the "Project Type" in the "Project Properties". In my case I have selected "PyQt5 GUI", for which I selected the Python-3.7, Python-3.6 and PyQt5 APIs from "Add from installed APIS" in Settings.Preferences.Editor.APIs, for Python3 Language and "PyQT5 GUI" "Project Type". In my Python setup I use the base Conda environment for development and a created one for my Eric installation. I haven't tried to use another Conda environment, different than the base, for development.

Each Autocompletion list entry has an icon on the beginning - boxes in blue and yellow, a notepad with a pen etc. Unfortunately I don't know how to interpret them exactly but only suggestions I can do.

Christos
Alex Gerhardt-Bourke
2018-10-22 04:54:58 UTC
Permalink
I think I am getting to the bottom of this. It seems that autocomplete only works properly for the modules installed in the conda environment pointed to under Preferences->Debugger->Python3->Python 3 Virtual Environment.
Choosing the debugger for the project under Project->Debugger->Debugger Properties… is not sufficient, this is what I had done earlier and not gotten any results.

Detlev, perhaps in its current state, plug-ins do not check to see if an alternative debugger is set in the project settings?

Alex.
________________________________
From: Eric <eric-***@riverbankcomputing.com> on behalf of Alex Gerhardt-Bourke <***@hotmail.com>
Sent: Monday, October 22, 2018 9:55:45 AM
To: Christos Sevastiadis; ***@riverbankcomputing.com
Subject: Re: [Eric] Autocompletion behaviour

Thankyou for trying that out for me. After reading what you wrote, I tried installing the module into various conda environments.
Installing jieba into the base environment did not help the plugin at all, but installing it into my eric6 environment did help the plugin find the module objects.
This is very irritating – I tend to use environments pretty extensively, having a new environment for every project. I will play around with more settings and see if I can get the plugins working with conda environments and report back on any findings.

Thanks again for your help.

________________________________
From: Eric <eric-***@riverbankcomputing.com> on behalf of Christos Sevastiadis <***@auth.gr>
Sent: Monday, October 22, 2018 4:05:49 AM
To: ***@riverbankcomputing.com
Subject: Re: [Eric] Autocompletion behaviour

Alex,

I installed the jieba module either to test it. Anyway, with any imported module in my current Project, typing the name of the module or typing the name of an imported object from a module, installed in the environment or saved in my project's path, the Autocompletion lists the correct results. Let say, typing "jieba." lists jieba objects. If I type something that it is not included in the objects attributes then the Autocompletion list is populated with matches from other imported objects. Sometimes it needs some time the modules to be read. When you are changing the settings in preferences I suggest you to close and open again your project. Also, I suppose that you selected something in the "Project Type" in the "Project Properties". In my case I have selected "PyQt5 GUI", for which I selected the Python-3.7, Python-3.6 and PyQt5 APIs from "Add from installed APIS" in Settings.Preferences.Editor.APIs, for Python3 Language and "PyQT5 GUI" "Project Type". In my Python setup I use the base Conda environment for development and a created one for my Eric installation. I haven't tried to use another Conda environment, different than the base, for development.

Each Autocompletion list entry has an icon on the beginning - boxes in blue and yellow, a notepad with a pen etc. Unfortunately I don't know how to interpret them exactly but only suggestions I can do.

Christos
Christos Sevastiadis
2018-10-22 09:57:09 UTC
Permalink
Alex and Detlev,

It seems that the "Virtual Environment" option should affect not only the
Start/Debug action but the Editor's code support functions, such as
Autocompletion, Calltips and "Code Documentation", either. For the "Code
Documentation" I use the Jedi provider instead of Rope, because Rope fails
to show information in many cases of my imported modules. Probably this
problem is also connected with the different virtual environments.

Regards
Christos

Christos
Alex Gerhardt-Bourke
2018-10-26 03:40:19 UTC
Permalink
Apologies to harp on this point, but in my opinion autocompletion is one of the vital things for a functional IDE. From a number of reviews I’ve read, the fact that autocomplete doesn’t work out of the box or with some easy configuration is the reason a lot of people put eric down not long after picking it up, without giving it a fair chance. So I would like to demonstrate how eric6 currently functions for me, and what I actually expect.

My setup:
I have a conda virtual-environment called eric6. For the sake of simplicity everything following will be done under this environment. I run eric6 under this environment and run help->Show Versions:
[cid:***@01D46D1B.C30B0190]

I have the following plugins installed for autocompletion:
Eric Assistant
Jedi
Rope
I also have the QScintilla autocompletion enabled.

Under Preferences->Editor->APIs I have the “Compile APIs automatically” setting enabled, and under Python3 PyQt5 GUI project type I have the Python3.7, QScintilla2, and PyQt5 apis listed. All autocompletion options are enabled.

Under Preferences->Editor->Documentation Viewer I have the documentation viewer enabled with show documentation upon ‘(‘ set.

I now create a new project called “checkEricAutocompletion”. Progr. Language python3, project type PyQt5 GUI.
Present in the project is an __init__.py file. I will use this file to check autocompletion behavior.

[cid:***@01D46D1D.74701A50]
This behavior is perfect – the autocomplete tool (I don’t know which one) is getting results from the QtCore module.
I import QDate.
[cid:***@01D46D1D.C3BCB370]
Again the results are good, I am seeing options that exist within QDate – I don’t know why I am seeing two of each though, I assume it is due to having multiple autocomplete plugins enabled. This list filters appropriately:
[cid:***@01D46D1E.08BDF420]

Here is where things get bad. Tabbing to complete currentDate gives me the following:
[cid:***@01D46D20.B2FE7A70]
The calltip is correct, but no documentation is available. The code info provider is set to Rope, changing to jedi gives the same non-result.

We can see from the calltip that QDate.currentDate() returns a QDate object, so the “now” variable should have many methods available to it. None of these are displayed when pressing ctrl+space.
[cid:***@01D46D1E.B6C0EB90]

To make matters worse, methods that do *not* exist for QDate types show as autocompletion options when typing some letters, eg:
[cid:***@01D46D1E.EA6326C0]
The desired behavior here is that the autocomplete tool knows what type of object the “now” variable is and only shows methods that exist for that type. Maybe this is harder than it sounds due to the dynamic typing nature of python? Here is another example when looking at a method that *does* belong to QDate types:
[cid:***@01D46D1F.5B65D0C0]
The problem with showing so many options here is, suppose I ignore this box and continue to code, I will now be shown this calltip: [cid:***@01D46D20.B2FE7A70]

If instead I just tab without selecting the right option, I will be shown the wrong calltip
[cid:***@01D46D1F.98C7ED40]

In reality, I should be shown this:
[cid:***@01D46D20.B2FE7A70]

Is all of this behavior what other users experience when using eric, or is there something wrong with my setup? If no, how can this be improved?

Regards,
Alex.


From: Christos Sevastiadis<mailto:***@auth.gr>
Sent: Monday, October 22, 2018 5:57 PM
To: ***@riverbankcomputing.com<mailto:***@riverbankcomputing.com>
Subject: Re: [Eric] Autocompletion behaviour

Alex and Detlev,

It seems that the "Virtual Environment" option should affect not only the Start/Debug action but the Editor's code support functions, such as Autocompletion, Calltips and "Code Documentation", either. For the "Code Documentation" I use the Jedi provider instead of Rope, because Rope fails to show information in many cases of my imported modules. Probably this problem is also connected with the different virtual environments.

Regards
Christos

Christos
Detlev Offenbach
2018-10-26 17:18:47 UTC
Permalink
Hi,

here are some explanations, that might shed some more light on the topic.

1. Eric Assistant
It uses the very same API files as the completer included in QScintilla (the
editor widget used by eric). In addition to this it provides completions for
files being part of the current project. All of these work statically (i.e. by
matching text; nothing is executed).

2. Jedi, Rope
This completer plug-ins are using external libraries to do the job. Therefore
eric can only show those completions determined by the external libraries. If
they don't report anything, eric cannot be blamed (You shoot the messanger!).

3. Some IDEs try to execute the script of the current file in order to
determine completions via the inspect module. I've seen this work in simple,
standard cases but fail quite often (= regularly) with PyQt scripts. Therefore
I decided to not follow this approach. However, if somebody wants to
contribute such a completer, I may reconsider my decision.

4. Duplicate entries are caused by plug-ins reporting the same completions in
different ways as seen in the screenshot. I didn't find a way to sort the list
without taking the risk to loose information.

5. "No further documentation available" is caused by rope or jedi not being
able to retrieve code documentation from the sources or imported packages or
modules. This happens quite often with modules implement in C/C++ and wrapped
for Python. The picture shows such a case. The shown calltip comes from a
static API file and is presented by the eric Assistant plug-in.

6. Not being able to be completed is caused by none of the completers being
able to determine the type of "now". This is due to the fact, that no code is
executed (see above).

7. Display of too many calltips is caused by the providers not knowing about
the context (no completion was selected).

8. Wrong calltip is a consequence of not having selected the correct
completion. eric remembers the context of a completion in order to select the
correct calltip thereafter.

I am fully aware, that some of this behaviour is not the expected one and are
open for contribution of improved code.

Detlev

Am Freitag, 26. Oktober 2018, 05:40:19 CEST schrieb Alex Gerhardt-Bourke:
> Apologies to harp on this point, but in my opinion autocompletion is one of
> the vital things for a functional IDE. From a number of reviews I’ve read,
> the fact that autocomplete doesn’t work out of the box or with some easy
> configuration is the reason a lot of people put eric down not long after
> picking it up, without giving it a fair chance. So I would like to
> demonstrate how eric6 currently functions for me, and what I actually
> expect.
>
> My setup:
> I have a conda virtual-environment called eric6. For the sake of simplicity
> everything following will be done under this environment. I run eric6 under
> this environment and run help->Show Versions:
> [cid:***@01D46D1B.C30B0190]
>
> I have the following plugins installed for autocompletion:
> Eric Assistant
> Jedi
> Rope
> I also have the QScintilla autocompletion enabled.
>
> Under Preferences->Editor->APIs I have the “Compile APIs automatically”
> setting enabled, and under Python3 PyQt5 GUI project type I have the
> Python3.7, QScintilla2, and PyQt5 apis listed. All autocompletion options
> are enabled.
>
> Under Preferences->Editor->Documentation Viewer I have the documentation
> viewer enabled with show documentation upon ‘(‘ set.
>
> I now create a new project called “checkEricAutocompletion”. Progr. Language
> python3, project type PyQt5 GUI. Present in the project is an __init__.py
> file. I will use this file to check autocompletion behavior.
>
> [cid:***@01D46D1D.74701A50]
> This behavior is perfect – the autocomplete tool (I don’t know which one) is
> getting results from the QtCore module. I import QDate.
> [cid:***@01D46D1D.C3BCB370]
> Again the results are good, I am seeing options that exist within QDate – I
> don’t know why I am seeing two of each though, I assume it is due to having
> multiple autocomplete plugins enabled. This list filters appropriately:
> [cid:***@01D46D1E.08BDF420]
>
> Here is where things get bad. Tabbing to complete currentDate gives me the
> following: [cid:***@01D46D20.B2FE7A70]
> The calltip is correct, but no documentation is available. The code info
> provider is set to Rope, changing to jedi gives the same non-result.
>
> We can see from the calltip that QDate.currentDate() returns a QDate object,
> so the “now” variable should have many methods available to it. None of
> these are displayed when pressing ctrl+space.
> [cid:***@01D46D1E.B6C0EB90]
>
> To make matters worse, methods that do *not* exist for QDate types show as
> autocompletion options when typing some letters, eg:
> [cid:***@01D46D1E.EA6326C0]
> The desired behavior here is that the autocomplete tool knows what type of
> object the “now” variable is and only shows methods that exist for that
> type. Maybe this is harder than it sounds due to the dynamic typing nature
> of python? Here is another example when looking at a method that *does*
> belong to QDate types: [cid:***@01D46D1F.5B65D0C0]
> The problem with showing so many options here is, suppose I ignore this box
> and continue to code, I will now be shown this calltip:
> [cid:***@01D46D20.B2FE7A70]
>
> If instead I just tab without selecting the right option, I will be shown
> the wrong calltip [cid:***@01D46D1F.98C7ED40]
>
> In reality, I should be shown this:
> [cid:***@01D46D20.B2FE7A70]
>
> Is all of this behavior what other users experience when using eric, or is
> there something wrong with my setup? If no, how can this be improved?
>
> Regards,
> Alex.
>
>
> From: Christos Sevastiadis<mailto:***@auth.gr>
> Sent: Monday, October 22, 2018 5:57 PM
> To: ***@riverbankcomputing.com<mailto:***@riverbankcomputing.com>
> Subject: Re: [Eric] Autocompletion behaviour
>
> Alex and Detlev,
>
> It seems that the "Virtual Environment" option should affect not only the
> Start/Debug action but the Editor's code support functions, such as
> Autocompletion, Calltips and "Code Documentation", either. For the "Code
> Documentation" I use the Jedi provider instead of Rope, because Rope fails
> to show information in many cases of my imported modules. Probably this
> problem is also connected with the different virtual environments.
>
> Regards
> Christos
>
> Christos

--
Detlev Offenbach
***@die-offenbachs.de
Detlev Offenbach
2018-10-28 11:35:46 UTC
Permalink
Hi,

I improved the rope based completer to respect the virtual environment of a
project when determining completions and calltips.

Detlev

Am Montag, 22. Oktober 2018, 11:57:09 CET schrieb Christos Sevastiadis:
> Alex and Detlev,
>
> It seems that the "Virtual Environment" option should affect not only the
> Start/Debug action but the Editor's code support functions, such as
> Autocompletion, Calltips and "Code Documentation", either. For the "Code
> Documentation" I use the Jedi provider instead of Rope, because Rope fails
> to show information in many cases of my imported modules. Probably this
> problem is also connected with the different virtual environments.
>
> Regards
> Christos
>
> Christos

--
Detlev Offenbach
***@die-offenbachs.de
Christos Sevastiadis
2018-10-28 19:47:30 UTC
Permalink
Hi,

I had a problem with my Conda environments last time. I couldn't even
import some specific modules with external DLLs, such as NumPy and PyAudio.
I discovered that a lot of stuff in Conda environments are not installed in
the standard Python folders. The Conda's activate command add specific
folders in the beginning of the PATH environment variable, and in this way
all of Conda installed modules are working fine. My approach of installing
Eric in its private Conda environment, with the projects executing in
different ones, generates problems with the execution, and maybe with
Autocompletion, Calltips and Code Documentation. I execute my project in
the base Conda environment. So executing "Anaconda Prompt" to activate the
base Conda environment, then in the prompt executing "activate eric6", to
activate the Eric's Conda environment, and then executing in the prompt
Scripts\eric6, to run Eric IDE, shows the best behavior. In another
discussion with Detlev I suggested some other ideas. I don't know how the
problem can be solved in the end.

Regards
Christos
Alex Gerhardt-Bourke
2018-10-29 02:34:55 UTC
Permalink
Hi All,

Christos:
The additional directories conda adds to the PATH variable can be included in eric6 on execution under the “environment” input under the project debugger properties. Doing this allows you to use an eric6 conda environment for running eric, and project environments for your individual projects – even if they have external DLLs.


In terms of Autocompletion, calltips, and code documentation – it does seem that setting the debugger in preferences rather than in your project will let these plugins “see” your conda environment modules – although Detlev has just recently updated rope to respect the project debugger. As Detlev outlined in response to my last email, many of the issues I’m facing are not due to my setup but are actually either by design or by lack of functionality from the autocompletion tools themselves. I have been researching this further and examining functionality for PyQt with other tools, particularly VSCode, and it seems most of the functionality is similar if not the same to that of eric. It seems the issue, as Detlev pointed out, is the lack of support autocompletion tools have for modules with underlying C libraries. VSCode allegedly has support for typeshed, another tool I am not particularly familiar with, but I have been playing with this trying to get the desired outcome for autocompletion of PyQt variables under VSCode; unfortunately I have not had any luck here either.

Scouring the internet for work done in this area brings up other people facing related or similar problems, see the following:
https://stackoverflow.com/questions/43093400/code-completion-is-not-working-for-opencv-and-python
https://stackoverflow.com/questions/47900257/autocomplete-for-automation-objects-in-vs-code-and-python
https://stackoverflow.com/questions/50065211/pycharm-and-pyqt5-custom-stubs
https://stackoverflow.com/questions/50298745/vscode-intellisense-too-slow-working-with-pyqt4


Alex.


________________________________
From: Eric <eric-***@riverbankcomputing.com> on behalf of Christos Sevastiadis <***@auth.gr>
Sent: Monday, October 29, 2018 3:47:30 AM
To: ***@riverbankcomputing.com
Subject: Re: [Eric] Autocompletion behaviour

Hi,

I had a problem with my Conda environments last time. I couldn't even import some specific modules with external DLLs, such as NumPy and PyAudio. I discovered that a lot of stuff in Conda environments are not installed in the standard Python folders. The Conda's activate command add specific folders in the beginning of the PATH environment variable, and in this way all of Conda installed modules are working fine. My approach of installing Eric in its private Conda environment, with the projects executing in different ones, generates problems with the execution, and maybe with Autocompletion, Calltips and Code Documentation. I execute my project in the base Conda environment. So executing "Anaconda Prompt" to activate the base Conda environment, then in the prompt executing "activate eric6", to activate the Eric's Conda environment, and then executing in the prompt Scripts\eric6, to run Eric IDE, shows the best behavior. In another discussion with Detlev I suggested some other ideas. I don't know how the problem can be solved in the end.

Regards
Christos
Christos Sevastiadis
2018-10-29 09:24:52 UTC
Permalink
Dear Alex,

My problem was not only in executing my code but in invoking
Autocompletion, Calltips and Code Documentation in the Editor form, as long
as Autocompletion in Shell form (Calltips and Code Documentation are not
operating in Shell form). Setting the Environment Variables in Debugger
Options affects only the execution of the project. Thus, I had to set the
desired environment variables before Eric's execution. I've already sent a
suggestion to Detlev for this issue. What I asked for is to have an option
setting for Environment Variables in Virtual Environment level, which can
affect not only start/debug script/project actions but the Editor, Code
Documentation, and Shell forms either. In Shell form I noticed that Eric
uses the base environment variables, adding the PyQt5 paths. I think that
the Shell's environment variables should be the Virtual Environment's ones,
or somebody could select between Eric's and Virtual Environment's
environment variables and paths. In Editor and Code Documentation should be
the Virtual Environment's variables and paths

The PyQt5 installed by Conda has different folder structure than PyQt5
installed by Pip. I have to set PATH environment variable to
prefxi\Library\bin in Debugger Options to start/debug my projects. To have
installed modules in a Virtual Environment visible to all Eric functions I
have to start Eric from Anaconda prompt with my Virtual Environment
activated. Somehow the problems have to do using Conda and Virtual
Environments. This happens not only in Eric but in maybe all other IDEs.
But I think that all these complication can be resolved.

Also, Detlev, I noticed that the Debugger Options are not applied by
default without opening the corresponding dialog form after opening a
project. Somebody has to open Debugger Options form, click OK, and then the
settings are applied to the next start/debug project action.

Regards
Christos
Alex Gerhardt-Bourke
2018-10-29 09:45:00 UTC
Permalink
Hi Christos,

Are your experiences with eric and pyqt the same as mine as I showed in my email previous? Or are some of my problems arising because of my virtual environment setup?

Alex.

________________________________
From: Christos Sevastiadis <***@auth.gr>
Sent: Monday, October 29, 2018 5:24:52 PM
To: ***@hotmail.com
Cc: ***@riverbankcomputing.com
Subject: Re: [Eric] Autocompletion behaviour

Dear Alex,

My problem was not only in executing my code but in invoking Autocompletion, Calltips and Code Documentation in the Editor form, as long as Autocompletion in Shell form (Calltips and Code Documentation are not operating in Shell form). Setting the Environment Variables in Debugger Options affects only the execution of the project. Thus, I had to set the desired environment variables before Eric's execution. I've already sent a suggestion to Detlev for this issue. What I asked for is to have an option setting for Environment Variables in Virtual Environment level, which can affect not only start/debug script/project actions but the Editor, Code Documentation, and Shell forms either. In Shell form I noticed that Eric uses the base environment variables, adding the PyQt5 paths. I think that the Shell's environment variables should be the Virtual Environment's ones, or somebody could select between Eric's and Virtual Environment's environment variables and paths. In Editor and Code Documentation should be the Virtual Environment's variables and paths

The PyQt5 installed by Conda has different folder structure than PyQt5 installed by Pip. I have to set PATH environment variable to prefxi\Library\bin in Debugger Options to start/debug my projects. To have installed modules in a Virtual Environment visible to all Eric functions I have to start Eric from Anaconda prompt with my Virtual Environment activated. Somehow the problems have to do using Conda and Virtual Environments. This happens not only in Eric but in maybe all other IDEs. But I think that all these complication can be resolved.

Also, Detlev, I noticed that the Debugger Options are not applied by default without opening the corresponding dialog form after opening a project. Somebody has to open Debugger Options form, click OK, and then the settings are applied to the next start/debug project action.

Regards
Christos
Christos Sevastiadis
2018-10-29 12:20:08 UTC
Permalink
Alex,

I do experience worst Autocompletion, Calltips and Code Documentation
problems when Conda PyQt5 package is installed in the base environment. I
have to keep only the pip PyQt5 package on my project and Eric's
environments to have the same experience with you, even not correct.
Probably, the environments are affecting Eric's behavior by mixing the
installed module packages in the different environments from different
sources, e.g. Conda and pip, base environment and Eric environment. For
that reason I try to separate the execution environment of Eric from the
editing, starting and debugging environment of my projects. My project is
started correctly, even Eric is adding its PyQt5 path. I suggest not to
even be added the Eric paths during starting and debugging, except the
DebugClients one. In this way somebody has the full control of the
project's environment execution.

Christos
Detlev Offenbach
2018-10-29 18:01:59 UTC
Permalink
The debugger properties of a project can be made to be loaded when a project
is opened. This can be configured on the project config page.

Detlev

Am Montag, 29. Oktober 2018, 10:24:52 CET schrieb Christos Sevastiadis:
> Dear Alex,
>
> My problem was not only in executing my code but in invoking
> Autocompletion, Calltips and Code Documentation in the Editor form, as long
> as Autocompletion in Shell form (Calltips and Code Documentation are not
> operating in Shell form). Setting the Environment Variables in Debugger
> Options affects only the execution of the project. Thus, I had to set the
> desired environment variables before Eric's execution. I've already sent a
> suggestion to Detlev for this issue. What I asked for is to have an option
> setting for Environment Variables in Virtual Environment level, which can
> affect not only start/debug script/project actions but the Editor, Code
> Documentation, and Shell forms either. In Shell form I noticed that Eric
> uses the base environment variables, adding the PyQt5 paths. I think that
> the Shell's environment variables should be the Virtual Environment's ones,
> or somebody could select between Eric's and Virtual Environment's
> environment variables and paths. In Editor and Code Documentation should be
> the Virtual Environment's variables and paths
>
> The PyQt5 installed by Conda has different folder structure than PyQt5
> installed by Pip. I have to set PATH environment variable to
> prefxi\Library\bin in Debugger Options to start/debug my projects. To have
> installed modules in a Virtual Environment visible to all Eric functions I
> have to start Eric from Anaconda prompt with my Virtual Environment
> activated. Somehow the problems have to do using Conda and Virtual
> Environments. This happens not only in Eric but in maybe all other IDEs.
> But I think that all these complication can be resolved.
>
> Also, Detlev, I noticed that the Debugger Options are not applied by
> default without opening the corresponding dialog form after opening a
> project. Somebody has to open Debugger Options form, click OK, and then the
> settings are applied to the next start/debug project action.
>
> Regards
> Christos

--
Detlev Offenbach
***@die-offenbachs.de
Christos Sevastiadis
2018-10-29 18:59:23 UTC
Permalink
Detlev,

I have already set the "Load debugger properties upon opening" of
Settings.Preferences.Project.Project."Debugger Properties". The problem is
that even the properties are loaded when opening a project, they are not
applied to the start/debug project action if the Project."Project
Properties" dialog window is not opened. We discussed again about it. I was
thinking that they are not applied at all. Now I tested it and I discovered
this behavior.

Christos
Detlev Offenbach
2018-10-31 18:30:32 UTC
Permalink
Hi,

due to a stupid coding issue, loading the debugger properties of the project
was not registered and they weren't used. This has been fixed in the repo. The
fix will be included in the next release.

Detlev

Am Montag, 29. Oktober 2018, 19:59:23 CET schrieb Christos Sevastiadis:
> Detlev,
>
> I have already set the "Load debugger properties upon opening" of
> Settings.Preferences.Project.Project."Debugger Properties". The problem is
> that even the properties are loaded when opening a project, they are not
> applied to the start/debug project action if the Project."Project
> Properties" dialog window is not opened. We discussed again about it. I was
> thinking that they are not applied at all. Now I tested it and I discovered
> this behavior.
>
> Christos

--
Detlev Offenbach
***@die-offenbachs.de
Christos Sevastiadis
2018-11-01 09:20:44 UTC
Permalink
Detlev,

Very nice. I tested and now its OK.

Christos
Christos Sevastiadis
2018-11-06 11:07:12 UTC
Permalink
Hi to everybody,

The cooperation of Eric with venv (deprecated pyvenv), virtualenv (Python
2) and Conda virtual environment managers has to be established properly.
So, I investigated more in Eric's coding-assistance, i.e. Auto-completion,
Call-tips and Code-documentation.

I found out the following:

Eric coding-assistance functionalities recognize Python, PyQt5, and
projects modules and not the packages which are installed in any virtual
environment, even in the base environment of the default Python path
installation. I suppose that the Python and PyQt5 recognition is because of
the corresponding installed Eric's APIs.

Jedi coding-assistance functionalities have mixed behavior. It recognizes
PyQt5 and project modules in any way, as Eric coding-assistance does.
Additionally can recognize Conda environment installed packages under
specific setup and Eric starting conditions. The best behavior is when the
Conda environment packages are installed in base environment of default
installation path of Python, combined with starting Eric after setting the
Conda environment variables for the under consideration virtual
environment, i.e. prepending them in PATH environment variable. If only the
Conda environment packages are installed in the base environment, Jedi does
not recognize properly all the imported methods, i.e. some of them are
recognized as "attribute" (one gray box) and not as "method" (two yellow
boxes). Only when recognized as "method" their Call-tip and
Code-documentation is showed.

Rope coding-assistance functionalities are failing in everything except in
PyQt5 recognition, in which is very slow. In my previous messages I was
mislead about Rope's behavior, because I was using Rope's coding-assistance
in combination with Eric's. I suggest the Rope integration with Eric to be
focused only in Refactoring functionality, in which I already fronted in a
lot of problems in my multi virtual environment setup. Rope should be
removed from any other functionalities, not to mislead and confuse the
users, specially the Eric newcomers and Python beginners. I lost a lot of
time struggling to make Rope to work.

Till the problems will be resolved I am working with setting in the
preferences the Eric and the Jedi for Auto-complete and Call-tips, and the
Jedi for Code-documentation, with installed some packages in both virtual
environment and base Python path, and starting Eric with the Conda virtual
environment variables settings.

I hope that the all this information is helpful for everybody.

Regards
Christos
Loading...