Code Editor Enhancement and/or suggestions

Questions regarding IDE/Code-Editor

Code Editor Enhancement and/or suggestions

Postby yogiyang » Thu Jun 25, 2009 12:52 pm

The more I try to use KBasic the more I get frustrated with the code editor. I am not saying the code editor is bad what I am saying is that it is behaving a bit strangely as compared to other editors.

Here are a few things that I feel should be implemented in the already good code editor.

  1. A way to trigger intellisense of editor. I would suggest either Ctrl+J or Ctrl_Space Bar.
  2. Auto format code as it is typed like for example if the built in function (say for example Print()) is supposed to be in Proper Case then if a user type the function name in all lowercase then it should automatically be converted to Proper Case.
  3. There should be a way by which we can control as to how many characters the text cursor should jump when we press Tab Key. Currently it seems to jump 2 characters.
  4. After hitting tab key if we press back space key it just deletes only one character while instead it should delete all the characters added when we pressed tab key. In short it should actually insert tab character instead of adding spaces.
  5. There should be a command to automatically format code and rearrange it so that it looks neat and clean ;)
  6. Ctrl+UpArrow and Ctrl+DownArrow should jump from one subroutine/function to another.
  7. The left browser tree is useful but it is just for reference only. For example we cannot double click on a Builtin Function (under Builtin in tree) to insert that function into code. It would be nice to have something like this or better sill drag and drop a function in code window.
  8. Some of the shortcut keys as listed in Description.pdf(I know this doc is obsolete but at lease these key strokes should work) do not seem to work. For example Ctrl+K does not delete to end of line.
  9. Feature to record a macro and then play it back would be an added advantage.
  10. A way to jump between form (GUI) and code window.
  11. As code grows I find it hard to jump to a particular section of code so there should be two dropdown list 1) should list all the controls on form & 2) should list all the events. Now a use should be able to select a control in first dropdown list and the second list should automatically be populated with all the events associated with that control (as selected in first dropdown list). This would make navigation in code easier and a user will be able to add an event handler without having to go to the Form window and then selecting the control and browsing for appropriate event for the control in property palette..... (I think everyone got the idea!)

I would like to know views of the elite team of KBasic on this.

Thanks,

Regards,

Yogi Yang
yogiyang
 
Posts: 68
Joined: Tue Jun 02, 2009 12:39 pm

Re: Code Editor Enhancement and/or suggestions

Postby Slowdown » Thu Jun 25, 2009 7:01 pm

Hi yogiyang

I also have wishes but we have to keep in mind that KBasic is maintained by one person
for three patforms (Windows, Linux and OSX) and is comming with a IDE, interpreter and a compiler
for just 25 euro's (about 30 US dolar)

