On-Demand Extension Loader for SketchUp

This tool lets you use plugins without installing them (good for computer labs or keeping SketchUp lean).

Description

loader-icon-512This SketchUp plugin was created out of a need for having plugins available in a “locked down” computer lab setting (similar to my solution for AutoCAD). Those machine’s settings often prevent the user from reliably saving plugins to either the system directory (which was necessary before SketchUp 2014) or to the user directory. With this plugin, the user can save a plugin’s files anywhere and then load the plugin into SketchUp directly from that location.

After installation, this is how the plugin appears under the “Plugins” menu:

SketchUp Plugin Loader

These are the main functions:

  • The top two items allow for loading either a single plugin (from a RB file) or several plugins at once that are all contained in a folder. For the second option, simply select any file within the folder and all will be loaded.
  • The next two items allow for permanently installing a plugin from an RBZ or ZIP file (similar to the function that is available in the Preferences) and to manage the installed plugins.

Usage

Use the submenu items under Plugins/Extensions > Plugin Loader.

Downloads and Installation

You can now find this plugin in Trimble’s Extension Warehouse. For an easy install (and update notifications), browse to it from inside SketchUp (2013 or newer) and install it directly.

Alternative Downloads

Download “Plugin Loader for SketchUp (RBZ)” as_pluginloader_1-7.rbz – Downloaded 1738 times – 3 KB

Download “Plugin Loader for SketchUp (ZIP)” as_pluginloader_1-7.zip – Downloaded 1242 times – 3 KB

To install these files, follow the SketchUp folks’ instructions. IMPORTANT: I changed file names from v. 1.0 to 1.1. If you are updating from before v. 1.1, delete the old version first. Keep the folder organization as it is in the ZIP file, otherwise the plugin may not work properly.

ALSO: If you want to receive a notification whenever a new version is published, subscribe to the comments below.

Alternatively, you can save this plugin’s unzipped files anywhere (e.g. your USB memory stick – the H: drive in my case) and then load it into SketchUp (no restart required!) by opening the Ruby Console (Window > Ruby Console) and entering this (modify for your setup):

  load "H:\PluginLoader.rb"

Screenshots

Using the plugin load function, you can load plugins that are located anywhere:

Plugin loader dialog

To load a plugin, browse to its main Ruby (RB) file. If you are loading all plugins in a folder, simply select any file in that folder.

Issues

  • While this loading approach will work in most cases, it may fail to load some plugins due to programmed-in dependencies (mainly hard-coded file locations).

Revision History

  • Version 1.7 (2/22/2015):
    – Added plugins directory menu item
    – Code cleanup
    – SketchUp 8 syntax error fix
  • Version 1.6 (2/11/2015):
    – Cleaned up code
    – Added SU 15’s dialog selector
    – Renamed plugin to extension where applicable
  • Version 1.5 (2/17/2014):
    – Fixed saving of file paths to registry
    – Code cleanup
  • Version 1.4 (5/16/2013):
    – Removed browser feature to comply with Trimble rules
  • Version 1.3 (5/15/2013):
    – Added RBZ installing option
    – Updated archive links
    – Default file location is now userprofile
    – Plugin remembers last folder
    – Fixed up some dialogs and added more feedback
    – Now reports error if problem occurs
    – New folder structure
    – Fixed multiple loader code
  • Version 1.2 (11/3/2010):
    – Renamed some menu items
    – Added Google custom search
    – Added link to extension manager
    – Reformatted code and added module
    – Removed developer links (those are now in my Ruby Code Editor)
    – Changed layout of browser a bit
    – Fixed mac issues: dlg can’t show modal, browser buttons dont work well
  • Version 1.1 (3/18/2009):
    – Added more plugin links and fixed some spelling
    – Added browser “buttons” and better explanation
    – Added help menu item and updated help file
    – Changed menu order a bit
  • Version 1.0 (3/9/2009):
    – First version

Credits

