OmniPascal 0.9 – Namespaces and more

Features:
– The search path will be indexed on start up
– Code completion in uses sections suggests known unit names
– Support for full qualified names like System.Classes.TStringList
– Code completion only suggests types and namespaces when only a type name makes sense in the current context
– Code completion in interface declarations suggests a GUID
– An error is displayed when a unit name doesn’t match its file name
– An error is displayed for duplicate entries in uses section
– An error is displayed for unresolvable entries in uses sections
– A lightbulb appears on unresolvable uses entries which allows to create that file in the current folder
– Hints of hoverered unit names in uses sections look nicer
– Definitions of redeclared properties can be resolved and are part of code completion
– It’s possible to jump to the initial declaration of a redeclared property
– Support for hidden namespaces in uses section (for example “Classes” can be resolved to “System.Classes”)
– Code completion is disabled when defining a new symbol

Bugfixes:
– Code completion used the wrong scope from time to time especially when hitting the dot inside of if-statements or brackets.
– Signature help now highlights the current parameter as soon as the comma is entered
– Signature help didn’t work when used on a member’s method of an object like ObjectA.Member.Find()
– Warnings for incomplete method definitions in included files were created
– Go to a definition of a symbol which is defined in an included file no longer opens the including file but the include file
– Symbol definitions of included files were part of outlining
– No warnings have been created for missing implementations of overloaded methods if one of those methods already had an implementation
– UTF8 files with BOM header can be parsed now
– Protected symbols which should be invisible were part of code completion in special cases
– References to out parameters without type information (void types) can be found
– Quickinfo for variables of type “file” contained no type information
– Code completion showed empty suggestion item
– Code completion in specialized generic descendants didn’t include protected members of non generic base classes
– Parameterized type names in static method calls couldn’t be resolved
– Method names in static method calls on parameterized type names couldn’t be resolved
…as well as some speed improvements.

You Might Also Like

6 Comments

  • mp3 skull

    February 25, 2016

    Keep on working, great job!

    Reply
  • rapt

    March 21, 2016

    not supports the *.pp and *.ppu?

    Reply
    • Wosi

      March 21, 2016

      No, there is currently no support for these file types.

      Reply
  • Johnc390

    April 4, 2016

    whoah this weblog is wonderful i love studying your posts. Stay up the great work! You know, many individuals are searching round for this info, you can aid them greatly. bdcecdddeaae

    Reply
  • Lukas

    April 24, 2017

    Hi, is it possible to load code completition data from other than .pas files included in project ? i.e: .dll s ? My implementation refers to third party dll for which i cant have sources. How to make source completition work for these referenced units ?

    Reply
    • Wosi

      July 25, 2017

      Sorry, I have totally missed yor comment. For now it’s not possible to get code completion working from DLLs or .DCU files. Sorry.

      Reply

Leave a Reply

Your email address will not be published. Required fields are marked *