We can't have everything for that amount of money than we must swith to for example VBnet or RealBasic
wich ofcourse have also there quirks.
Some of your points are comming from VB6 and are maintained by a team of developers (in the past i have done some things in VB6)
At this moment i like KBasic and perhaps in the future the things i/we like are build in KBasic.
(Bernd if i'm not correct you will correct me 8-) )
Regards
Slowdown for now i'm back
Slowdown
 
Posts: 347
Joined: Sat May 02, 2009 6:48 pm
Location: Netherlands

Re: Code Editor Enhancement and/or suggestions

Postby yogiyang » Fri Jun 26, 2009 7:23 am

Slowdown wrote:Hi yogiyang

I also have wishes but we have to keep in mind that KBasic is maintained by one person
for three patforms (Windows, Linux and OSX) and is comming with a IDE, interpreter and a compiler
for just 25 euro's (about 30 US dolar)

Please do not take this wrongly. I am not complaining.

I feel these are things that should be there. Otherwise KBasic will never pickup as serious development alternative tool in spite of the fact that its language is well developer and it is highly usable. I personally believe that the code should be rock solid so that better features can be built around it without much a-do. Every language should also have some way by which it can be extended or new functionality can be easily added. For example right from day one VB has support for VBX and then ActiveX. And now that Bernd is thinking of rewriting the whole IDE as well as compiler it is the right time to point out features that are a must for KBasic to be successful.

Slowdown let me tell you a bit about myself.

I am serving in a company where we use Delphi & .NET for desktop apps and PHP for web apps. I am HOD of the programming division so I have very less coding tasks. But I keep on evaluating all kind of tools to see if a tool can really enhance productivity of our developers in any way. During such evaluations of software I learn a lot about UI, features, etc. We adopt many features from different products for software we develop for our clients and because of this we have a very big clientele base.

I have evalueated and tried out many a BASIC compilers like RealBasic, Power Basic (with Fire Fly Designer), PureBasic (I like this the most with Pure Form), FreeBasic, BlitzBasic, TrueBasic, O'Basic (Father of all RAD/IDE based Basic languages under windows - I have heard a story that VB's idea was borrowed/stolen from O'Basic by Allen Cooper, but that is another story), NSBasic, Envelop Basic (a VB3 Clone with better OOP features), etc. but I have yet to see any Basic compiler that matches or comes closer to VB6.

Finally I have found KBasic and think it comes quite close to VB (about 30%).

Why was VB adopted by most of the developer community? It was easy to learn and use so every programmer wanting to program on windows was compelled to use it. Even today most amount of opensource code is released for VB in spite of it being abundant by MS. Don't believe me? Have a look at http://www.planetsourcecode.com/ you will be surprised.

I want to see KBasic climb up the ladder of fame (like VB did in past) and I wish that it is adopted by every developer on earth. But for this it has to be of level where people will be compelled to adopt it right from start (like VB :) ).

I feel developers should not adopt is because it is very cheap cross platform development tool. NO. I hate that pitying.

Anyways these are my views they may not be your. But please don't take my suggestions negatively.

Thanks,

Regards,

Yogi Yang
yogiyang
 
Posts: 68
Joined: Tue Jun 02, 2009 12:39 pm

Re: Code Editor Enhancement and/or suggestions

Postby berndnoetscher » Fri Jun 26, 2009 8:30 am

Thanks for proposals. I added them to the wish list sections, and would like to implement most of them as soon as possible, but I cannot make any promise when it will be available.

[*]A way to jump between form (GUI) and code window.

Try F10 + F11

[*]As code grows I find it hard to jump to a particular section of code so there should be two dropdown list 1) should list all the controls on form & 2) should list all the events. Now a use should be able to select a control in first dropdown list and the second list should automatically be populated with all the events associated with that control (as selected in first dropdown list). This would make navigation in code easier and a user will be able to add an event handler without having to go to the Form window and then selecting the control and browsing for appropriate event for the control in property palette..... (I think everyone got the idea!)[/list]

Try the round button on top left of the code window. It displays all controls with the events.
berndnoetscher
Site Admin
 
Posts: 1059
Joined: Tue Sep 25, 2007 9:37 am

Re: Code Editor Enhancement and/or suggestions

Postby Slowdown » Fri Jun 26, 2009 6:43 pm

Please do not take this wrongly. I am not complaining.

I know Yogi Yang, i did'nt read it as a complaint.
I feel these are things that should be there. Otherwise KBasic will never pickup as serious development alternative tool in spite of the fact that its language is well developer and it is highly usable.
I personally believe that the code should be rock solid so that better features can be built around it without much a-do.
Every language should also have some way by which it can be extended or new functionality can be easily added.
For example right from day one VB has support for VBX and then ActiveX. And now that Bernd is thinking of rewriting the whole IDE as well as compiler it is the right time to point out features that are a must for KBasic to be successful.

Here you are quite right, if Bernd is going to rewrite his code than it is perhaps possible to include these things.
Slowdown let me tell you a bit about myself.