Thanks to Jim Folz for his help (in the SCF).

  • I just uploaded version 1.5 that contains a bunch of bug fixes.

  • Orm

    Hello, and thank you.
    I just installed v1.4.
    After using your plugin, I get an error message when restarting Sketchup:

    Error Loading File C:/Program Files (x86)/SketchUp/SketchUp 2013/Plugins/as_pluginloader/as_pluginloader.rb
    (eval):68:in `read_default’: compile error
    (eval):68: Invalid escape character syntax
    “C:UsersPublicMATC110SketchupRubyPlugins”
    ^
    Error Loading File as_pluginloader.rb
    (eval):68:in `read_default’: compile error
    (eval):68: Invalid escape character syntax
    “C:UsersPublicMATC110SketchupRubyPlugins”
    ^

    After closing the error message everything seems to work normally.
    Any ideas?
    Thanks again.

  • Name

    Hi
    I have installed your plug in…at least I got the IT blokes to do it and it appears to work but none of the loaded plugins run….there is sometimes an error message that says the plugin will have access to the file system and asks me to confirm…Im sure its a permission thing but what permssions do I need to ask IT to grant me and where ?

    • Does my plugin show up properly as the menu under the Plugins menu? Then try to load a plugin from a “safe” location: The user folder or a thumb drive. Just make sure the plugins are unzipped into a folder there. Do you still get errors?
      You should get the file system warning only when you permanently install an RBZ plugin because that will do so in a protected area.

      • Colin

        Yes your plugin show correctly and goes through the motions of loading the other plugins. The other plugins just don’t show. Have tried from my home drive and my desktop….unless the system is so locked down.

        I can run things like blender and inkscape from my home drive though.

        • Some plugins just won’t work this way since the plugin authors might have hardcoded absolute paths into them (instead of relative paths). Try it on a very simple plugin instead of a complex one.

  • ricmck

    I can not “login” to SketchUcation via your popup window. The login in box is “grayed out”? I have a SketchUcation account and I have tried being logged in (in a different browser tab). but your popup window will not let me login. Thus, I can not “get to” the plugins.

    What am I doing wrong, or don’t get?

    Thanks

    Rick

    • That has to do with how they set up their new login box. The login form should appear when you hover the registration link. When I just tried it, I was able to add my credential but clicking on the submit button required me to TAB to it and then hit return. Would be nice if they had a “non-fancy” link for login somewhere else, too.

      Logging in on your regular browser and then going to the site in SketchUp doesn’t work because the SketchUp browser is separate from the main browser.

  • Kiko

    Hello Alex, please keep me updated…

  • Just added the RBZ version of this plugin. If you have SU v.8 M2 installed, give it a try!

    • Irwan Caniago

      i am still using 8.0.4811 though :)
      i am happy with the zip one ;)
      thank you alex.

  • Irwanwr

    does it still work with SU8? i’ve put many rb files into SU plugins folder. i wonder if this plugin can help manage those plugins. so that i don’t have to copy paste all of them into SU plugins folder from my lib folder.

    • I have been using it with v.8, so it does work. Let me know if you run into any problems.

      • Irwanwr

        yes, it does work. thank you.

  • Howardhong

       def self.load_plugin_folder    initdir = Sketchup.find_support_file(“plugins”)    if Sketchup.version.to_f < 7.0  filename = UI.openpanel "Select any file – all plugins will be loaded from that folder"    else  filename = UI.openpanel("Select any file – all plugins will be loaded from that folder", initdir, "*.rb")    end
       if filename                 dirname = File.dirname(filename.gsub("\", "/"))       begin
             rbfiles = Dir[File.join(dirname, "*.rb")]
             $:.push dirname
             rbfiles.each {|f| require f}
         rescue
             UI.messagebox "Could not load all files from: n#{dirname}"     end
       end
        end # load_plugin_folder

  • Tibg

    Thanks :)

  • ben

    nice………. i got some question if u don’t mind……. :) where can i find plugin that got kerkythea exporter…. ty

    email: ykbenedict@yahoo.com

  • mac1

    Great work !

  • mac1

    Have not tried yet but looks great!

  • zakaria faqyr

    thank you for your applications
    i'm from morocco , really i like it

  • Thanks for your work. I appreciate it!

  • James

    great site…thanks

  • SketchUp Ed

    Just tried it works better than I thought it would

    • alexschreyer

      Good to hear!

  • alexschreyer

    I just updated the Plugin Loader plugin to v.1.2. Download from my site.

    Cheers,
    Alex

  • alexschreyer

    As long as the files are in the "Plugins" folder in the SketchUp installation, they should be loaded automatically on startup. You would then find the menu item in the "Plugins" menu.

    One issue that I just recently noticed: Vista seems to protect file in the installation folder. I'll have to look into a fix for that.

  • Kenneth

    When loading the posts I noticed it left out the back slashes I've entered in my file locations. Thanks in advance for any help.

  • Kenneth Heinzmann

    I have not been able to find the plugins I've loaded into sketchup. I've placed the .rb file in the correct location "C:Program FilesGoogleGoogle SketchUp 7PluginsPluginLoaderas_pluginloader.rb" and used the ruby console to load them into sketchup. I must be loading correctly because the ruby console respondes "true" after entering,

    load "C:Program FilesGoogleGoogle SketchUp 7PluginsPluginLoaderas_pluginloader.rb"

    Although I've used Sketchup for a while this is my first time loading plugins. I have restarted sketchup each time I've tried. I am currently using a PC with free Sketchup 7.1 from Google. Maybe my sketchup is too new? I would appreciated any help on this topic. Thank you

  • Allan

    Great work, keep me updated! Many Thanks

  • resder

    Hola soy nuevo en esto de Sketchuo creo que aprendere mucho chauuuuuuuuu

  • Roberto Carneiro

    Alex
    Thanks for this. When you have other news, please
    can tell. Thank you.!

  • Bongani Arthur

    Like to recieve updates of plug-ins and tools.

  • Brooke

    Of course. Beg pardon. I did one of those copy path commands and did not check how it was transcribed and since then have had blinders on, apparently.

    Thanks. much.

  • Brooke

    For the attempt above, this was the console command:

    load "C:Program Files (x86)GoogleGoogle SketchUp 7Pluginsas_pluginloader.rb"

  • Brooke

    For the attempt above, this was the console command:

    load "C:Program Files (x86)GoogleGoogle SketchUp 7Pluginsas_pluginloader.rb"

  • Brooke

    For the attempt above, this was the console command:

    load "C:Program Files (x86)GoogleGoogle SketchUp 7Pluginsas_pluginloader.rb"

    I mention that just because of the strange spelling/format changes.

    • alexschreyer

      Your console command should have been:

      load "C:\Program Files (x86)\Google\Google SketchUp 7\Plugins\as_pluginloader.rb"

      You forgot the slashes.

  • Brooke

    Failure to load by the console:

    load "C:Program Files (x86)GoogleGoogle SketchUp 7Pluginsas_pluginloader.rb"
    Error: #<LoadError: (eval):894:in `load': No such file to load — C:Program Files (x86)GoogleGoogle SketchUp 7Pluginss_pluginloader.rb>
    (eval):894

  • zalmon

    i am not able to load plugins from a folder(entire folder) even by installing pluginloader.rb in the plugin folder. is their way to that using ruby console. plz help me out.

    • alexschreyer

      I'll look into this.

      Cheers,
      Alex

  • leon baydoun

    very helpfull thank you

  • Henry

    Alex Thank you again .

  • Robert

    Grand!

  • takesh h

    Confirmed it's functioning on Macs (OSX10.5.6, SU6pro). Thanks.

  • alexschreyer

    I have just posted a new version (v.1.1) of this plugin.

  • Rick Fitzpatrick

    Cool. Thank you. Came across your site looking for Sketchup plugins. Very nice site. Interesting too. I'm not an architect or engineer but I'm interested in some aspects none the less. I'll try out the Loader tomorrow. Its late right now. Thanks again. I'll be back.

  • This is a great script. Very useful. Thanks Alex

  • edson mahfuz

    have you tried it on mac? regards.

    • alexschreyer

      I haven't. Can someone please try it and tell me if it works?