Thread overview
Visual D 0.3.30 released: Code completion from semantic analysis on the horizon
Jan 07, 2012
Rainer Schuetze
Jan 08, 2012
Andrew Wiley
Jan 09, 2012
Stephan
Jan 09, 2012
Rainer Schuetze
Jan 10, 2012
Rainer Schuetze
Jan 09, 2012
Joel
Jan 24, 2012
Lionello Lunesu
Jan 25, 2012
Rainer Schuetze
January 07, 2012
Hi,

I'd like to announce the release of a new version of Visual D.

Visual D is a Visual Studio package providing both project management and language services for the D programming language. It works with Visual Studio 2005-2010 and 11 as well as the free Visual Studio Shells.

Highlights of this version 0.3.30 include

- syntax highlighting improvements regarding scope(guard), __ctfe, is, in and predefined versions
- added checkbox for options -gs and -property to project configuration
- debugger and build improvements
- experimental: code completion and tool tips from semantic analysis of source code

See http://www.dsource.org/projects/visuald/wiki/VersionHistory for a full list of changes.

The code completion from semantic analysis is not complete yet, but I think it can already be very helpful. You'll have to enable it explicitly in the D Language options due to it's experimental status.

The Visual D installer can be downloaded from its website at http://www.dsource.org/projects/visuald

Have fun,
Rainer
January 08, 2012
On Sat, Jan 7, 2012 at 8:41 AM, Rainer Schuetze <r.sagitario@gmx.de> wrote:
> Hi,
>
> I'd like to announce the release of a new version of Visual D.
>
> Visual D is a Visual Studio package providing both project management and language services for the D programming language. It works with Visual Studio 2005-2010 and 11 as well as the free Visual Studio Shells.
>
> Highlights of this version 0.3.30 include
>
> - syntax highlighting improvements regarding scope(guard), __ctfe, is, in
> and predefined versions
> - added checkbox for options -gs and -property to project configuration
> - debugger and build improvements
> - experimental: code completion and tool tips from semantic analysis of
> source code
>
> See http://www.dsource.org/projects/visuald/wiki/VersionHistory for a full list of changes.
>
> The code completion from semantic analysis is not complete yet, but I think it can already be very helpful. You'll have to enable it explicitly in the D Language options due to it's experimental status.
>
> The Visual D installer can be downloaded from its website at http://www.dsource.org/projects/visuald
>
> Have fun,
> Rainer

Exciting! I just installed it, and I'll try it out with my latest project.
January 09, 2012
On 07.01.2012 15:41, Rainer Schuetze wrote:
> Hi,
>
> I'd like to announce the release of a new version of Visual D.
>
> Visual D is a Visual Studio package providing both project management
> and language services for the D programming language. It works with
> Visual Studio 2005-2010 and 11 as well as the free Visual Studio Shells.
>
> Highlights of this version 0.3.30 include
>
> - syntax highlighting improvements regarding scope(guard), __ctfe, is,
> in and predefined versions
> - added checkbox for options -gs and -property to project configuration
> - debugger and build improvements
> - experimental: code completion and tool tips from semantic analysis of
> source code
>
> See http://www.dsource.org/projects/visuald/wiki/VersionHistory for a
> full list of changes.
>
> The code completion from semantic analysis is not complete yet, but I
> think it can already be very helpful. You'll have to enable it
> explicitly in the D Language options due to it's experimental status.
>
> The Visual D installer can be downloaded from its website at
> http://www.dsource.org/projects/visuald
>
> Have fun,
> Rainer


Wow thanks Rainer, this is a really cool release. the 'experimental' semantics are already awesome! now i want the completion-suggestions to tell me the types (method,member ..) with protection symbols ;)

Big Kudos !

S.
January 09, 2012
On 07-01-2012 15:41, Rainer Schuetze wrote:
> Hi,
>
> I'd like to announce the release of a new version of Visual D.
>
> Visual D is a Visual Studio package providing both project management
> and language services for the D programming language. It works with
> Visual Studio 2005-2010 and 11 as well as the free Visual Studio Shells.
>
> Highlights of this version 0.3.30 include
>
> - syntax highlighting improvements regarding scope(guard), __ctfe, is,
> in and predefined versions
> - added checkbox for options -gs and -property to project configuration
> - debugger and build improvements
> - experimental: code completion and tool tips from semantic analysis of
> source code
>
> See http://www.dsource.org/projects/visuald/wiki/VersionHistory for a
> full list of changes.
>
> The code completion from semantic analysis is not complete yet, but I
> think it can already be very helpful. You'll have to enable it
> explicitly in the D Language options due to it's experimental status.
>
> The Visual D installer can be downloaded from its website at
> http://www.dsource.org/projects/visuald
>
> Have fun,
> Rainer