Yogi Yang this is why we look not on the same way at KBasic.
I'm using it just for myself for fun at home.
In my daily job i'm not doing anything with software so i look at a different way to KBasic as you do.
I don't have clients and targets the only thing that i care of is can i work with it, do i understand it.
I have started with QBasic with the PDQ software and was hapy with that combination (fast Basic programs).
After QBasic i went on using VB6 and here you hit the bulseye VB6 is nice in use and you can find codes on the internet everywhere lots and lots of code i know.

But at some point idecided to left the windows platform and bought me an iMac and at the same time i lost VB6.
So i start a search on the net for a new BASIC IDE/compiler and came out at Realbasic and KBasic.
Tried Realbasic and that was not the IDE i liked so i went on with KBasic and yes for me it's the solution. :D
Finally I have found KBasic and think it comes quite close to VB (about 30%).

Agree again here.
Why was VB adopted by most of the developer community?
It was easy to learn and use so every programmer wanting to program on windows was compelled to use it.
Even today most amount of opensource code is released for VB in spite of it being abundant by MS.
Don't believe me? Have a look at http://www.planetsourcecode.com/ you will be surprised.

i'm not surprised because i have used that recource more than one time in the past
I want to see KBasic climb up the ladder of fame (like VB did in past) and I wish that it is adopted by every developer on earth.
But for this it has to be of level where people will be compelled to adopt it right from start (like VB :) ).

I think that's not gonna happen, why ?
Jump somewhere in a programmers forum and tell that you want to learn to write programs and wait what happens (i did)
But we have an advantage if we compare KBasic with VB6 you can addapt the source yourself.
I feel developers should not adopt is because it is very cheap cross platform development tool. NO. I hate that pitying.

sadly enough is that a common thought.
Anyways these are my views they may not be your. But please don't take my suggestions negatively.

I respect youre views and understand them and furthermore no hard feelings at all.
(sorry for my pour English)
Regards
Slowdown for now i'm back
Slowdown
 
Posts: 347
Joined: Sat May 02, 2009 6:48 pm
Location: Netherlands

Re: Debugging Features Enhancement and/or suggestions

Postby yogiyang » Sat Jun 27, 2009 12:56 pm

I find it awkward that we have to use different shortcut keys to run code for debugging. Can't it be made to be single F5? Actually the IDE should decide whether it should run in Debugger or not. Say if a break point is placed then it should automatically run in debugging mode otherwise run without debugging mode!

Regarding breakpoint I have to say that it is working but if I make any changes to the code on the line where breakpoin is placed the changes do not have any effects. Why? I feel that as developers the debugging should be interactive so that we can make changes to code and that changes should be reflected in debugger.

I could not find any way by which we can move the execution point in break mode? Like for example I have set a break point at a line but I find that I have to modify a few lines above the line where I have placed break point as that will have its effects on the line where break point is placed. There should be a way to jump the execution point forward or backward.

Let me give one single reason. Due to some reason I have developed a loop which is running infinity. Now I should have a way to skip the lines of code of loop and start execution at first line after the loop.

Regards,

Yogi Yang
yogiyang
 
Posts: 68
Joined: Tue Jun 02, 2009 12:39 pm

Re: Property Palette Enhancement and/or suggestions

Postby yogiyang » Sat Jun 27, 2009 1:52 pm

The ... buttons need to be sized down. I tried to find a way to make them small but could not from Preference.

Is there any other way to do this?

I think there should be facility to find a property as there seems to be many properties and browsing though them seems to take up a lot of time.

In Delphi there is a facility for locating a property by clicking on the property palette, pressing tab and typing its name. It will progressively jump to first matching property. Can something like this be implemented please?

I also wish Property Palette remembers currently selected property so if we select another control and if that control has the property currently selected it should be automatically selected.

Regards,

Yogi Yang
yogiyang
 
Posts: 68
Joined: Tue Jun 02, 2009 12:39 pm

Re: Code Editor Enhancement and/or suggestions

Postby Henning » Sat Jun 27, 2009 7:20 pm

