While it's based on Netbeans, it is Standalone, and I kept it fairly lightweight (~20MB download).
It contains out of the box support for Fan(basic at this time) as well as CSS, HTML, Javascript, XML, Suvbversion and Mercurial.
Also any other Netbeans features you need, say hudson support, are just a few clicks away under tools/plugins.
It's still fairly early stage, but is enough to get work done.
Some of the features:
Fan syntax highlighting, basic semantic analysis.
Fan project creation, with basic build.fan generation (and open existing ones).
"New File" Templates for quick creation of Fan Class, Mixin, Enum etc...
Run an interactive Fan Shell within Netbeans.
Run Fan Files (incl build files) within Netbeans.
I would like to get some feedback if possible.
brianFri 31 Jul 2009
awesome!
I'm off to the beach for a week, but I'll definitely check it out the following week
BTW how is Netbeans mercurial support?
tcolarFri 31 Jul 2009
Update: I rebuilt without the Javascript support, there seem to be an annoying bug in it.
tcolarFri 31 Jul 2009
I'm not using mercurial (myself) .... yet. But I believe the Mercurial support in Netbeans to be very good, since that's what Sun uses internally.
Netbeans code itself is in Mercurial.
KevinKelleyFri 31 Jul 2009
Way cool, way cool. That looks really good.
andySun 2 Aug 2009
Nice work tcolar, looks sweet.
tcolarFri 7 Aug 2009
Just released a new version with some more features (many more to come)
Changes:
fixed a few bugs in editor.
Semantic analysis(step1): Color highlighting of classes, fields, methods and so on.
Support for automated closing of items upon insertion. Ex: If you type ( it puts () and put the caret in the middle.
Fixed License import in Fan templates
Automated indentation: When pressing return, it starts at the proper indentation on the next line. Also if you type things like case or else it figures if it needs to decreases indentation and so on.
Brace matching: Highlights the matching closing/opening brace/parenthesis/bracket...
i did try again in a different root folder. i'll try command line in a sec.
i do notice one slash the wrong way during setup. when you create a new proj, in the wizard, "New Fan Project", "1. Choose Project, 2. ..."
in the "folder" the last slash is a backslash and all the others are forward, if it matters.
eeeFri 7 Aug 2009
it didn't work from command line either, but it seemed like i did all that right. the only thing i wasn't certain about was the first dotted box where it said:
fan build.fan // call using fan launcher explicitly build // call as executable script
... i figured that was just an example. was I actually supposed to run that? I'll try. other than that, as far as I could tell everything checked out.
well, I had to manually add the bin dir containing fan.exe to my windows path using the GUI, too.
eeeFri 7 Aug 2009
its still not working. I'm on windows, and everything I've installed has been done in the past hour or two
eeeFri 7 Aug 2009
incidentally. fan src, itself, is building nicely from command window, so it's probably not my fan setup
I fixed the / vs \ issue and rebuilt the installer, sorry about that.
If it has an error when even calling manually fan build.fan, maybe the build.fan file was not created properly.
Can you post the build.fan content here or send it to me at tcolar AT colar DOT net.
eeeFri 7 Aug 2009
email inbound.
so should I reinstall? I'll get the fix? just unzip on top of what I had?
tcolarFri 7 Aug 2009
All the \ issue is fixed but there is still an issue.
It seem it's probably some windows environment setting or something like that, apparently it's not finding BuildPod ... but i thought the fan executable knew how to find it's own libraries. Maybe on windows I have to run fan.exe from within fan/bin for this to work (working dir)?
I'll try on windows tomorrow at work, and by then maybe Brian or somebody else will shed some light ... I rarely ever use windows anymore.
eeeFri 7 Aug 2009
some of the errors go away if you put "pod" in front of the field (slot?) names
I think the issue might be that I need to update my code according to the latest changes in 1.0.45: (build.fan / pod.fan) http://fandev.org/sidewalk/topic/684 (pod.fan etc...)
I'll try to do this tomorrow.
In the meantime you should be able to use fan 1.0.44
tcolarFri 7 Aug 2009
OK, I've updated my code for the latest changes in Fan 0.1.45
New pod grammar
Field access * instead of @
Fixed pod creation templates (pod.fan & build.fan built)
So it now creates projects properly for fan 0.1.45.
To upgrade, just download again and extract over the previous version.
ok. works. another problem that's just an annoyance. I'll tell you what I did.
I followed the "new file" part of the movie. inserted "Hello Fan". noted that cntl-s wasn't bound to "save" so I made it that way in the settings. saved the file.
Noticed that it still wasn't showing up in either the project or file views. made another file. could see that one, too, in my editor panes but not in the trees on the left.
couldn't find a refresh option anyway so I closed the whole IDE and reopened it. There they were, and running wasn't a prob.
thought I'd let you know
thanks for making this available.
eeeFri 7 Aug 2009
does this mean the information here is out of date?
http://www.fandev.org/doc/docTools/Build.html
tcolarFri 7 Aug 2009
Right, I think the Build page needs some updating according to the recent changes made in 1.0.45.
As for the file not showing in the navigator, I've seen this before. It does this on my laptop(they do show after a while - like 2mn? - annoying), though on my workstation they always show right away.
Not sure if it's a Netbeans bug or something, will try to figure it out.
casperbangMon 10 Aug 2009
Thumbs up tcolar. There's a huge class of developers that won't even look at Fan without it having at least some IDE support. I hope you will continue and perhaps eventually supply a plugin for existing suites.
tcolarMon 10 Aug 2009
Actually if you look at the install page, there is instructions for installing as a plugin to an existing netbeans install.
Right now I mostly advertise the standalone version as it's pretty new and I don't want to risk causing issues with your existing Netbeans ....though it works fine for me.
This is still a little rough, but it's getting there, I think within another 3 weeks or so it will become very usable. I mean it's already usable but there are still a few glitches etc... though the editor/code highlighting itself is quite useful already.
My main goal will be to get completion to work, at least for the standard Fan API's at first, personally I find this a must when learning a new language I'm not familiar with yet.
With a new language you don't know all the API's right away, even for a compact/clean set as it is in Fan).
The Main changes in this release are to make it easier to work with pods, since "scripts" are limited at this time and probably confusing to a new user, since at this time- might change soon- a script cannot user another script.
List of changes:
Bug fixes:
Fixed bug where navigator collapses after clicking an item in it.
Fixed bug where new files don't show for a while (1 mn+) in files/projects ... only on some computers!
Fixed a few editor/parser exceptions.
Changed grammar to Allow $ in "using" imports (for Java FFI inner classes)
Allow "run single" action only on runnable class main / scripts & build.fan
New features:
Highlight variables in interpolated strings"$var""${var}"
Create Main class with main() in it when creating a pod(project) (optional, default) as it's easier for beginners, make it the default "run" class/method.
Have "build", "run", "build & run", "test", "clean" etc... actions on the Pod/project itself, then hook up the NB "Run Main Project" button (build & run).
Made the default build target configurable (default: compile) in project properties
Added a "Main method" configurable field on pod props (defaults to podname:Main.main)
Cool, though the one I just downloaded seems to be 200906241340, the same I had already. I suppose one could always get it from trunk here: http://svn.colar.net/FanSuite/ ?
Also, have you considered adopting a versioning scheme? Would make it a little easier to distinguish and identify versions.
Last but not least, have you considered setting up a NetBeans update center (just an XML file)? I mean, your impressive speed warrants it. :)
tcolarSat 15 Aug 2009
I thought the number would have changed at least ... odd. Either way it IS the new version.
Anyway, I should really setup real version numbers, I was kinda waiting to be far enough along, but I guess time has come :) and apparently the automated version id does not work .. or at least not the way I though.
Then you can upgrade under the "update" tab OR under the "Downloaded" tab if you did a manual installation.
For info 200906241340 is just the version of netbeans (6.7 release), not sure yet how to replace that with my version number :)
tcolarSat 15 Aug 2009
I've signed my plugin(a pain) and submitted it to the Netbeans plugin central.
I also requested it be verified and then it would show as an available plugin directly in Netbeans (if accepted)
Not sure how long that will take.
BTW: If you encounter any issue with the plugin, please let me know
casperbangSat 15 Aug 2009
Upgrade 1.1 -> 1.3 worked like a charm. Btw. I'm on Linux and I originally got stuck at the "Fan home" settings dialog, it refused to accept the path I entered. Reading the source I noticed it's because you check whether the Fan binary is executable. I guess this is needed (I always just call with sh), but since the Fan binary is not default executable after a clean extraction of the Fan zip distribution, perhaps you should advice people of this, something like "Please make your Fan binary executable" or so.
PS: Yeah messing with certificates is a real pain, especially trying to make it fit into the NBM build chain. It takes 2-4 weeks from my experiences having the plugin reviewed. It appears this needs to be done every time they release a new minor NetBeans version and last time it broke my plugin.
tcolarSat 15 Aug 2009
Good to know the upgrade thing works :)
On unix you have to run sh fan/adm/unixsetup after extracting the fan distro for it to be usable.
But yeah I could definitely give an hint here, if it's not executable. Will be in next version.
tcolarSat 15 Aug 2009
Actually i need to fix that, it's not too good, must have been late :) It might be why ppl had issues setting fan_home under windows as well.
tcolarSat 15 Aug 2009
Release 1.3.2
Sorry for all the spam...
Anyway i did a new quick release to fix a couple major issues:
Some people could not get passed the "Fan Settings" screen, I made a fix, but also note that:
You need at least Java 1.6(is that an issue for anybody?) or this panel won't show, and probably other stuff.
If on unix/max make sure you go in the fan directory and run sh ./admin/unixsetup after installing fan.
Mac Installer The mac installer was not working at all because the packaging (ant) was loosing all the permissions / execution flags. It's now repackaged (as a .tgz) and working (tested on my Mac)
I have a few other items to fix, but those where 2 major roadblocks.
casperbangSat 15 Aug 2009
Works great. Perhaps you should add a license file to the NetBeans manifest, some people don't install anything without knowing the exact licensing terms.
tcolarSat 15 Aug 2009
Will do. For the record it's artistic license 2.0 (compatible with GPL)
tcolarMon 17 Aug 2009
Updated the screencast so that it matches the latest changes.
It shows how to run as a script as before, but put more focus on working with the pod itself, which is less confusing (since as of now scripts cannot include other scripts).
Might be the last release for a few weeks while I work on completion.
davidcliftonFri 21 Aug 2009
Niggling issue I ran into on Windows (though I doubt is a platform problem) with the new project creation where I specify a file name of my own choice - in the new class I get this comment:
// Include failed for:../Licenses/FanDefaultLicense.txt->java.lang.NullPointerException // // History: // Aug 20, 2009 David Creation //
Though I seem to get what you are going after in the other files, like build.fan.
I happened to also provide a name for my class - HelloWorldPod. The project I named PodTest. I went ahead and put the line echo("Hello World!!!") in the main method. When attempting to run the whole project, I get back: ERROR: sys::UnknownTypeErr: PodTest::Main
If I right click on the HelloWorldPod.fan file itself and select the run fan script option, it of course works like a charm.
It didn't take much poking around to see this in the project properties: Main.main - changing this of course resolves my issue. I think the new project option might just need quick fix to use the class name chosen there.
What is the purpose of the custom build target property?
EDIT: And lest I forget - thanks bunches for your work on this so far. Until I stumbled across this discussion item I had thoughts of trepidation about how I could build some templates for my text editor of choice - this will be a real boon for the common developer. Cheers!
tcolarFri 21 Aug 2009
I'll fix the license, small typo.
I'm aware of the issue with the mainClassName not going in the props right away (it does but is not refreshed), will fix.
The build target, is just in case you would want the build button of the ide to run another target than "compile" in the fan build file.
Please keep me updated if you see any other issues, so I can fix them.
I was planning to work on completion, but will wait a tiny bit for Brian to be done with new URI stuff in imports to do it.
In the meantime I have started messing with doing the debugger and it seem it might be fairly easy(since it's JPDA compilant), at least the simple breakpoint / stepping anyway, which is what I use 99% of the time.
I'm kinda needing the debugger for another Fan project I've been doing, so that's extra motivation :)
davidcliftonSat 22 Aug 2009
Out of curiosity, will it be possible with the way you are currently planning it to debug through a project that utilizes multiple languages, i.e. for instance java and fan?
tcolarSat 22 Aug 2009
I believe as long as it's all running as Java bytecode(fan is) running in the same Java VM it should ... still in early stages right now so will confirm later.
tcolarFri 28 Aug 2009
I've got the debugger working well finally, You can set line breakpoint and step through the whole callstack whether it's Fan code or Java code, in the Fan project, In the Fan repo(Fan distro) or JDK sources etc...
I need to cleanup the code because it's a bit messy right now, but i should be able to release the new version with the debugger(and a lot of other cosmetic changes and bug fixes) within the next 4 days or so.
casperbangFri 28 Aug 2009
Sounds great, I can't wait till you move onto code completion. :)
tompalmerSat 29 Aug 2009
Thibaut, you must code as fast as Brian and Andy. You might turn me into a NetBeans user yet.
tcolarSat 29 Aug 2009
The good news is that a lot of the grunt work for debugging was dealing with "sources management" and that most of that was needed for completion.
Since Fan runs as java bytecode it wasn't too hard to get the debugger working, the one slightly tricky part is that netbeans debugger expects the Java sourcepath to match the java package name in the generated code, and with Fan pods it's not quite like that but it's now figured out.
@tompalmer I myself use various tools depending what I'm doing, from VI to Gedit(notepad) to Netbeans, so the more the better.
If you haven't tried NB since before version 6, you might be plesantely surprised like I was. It's more all-inone than Eclipse(which FEELS like a platform), no need to hand pick plugins too much.
tcolarTue 1 Sep 2009
Released Version 1.4.0 (Debugger)
Fixed Bug when creating a new project where Main class not picked up right away
Fixed Bug in License Path
Fan Debugger (port customizable in fan options)
You can set Line breakpoints
Can debug / step through Fan sources, Fan distro sources, Jdk sources.
Note: Fan local variables do not show details yet (Fan Open ticket `http://fandev.org/sidewalk/topic/679`)
Renamed from fansuite to fanide
Added proper version number to standalone IDE.
Created Splash screen / logo / icons.
There where a ton of changes in this version, so bugs would not be a complete surprised, let me know if you find any
Enabled support for Java, Javascript and Java debugging, all useful for Fan projects.
Download is now 65MB, but comes with many more features.
Now runs internally without using fan launcher scripts
You can customize fan exec options (say -Xmx256m) in Fan settings
Once again, awesome. Small pet peeve: When typing start of multi-line comment (/*) the IDE automatically adds the accompanying closing tags. This is mildly annoying, especially in Fan since the convention is to use these only for commenting out code.
tcolarTue 1 Sep 2009
You're probably right. I thought of it the Java way, since I'm used to that but in the case of Fan it probably makes more sense the way you say.
tcolarWed 9 Sep 2009
The new release of Fan (1.0.46) allows debugging local variables.
Until I make a new release of FanIDE(1.4.1), you can make local variables debugging work in 1.4.0 by going to:
Tools/options/Misc./Fan options and adding -Dfan.debug=true to "Exec options".
tcolarFri 2 Oct 2009
Released version 1.4.2
I haven't had much time to work on this lately, but anyway here is a new version:
Changes:
Updated for Fan 1.0.46
Debugger support for local variable with fan 1.0.46
Source file formatter (Re-format the source code properly on demand - Indentation)
/* does not auto-complete with */ anymore as this is used only to comment out code in Fan, as pointed out by casperbang.
I also started working on completion but it's only partly functional at this point, will continue working on this for next version.
tcolar Fri 31 Jul 2009
I have created a first version of my Netbeans based IDE here: (Linux / OSX / Windows)
http://fanide.colar.net/home
And I have a demo / screencast here: http://www.colar.net/fanide/fansuite.htm
While it's based on Netbeans, it is Standalone, and I kept it fairly lightweight (~20MB download).
It contains out of the box support for Fan(basic at this time) as well as CSS, HTML, Javascript, XML, Suvbversion and Mercurial.
Also any other Netbeans features you need, say hudson support, are just a few clicks away under tools/plugins.
It's still fairly early stage, but is enough to get work done.
Some of the features:
I would like to get some feedback if possible.
brian Fri 31 Jul 2009
awesome!
I'm off to the beach for a week, but I'll definitely check it out the following week
BTW how is Netbeans mercurial support?
tcolar Fri 31 Jul 2009
Update: I rebuilt without the Javascript support, there seem to be an annoying bug in it.
tcolar Fri 31 Jul 2009
I'm not using mercurial (myself) .... yet. But I believe the Mercurial support in Netbeans to be very good, since that's what Sun uses internally.
Netbeans code itself is in Mercurial.
KevinKelley Fri 31 Jul 2009
Way cool, way cool. That looks really good.
andy Sun 2 Aug 2009
Nice work tcolar, looks sweet.
tcolar Fri 7 Aug 2009
Just released a new version with some more features (many more to come)
Changes:
(
it puts()
and put the caret in the middle.case
orelse
it figures if it needs to decreases indentation and so on.Latest version screen shot: http://fanide.colar.net/home#screen_shot
Download here: http://fanide.colar.net/install
eee Fri 7 Aug 2009
perfect timing. I just discovered fan 5 seconds ago.
eee Fri 7 Aug 2009
the walk-through doesn't seem to match what happened with me:
D:\code\fan-1.0.45\myfan\MyFanPrj\build.fan(18,19): Unknown variable
globalVersion
D:\code\fan-1.0.45\myfan\MyFanPrj\build.fan(19,5): Unknown variabledescription
D:\code\fan-1.0.45\myfan\MyFanPrj\build.fan(20,5): Unknown variabledepends
D:\code\fan-1.0.45\myfan\MyFanPrj\build.fan(21,5): Unknown variablesrcDirs
ERROR: cannot compile scripttcolar Fri 7 Aug 2009
Odd.
A few things:
fan build.fan
? if not maybe you need to check on the fan setup http://fandev.org/doc/docTools/Setup.htmleee Fri 7 Aug 2009
i did try again in a different root folder. i'll try command line in a sec.
i do notice one slash the wrong way during setup. when you create a new proj, in the wizard, "New Fan Project", "1. Choose Project, 2. ..."
in the "folder" the last slash is a backslash and all the others are forward, if it matters.
eee Fri 7 Aug 2009
it didn't work from command line either, but it seemed like i did all that right. the only thing i wasn't certain about was the first dotted box where it said:
fan build.fan // call using fan launcher explicitly build // call as executable script
... i figured that was just an example. was I actually supposed to run that? I'll try. other than that, as far as I could tell everything checked out.
well, I had to manually add the bin dir containing fan.exe to my windows path using the GUI, too.
eee Fri 7 Aug 2009
its still not working. I'm on windows, and everything I've installed has been done in the past hour or two
eee Fri 7 Aug 2009
incidentally. fan src, itself, is building nicely from command window, so it's probably not my fan setup
tcolar Fri 7 Aug 2009
I fixed the / vs \ issue and rebuilt the installer, sorry about that.
If it has an error when even calling manually
fan build.fan
, maybe the build.fan file was not created properly.Can you post the build.fan content here or send it to me at tcolar AT colar DOT net.
eee Fri 7 Aug 2009
email inbound.
so should I reinstall? I'll get the fix? just unzip on top of what I had?
tcolar Fri 7 Aug 2009
All the \ issue is fixed but there is still an issue.
It seem it's probably some windows environment setting or something like that, apparently it's not finding BuildPod ... but i thought the fan executable knew how to find it's own libraries. Maybe on windows I have to run fan.exe from within fan/bin for this to work (working dir)?
I'll try on windows tomorrow at work, and by then maybe Brian or somebody else will shed some light ... I rarely ever use windows anymore.
eee Fri 7 Aug 2009
some of the errors go away if you put "pod" in front of the field (slot?) names
eee Fri 7 Aug 2009
i was wrong
tcolar Fri 7 Aug 2009
I think the issue might be that I need to update my code according to the latest changes in 1.0.45: (build.fan / pod.fan) http://fandev.org/sidewalk/topic/684 (pod.fan etc...)
I'll try to do this tomorrow.
In the meantime you should be able to use fan 1.0.44
tcolar Fri 7 Aug 2009
OK, I've updated my code for the latest changes in Fan 0.1.45
pod
grammar*
instead of@
So it now creates projects properly for fan 0.1.45.
To upgrade, just download again and extract over the previous version.
http://fanide.colar.net/home
eee Fri 7 Aug 2009
ok. works. another problem that's just an annoyance. I'll tell you what I did.
I followed the "new file" part of the movie. inserted "Hello Fan". noted that cntl-s wasn't bound to "save" so I made it that way in the settings. saved the file.
Noticed that it still wasn't showing up in either the project or file views. made another file. could see that one, too, in my editor panes but not in the trees on the left.
couldn't find a refresh option anyway so I closed the whole IDE and reopened it. There they were, and running wasn't a prob.
thought I'd let you know
thanks for making this available.
eee Fri 7 Aug 2009
does this mean the information here is out of date?
http://www.fandev.org/doc/docTools/Build.html
tcolar Fri 7 Aug 2009
Right, I think the Build page needs some updating according to the recent changes made in 1.0.45.
As for the file not showing in the navigator, I've seen this before. It does this on my laptop(they do show after a while - like 2mn? - annoying), though on my workstation they always show right away.
Not sure if it's a Netbeans bug or something, will try to figure it out.
casperbang Mon 10 Aug 2009
Thumbs up tcolar. There's a huge class of developers that won't even look at Fan without it having at least some IDE support. I hope you will continue and perhaps eventually supply a plugin for existing suites.
tcolar Mon 10 Aug 2009
Actually if you look at the install page, there is instructions for installing as a plugin to an existing netbeans install.
Right now I mostly advertise the standalone version as it's pretty new and I don't want to risk causing issues with your existing Netbeans ....though it works fine for me.
This is still a little rough, but it's getting there, I think within another 3 weeks or so it will become very usable. I mean it's already usable but there are still a few glitches etc... though the editor/code highlighting itself is quite useful already.
Here is what I'm working on and what's coming next for infos: http://fanide.colar.net/changelog
My main goal will be to get completion to work, at least for the standard Fan API's at first, personally I find this a must when learning a new language I'm not familiar with yet.
With a new language you don't know all the API's right away, even for a compact/clean set as it is in Fan).
tcolar Fri 14 Aug 2009
New release. (Will update the demo later today). http://fanide.colar.net/home
The Main changes in this release are to make it easier to work with pods, since "scripts" are limited at this time and probably confusing to a new user, since at this time- might change soon- a script cannot user another script.
List of changes:
Bug fixes:
$
in "using" imports (for Java FFI inner classes)New features:
"$var"
"${var}"
http://fanide.colar.net/home
casperbang Sat 15 Aug 2009
Cool, though the one I just downloaded seems to be 200906241340, the same I had already. I suppose one could always get it from trunk here: http://svn.colar.net/FanSuite/ ?
Also, have you considered adopting a versioning scheme? Would make it a little easier to distinguish and identify versions.
Last but not least, have you considered setting up a NetBeans update center (just an XML file)? I mean, your impressive speed warrants it. :)
tcolar Sat 15 Aug 2009
I thought the number would have changed at least ... odd. Either way it IS the new version.
Anyway, I should really setup real version numbers, I was kinda waiting to be far enough along, but I guess time has come :) and apparently the automated version id does not work .. or at least not the way I though.
Update center should work by pointing it here: http://svn.colar.net/FanSuite/release/plugin/
That goes under Tools/plugins/settings Add
Note that it might not work yet, if the version number hasn't changed, will have a look and try to release a properly versioned release soon.
casperbang Sat 15 Aug 2009
Awesome, thanks Thibaut. Keep up the good work.
tcolar Sat 15 Aug 2009
I released the plugin again labeled as version 1.3. You should be available to update after adding: http://svn.colar.net/FanSuite/release/plugin/ under Tools/plugins/settings Add
Then you can upgrade under the "update" tab OR under the "Downloaded" tab if you did a manual installation.
For info 200906241340 is just the version of netbeans (6.7 release), not sure yet how to replace that with my version number :)
tcolar Sat 15 Aug 2009
I've signed my plugin(a pain) and submitted it to the Netbeans plugin central.
I also requested it be verified and then it would show as an available plugin directly in Netbeans (if accepted)
Not sure how long that will take.
BTW: If you encounter any issue with the plugin, please let me know
casperbang Sat 15 Aug 2009
Upgrade 1.1 -> 1.3 worked like a charm. Btw. I'm on Linux and I originally got stuck at the "Fan home" settings dialog, it refused to accept the path I entered. Reading the source I noticed it's because you check whether the Fan binary is executable. I guess this is needed (I always just call with sh), but since the Fan binary is not default executable after a clean extraction of the Fan zip distribution, perhaps you should advice people of this, something like "Please make your Fan binary executable" or so.
PS: Yeah messing with certificates is a real pain, especially trying to make it fit into the NBM build chain. It takes 2-4 weeks from my experiences having the plugin reviewed. It appears this needs to be done every time they release a new minor NetBeans version and last time it broke my plugin.
tcolar Sat 15 Aug 2009
Good to know the upgrade thing works :)
On unix you have to run
sh fan/adm/unixsetup
after extracting the fan distro for it to be usable.But yeah I could definitely give an hint here, if it's not executable. Will be in next version.
tcolar Sat 15 Aug 2009
Actually i need to fix that, it's not too good, must have been late :) It might be why ppl had issues setting fan_home under windows as well.
tcolar Sat 15 Aug 2009
Release 1.3.2
Sorry for all the spam...
Anyway i did a new quick release to fix a couple major issues:
sh ./admin/unixsetup
after installing fan.I have a few other items to fix, but those where 2 major roadblocks.
casperbang Sat 15 Aug 2009
Works great. Perhaps you should add a license file to the NetBeans manifest, some people don't install anything without knowing the exact licensing terms.
tcolar Sat 15 Aug 2009
Will do. For the record it's artistic license 2.0 (compatible with GPL)
tcolar Mon 17 Aug 2009
Updated the screencast so that it matches the latest changes.
It shows how to run as a script as before, but put more focus on working with the pod itself, which is less confusing (since as of now scripts cannot include other scripts).
http://bit.ly/6QlTH
tcolar Thu 20 Aug 2009
Released version 1.3.3
Mostly bug fixes, in particular to the grammar/parser Also it will now run on Java 1.5 (1.6 not required anymore).
See http://fanide.colar.net/changelog
Might be the last release for a few weeks while I work on completion.
davidclifton Fri 21 Aug 2009
Niggling issue I ran into on Windows (though I doubt is a platform problem) with the new project creation where I specify a file name of my own choice - in the new class I get this comment:
// Include failed for:../Licenses/FanDefaultLicense.txt->java.lang.NullPointerException // // History: // Aug 20, 2009 David Creation //
Though I seem to get what you are going after in the other files, like build.fan.
I happened to also provide a name for my class - HelloWorldPod. The project I named PodTest. I went ahead and put the line
echo("Hello World!!!")
in the main method. When attempting to run the whole project, I get back:ERROR: sys::UnknownTypeErr: PodTest::Main
If I right click on the HelloWorldPod.fan file itself and select the run fan script option, it of course works like a charm.
It didn't take much poking around to see this in the project properties:
Main.main
- changing this of course resolves my issue. I think the new project option might just need quick fix to use the class name chosen there.What is the purpose of the custom build target property?
EDIT: And lest I forget - thanks bunches for your work on this so far. Until I stumbled across this discussion item I had thoughts of trepidation about how I could build some templates for my text editor of choice - this will be a real boon for the common developer. Cheers!
tcolar Fri 21 Aug 2009
I'll fix the license, small typo.
I'm aware of the issue with the mainClassName not going in the props right away (it does but is not refreshed), will fix.
The build target, is just in case you would want the build button of the ide to run another target than "compile" in the fan build file.
Please keep me updated if you see any other issues, so I can fix them.
I was planning to work on completion, but will wait a tiny bit for Brian to be done with new URI stuff in imports to do it.
In the meantime I have started messing with doing the debugger and it seem it might be fairly easy(since it's JPDA compilant), at least the simple breakpoint / stepping anyway, which is what I use 99% of the time.
I'm kinda needing the debugger for another Fan project I've been doing, so that's extra motivation :)
davidclifton Sat 22 Aug 2009
Out of curiosity, will it be possible with the way you are currently planning it to debug through a project that utilizes multiple languages, i.e. for instance java and fan?
tcolar Sat 22 Aug 2009
I believe as long as it's all running as Java bytecode(fan is) running in the same Java VM it should ... still in early stages right now so will confirm later.
tcolar Fri 28 Aug 2009
I've got the debugger working well finally, You can set line breakpoint and step through the whole callstack whether it's Fan code or Java code, in the Fan project, In the Fan repo(Fan distro) or JDK sources etc...
I need to cleanup the code because it's a bit messy right now, but i should be able to release the new version with the debugger(and a lot of other cosmetic changes and bug fixes) within the next 4 days or so.
casperbang Fri 28 Aug 2009
Sounds great, I can't wait till you move onto code completion. :)
tompalmer Sat 29 Aug 2009
Thibaut, you must code as fast as Brian and Andy. You might turn me into a NetBeans user yet.
tcolar Sat 29 Aug 2009
The good news is that a lot of the grunt work for debugging was dealing with "sources management" and that most of that was needed for completion.
Since Fan runs as java bytecode it wasn't too hard to get the debugger working, the one slightly tricky part is that netbeans debugger expects the Java sourcepath to match the java package name in the generated code, and with Fan pods it's not quite like that but it's now figured out.
@tompalmer I myself use various tools depending what I'm doing, from VI to Gedit(notepad) to Netbeans, so the more the better.
If you haven't tried NB since before version 6, you might be plesantely surprised like I was. It's more
all-inone
than Eclipse(which FEELS like a platform), no need to hand pick plugins too much.tcolar Tue 1 Sep 2009
Released Version 1.4.0 (Debugger)
Fan Debugger (port customizable in fan options)
There where a ton of changes in this version, so bugs would not be a complete surprised, let me know if you find any
http://fanide.colar.net/
casperbang Tue 1 Sep 2009
Once again, awesome. Small pet peeve: When typing start of multi-line comment (/*) the IDE automatically adds the accompanying closing tags. This is mildly annoying, especially in Fan since the convention is to use these only for commenting out code.
tcolar Tue 1 Sep 2009
You're probably right. I thought of it the Java way, since I'm used to that but in the case of Fan it probably makes more sense the way you say.
tcolar Wed 9 Sep 2009
The new release of Fan (1.0.46) allows debugging local variables.
Until I make a new release of FanIDE(1.4.1), you can make local variables debugging work in 1.4.0 by going to:
Tools/options/Misc./Fan options and adding
-Dfan.debug=true
to "Exec options".tcolar Fri 2 Oct 2009
Released version 1.4.2
I haven't had much time to work on this lately, but anyway here is a new version:
Changes:
/*
does not auto-complete with*/
anymore as this is used only to comment out code in Fan, as pointed out by casperbang.I also started working on completion but it's only partly functional at this point, will continue working on this for next version.
Current completion features: