Archive for the ‘IDE’ Category

Emacs D-Mode 2.04

Wednesday, February 27th, 2008

If you are an Emacs user, Bill Baxter has updated the Emacs D-Mode code for your sadomasochistic pleasure.

Technorati Tags: ,

DFL 0.9.7 and Entice Designer 0.8.4.3

Wednesday, February 27th, 2008

Chris Miller has released new versions of DFL, the D Forms Library, and Entice Designer, “a Form Designer for DFL and a rich code editor [that] is on the path to becoming an IDE.” Don’t forget the DFL and Entice video tutorials.

Technorati Tags: , , ,

Descent 0.5

Monday, February 4th, 2008

Ary has announced a new version of the Descent, the Eclipse plugin for D. From the NG post:

- Full autocompletion, which also writes the imports for you. No need to remember where that class or function you are looking for is located. Just start writing the name of it, press ctrl+space, select the suggestion, and the import is added at the top of the module automatically (no need to critic Tango anymore :-P). External variables does not participate in import-adding, because there are *so* many public ones…
- Go to definition. It even works for opCall and magic array functions. :-)
- Semantic highlighting: you can choose to color aliases, typdefs, classes, structs, interfaces, unions, templates, local variables, functions and function calls, etc., with different colors.
- Showing of semantic errors. By default, some semantic errors are shown, like undefined identifiers or unresolved types. You can turn this off, or you can enable full semantic error reporting (but it will probably lie in some cases, that’s why the default is “some”). It is recommended to turn this off for existing big projects, as it may cause more trouble than help.
- Compile-time evaluation of functions and other properties: hovering over an element while holding ctrl+shift shows it’s compile-time value. You can use this for built-in properties like init, min, max, sizeof, alignof, stringof, mangleof, length, constants, enum values and function calls (try writing a factorial function, then invoke it with a constant value somewhere in the code, and ctrl+shift+hover over the call). If the result of the evaluation is a string, and it is likely a declaration, it will have syntax highlighting and will be formatted according to your formatter preferences. This is useful for seeing the string passed to a mixin.
- Graying out of inactive code: shows in gray code that is not reachable because of debug or version levels/identifiers and static ifs that evaluate to false.
- Improved occurrences finder: selecting a token highlights all other tokens with the same semantic meaning. Then, pressing ctrl+2, r, allows you to rename all those occurrences. Very useful for renaming local variables, functions and types.
- Declaration view: shows the source of the element under the cursor.

For current users: after you update the plugin, go to Windows -> Preferences, D -> Compiler, and change any setting. It will ask you to rebuild everything. You’ll need to do this since I’ve changed the format of the indexes for searching stuff. Otherwise you’ll get errors, or some things won’t work.

I still haven’t used this yet, but it’s sounding really nice. Do let me know in the comments what your opinions of it are if you use it.

Technorati Tags: ,

Entice Designer and DFL Video Tutorial

Monday, January 7th, 2008

If you are interested in doing any GUI programming in D, there’s a new video tutorial out that covers Chris Miller’s Entice Designer and D Forms Library.

Technorati Tags: , , , ,

New D For XCode Releases

Wednesday, November 28th, 2007

About a week ago, Michel Fortin released the final 1.0 version of his D plugin for XCode. A few days later, he put out a bugfix 1.0.1 release. Lots of changes since the beta version. The plugin is now compatible with XCode 2.5. I’ll reproduce the changelogs here, starting with the 1.0 release:

* New output parser with support for correctly reporting warnings
(note that warnings are deactivated by default).

* Removed the Treat Warnings as Error option. Rationale: GDC
automatically treat warnings as error when they’re enabled so this
option had no effect.

* Module Search Paths now include “/usr/include/d” by default, because
that’s where most libraries are expected to install their interface
files. You can remove it from the project or target settings.

* Version Identifiers no longer contain “Posix darwin” by default. You
can add them back in the project or target settings.
(This may be needed for Tango.)

* Inline Functions is now an option in the Code Generation category.
[-finline-functions]

* Fixed a typo which made Generate Debug Symbols off by default; it is
now on by default.

* Added a Instruction Scheduling option in the Code Generation section,
allowing generated code to be tuned for G3, G4, or G5 processors.
[-mtune=]

* Change how the linker is configured so that it now can use the
system’s libgphobos.a even when using a SDK. As a side effect, GCC
is now used as a linker instead of GDC (not that this change much
things).

* Fixed two infinite loops in the code parser which would stall
and/or crash Xcode, and preemptively reviewed the code and removed
a few other potential infinite loops.

* Added some icons to the user interface for displaying D files in
lists and for build settings.

* Added a launcher application (hidden inside the plugin bundle) which
gives an appropriate icon to .d and .di files in the Finder and
redirects opened files to Xcode. On Mac OS X 10.5 Leopard, the
launcher attempt to open D files using Xcode 2.5 (if installed at
its default location), as the plugin doesn’t work with Xcode 3.

And from 1.0.1:

* The plugin now registers its launcher application when loaded into Xcode. Previously it was counting on the Finder to register it while copying the plugin, but that isn’t always reliable; hence the need for a backup plan.

Technorati Tags: , ,