ErlyBird 0.12.0 released - Erlang IDE based on NetBeans

I'm pleased to announce ErlyBird 0.12.0, an Erlang IDE based on NetBeans.

This is a bug-fix, performance improvement release. This release will only provide all-in-one IDE package, which is in size of 15.9M.

Java JRE 5.0+ is requested.

To download, please go to: http://sourceforge.net/project/showfiles.php?group_id=192439

To install:

  1. Unzip erlybird-bin-0.12.0-ide.zip to somewhere. For Windows user, execute 'bin/erlybird.exe'. For *nix user, 'bin/erlybird'.
  2. Check/set your OTP path. From [Tools]->[Options], click on 'Miscellanous', then expand 'Erlang Installation', fill in the full path of your 'erl.exe' or 'erl' file. For instance: "C:/erl/bin/erl.exe"
  3. The default -Xmx option for jvm is set to 256M, if you want to increase it, please open the config file that is located at etc/erlybird.conf, set -J-Xmx of 'default_options'.

When you run ErlyBird first time, the OTP libs will be indexed. The indexing time varies from 30 to 60 minutes deponding on your computer.

Notice: If you have previous version of ErlyBird installed, please delete the old cache files which are located at:

  • *nix: "${HOME}/.erlybird/dev"
  • mac os x: "${HOME}/Library/Application Support/erlybird/dev"
  • windows: "C:\Documents and Settings\yourusername\.erlybird\dev" or some where

The status of ErlyBird is still Alpha, feedback and bug reports are welcome.

CHANGELOG:

  • Performance improvement, especially source code rendering performance.
  • Highlighting for unbound/unused variables.
  • Completion for macros and records.
  • Go to source files of -include and -include_lib.
  • Erlang shell window in Mac OS X should work now.
  • Various bug fixes.

Comments

1. khigia -- 2007-08-09 09:00

Thanks! I'm a Vim user, but I like your work and I'm going to give it a try! Especially I like the all-in-one IDE feature.

Was thinking about the first indexing time (while waiting the end). I'm not sure what kind of information it contains, but it may have common points with the dialyzer application index ... could it be useful to share some data between dialyzer and erlybird?

And the respond to the "simple math question" contains a lot of signification :))

2. Caoyuan -- 2007-08-09 09:00

Hi khigia,

The indexing will parse each source/header files of OTP libs, gather exported functions, macros, records and includes informations, especailly their line/col numbers for "Go to declation" feature etc. I'll use these information for re-factor feature in the near future.

dialyzer does things a bit differently, it will also check some "type" matching of functions.

Although I can use a backend Erlang node to parse and gather infos just like Distel doing, but I think my approch also make sense, because the experience of developing ErlyBird can also be extended to other languages. I can write another IDE for these languages quickly too, for example, Groovy/Haskell/Ocaml/Schala etc, of course, if I have time :-)

3. Emmanuel Okyere -- 2007-08-10 09:00

Caoyuan,

[quote] because the experience of developing ErlyBird can also be extended to other languages. I can write another IDE for these languages quickly too, for example, Groovy/Haskell/Ocaml/Schala etc, of course, if I have time :-)/quote

Hmm, maybe you shd make a blogpost about this, and give pointers ;)

Anyways, I am just starting out on erlang, so I really appreciate erlybird; thx!

Cheers, eokyere

4. Caoyuan -- 2007-08-10 09:00

eokyere,

In my previous blogs I talked some points about writing an IDE based on NetBeans.

I'm going to release a new version in couple of days, the performance will be improved a lot, for example, the indexing time will cut to about half. At least, in my computer, ErlyBird will work smoothly enough now.

- Caoyuan