Write an IDE in One Month - ErlyBird 0.11.0 Released

Updated Apr 24: The indexing feature is based on Lucene indexing from Common Scripting Framework now. But there won't be new release soon, since Generic Language Framework changes rapidly.

Updated Apr 21: There are several source files under \lib\megaco-3.5.3\src\text, which are with size > 300k, if you can not pass indexing procedure (ErlyBird hangs), please rename them something that are not end with ".erl" or ".hrl".

Updated Apr 20: Due to a severe bug that prevents setting Erlang Installation path, I've re-pack a new release 0.11.1 that fixed it. Don't forget to set the Erlang Installation path to full path of erl.exe or erl file, for instance, "C:\erl\bin\erl.exe".

Updated Apr 20: There is a bug, if your OTP is not installed as C:\erl, you can not set Erlang Installation. I'll update the bin package.

Updated Apr 20: erlybird-bin-0.11.0-ide.zip has been uploaded to sourceforge.net.

I'm newbie to IDE, to Erlang, to compilers principles. But, based on the works from NetBeans's guys, I wrote an almost complete Erlang IDE in one month.

With features:

  • Syntax checking.
  • Syntax highlighting.
  • Functions navigator.
  • Code-folding.
  • Indentation.
  • Completion for built-in/remote function call. (Ctrl+Space for suggestion) (new)
  • Go to declaration for remote function call (press down Ctrl and click on the function name). (new)
  • Project management - create/manage/build project tree. (new)
  • Compilation error locate. (new)
  • Auto indexing OTP libs and project sources. (new)
  • Interactive Erlang Console. (new)

And with known Issues:

  • ErlyBird is memory eager so far, it needs at least -Xmx256m set, 500m or more is recommended for big source files. Check the config file of NetBeans that is located at etc/netbeans.conf, make sure you've set -J-Xmx256m in line of 'netbeans_default_options'
  • Run project button does not work yet, if you press run project button, will show an interactive erlang shell only.
  • When indexing OTP libs, there may be Exceptions pop-ups, which indicate out of heap space, you can just ignore it.
  • Do not open/go to declaration too big source file in ErlyBird, this will also cause out of heap space.

And lacking features:

  • Debugging
  • ...

The parsing and editing features is based on Generic Language Framework.

The project management and indexing features is based on Common Scripting Framework.

To integrate editing feature, which is from Generic Language Framework, with Comman Scripting Framework, I had to lightly modify the Common Scripting Framework source code, the modified files are available from svn trunk folder: gsf-diff-ref.

And as I'm not yet familiar with Lucene index engine, which is used by Common Scripting Framework, I just wrote a sql db index engine and plug-in it to Common Scripting Framework. I will rewrite it based on LuceneIndex lately.

To download, please go to:

http://sourceforge.net/project/showfiles.php?group_id=192439

There are two installation options now, you can choose one of them:

The first one: A pre-packed NBMs kit: erlybird-bin-0.11.1-kit-nbms.zip(about 2.8M). To install:
Downloaded NetBeans IDE 6.0 M8+ via:
http://www.netbeans.info/downloads/dev.php
Select 'Milestone' in 'Build Type'.
After NetBeans IDE installed, unzip erlybird-bin-0.11.1-kit-nbms.zip first, then:

  1. From menu: Tools -> Update Center
  2. In the "Select Location of Modules" pane, click "Install Manually Downloaded Modules(.nbm Files)", then "Next"
  3. Click [Add...] button, go to the path to select all *.nbm files.
  4. Following the instructions to install updated modules.
  5. Restart NetBeans.
  6. 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"

The second one: A standalone ErlyBird IDE: erlybird-bin-0.11.1-ide.zip(about 18M). Notice: Please wait for me to upload it to sf.net :-) It does not need NetBeans IDE. To install:

  1. Just unzip it to somewhere, then execute 'bin/erlybird.exe' for windows, 'bin/erlybird' for *nix.
  2. 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"

If you are new to NetBeans, there are some docs for user:

http://www.netbeans.org/kb/55/quickstart.html
http://www.netbeans.org/kb/55/using-netbeans/index.html

It may not be stable yet, feedback and bug reports are welcome.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值