yogiyang wrote:I find it awkward that we have to use different shortcut keys to run code for debugging. Can't it be made to be single F5? Actually the IDE should decide whether it should run in Debugger or not. Say if a break point is placed then it should automatically run in debugging mode otherwise run without debugging mode!


NO!! *I* want to be the one deciding what to do. I maybe decide to just Run with the brkpts still set, to catch eventual timing issues hidden by the debugger brks.

yogiyang wrote:Regarding breakpoint I have to say that it is working but if I make any changes to the code on the line where breakpoin is placed the changes do not have any effects. Why? I feel that as developers the debugging should be interactive so that we can make changes to code and that changes should be reflected in debugger.


That facility originates in VB(6)? It's just that the IDE in VB6 is just displaying the autocompiled p-code. The VB6 IDE is NOT a texteditor, while typing it compiles to p-code. In KBasic the textfiles are compiled at Run/Debug, so there is no one to one relation betwen the IDE and the compiled app.

yogiyang wrote:I could not find any way by which we can move the execution point in break mode? Like for example I have set a break point at a line but I find that I have to modify a few lines above the line where I have placed break point as that will have its effects on the line where break point is placed. There should be a way to jump the execution point forward or backward.


The same reason as above.

We have to take notice that VB, or Delphi, was developed during some 20++ years by a few-hundred programmers. KBasic is developed by a single human, Bernd during a couple of years.

I still find it easier to convert my 16000 lines VB6 code to KBasic, than to VB.Net, wich despite its name is a completely different animal.

/Henning
Henning
 
Posts: 262
Joined: Mon Feb 09, 2009 12:03 am
Location: Sweden

Re: Code Editor Enhancement and/or suggestions

Postby yogiyang » Mon Jun 29, 2009 3:59 am

Henning wrote:We have to take notice that VB, or Delphi, was developed during some 20++ years by a few-hundred programmers. KBasic is developed by a single human, Bernd during a couple of years.

I know this, and I salute Bernd for this. But Bernd can learn from what mistakes these big players have committed in past avoid them altogether and at the same time shorten time for maturing a product. You will be surprise but compared to QTDesigner the Designer of KBasic looks very immature. Now we all know that QTDesigner is opensource and Bernd can easily study its code (at least he will not have to spend time guessing as to how a particular feature was implemented) and add all good features of QTDesigner to KBasic.

Henning wrote:I still find it easier to convert my 16000 lines VB6 code to KBasic, than to VB.Net, wich despite its name is a completely different animal.

That is surprising. We have been using .NET since its interception. On one occasion we had to convert an old VB6 app to .NET and surprisingly it got converted without any problem in spite of the fact that we had use a fleet of third party ActiveX. One advantage we has was that the software was not using ADO but it was using DAO. All that we had to do was to import required DAO libs in VS2008 and everything worked without any problem. In fact the conversion took us only 2 days.

Oh! by the way the software is very big. It contains around 122 forms, 67 classes, 16 inline controls, 25 modules and a big collection of third party ActiveX from ComponentOne. VB6 takes around 20 minutes to compile the software on a C2D PC having 2 GB RAM.

I don't think one can achieve such quick conversion to KBasic as many properties of built in VB6 controls (those that are found in VB6 runtime) like combo box do not match like for example KBasic's combo box does not have ListIndex property this one instance itself tell how many changes we will have to make to convert the same project to KBasic. Lack of support for ActiveX is another.

Regards,

Yogi Yang
yogiyang
 
Posts: 68
Joined: Tue Jun 02, 2009 12:39 pm

Re: Code Editor Enhancement and/or suggestions

Postby Henning » Sat Jul 04, 2009 11:27 am

Well, I'm sure his planned rewrite will include some 'spywork'. 8-)
ActiveX would suspend the, W-L-M, cross-platform idea, to just Windows.

/Henning
Henning
 
Posts: 262
Joined: Mon Feb 09, 2009 12:03 am
Location: Sweden

Next

Return to IDE

cron