New API doc - typos and questions
-
@thomthom said:
I only hope this is because of some restructure of the API site.
I also. I'd like to see the page remade like the SU Application Release Notes page, with expanding sections for each release.
-
@dan rathbun said:
@thomthom said:
... just in case to make sure that info will be available somewhere.
Isn't there an web archive kept by Google somewhere.. built by bots ??
Yes, found it (Google caches their own pages): Release Notes - Google SketchUp Ruby API - v7
Not knowing when this cached page will be replaced (possibly the 1st of next month,) here's an offline snapshot:
Release Notes - Google SketchUp Ruby API - v7.zip -
Guys, thanks for the heads up, you can blame this one on ScottL but also he was the one that corrected it, so I guess he is even.
Should be fixed shortly.
Simone. -
Just saw the updates.
Scott even sneaked in a UTM class - which apparently has been there since SU6?? -
WOW! no replies for almost a year! Things must really have improved on the SketchUp API side of things .......just kidding!
I noticed Google is buying Motorola or 12.5 Billion today http://www.telegraph.co.uk/technology/google/8702132/Google-buys-Motorola-Mobility-in-12.5bn-deal.htmlLooks like they ran out of money once again, still can't afford to hire someone to get rid of the typos in the API.
-
@tomot said:
WOW! no replies for almost a year!
Hey Tomot,
I'm still listening.
We have been making incremental fixes now and then. I'll take this ping as a useful reminder to check the thread for things we still need to do...
-
What would your preferred channel for API documentation issues be? This thread or the comment pages on the API pages?
-
@thomthom said:
What would your preferred channel for API documentation issues be? This thread or the comment pages on the API pages?
Reporting issues via the code.google.com comments tool (which you can find at the bottom of every documentation page) is better, because it warns other users right on the page.
-
Yea.. but the formatting sucks!
-
@dan rathbun said:
Yea.. but the formatting sucks!
...of course if you prefer to post nicely formatted stuff to this thread, that's cool, too!
-
@unknownuser said:
@dan rathbun said:
Yea.. but the formatting sucks!
...of course if you prefer to post nicely formatted stuff to this thread, that's cool, too!
And there is some other wee issues, it quickly wraps the comments into pages, after 10 pages. And it's not always obvious.
The biggest problem is if you have your browser set to prefer a language over English, then you'll be presented with an empty comment page. (I think the comments are all gone.) Every time I have to install a new system, or use another computer here in Norway, and the preferred language is set to Norwegian I cannot see any of the comments.
I have to rearrange the preferred languages to English before I get the comments because the API doc pages forcefully redirect me to a so-called localised version for my language, even though everything is still in English.
So I can imagine there's many people not aware of the comments at the bottom of the API pages. -
It would be better to have INLINE (expandable) comment block beneath each method. I know you guys can do this because you did it on the Release notes pages.
Also expandable sample code block under each method.
Basically it needs to be more like a wiki page. Jim experimented a bit with this on his code site page.
-
@unknownuser said:
@dan rathbun said:
Yea.. but the formatting sucks!
...of course if you prefer to post nicely formatted stuff to this thread, that's cool, too!
HOW! ??
I don't think it takes markup... or does it?
If so. What kind? git markup? bbCode? what? -
@Scott.. on the subject of the API... see this thread:
http://groups.google.com/group/sketchupruby/browse_thread/thread/112f655ea6067034/2c575f2d2113a894#2c575f2d2113a894Wouldn't it be better to have a DC
playsound()
click function appended to the the DC class? -
@dan rathbun said:
It would be better to have INLINE (expandable) comment block beneath each method. I know you guys can do this because you did it on the Release notes pages.
? Inline comment on the release notes?
-
@thomthom said:
@dan rathbun said:
It would be better to have INLINE (expandable) comment block beneath each method. I know you guys can do this because you did it on the Release notes pages.
? Inline comment on the release notes?
Yes, instead of random (newest first,) ordered comments at the page bottom...
... a poster would click an add note button WITHIN each method section. The note would be wrapped in a collapsed DIV or SPAN that is INLINE with the method section.
At the bottom of each method would be a "plus" button that has a title "Read Notes (current_num)"
If the user wished to get more info on that SPECIFIC method, they can click the "+" button, and the collapsed DIV would expand.
The same could be true for Community Contributed Sample Code Snippets. Each method could have a collapsed "snippets" section, that works in the same manner.
For an example of what I'm talking about.. see the Sketchup Release Notes page.
-
@dan rathbun said:
The same could be true for Community Contributed Sample Code Snippets. Each method could have a collapsed "snippets" section, that works in the same manner.
For an example of what I'm talking about.. see the Sketchup Release Notes page.
Oh, I thought you meant that the release notes had inline comments.
-
Since we are on this subject of API page format and features....
The API is still lacking:
- Fully qualified class names
The organization of the docs misleads readers in some cases. For instance they would think that the
PickHelper
andMenu
classes (as two examples,) are within theUI
namespace. But they are not. They are within theSketchup
namespace.
Another example isVertex
, the Docs mislead people into thinking it'sGeom::Vertex
, when it's reallySketchup::Vertex
- Ancestors: The mixin modules are not displayed for each class.
It would help greatly if the output of
.ancestors().reject{|a|a==self}
was displayed for each class and module in the API.# Class method class Module def lineage() ancestors.reject{|a|a==self} end def self.lineage() ancestors.reject{|a|a==self} end end
- Constants
A constants section is needed for each class and module, to list any constants defined within that namespace.
-
Methods
-
It's not clear (for the API classes,) what are class methods, and what are instance methods. (I suppose we assume they are instance methods.)* The access is not specified. (Again we assume they are all public, I suppose.)
-
@dan rathbun said:
@unknownuser said:
@dan rathbun said:
Yea.. but the formatting sucks!
...of course if you prefer to post nicely formatted stuff to this thread, that's cool, too!
HOW! ??
I don't think it takes markup... or does it?
If so. What kind? git markup? bbCode? what?The comments don't accept markup. I'm just saying that if you have a comment that needs code formatting or something, you can post to this Sketchucation thread.
Thanks for the extra feedback, guys. I've blocked out some time to catch up on the comments.
Cheers,
-
I don't think Scott really gets it!
The entire API has been written by someone that passed provisionally in middle school. Then went home and proudly displayed his/her proud parents, his/her proficiency in English.
We used to give a (PP} Provisional Pass to guest students, our government had invited at tax payers expense to receive an education in our country, before they return back to their country of origin. In some cases it was an insult to give our student a PP in line with the PP definition. We also gave most of our guest students a PP, we called it a Political Pass.Picking at random:
Group.split The split method is used to compute the boolean split (map overlay) of the two groups representing manifold solid volumes (this ^ arg). If the specified objects (this and arg) do not represent manifold volumes, this method fails.
Sorry! but I don't know what this entire CODE statement means:
what is a boolean split ? (this should be underlined to a definition link)
what is a manifold solid? (this should be underlined to a definition link)
what does this mean "If the specified objects (this and arg)"
where is the (map overlay)?Speaking of overlays: the API contains not one 3d image ................" a picture is worth a thousand words"
Many of the coded API examples, will give errors when entered into the Ruby console.
I think there is work major work still to be done!Speaking of Work to be done:
There is handful of users at this forum that would probably love to make correction to the API.
The time it took for them to make comments could have been more productively used to corrected the API.
Why not give them access to the API server and allow them to make corrections directly?cheers!
Advertisement