Great news!

How should the new experimental code completion be triggered, exactly?

- Alex
January 09, 2012

On 09.01.2012 17:04, Alex Rønne Petersen wrote:
> On 07-01-2012 15:41, Rainer Schuetze wrote:
>> Hi,
>>
>> I'd like to announce the release of a new version of Visual D.
>>
>
> Great news!
>
> How should the new experimental code completion be triggered, exactly?
>
> - Alex

In "Options->Tools->Text Editor->D", there is a new sub page "Intellisense" with new options, including "Expansions from semantics" and "Show type of expression in tool tip". If you enable these, the first is triggered when hitting Ctrl+Space to show completions at the current insert position (most useful after a '.'), the latter will show the type of identifiers or complete expressions (if selected) in a tool tip.

There is some type inference regarding auto and some code interpretation, working on some complex stuff (classes, nested functions) but also still failing on simple things like switch statements.

Evaluation is currently as lazy as possible, i.e. even parsing is delayed until you request semantic information, but then cached for later use. So please excuse the current initial delay, I will probably move the parsing of imported files into a background thread.
January 09, 2012
On 09-01-2012 19:59, Rainer Schuetze wrote:
>
>
> On 09.01.2012 17:04, Alex Rønne Petersen wrote:
>> On 07-01-2012 15:41, Rainer Schuetze wrote:
>>> Hi,
>>>
>>> I'd like to announce the release of a new version of Visual D.
>>>
>>
>> Great news!
>>
>> How should the new experimental code completion be triggered, exactly?
>>
>> - Alex
>
> In "Options->Tools->Text Editor->D", there is a new sub page
> "Intellisense" with new options, including "Expansions from semantics"
> and "Show type of expression in tool tip". If you enable these, the
> first is triggered when hitting Ctrl+Space to show completions at the
> current insert position (most useful after a '.'), the latter will show
> the type of identifiers or complete expressions (if selected) in a tool
> tip.
>
> There is some type inference regarding auto and some code
> interpretation, working on some complex stuff (classes, nested
> functions) but also still failing on simple things like switch statements.
>
> Evaluation is currently as lazy as possible, i.e. even parsing is
> delayed until you request semantic information, but then cached for
> later use. So please excuse the current initial delay, I will probably
> move the parsing of imported files into a background thread.

Seems to work, thanks!

In the future, could we perhaps get an option to specify how aggressively code completion should be triggered? That is, manually (as it is now), when typing '.', or always (i.e. whenever you start typing)?

- Alex
January 09, 2012
[snip]

> In "Options->Tools->Text Editor->D", there is a new sub page

Or "Tools->Options->Text Editor->D->Intellisense" you mean. Tools and Options were around the wrong way.

[snip]
January 10, 2012

On 09.01.2012 20:41, Alex Rønne Petersen wrote:
>
> Seems to work, thanks!
>
> In the future, could we perhaps get an option to specify how
> aggressively code completion should be triggered? That is, manually (as
> it is now), when typing '.', or always (i.e. whenever you start typing)?
>
> - Alex

I've added it locally, but it seems it will need some optimizations. It'll be in the next release.
January 24, 2012
My favorite IDE for D! Keep up the good work!

By the way: I think you should released idl2d as a separate project ;)

On 7-1-2012 22:41, Rainer Schuetze wrote:
> Hi,
>
> I'd like to announce the release of a new version of Visual D.
>
> Visual D is a Visual Studio package providing both project management
> and language services for the D programming language. It works with
> Visual Studio 2005-2010 and 11 as well as the free Visual Studio Shells.
>
> Highlights of this version 0.3.30 include
>
> - syntax highlighting improvements regarding scope(guard), __ctfe, is,
> in and predefined versions
> - added checkbox for options -gs and -property to project configuration
> - debugger and build improvements
> - experimental: code completion and tool tips from semantic analysis of
> source code
>
> See http://www.dsource.org/projects/visuald/wiki/VersionHistory for a
> full list of changes.
>
> The code completion from semantic analysis is not complete yet, but I
> think it can already be very helpful. You'll have to enable it
> explicitly in the D Language options due to it's experimental status.
>
> The Visual D installer can be downloaded from its website at
> http://www.dsource.org/projects/visuald
>
> Have fun,
> Rainer

January 25, 2012

On 24.01.2012 18:12, Lionello Lunesu wrote:
> My favorite IDE for D! Keep up the good work!
>

Thanks.

> By the way: I think you should released idl2d as a separate project ;)
>

From your slides I guess you successfully used it for other IDL files than those from the Windows SDK and the Visual Studio SDK. Actually, I never tried it on anything else.

I thought of integrating it into Visual D similar to cpp2d, but did not get to it yet. Maybe I should add a precompiled executable to the download folder...