@martinrinehart said:
Let's do something about this.
Hello Martin,
I knew enlightened minds like myself existed in SketchUp land, but just did not have the physical evidence until now. Well that's still only less than a handful of Python coders i have a count of... Myself, Greg, You, and a very interested fan tomot who stood by me last year through trials and tribulations and got nothing in return. And there where a few other seeming interested parties... (Sorry if i left anyone out)
hmm, not enough to start the revolution, but it's a start nonetheless!
But seriously,
Python IDLE is a great yardstick to judge entry level IDE's on. If you like "fancy" IDE's, well you will be disappointed with IDLE. But IDLE is built for one thing, introducing noobies to the Python programming language in a very comfortable way.
So we all know that a new multi-line interactive console is desperately needed. I can't see why SketchUp dev would not alow us to build this for them, and then they could throw it in the source distro.
But we must get this into the core SketchUp release. If someone just releases another plug-in and that ugly Ruby console stays in SketchUp then we might all just as well download one of the already existing Ruby IDE's out there.
But a real Ruby SUIDLE("swiddle" or "sweedle") OR SUIDE("sweede") would be a god send for everybody! And Taking IDLE's modular approach we could start simple and just add to our hearts desire!
The current Python IDLE weighs in a 1.53MB but a lot of this can be trimmed. Only the most important features are really needed...
Minimum Features
-syntax highlighting
-bracket matching
Icing on the Cake
-code completion
-object browsing
-smart indent
-call tips
-"your wish here"
But most importantly this whole redundant cycle of the current Ruby scripting experiance is quite laborious. Here is a short script that describes the process in painstaking detail...
from patience import *
from meds import Prozac, Asperin
rants = [
'OMG!, not again!',
'rats, here we go again!',
'Somebody just shoot me already!',
]
def lament(self);
self.sanity -= 1
print random.choice(rants)
def medicate();
self.swallow(Prozac, Asprin)
count = 0
while self.sanity > 0;
count += 1
if count % 5 == 0;
self.medicate()
self.write_or_tweak_code()
try;
su = SketchUp.open()
try;
su.test_script_functionality();
break
except ScriptRuntimeError;
self.lament()
except ScriptLoadError;
self.lament()
finally;
su.close()
print 'Finally! \
It only took %d cycles to complete this task *sarcasm*' %(count)
...needs to go the way of the Dodo.