The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My work

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,311 other followers

Delphi code completion but more relaxed

Posted by jpluimers on 2017/08/31

From my link archive:

Both via I remember someone in this group showed a prototype of a ‘code-completion’ replacement IDE expert, which supports fuzzy matching of method names you typed [WayBack]

If I remember correctly, the Kibitz compiler started to expose less functionality around the Delphi 7 or Galileo era rendering many of the GExperts additions useless. Not sure about the current state of that now.

–jeroen

2 Responses to “Delphi code completion but more relaxed”

  1. rvelthuis said

    Are you sure about the Kibitz compiler? I am not even sure that Delphi 7 had a Kibitz compiler, so how can it show less functionality?

    • jpluimers said

      Kibitz has been there for a long time. Some stuff I found via my Outlook mail archive is below

      And this:

      Gentlemen,

      not sure if you guys had time to play with it.

      I found another bug that used to work in D6, but does not work any more:

      steps:

      1. add this (character by character) to your code:
        “procedure Parse(content: string);”
      2. compiler replacement: content->CONTEXT 3. in the proofreader, disable the correction rule 4. again add the procedure to your code
        //exp: no replacement
        //act: replacement of content->CONTEXT

      This myst be an issue in the ‘order’ of which things take place.
      don’t have energy yet to dig into this (Stefan knows why).


      Jeroen W. Pluimers – Consultant & Borland Certified Instructor “What you get is All I M”
      http://www.all-im.com – All Information Management BV

      —–Original Message—–
      From: Jeroen W. Pluimers [mailto:jeroen@pluimers.com]
      Sent: Saturday, 27 July, 2002 10:58 AM
      To: Stefan Hoffmeister; Erik B. Berry
      Subject: D7FT3 code ProofReading works ‘sort of’

      Gentlemen,

      Attached are the changed files.
      Note I included both the .dpr and .dof since you must remove
      netmasters from the required packages list (otherwise it won’t compile).

      Code Proofreading works, except when induced by a dot.
      This does work in D6, and now is broken in D7.
      Note this comment in GX_KibitzComp.pas:

      (*
      There is a bug somehow that you can reproduce as follows:
      1. Drop a TButton on a form (Button1)
      2. Double click on Button1
      3. between the begin/end pair, enter this code: ‘Buttn1.’
      (withoout quotes)
      //exp: CurrentCodeInsightManager.InvokeCodeCompletion returns ‘true’
      //act: CurrentCodeInsightManager.InvokeCodeCompletion returns’ false’
      and you get an error message indicating that the code does not
      compile:
      ‘Unable to invoke Code Completion due to errors in source code’
      4. between the begin/end pair, enter this code: ‘Buttn1 ‘
      //exp: CurrentCodeInsightManager.InvokeCodeCompletion returns ‘true’
      //act: CurrentCodeInsightManager.InvokeCodeCompletion returns ‘true’
      and ‘Buttn1 ‘ gets replaced by ‘Button1 ‘

      What seems to happen is that the Kibitz compiler in D6 is not confused
      by the dot, but the D7 kibits compiler does get confused.

      I tried some tricks around this:

      • replace any InvokeTime=itTimer by InvokeType=itManual
        (does not resolve)
      • ignore the “false” result from “InvokeCodeCompletion”
        (does not resolve – the resulting symbol list is zero (0) symbols
        long
      • don’t call “CurrentCodeInsightManager.GetCodeInsightType”
        (error message comes in a dialog, in stead of the messages pane)
      • replace “FirstChar = ‘.'” with “FirstChar := ‘ ‘”
        (error message comes in a dialog, in stead of the messages pane)

      I think the ultimate solution will be to (temporarily) replace the ‘.’
      in the code editor with a ‘ ‘, and at the end restore the ‘.’.

      *)


      Jeroen W. Pluimers – Consultant & Borland Certified Instructor “What
      you get is All I M”
      http://www.all-im.com – All Information Management BV

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
%d bloggers like this: