[Qt-creator] Overzealous autocomplete
Jason H
jhihn at gmx.com
Thu Jan 24 16:54:50 CET 2019
Many thanks to those who responded and provided clarity.
I would propose that if there is whitespace in the preceding position, that it is a tab. If it is non-whitespace, then it should trigger autocomplete.
\s|tab
\S|autocomplete
(| denotes cursor position)
Also, I think should behave like a bash shell, completing as far as it has commonality. comp[tab] ->complete|[d,s,ing] rather than selecting the entry outright (unless that's the only candidate). Opinions?
> Sent: Thursday, January 24, 2019 at 3:28 AM
> From: "Christian Stenger" <Christian.Stenger at qt.io>
> To: "Eike Ziller" <Eike.Ziller at qt.io>, "Jason H" <jhihn at gmx.com>
> Cc: qt-creator <qt-creator at qt-project.org>
> Subject: Re: [Qt-creator] Overzealous autocomplete
>
> Hi,
>
> This is basically a different issue that came with some special re-ordering inside the proposal widget (done for the C++/Clang side of QC) and the QmlJSEditor uses the same infrastructure but the re-ordering broke there several stuff...
>
> See https://bugreports.qt.io/browse/QTCREATORBUG-21527
>
> Kind regards,
> Christian
>
> ________________________________________
> From: Qt-creator <qt-creator-bounces at qt-project.org> on behalf of Eike Ziller <Eike.Ziller at qt.io>
> Sent: Thursday, January 24, 2019 9:10:55 AM
> To: Jason H
> Cc: qt-creator
> Subject: Re: [Qt-creator] Overzealous autocomplete
>
>
>
> > On 23. Jan 2019, at 20:33, Jason H <jhihn at gmx.com> wrote:
> >
> > Camera {
> > id: camera[enter]
> >
> > becomes
> > Camera {
> > id: cameraStateChanged()
> >
> >
> >
> > This is very clearly wrong. Since when did enter start being autocomplete key? So I did some digging... Autocomplete was set to "always" with a timeout of 400ms. It seems the max is 500ms, which is waaaay not enough time.
> > I also don't know how "when triggered" or "manually" works. But in my version of autocomplete, [tab] is what I'm used to.
> >
> > 1. How do I "trigger" autocomplete, what is "manual" and what is the difference?
>
> I think “when triggered” includes automatic completion popup when certain characters are typed in the right context, like “.” after a variable name in case of C++,
> while “Manually” only pops up completion when pressing the shortcut.
>
> > 2. Why is the timeout limited to 500ms? I'd like at least a full second.
>
> Looks like the configuration was added in 2014 after complains that the delay is too long. I don’t see a reason why to disallow longer timeouts too.
> https://codereview.qt-project.org/250787
>
> > 3. Is there anyway to use [tab] to complete?
>
> Well, you can set the shortcut for “Trigger completion” in Options > Environment > Keyboard.
> But since completion is offered everywhere, you’ll no longer be able to indent with tab, which is probably not what you want.
>
> Br, Eike
>
> --
> Eike Ziller
> Principal Software Engineer
>
> The Qt Company GmbH
> Rudower Chaussee 13
> D-12489 Berlin
> eike.ziller at qt.io
> http://qt.io
> Geschäftsführer: Mika Pälsi,
> Juha Varelius, Mika Harjuaho
> Sitz der Gesellschaft: Berlin, Registergericht: Amtsgericht Charlottenburg, HRB 144331 B
>
> _______________________________________________
> Qt-creator mailing list
> Qt-creator at qt-project.org
> https://lists.qt-project.org/listinfo/qt-creator
>
More information about the Qt-creator
mailing list