Programming Editor Wishlist

nick12ab

Senior Member
Full page scroll option (instead of just three lines).
That already exists - click the scroll bar area either side of the moving bit to make it move up or down by a page.

Haku-style animation follows...



Edit: Not a very good animation - look at the time in the bottom-right corner of the Programming Editor in the animation above.
 
Last edited:

KeithRB

Senior Member
How about a #define statement with macro expansion. (Like C, purely text based.)

Then my "smart Symbol" problem is neatly solved:

#define HourButton C.5

#define pin(InOut) pin##InOut

pin(HourButton)
would yield pinC.5, while HourButton would yield plain C.5.
 

NoSmoke

Member
That already exists - click the scroll bar area either side of the moving bit to make it move up or down by a page.

Haku-style animation follows...



Edit: Not a very good animation - look at the time in the bottom-right corner of the Programming Editor in the animation above.
OK, thanks. Might be nice to have it on the mouse scroll wheel too though.
 

inglewoodpete

Senior Member
Add a "Timer" wizard

Yet another suggestion from IP: A wizard for setting up the timer. At the higher speeds of modern PICAXEs, it can be a bit of a juggle to calculate and get the Timer/SetTimer values/combinations correct. Come to think of it, it's not all that simple at low speeds either.
 
Last edited:

nick12ab

Senior Member
OK, thanks. Might be nice to have it on the mouse scroll wheel too though.
You can go into Control Panel > Mouse and click on the mouse wheel tab where you can change the number of lines scrolled by the mouse. Of course, just having the page/line option in Programming Editor would be nicer.
 

AndyGadget

Senior Member
One I've just thought of while trying to reduce variable count in a much chopped about program -
List of defined symbols which are not referenced in the body of the program.
(Could be part of syntax check.)
 

Buzby

Senior Member
Just been looking at the gadget referred to here :

http://www.picaxeforum.co.uk/showthread.php?19723-Raspberry-Pi&p=192792&viewfull=1#post192792

It's got a great function that would be easy to add to PE.

It's a button on the IDE which blinks a LED connected to any pin on the target system. ( See the 'Beginning Maximite' link on the page. )
It lets you test your hardware before writing any code.
Obviously the LED could be a motor, relay, buzzer, or whatever.

( This is just one step away from having 'Simulate -> Connect' working ! )

The idea could be expanded.

How about an I2C EEPROM test button, or a serial IO test button ?
 

Marcwolf

Senior Member
And the ability to remove old serial ports from the list. When you AXE027 has registered itself on 20 or so serial ports it would be great to get rid os fome of them.


Larger serial port selection list.

This is what we have now (it used to be a radio button selection panel with all the ports):


This is what I'd like to see:
 

Eclectica

Member
While we've been talking about Terminal stuff (no pun intended), a really useful feature would be an option to timestamp incoming serial data lines or 'packets'?
Also have it perform in the background too rather than having to be in focus when running would be useful too.

Great work already though chaps :)
 

SAborn

Senior Member
With the "Terminal window" and the "Output buffer", it would be great to have a keyboard short cut for "Send", as its a pain in the ass to use the keyboard to type the text and then have to fumble around and find the mouse to click send.
Perhaps Ctrl + enter for a short cut.
The short cut (text) shown on the send button would be also good.
 

Aresby

New Member
Allow the use of two monitors to work correctly.

My main editing window is on an external monitor to my laptop but all the diaglog boxes pop-up (well, sneak up) on the laptop screen, regardless of whether I put them on the external (second) monitor.

Often I find myself looking at my "main" window waiting for something to happen only for it to have already happened on the laptop screen.

Basically a "sticky" memory for each dialog box would solve this.
 

Aresby

New Member
Have the editor highlight rubbish syntax.

I typed in pmwout instead of pwmout and the syntax checker kept complaining about the comma in the line, not the rubbish typo itself. Took nearly 5 minutes to spot!
 

nick12ab

Senior Member
Simulation + Small Ico Toolbar

This isn't significant enough to deserve a new thread, but if the small icon toolbar is enabled, the simulator button (the one with the yellow icon) does not change when the simulation is run like when the big button toolbar is used.
 

Attachments

srnet

Senior Member
I guess you would not have to use it, but if you did, allowing re-definition of command words could make code very difficult for others to read and hence get support.
 

westaust55

Moderator
It is also possible to have a more text like syntax for tests. By way of example:

Code:
#PICAXE 08M2
Main:
	IF pin1 IS ON THEN
	  b4 = 11
	ELSEIF pin1 IS OFF THEN
	  b4 = 22
	ENDIF  
	PAUSE 100
	GOTO main
 
Last edited:

DDJ2011

Member
I'm using it on my laptop and when it opens it is not full screen, and sits slightly off the top of my screen. If it remembered that I had maximised it and the re-opened as maximised that would mean the removal of an extremely small niggle for me!
 

Technical

Technical Support
Staff member
It is also possible to have a more text like sntax for tests. By way of example:

Code:
#PICAXE 08M2
Main:
    IF pin1 IS ON THEN
      b4 = 11
    ELSEIF pin1 IS OFF THEN
      b4 =22
    ENDIF  
    PAUSE 100
    GOTO main
No problem, did you actually try it... ;-)
 

nick12ab

Senior Member
Apologies if I'm overdemanding...

