SketchUp-Ruby Resources
-
The Bastards Book of Ruby
A Programming Primer for Counting and Other Unconventional Tasks
Regular Expressions
Regular-Expressions.info - Regex Tutorial, Examples and Reference - Regexp Patterns
At Regular-Expressions.info you will find a wide range of in-depth information about a powerful search pattern language called regular expressions.
(www.regular-expressions.info)
-
Javascript implementation of Ruby. For what its worth.
-
Ruby to JavaScript compiler, for what it's worth.
-
Ruby Interpreter DLLs (Win32)
Instructions: (Win32 ONLY)
These Instructions Were Aimed at SketchUp Releases 6.x & 7.x ONLY
Navigate (Explore) on your computer, to the Google Sketchup application folder, and ...
- Backup the current "Deceased" 1.8.0 dll, msvcrt-ruby18.dll by renaming it:
- msvcrt-ruby180_p0.dll* or similar if it's a newer version. For example, if the old dll is v1.8.6-p287, then rename it msvcrt-ruby186_p287.dll
-
Download your choice of a newer version Ruby Interpreter Win32 DLL (below)
-
Make a copy of the new file and name it: msvcrt-ruby18.dll
(Sketchup is hardcoded to load this DLL filename.)
ALL Ruby 1.8 Trunk Releases Are Now Obsolete
1.8.0 [floatr:2qufrnyfOBSOLETE[/floatr:2qufrnyf]]
1.8.1 .. 1.8.4 [floatr:2qufrnyfOBSOLETE[/floatr:2qufrnyf]]
1.8.1 thru 1.8.4 are obsolete (no sense posting them.)
1.8.5 [floatr:2qufrnyfOBSOLETE[/floatr:2qufrnyf]]
This intial release (p0) was distro'd with SU 6 - 2013 (Mac)
For testing rubies on PC (as they will run under Ruby onthe Mac.)
The last patchlevel that will be released for 1.8.5
Branch v 1.8.5 is now considered obsolete.
1.8.6 [floatr:2qufrnyfOBSOLETE[/floatr:2qufrnyf]]
This patchlevel was distro'd with SketchUp Win32 versions 8 & 2013
ruby-1.8.6-p369-i386-mswin32-dll.zip
1.8.7 [floatr:2qufrnyfOBSOLETE[/floatr:2qufrnyf]]
ruby-1.8.7-p330-i386-mswin32-dll.zip
ALL Ruby 1.8 Trunk Releases Are Now Obsolete
-
RUBY PROGRAMMING REFERENCES - CHM format*
Method References for Ruby Core and Extended Modules & Classes~ Arranged by Ruby version and PatchLevel ~
1.8.6 [floatr:1ywbewgh]END OF LIFE[/floatr:1ywbewgh]
[floatr:1ywbewgh]announced 2011-09-11[/floatr:1ywbewgh]
Ruby ver 1.8.6 p398
ruby-1.8.6-p398-doc-chm-2.zip
dl.txt
DL library documentation (from v1.8.6-p287)
Online version at ruby-doc.orgLatest ver 1.8.6
Online at Ruby-Doc.org
Core <> Libraries [framed webpage]
1.8.7 [floatr:1ywbewgh]END OF LIFE[/floatr:1ywbewgh]
[floatr:1ywbewgh]2014-06-30[/floatr:1ywbewgh]
Ruby ver 1.8.7 p330
ruby-1.8.7-p330-doc-chm.zip
Latest ver 1.8.7
Online at Ruby-Doc.org
Core <> Libraries [framed webpage]
1.9.1 [floatr:1ywbewgh]END OF LIFE[/floatr:1ywbewgh]
[floatr:1ywbewgh]2012-01-31[/floatr:1ywbewgh]
Latest ver 1.9.1
Online at Ruby-Doc.org
Keywords <> Core <> Libraries [framed webpage]
1.9.2 [floatr:1ywbewgh]END OF LIFE[/floatr:1ywbewgh]
[floatr:1ywbewgh]2014-07-31[/floatr:1ywbewgh]
Latest ver 1.9.2
Online at Ruby-Doc.org
Keywords <> Core <> Libraries [framed webpage]
1.9.3 [floatr:1ywbewgh]END OF LIFE[/floatr:1ywbewgh]
[floatr:1ywbewgh]2015-02-23[/floatr:1ywbewgh]
Latest ver 1.9.3
Online at Ruby-Doc.org
Keywords <> Core <> Libraries [framed webpage]
2.0.0 [floatr:1ywbewgh]SECURITY MAINTENANCE ONLY[/floatr:1ywbewgh]
[floatr:1ywbewgh]ends 2016-02-24[/floatr:1ywbewgh]
Ruby ver 2.0.0-p247
ruby-2.0.0-p247-core-doc-chm.zip
ruby-2.0.0-p247-stdlib-doc-chm.zip
Latest ver 2.0.0
Online at Ruby-Doc.org
Core <> Libraries [framed webpage]
2.1.6 [floatr:1ywbewgh]STABLE - MAINTENANCE[/floatr:1ywbewgh]
Ruby ver 2.1.6
ruby-2.1.6-core-doc-chm.zip
ruby-2.1.6-stdlib-doc-chm.zip
Latest ver 2.1.6
Online at Ruby-Doc.org
[url=http://ruby-doc.org/core-2.1.6/index.html:1ywbewgh]Core[/url:1ywbewgh] <> [url=http://www.ruby-doc.org/stdlib-2.1.6/:1ywbewgh]Libraries[/url:1ywbewgh] [framed webpage]
2.2.2 [floatr:1ywbewgh]STABLE - CURRENT[/floatr:1ywbewgh]
Ruby ver 2.2.2
ruby-2.2.2-core-doc-chm.zip
ruby-2.2.2-stdlib-doc-chm.zip
Latest ver 2.2.2
Online at Ruby-Doc.org
[url=http://ruby-doc.org/core-2.2.2/index.html:1ywbewgh]Core[/url:1ywbewgh] <> [url=http://www.ruby-doc.org/stdlib-2.2.2/:1ywbewgh]Libraries[/url:1ywbewgh] [framed webpage]
*** Compiled HTML Help Markup**
NOTICE: CHMs for older patchlevels under each version may be deleted to save server space.
( Get 'em while they're hot! ) -
Ruby Newbie's Guide to Getting Started
Go to this post... Ruby Resources
(1) make a checklist of all the Tutorials, and go thru them 1 by 1, and check them off the list as you do.
(2) make a checklist of all the free downloadable books, and down load them one by one. Put them in a folder on your Desktop (or wherever you can find them easily.) And read them.
(3) For Standard ruby Reference, get the CHM for Ruby here, put it in this same folder.
Get comfortable with Standard Ruby. When your ready to script for Sketchup:
(4) On the Reference list (link above,) go to the Sketchup Specific section, and download Alex's Cheatsheet, and bookmark the Sketchup API Documentation website. (You'll be referencing it a lot.) It has the methods for the modules and classes for 'talking' to Sketchup, and manipulating it's models.
(5) Go through all the available Sketchup Ruby tutorials (on the list.)
(6) Read the code examples in your plugins/Examples folder.
(7) Have fun. Start fooling around with Ruby under Sketchup. Usually the best thing is to start by customizing the examples.
(8) Whenever you have questions, come back to this forum, and first do a search (it's likely your question has already been asked.) If not.. start a new topic (make the the topic title simple but informative... a shortened version of your question. Don't make it "Help Me!", that does not work well.)
(9) Before going into advanced Sketchup scripting, download more advanced plugins from the plugins forum (or other websites.. see the Resource list,) and examine them. See how they did things. This the best way to learn how to do things right. If you have a question about why an author did something a certain way... you can either Private Message them, or see if there is a discussion topic specific to their plugin, here in the Developer's forum, and post a question at the end of that topic. If no topic exists, create one by putting the plugin name in square brackets following by 'coding questions.' Please don't ask coding questions in the Plugin distribution topic of the Plugins forum. Ask them here in the Developers forum.
And ... welcome to the world of Ruby !
-
In his main post above, Dan basically suggests becoming very familiar with Ruby before beginning to use it with Sketchup. And he has a very good point, especially when it comes to the powerful and rather esoteric ways that Dan himself can use Ruby.
However, in the other direction, the Bastard's Book above, http://ruby.bastardsbook.com/, makes the point that "Programming and knitting are both skills that require continual practice but aren't easily improved by doing things other than, well, actually programming or knitting." So he presents lots of simple ways to get in your practice. "The good thing about programming compared to knitting a scarf is that you can experiment and mess up all you want without having to go out and buy more yarn."
Even further in that direction, Matthew Scarpino's book, "Automatic Sketchup", gives you ways to get that fundamental practice by working in Sketchup. And that's your goal, isn't it? I would even recommend Matt's book and SketchUp Ruby for initial programming instruction -- the instant gratification of creating SU objects is hard to beat.
And don't let the Amazon price for this out-of-print book scare you off. It's available free at the author's site. See also this thread, Automatic Sketchup book can now be freely downloaded.
-
WIN32OLE Sample scripts from the Ruby 1.8.6-p287 distribution:
-
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ |--<<< RUBY RESOURCES >>>--|
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
Ruby Newbie's Guide to Getting Started
viewtopic.php?f=180&t=10142&start=15#p298780
TUTORIALS & PRIMERS
~ Ruby (Generic) ~
Introduction to Ruby
http://www.ruby-doc.org/docs/Tutorial/Ruby User's Guide
by Mark Slagell, Iowa State University
http://www.rubyist.net/~slagell/ruby/Ruby Study Notes
by Satish Talim
http://rubylearning.com/satishtalim/tutorial.htmlLearn to Program
by Chris Pine
http://pine.fm/LearnToProgram/~ Sketchup Specific ~
Edges to Rubies - The Complete SketchUp Tutorial
by Martin Rinehart
http://www.martinrinehart.com/models/tutorial/Ruby Tutorials
SketchUcation Forums
http://forums.sketchucation.com/viewtopic.php?p=52665#p52665Tutorial Index
SketchUcation Forums
http://forums.sketchucation.com/viewtopic.php?f=18%26amp;t=8767
BOOKS
~ Offline (PDF, CHM, TAR, etc.) ~
The Book of Ruby
by Huw Collingbourne
** PDF
http://www.sapphiresteel.com/IMG/zip/book-of-ruby.zipThe Little Book of Ruby
by Huw Collingbourne
** PDF
http://www.sapphiresteel.com/IMG/pdf/LittleBookOfRuby.pdfMr. Neighborly's Humble Little Ruby Book
by Jeremy McAnally
** PDF
http://www.humblelittlerubybook.com/book/hlrb.pdfProgramming Ruby - The Pragmatic Programmer's Guide, 1st Ed.
(aka "The Old Pick-Axe Book" circa Ruby ver 1.6.x)
by David Thomas and Andrew Hunt
** TAR archive of website
http://phrogz.net/ProgrammingRuby/ProgrammingRuby_20061016.tar.gz
** CHM edition file is included w/ Win 1.8.6 One-click install
see your /ruby/doc directory OR
[url=http://forums.sketchucation.com/viewtopic.php?f=180%26amp;t=10142%26amp;p=431798#p431798:23sdyhrr]download from SketchUcation[/url:23sdyhrr]Extending Ruby 1.9 - The Pragmatic Programmer's Guide
by David Thomas
[url:23sdyhrr]http://media.pragprog.com/titles/ruby3/ext_ruby.pdf[/url:23sdyhrr]Ruby Best Practices
by Gregory T. Brown
** PDF
http://sandal.github.com/rbp-book/pdfs/rbp_1-0.pdfAutomatic SketchUp
by Matthew Scarpino, Eclipse Engineering LLC
[url:23sdyhrr]http://www.autosketchup.com/downloads/Automatic_SketchUp.pdf[/url:23sdyhrr]~ Online ~
[i:23sdyhrr]Ruby Essentials[/i:23sdyhrr]
Techotopia
[url:23sdyhrr]http://www.techotopia.com/index.php/Ruby_Essentials[/url:23sdyhrr]Programming Ruby - The Pragmatic Programmer's Guide, 1st Ed.
(aka "The Old Pick-Axe Book" circa Ruby ver 1.6.x)
by David Thomas and Andrew Hunt
[url:23sdyhrr]http://phrogz.net/ProgrammingRuby/frameset.html[/url:23sdyhrr] OR
[url=http://forums.sketchucation.com/viewtopic.php?f=180%26amp;t=10142%26amp;p=431798#p431798:23sdyhrr]download from SketchUcation[/url:23sdyhrr]~ Previews of Ruby Books for Sale ~
[i:23sdyhrr]Learn to Program, 2nd Ed.[/i:23sdyhrr]
by Chris Pine
(expanded from the original tutorial)
[url:23sdyhrr]http://www.pragprog.com/titles/ltp2/learn-to-program-2nd-edition[/url:23sdyhrr][i:23sdyhrr]Programming Ruby - The Pragmatic Programmer's Guide, 2nd Ed.[/i:23sdyhrr]
(aka "The New Pick-Axe Book" circa Ruby ver 1.8.x)
by David Thomas, with Chad Fowler and Andrew Hunt
[url:23sdyhrr]http://pragprog.com/titles/ruby/programming-ruby[/url:23sdyhrr][i:23sdyhrr]Programming Ruby 1.9: The Pragmatic Programmers' Guide[/i:23sdyhrr]
by David Thomas, with Chad Fowler and Andrew Hunt
http://pragprog.com/titles/ruby3/programming-ruby-1-9[i:23sdyhrr]The Ruby Programming Language[/i:23sdyhrr]
by David Flanagan and Yukihiro Matsumoto
http://books.google.com/books?id=jcUbTcr5XWwC%26amp;lpg=PA98%26amp;ots=fHGordbwjC...
TECHNICAL REFERENCES
[i:23sdyhrr]Ruby Cheatsheet[/i:23sdyhrr]
[url:23sdyhrr]http://www.zenspider.com/Languages/Ruby/QuickRef.html[/url:23sdyhrr][i:23sdyhrr]Ruby Base Classes - circa ver 1.6.x[/i:23sdyhrr]
(but most still OK for 1.8.x which has more methods)
[url:23sdyhrr]http://phrogz.net/ProgrammingRuby/builtins.html[/url:23sdyhrr][i:23sdyhrr]Ruby Core Documentation[/i:23sdyhrr]
(may be ver 1.9.x)
[url:23sdyhrr]http://www.ruby-doc.org/core/[/url:23sdyhrr][i:23sdyhrr]RDoc Documentation[/i:23sdyhrr]
[url:23sdyhrr]http://rdoc.rubyforge.org/[/url:23sdyhrr][i:23sdyhrr]RubyGems User Guide[/i:23sdyhrr]
[url:23sdyhrr]http://rubygems.org/read/chapter/1[/url:23sdyhrr][i:23sdyhrr]RubyGems Manuals[/i:23sdyhrr]
[url:23sdyhrr]http://docs.rubygems.org/[/url:23sdyhrr]
INDEXES
[i:23sdyhrr]Resources[/i:23sdyhrr]
(SketchUp Sage)
[url:23sdyhrr]http://sites.google.com/site/sketchupsage/resources[/url:23sdyhrr]
SKETCHUP SPECIFIC
~ API ~
[i:23sdyhrr]SketchUp Ruby API Cheatsheet[/i:23sdyhrr]
by Alex Schreyer
[url:23sdyhrr]http://www.alexschreyer.net/cad/sketchup-ruby-api-cheatsheet/[/url:23sdyhrr][i:23sdyhrr]SketchUp Ruby API[/i:23sdyhrr]
[url:23sdyhrr]http://code.google.com/apis/sketchup/[/url:23sdyhrr][i:23sdyhrr]SketchUp Ruby API - Class Index[/i:23sdyhrr]
[url:23sdyhrr]http://code.google.com/apis/sketchup/docs/classes.html[/url:23sdyhrr][i:23sdyhrr]SketchUp Ruby API - Method Index[/i:23sdyhrr]
[url:23sdyhrr]http://code.google.com/apis/sketchup/docs/methods.html[/url:23sdyhrr][i:23sdyhrr]SketchUp Ruby API - Class Diagram[/i:23sdyhrr]
[url:23sdyhrr]http://code.google.com/apis/sketchup/docs/diagram.html[/url:23sdyhrr][i:23sdyhrr]Sketchup Ruby API Class Diagrams[/i:23sdyhrr]
by Jim Foltz
[url:23sdyhrr]http://sketchuptips.blogspot.com/2008/08/sketchup-ruby-api-class-diagrams.html[/url:23sdyhrr][i:23sdyhrr]Google SketchUp API Blog[/i:23sdyhrr]
[url:23sdyhrr]http://sketchupapi.blogspot.com/[/url:23sdyhrr][i:23sdyhrr]PickHelper - Visual Guide[/i:23sdyhrr]
by Thomas Thomassen
[url=http://forums.sketchucation.com/viewtopic.php?f=180%26amp;t=30232%26amp;p=266685:23sdyhrr]http://forums.sketchucation.com/viewtopic.php?f=180&t=30232&p=266685[/url:23sdyhrr][i:23sdyhrr]WebDialogs - The Lost Manual[/i:23sdyhrr]
by Thomas Thomassen
[url:23sdyhrr]http://forums.sketchucation.com/download/file.php?id=36664[/url:23sdyhrr]~ Indexes ~
[i:23sdyhrr]SketchUp-Ruby Resources[/i:23sdyhrr]
[url:23sdyhrr]http://forums.sketchucation.com/viewtopic.php?f=180%26amp;t=10142[/url:23sdyhrr]~ BBs / Forums ~
[i:23sdyhrr]Developers Forum - Google Groups[/i:23sdyhrr]
[url:23sdyhrr]http://groups.google.com/group/google-sketchup-developers[/url:23sdyhrr][i:23sdyhrr]Developers Forum - SketchUcation Community Forums[/i:23sdyhrr]
[url:23sdyhrr]http://forums.sketchucation.com/viewforum.php?f=180[/url:23sdyhrr]~ Code Snippets ~
[i:23sdyhrr]Code Snippets Index - SketchUcation Developers Forum[/i:23sdyhrr]
[url:23sdyhrr]http://forums.sketchucation.com/viewtopic.php?f=180%26amp;t=28846[/url:23sdyhrr]~ Plugins ~
[i:23sdyhrr]Plugins Index (by author) - SketchUcation Plugins Forum[/i:23sdyhrr]
[url:23sdyhrr]http://forums.sketchucation.com/viewtopic.php?f=323%26amp;t=28782[/url:23sdyhrr][i:23sdyhrr]Plugins Visual Index - SketchUcation Plugins Forum[/i:23sdyhrr]
[url:23sdyhrr]http://forums.sketchucation.com/viewtopic.php?f=323%26amp;t=16909[/url:23sdyhrr][i:23sdyhrr]Trimble SketchUp - Plugins (Download Page)[/i:23sdyhrr]
[url:23sdyhrr]http://www.sketchup.com/intl/en/download/plugins.html[/url:23sdyhrr][i:23sdyhrr]Trimble SketchUp - Ruby Scripts (Download Page)[/i:23sdyhrr]
[url:23sdyhrr]http://www.sketchup.com/intl/en/download/rubyscripts.html[/url:23sdyhrr][i:23sdyhrr]Jim Foltz SketchUp Plugins[/i:23sdyhrr]
[url:23sdyhrr]http://sketchuptips.blogspot.com/2007/09/plugin-index-page.html[/url:23sdyhrr][i:23sdyhrr]Ruby Libray Depot[/i:23sdyhrr]
! URL Removed due to too many outdated plugins ![i:23sdyhrr]Smustard(TM) - Plugins and Scripts[/i:23sdyhrr]
[url:23sdyhrr]http://www.smustard.com/scripts/[/url:23sdyhrr][i:23sdyhrr]JohnJ - Plugins for Sketchup[/i:23sdyhrr]
[url:23sdyhrr]http://www.johnj.com/drawing/sketchup/ruby-plugins-for-sketchup/[/url:23sdyhrr]
Advertisement