So, for instance, if you have a good idea such as a 'forum copy' menu (like normal copy but automatically adds the [code] tags) then please let us know.
I notice that you've implemented this in 5.5.0. But it doesn't add colour like that microcontroller IDE does.
Code:
[COLOR=#CC6600]void[/COLOR] [COLOR=#CC6600][B]loop[/B][/COLOR]() {
  [COLOR=#CC6600]digitalWrite[/COLOR](13, [COLOR=#006699]HIGH[/COLOR]);   [COLOR=#7E7E7E]// set the LED on[/COLOR]
  [COLOR=#CC6600]delay[/COLOR](1000);              [COLOR=#7E7E7E]// wait for a second[/COLOR]
  [COLOR=#CC6600]digitalWrite[/COLOR](13, [COLOR=#006699]LOW[/COLOR]);    [COLOR=#7E7E7E]// set the LED off[/COLOR]
  [COLOR=#CC6600]delay[/COLOR](1000);              [COLOR=#7E7E7E]// wait for a second[/COLOR]
However, depending on how you've implemented the syntax dll that's referenced in the About box, it could be a simple matter of using find and replace on the background data used to produce the text on the screen to change the colours to forum tags.

Example:
PE background info: $#CC6600#high... (whatever it is) gets converted to
Forum code: [COLOR=#CC6600]high[/COLOR]...
 

westaust55

Moderator
No problem, did you actually try it... ;-)
Only in the Simulator.
I have known about and posted about the "is" being the same as "=" but never used it in anger.

First read about the function "is" while trolling the forum archives somewhere in the past
 

SAborn

Senior Member
One function that would be very nice is, in code where a gosub statement is used "Eg:- gosub display" and the "gosub" was doubled clicked on, for PE to skip direct to the label "display"
This would save a lot of trawling through lines of code to reach the location.
Second feature would be, to be able to double click the return to skip back to the original gosub location.

Perhaps at times my code is just long and complicated, compared to others, but i think it would also be a handy tool when trouble shooting others code also.

The same feature for "goto" would also be useful, but gosub is the main one of interest.
 

westaust55

Moderator
One function that would be very nice is, in code where a gosub statement is used "Eg:- gosub display" and the "gosub" was doubled clicked on, for PE to skip direct to the label "display"
This would save a lot of trawling through lines of code to reach the location.
Second feature would be, to be able to double click the return to skip back to the original gosub location.

Perhaps at times my code is just long and complicated, compared to others, but i think it would also be a handy tool when trouble shooting others code also.

The same feature for "goto" would also be useful, but gosub is the main one of interest.
The "return" feature could only work correctly where you have first double clicked the GOSUB and then go back specifically to THAT gosub.
Otherwise problems if there are calls from multiple points to a Label and you double click the label first.
 

SAborn

Senior Member
Yes that is true Westy, i would only expect it to be able to do a single return and not a stack function, the basic idea would be each time a gosub line was dbl clicked it would save the location and over write and previous location....... a one shot function.
I dont see any need to make this some large compicated function, just a simple tool to toggle between two points in the code.
 

Technical

Technical Support
Staff member
We'll add it to the list but a quite similar feature does already exist within the Code Explorer - double click on the label name to jump to that label / gosub calls within the code.
 

SAborn

Senior Member
To be honest i find the present one a little useless.

When reading through code you come to a gosub XXX and then need to scroll down 200++ lines to find what happens in that gosub XXX then return back to the code point that sent you there, a simple skip to and from would save a lot of time.

Thanks for adding it to the list.

EDIT... i just worked out i was clicking the label tooooo slow, but with faster clicks it do skips through the program........Ok so its not so useless, only the operator is :(
 
Last edited:

nick12ab

Senior Member
To be honest i find the present one a little useless. (it works ok as a return)

When reading through code you come to a gosub XXX and then need to scroll down 200++ lines to find what happens in that gosub XXX then return back to the code point that sent you there, a simple skip to and from would save a lot of time.

Thanks for adding it to the list.
If it's any help, there's breakpoints (red rectangles) and bookmarks (blue squares) which you can set for each line and they appear in the line number margin. The breakpoints are set with a click and the bookmarks require a right click and then selection of the right option.

For jumping to gosub labels, you can select the gosub label with a mouse, press Ctrl+F and add a colon to the end so that the Find dialog finds only the babel itself and not other gosubs.
 

SD70M

Senior Member
I'd like a resizeable 'Simulation' window. When using meaningful symbols, they often don't fit.

Yes, my symbols might be a little long but they mean what they say, it makes it easier for me to follow the program.

Angie
 

westaust55

Moderator
We'll add it to the list but a quite similar feature does already exist within the Code Explorer - double click on the label name to jump to that label / gosub calls within the code.
The code explorer also picks up the same text in a remark/comment. Could the code explorer, by a selector switch/tick box if necessary, not pick up the same text in remarks.
 

Technical

Technical Support
Staff member
The code explorer also picks up the same text in a remark/comment. Could the code explorer, by a selector switch/tick box if necessary, not pick up the same text in remarks.
Clicking the label list in the toolbar (beside the font size) always takes you directly to the label.
The double click in the code explorer takes you to the next occurance - basically a 'find next' on that word. As it is really just a 'find' feature it is not easy to isolate out comments.
 
Top