• Login
sketchucation logo sketchucation
  • Login
πŸ€‘ SketchPlus 1.3 | 44 Tools for $15 until June 20th Buy Now

Notepad++ SU8 Ruby API Autocomplete

Scheduled Pinned Locked Moved Developers' Forum
62 Posts 12 Posters 13.9k Views
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • D Offline
    Dan Rathbun
    last edited by 2 Feb 2011, 11:09

    Here's the 1.8.6 constant list for the Float class:

    		<Keyword name="Float;;DIG"/>
    		<Keyword name="Float;;EPSILON"/>
    		<Keyword name="Float;;MANT_DIG"/>
    		<Keyword name="Float;;MAX"/>
    		<Keyword name="Float;;MAX_10_EXP"/>
    		<Keyword name="Float;;MAX_EXP"/>
    		<Keyword name="Float;;MIN"/>
    		<Keyword name="Float;;MIN_10_EXP"/>
    		<Keyword name="Float;;MIN_EXP"/>
    		<Keyword name="Float;;RADIX"/>
    		<Keyword name="Float;;ROUNDS"/>
    
    

    I'm not here much anymore.

    1 Reply Last reply Reply Quote 0
    • D Offline
      Dan Rathbun
      last edited by 2 Feb 2011, 12:26

      Here's the 1.8.6 constant list for the IO class:

      		<Keyword name="IO;;APPEND"/>
      		<Keyword name="IO;;BINARY"/>
      		<Keyword name="IO;;CREAT"/>
      		<Keyword name="IO;;EXCL"/>
      		<Keyword name="IO;;FNM_CASEFOLD"/>
      		<Keyword name="IO;;FNM_DOTMATCH"/>
      		<Keyword name="IO;;FNM_NOESCAPE"/>
      		<Keyword name="IO;;FNM_PATHNAME"/>
      		<Keyword name="IO;;FNM_SYSCASE"/>
      		<Keyword name="IO;;LOCK_EX"/>
      		<Keyword name="IO;;LOCK_NB"/>
      		<Keyword name="IO;;LOCK_SH"/>
      		<Keyword name="IO;;LOCK_UN"/>
      		<Keyword name="IO;;NONBLOCK"/>
      		<Keyword name="IO;;RDONLY"/>
      		<Keyword name="IO;;RDWR"/>
      		<Keyword name="IO;;SEEK_CUR"/>
      		<Keyword name="IO;;SEEK_END"/>
      		<Keyword name="IO;;SEEK_SET"/>
      		<Keyword name="IO;;TRUNC"/>
      		<Keyword name="IO;;WRONLY"/>
      
      

      I'm not here much anymore.

      1 Reply Last reply Reply Quote 0
      • D Offline
        Dan Rathbun
        last edited by 2 Feb 2011, 13:31

        Here's the 1.8.6 constant list AND class methods for the Marshal module:

        		<Keyword name="Marshal;;MAJOR_VERSION"/>
        		<Keyword name="Marshal;;MINOR_VERSION"/>
        		<Keyword name="Marshal;;dump" func="yes">
        			<Overload retVal="String" descr="Returns String result of serializing obj and all descendent objects.">
        				<Param name="~Object obj" />
        			</Overload>
        			<Overload retVal="~IO" descr="Returns io_obj, after writing to it, the serialized data for obj and all descendent objects.">
        				<Param name="~Object obj" />
        				<Param name="~IO io_obj" />
        			</Overload>
        			<Overload retVal="~IO" descr="Returns io_obj, after writing to it, the serialized data for obj and the descendent objects limited to the specified depth (if non-negative. Default depth=-1)">
        				<Param name="~Object obj" />
        				<Param name="~IO io_obj" />
        				<Param name="~Integer depth" />
        			</Overload>
        		</KeyWord>
        		<Keyword name="Marshal;;load" func="yes">
        			<Overload retVal="~Object" descr="Returns the result of converting the serialized data in source into a Ruby object (possibly with associated subordinate objects). source may be either an instance of IO or an object that responds to to_str().">
        				<Param name="~IO|^String source" />
        			</Overload>
        			<Overload retVal="~Object" descr="Returns the result of converting the serialized data in source into a Ruby object (possibly with associated subordinate objects). source may be either an instance of IO or an object that responds to to_str(). If proc_obj is specified, it will be passed each object as it is deserialized.">
        				<Param name="~IO|^String source" />
        				<Param name="Proc proc_obj" />
        			</Overload>
        		</KeyWord>
        		<Keyword name="Marshal;;restore" func="yes">
        			<Overload retVal="~Object" descr="Alias for Marshal;;load() Returns the result of converting the serialized data in source into a Ruby object (possibly with associated subordinate objects). source may be either an instance of IO or an object that responds to to_str().">
        				<Param name="~IO|^String source" />
        			</Overload>
        			<Overload retVal="~Object" descr="Alias for Marshal;;load() Returns the result of converting the serialized data in source into a Ruby object (possibly with associated subordinate objects). source may be either an instance of IO or an object that responds to to_str(). If proc_obj is specified, it will be passed each object as it is deserialized.">
        				<Param name="~IO|^String source" />
        				<Param name="Proc proc_obj" />
        			</Overload>
        		</KeyWord>
        
        

        As an experiment, in parameters, I used:
        "~" to denote "this class or subclass"
        "^" to denote "implictly convertable to" (which would include the class and any subclasses.)

        for ex: ^Integer would mean: " Integer class, subclass, or object that implements a to_i() method."

        I'm not here much anymore.

        1 Reply Last reply Reply Quote 0
        • D Offline
          driven
          last edited by 3 Feb 2011, 15:41

          Hi Dan,

          This is the sort of thing I want to check in SU ruby on the mac,
          Your first snip seems to bring up loads more methods than what your posting, are you editing yours down?

          I'd like to do more, but adding the code to get the extra bits is beyond me.

          Would you mind sharing Marshal snippet, and will that work with all modules?

          Is the a 1.8.6 module that simply didn't exist at all in 1.8.5 that I could test for?

          cheers

          john

          	<Keyword name="File;;FNM_CASEFOLD;;File"/>
          		<Keyword name="File;;FNM_DOTMATCH"/>
          		<Keyword name="File;;FNM_DOTMATCH;;File"/>
          		<Keyword name="File;;FNM_NOESCAPE"/>
          		<Keyword name="File;;FNM_NOESCAPE;;File"/>
          		<Keyword name="File;;FNM_PATHNAME"/>
          		<Keyword name="File;;FNM_PATHNAME;;File"/>
          		<Keyword name="File;;FNM_SYSCASE"/>
          		<Keyword name="File;;FNM_SYSCASE;;File"/>
          		<Keyword name="File;;LOCK_EX"/>
          		<Keyword name="File;;LOCK_EX;;File"/>
          		<Keyword name="File;;LOCK_NB"/>
          		<Keyword name="File;;LOCK_NB;;File"/>
          		<Keyword name="File;;LOCK_SH"/>
          		<Keyword name="File;;LOCK_SH;;File"/>
          		<Keyword name="File;;LOCK_UN"/>
          		<Keyword name="File;;LOCK_UN;;File"/>
          		<Keyword name="File;;NOCTTY"/>
          		<Keyword name="File;;NOCTTY;;File"/>
          		<Keyword name="File;;NONBLOCK"/>
          		<Keyword name="File;;NONBLOCK;;File"/>
          		<Keyword name="File;;PATH_SEPARATOR"/>
          		<Keyword name="File;;PATH_SEPARATOR;;File"/>
          		<Keyword name="File;;RDONLY"/>
          		<Keyword name="File;;RDONLY;;File"/>
          		<Keyword name="File;;RDWR"/>
          		<Keyword name="File;;RDWR;;File"/>
          		<Keyword name="File;;SEEK_CUR"/>
          		<Keyword name="File;;SEEK_CUR;;File"/>
          		<Keyword name="File;;SEEK_END"/>
          		<Keyword name="File;;SEEK_END;;File"/>
          		<Keyword name="File;;SEEK_SET"/>
          		<Keyword name="File;;SEEK_SET;;File"/>
          		<Keyword name="File;;SEPARATOR"/>
          		<Keyword name="File;;SEPARATOR;;File"/>
          		<Keyword name="File;;SYNC"/>
          		<Keyword name="File;;SYNC;;File"/>
          		<Keyword name="File;;Separator"/>
          		<Keyword name="File;;Separator;;File"/>
          		<Keyword name="File;;Stat"/>
          		<Keyword name="File;;Stat;;File"/>
          		<Keyword name="File;;TRUNC"/>
          		<Keyword name="File;;TRUNC;;File"/>
          		<Keyword name="File;;WRONLY"/>
          		<Keyword name="File;;WRONLY;;File"/>
          ["ALT_SEPARATOR", "APPEND", "CREAT", "Constants", "EXCL", "FNM_CASEFOLD", "FNM_DOTMATCH", "FNM_NOESCAPE", "FNM_PATHNAME", "FNM_SYSCASE", "LOCK_EX", "LOCK_NB", "LOCK_SH", "LOCK_UN", "NOCTTY", "NONBLOCK", "PATH_SEPARATOR", "RDONLY", "RDWR", "SEEK_CUR", "SEEK_END", "SEEK_SET", "SEPARATOR", "SYNC", "Separator", "Stat", "TRUNC", "WRONLY"]
          
          

          learn from the mistakes of others, you may not live long enough to make them all yourself...

          1 Reply Last reply Reply Quote 0
          • thomthomT Offline
            thomthom
            last edited by 3 Feb 2011, 15:55

            Thanks Dan for posting this.

            Thomas Thomassen β€” SketchUp Monkey & Coding addict
            List of my plugins and link to the CookieWare fund

            1 Reply Last reply Reply Quote 0
            • thomthomT Offline
              thomthom
              last edited by 3 Feb 2011, 15:55

              Btw, I think I'll upload the list to BitBucket. I'll do that later today.

              Thomas Thomassen β€” SketchUp Monkey & Coding addict
              List of my plugins and link to the CookieWare fund

              1 Reply Last reply Reply Quote 0
              • thomthomT Offline
                thomthom
                last edited by 3 Feb 2011, 16:36

                Moved files into a BitBucket repository: https://bitbucket.org/thomthom/notepad-sketchup-autocomplete/

                Thomas Thomassen β€” SketchUp Monkey & Coding addict
                List of my plugins and link to the CookieWare fund

                1 Reply Last reply Reply Quote 0
                • D Offline
                  Dan Rathbun
                  last edited by 3 Feb 2011, 16:40

                  @driven said:

                  This is the sort of thing I want to check in SU ruby on the mac,
                  Your first snip seems to bring up loads more methods than what your posting, ...

                  "methods" ?? The snippet lists Constants. You mean this snippet ??
                  Errno.constants.sort.each {|e| puts %Q[\t\t<Keyword name="Errno::#{e}"/>\n\t\t<Keyword name="Errno::#{e}::Errno"/>\n] } 

                  @driven said:

                  ... are you editing yours down?

                  NO .. BUT the Errno module is created dynamically by Ruby at startup, and MAY DIFFERfrom platform to platform (ie, from one Operating System to another.)

                  The count on the PC is 73 Constants within Errno module (pointing at SystemCallError exception subclass instances,) each of whom have a local constant Errno that wraps their private instance method errno(). SO a grandtotal of 146 module Errno constants on the PC.

                  Just to be on the safe side.. and to be sure that Global Constants (defined in Object,) are not propagating into the Errno module, in Ruby 1.8.5 .... use the following snippet, and post the results here in a code box, please.

                  (Errno.constants.sort-Object.constants.sort).each {|e| puts %Q[\t\t<Keyword name="Errno::#{e}"/>\n\t\t<Keyword name="Errno::#{e}::Errno"/>\n] }

                  I'm not here much anymore.

                  1 Reply Last reply Reply Quote 0
                  • D Offline
                    driven
                    last edited by 3 Feb 2011, 16:54

                    here it is, I'm running these through Ruby Console, so aren't they shielded from external globals? and I know I still get names messed about, sorry.. john

                    >> (Errno.constants.sort-Object.constants.sort).each {|e| puts %Q[\t\t<Keyword name="Errno;;#{e}"/>\n\t\t<Keyword name="Errno;;#{e};;Errno"/>\n] }
                    		<Keyword name="Errno;;E2BIG"/>
                    		<Keyword name="Errno;;E2BIG;;Errno"/>
                    		<Keyword name="Errno;;EACCES"/>
                    		<Keyword name="Errno;;EACCES;;Errno"/>
                    		<Keyword name="Errno;;EADDRINUSE"/>
                    		<Keyword name="Errno;;EADDRINUSE;;Errno"/>
                    		<Keyword name="Errno;;EADDRNOTAVAIL"/>
                    		<Keyword name="Errno;;EADDRNOTAVAIL;;Errno"/>
                    		<Keyword name="Errno;;EAFNOSUPPORT"/>
                    		<Keyword name="Errno;;EAFNOSUPPORT;;Errno"/>
                    		<Keyword name="Errno;;EAGAIN"/>
                    		<Keyword name="Errno;;EAGAIN;;Errno"/>
                    		<Keyword name="Errno;;EALREADY"/>
                    		<Keyword name="Errno;;EALREADY;;Errno"/>
                    		<Keyword name="Errno;;EBADF"/>
                    		<Keyword name="Errno;;EBADF;;Errno"/>
                    		<Keyword name="Errno;;EBADMSG"/>
                    		<Keyword name="Errno;;EBADMSG;;Errno"/>
                    		<Keyword name="Errno;;EBUSY"/>
                    		<Keyword name="Errno;;EBUSY;;Errno"/>
                    		<Keyword name="Errno;;ECHILD"/>
                    		<Keyword name="Errno;;ECHILD;;Errno"/>
                    		<Keyword name="Errno;;ECONNABORTED"/>
                    		<Keyword name="Errno;;ECONNABORTED;;Errno"/>
                    		<Keyword name="Errno;;ECONNREFUSED"/>
                    		<Keyword name="Errno;;ECONNREFUSED;;Errno"/>
                    		<Keyword name="Errno;;ECONNRESET"/>
                    		<Keyword name="Errno;;ECONNRESET;;Errno"/>
                    		<Keyword name="Errno;;EDEADLK"/>
                    		<Keyword name="Errno;;EDEADLK;;Errno"/>
                    		<Keyword name="Errno;;EDESTADDRREQ"/>
                    		<Keyword name="Errno;;EDESTADDRREQ;;Errno"/>
                    		<Keyword name="Errno;;EDOM"/>
                    		<Keyword name="Errno;;EDOM;;Errno"/>
                    		<Keyword name="Errno;;EDQUOT"/>
                    		<Keyword name="Errno;;EDQUOT;;Errno"/>
                    		<Keyword name="Errno;;EEXIST"/>
                    		<Keyword name="Errno;;EEXIST;;Errno"/>
                    		<Keyword name="Errno;;EFAULT"/>
                    		<Keyword name="Errno;;EFAULT;;Errno"/>
                    		<Keyword name="Errno;;EFBIG"/>
                    		<Keyword name="Errno;;EFBIG;;Errno"/>
                    		<Keyword name="Errno;;EHOSTDOWN"/>
                    		<Keyword name="Errno;;EHOSTDOWN;;Errno"/>
                    		<Keyword name="Errno;;EHOSTUNREACH"/>
                    		<Keyword name="Errno;;EHOSTUNREACH;;Errno"/>
                    		<Keyword name="Errno;;EIDRM"/>
                    		<Keyword name="Errno;;EIDRM;;Errno"/>
                    		<Keyword name="Errno;;EILSEQ"/>
                    		<Keyword name="Errno;;EILSEQ;;Errno"/>
                    		<Keyword name="Errno;;EINPROGRESS"/>
                    		<Keyword name="Errno;;EINPROGRESS;;Errno"/>
                    		<Keyword name="Errno;;EINTR"/>
                    		<Keyword name="Errno;;EINTR;;Errno"/>
                    		<Keyword name="Errno;;EINVAL"/>
                    		<Keyword name="Errno;;EINVAL;;Errno"/>
                    		<Keyword name="Errno;;EIO"/>
                    		<Keyword name="Errno;;EIO;;Errno"/>
                    		<Keyword name="Errno;;EISCONN"/>
                    		<Keyword name="Errno;;EISCONN;;Errno"/>
                    		<Keyword name="Errno;;EISDIR"/>
                    		<Keyword name="Errno;;EISDIR;;Errno"/>
                    		<Keyword name="Errno;;ELOOP"/>
                    		<Keyword name="Errno;;ELOOP;;Errno"/>
                    		<Keyword name="Errno;;EMFILE"/>
                    		<Keyword name="Errno;;EMFILE;;Errno"/>
                    		<Keyword name="Errno;;EMLINK"/>
                    		<Keyword name="Errno;;EMLINK;;Errno"/>
                    		<Keyword name="Errno;;EMSGSIZE"/>
                    		<Keyword name="Errno;;EMSGSIZE;;Errno"/>
                    		<Keyword name="Errno;;EMULTIHOP"/>
                    		<Keyword name="Errno;;EMULTIHOP;;Errno"/>
                    		<Keyword name="Errno;;ENAMETOOLONG"/>
                    		<Keyword name="Errno;;ENAMETOOLONG;;Errno"/>
                    		<Keyword name="Errno;;ENETDOWN"/>
                    		<Keyword name="Errno;;ENETDOWN;;Errno"/>
                    		<Keyword name="Errno;;ENETRESET"/>
                    		<Keyword name="Errno;;ENETRESET;;Errno"/>
                    		<Keyword name="Errno;;ENETUNREACH"/>
                    		<Keyword name="Errno;;ENETUNREACH;;Errno"/>
                    		<Keyword name="Errno;;ENFILE"/>
                    		<Keyword name="Errno;;ENFILE;;Errno"/>
                    		<Keyword name="Errno;;ENOBUFS"/>
                    		<Keyword name="Errno;;ENOBUFS;;Errno"/>
                    		<Keyword name="Errno;;ENODATA"/>
                    		<Keyword name="Errno;;ENODATA;;Errno"/>
                    		<Keyword name="Errno;;ENODEV"/>
                    		<Keyword name="Errno;;ENODEV;;Errno"/>
                    		<Keyword name="Errno;;ENOENT"/>
                    		<Keyword name="Errno;;ENOENT;;Errno"/>
                    		<Keyword name="Errno;;ENOEXEC"/>
                    		<Keyword name="Errno;;ENOEXEC;;Errno"/>
                    		<Keyword name="Errno;;ENOLCK"/>
                    		<Keyword name="Errno;;ENOLCK;;Errno"/>
                    		<Keyword name="Errno;;ENOLINK"/>
                    		<Keyword name="Errno;;ENOLINK;;Errno"/>
                    		<Keyword name="Errno;;ENOMEM"/>
                    		<Keyword name="Errno;;ENOMEM;;Errno"/>
                    		<Keyword name="Errno;;ENOMSG"/>
                    		<Keyword name="Errno;;ENOMSG;;Errno"/>
                    		<Keyword name="Errno;;ENOPROTOOPT"/>
                    		<Keyword name="Errno;;ENOPROTOOPT;;Errno"/>
                    		<Keyword name="Errno;;ENOSPC"/>
                    		<Keyword name="Errno;;ENOSPC;;Errno"/>
                    		<Keyword name="Errno;;ENOSR"/>
                    		<Keyword name="Errno;;ENOSR;;Errno"/>
                    		<Keyword name="Errno;;ENOSTR"/>
                    		<Keyword name="Errno;;ENOSTR;;Errno"/>
                    		<Keyword name="Errno;;ENOSYS"/>
                    		<Keyword name="Errno;;ENOSYS;;Errno"/>
                    		<Keyword name="Errno;;ENOTBLK"/>
                    		<Keyword name="Errno;;ENOTBLK;;Errno"/>
                    		<Keyword name="Errno;;ENOTCONN"/>
                    		<Keyword name="Errno;;ENOTCONN;;Errno"/>
                    		<Keyword name="Errno;;ENOTDIR"/>
                    		<Keyword name="Errno;;ENOTDIR;;Errno"/>
                    		<Keyword name="Errno;;ENOTEMPTY"/>
                    		<Keyword name="Errno;;ENOTEMPTY;;Errno"/>
                    		<Keyword name="Errno;;ENOTSOCK"/>
                    		<Keyword name="Errno;;ENOTSOCK;;Errno"/>
                    		<Keyword name="Errno;;ENOTTY"/>
                    		<Keyword name="Errno;;ENOTTY;;Errno"/>
                    		<Keyword name="Errno;;ENXIO"/>
                    		<Keyword name="Errno;;ENXIO;;Errno"/>
                    		<Keyword name="Errno;;EOPNOTSUPP"/>
                    		<Keyword name="Errno;;EOPNOTSUPP;;Errno"/>
                    		<Keyword name="Errno;;EOVERFLOW"/>
                    		<Keyword name="Errno;;EOVERFLOW;;Errno"/>
                    		<Keyword name="Errno;;EPERM"/>
                    		<Keyword name="Errno;;EPERM;;Errno"/>
                    		<Keyword name="Errno;;EPFNOSUPPORT"/>
                    		<Keyword name="Errno;;EPFNOSUPPORT;;Errno"/>
                    		<Keyword name="Errno;;EPIPE"/>
                    		<Keyword name="Errno;;EPIPE;;Errno"/>
                    		<Keyword name="Errno;;EPROTO"/>
                    		<Keyword name="Errno;;EPROTO;;Errno"/>
                    		<Keyword name="Errno;;EPROTONOSUPPORT"/>
                    		<Keyword name="Errno;;EPROTONOSUPPORT;;Errno"/>
                    		<Keyword name="Errno;;EPROTOTYPE"/>
                    		<Keyword name="Errno;;EPROTOTYPE;;Errno"/>
                    		<Keyword name="Errno;;ERANGE"/>
                    		<Keyword name="Errno;;ERANGE;;Errno"/>
                    		<Keyword name="Errno;;EREMOTE"/>
                    		<Keyword name="Errno;;EREMOTE;;Errno"/>
                    		<Keyword name="Errno;;EROFS"/>
                    		<Keyword name="Errno;;EROFS;;Errno"/>
                    		<Keyword name="Errno;;ESHUTDOWN"/>
                    		<Keyword name="Errno;;ESHUTDOWN;;Errno"/>
                    		<Keyword name="Errno;;ESOCKTNOSUPPORT"/>
                    		<Keyword name="Errno;;ESOCKTNOSUPPORT;;Errno"/>
                    		<Keyword name="Errno;;ESPIPE"/>
                    		<Keyword name="Errno;;ESPIPE;;Errno"/>
                    		<Keyword name="Errno;;ESRCH"/>
                    		<Keyword name="Errno;;ESRCH;;Errno"/>
                    		<Keyword name="Errno;;ESTALE"/>
                    		<Keyword name="Errno;;ESTALE;;Errno"/>
                    		<Keyword name="Errno;;ETIME"/>
                    		<Keyword name="Errno;;ETIME;;Errno"/>
                    		<Keyword name="Errno;;ETIMEDOUT"/>
                    		<Keyword name="Errno;;ETIMEDOUT;;Errno"/>
                    		<Keyword name="Errno;;ETOOMANYREFS"/>
                    		<Keyword name="Errno;;ETOOMANYREFS;;Errno"/>
                    		<Keyword name="Errno;;ETXTBSY"/>
                    		<Keyword name="Errno;;ETXTBSY;;Errno"/>
                    		<Keyword name="Errno;;EUSERS"/>
                    		<Keyword name="Errno;;EUSERS;;Errno"/>
                    		<Keyword name="Errno;;EWOULDBLOCK"/>
                    		<Keyword name="Errno;;EWOULDBLOCK;;Errno"/>
                    		<Keyword name="Errno;;EXDEV"/>
                    		<Keyword name="Errno;;EXDEV;;Errno"/>
                    ["E2BIG", "EACCES", "EADDRINUSE", "EADDRNOTAVAIL", "EAFNOSUPPORT", "EAGAIN", "EALREADY", "EBADF", "EBADMSG", "EBUSY", "ECHILD", "ECONNABORTED", "ECONNREFUSED", "ECONNRESET", "EDEADLK", "EDESTADDRREQ", "EDOM", "EDQUOT", "EEXIST", "EFAULT", "EFBIG", "EHOSTDOWN", "EHOSTUNREACH", "EIDRM", "EILSEQ", "EINPROGRESS", "EINTR", "EINVAL", "EIO", "EISCONN", "EISDIR", "ELOOP", "EMFILE", "EMLINK", "EMSGSIZE", "EMULTIHOP", "ENAMETOOLONG", "ENETDOWN", "ENETRESET", "ENETUNREACH", "ENFILE", "ENOBUFS", "ENODATA", "ENODEV", "ENOENT", "ENOEXEC", "ENOLCK", "ENOLINK", "ENOMEM", "ENOMSG", "ENOPROTOOPT", "ENOSPC", "ENOSR", "ENOSTR", "ENOSYS", "ENOTBLK", "ENOTCONN", "ENOTDIR", "ENOTEMPTY", "ENOTSOCK", "ENOTTY", "ENXIO", "EOPNOTSUPP", "EOVERFLOW", "EPERM", "EPFNOSUPPORT", "EPIPE", "EPROTO", "EPROTONOSUPPORT", "EPROTOTYPE", "ERANGE", "EREMOTE", "EROFS", "ESHUTDOWN", "ESOCKTNOSUPPORT", "ESPIPE", "ESRCH", "ESTALE", "ETIME", "ETIMEDOUT", "ETOOMANYREFS", "ETXTBSY", "EUSERS", "EWOULDBLOCK", "EXDEV"]
                    
                    
                    

                    learn from the mistakes of others, you may not live long enough to make them all yourself...

                    1 Reply Last reply Reply Quote 0
                    • D Offline
                      Dan Rathbun
                      last edited by 3 Feb 2011, 17:00

                      @driven said:

                      Would you mind sharing Marshal snippet, and will that work with all modules?

                      I'm not sure what you are asking for.

                      Marshal::constants.sort
                      >> ["MAJOR_VERSION", "MINOR_VERSION"]

                      Marshal::singleton_methods.sort
                      >> ["dump", "load", "restore"]

                      The Marshal module has been part of Standard Ruby since the very early days. It's listed in the old "Pick-Axe" book which was Ruby circa 1.6.x


                      By the way.. can Safari open a CHM (Compiled HTML Help Markup,) file natively without a plugin ??

                      If so.. you should get at least the Reference for v1.8.6 in this post.
                      ~

                      I'm not here much anymore.

                      1 Reply Last reply Reply Quote 0
                      • D Offline
                        Dan Rathbun
                        last edited by 3 Feb 2011, 17:04

                        @driven said:

                        here it is, ...

                        Looks like there are 85 of them on the Mac (thanks John.)

                        @driven said:

                        ...I'm running these through Ruby Console, so aren't they shielded from external globals?

                        HELL NO. The Ruby Console runs WITHIN Object, anything you define there becomes global. That's why it's dangerous to define methods in the console.. they get inherited by ALL objects.

                        I'm not here much anymore.

                        1 Reply Last reply Reply Quote 0
                        • D Offline
                          Dan Rathbun
                          last edited by 3 Feb 2011, 17:05

                          BUT if running one of the WebConsoles ... you might be within the coder's namespace instead of Object.

                          I'm not here much anymore.

                          1 Reply Last reply Reply Quote 0
                          • D Offline
                            Dan Rathbun
                            last edited by 3 Feb 2011, 17:30

                            @driven said:

                            Is the a 1.8.6 module that simply didn't exist at all in 1.8.5 that I could test for?

                            Well I'm purty sure module DanZoid did not exist in Ruby 1.8.5... or any version. (snicker) πŸ˜›

                            Offhand I dont know of one such module (mostly the changes have been adding or removing methods and constants, and fixing bugs.)

                            I don't really have a good 1.8.5 reference... just all those numerous YAML documents in share\ri\1.8\system and I don't have time to learn how to use rdoc to generate a HTML help page right now.

                            If you want to know what happens when a non-existant module (or class,) is referenced in Ruby, the answer is that a NameError exception is raised.

                            Try it at the console...
                            puts DrivenUpTheWall.methods
                            ~

                            I'm not here much anymore.

                            1 Reply Last reply Reply Quote 0
                            • D Offline
                              driven
                              last edited by 3 Feb 2011, 18:47

                              @dan rathbun said:

                              Here's the 1.8.6 constant list AND class methods for the Marshal module:

                              As an experiment, in parameters, I used:
                              "~" to denote "this class or subclass"
                              "^" to denote "implictly convertable to" (which would include the class and any subclasses.)

                              for ex: ^Integer would mean: " Integer class, subclass, or object that implements a to_i() method."

                              Hi Dan,
                              What I was trying to say is I don't know the method you used to get the additional information about this Constant.
                              I tried a couple of things to add it to the other code snippet, but I have had no luck (which is what's required for me).

                              I realise if a method doesn't exist it throws an error, so what I'm looking for is a method that didn't exist in 1.8.5 (which SkechUp says its using on Macs), if this newer Ruby/Class/Constant, etc.., is present then SU must be referencing or have access to other installed versions.

                              There's a native coca utility http://chmox.sourceforge.net/ for reading CHM on OSX, forgot I had, so now I'll have a look.

                              The other thing I'm always looking for is what makes WebDialog different on the Mac, so probing SU through the ruby console appeals to me.

                              Not to mention that autocomplete on a Mac editor would be a good thing...

                              john

                              john

                              learn from the mistakes of others, you may not live long enough to make them all yourself...

                              1 Reply Last reply Reply Quote 0
                              • thomthomT Offline
                                thomthom
                                last edited by 3 Feb 2011, 19:08

                                @driven said:

                                Not to mention that autocomplete on a Mac editor would be a good thing...

                                I use TextMate, would be nice to get an autocomplete for that. If that's even possible...

                                Thomas Thomassen β€” SketchUp Monkey & Coding addict
                                List of my plugins and link to the CookieWare fund

                                1 Reply Last reply Reply Quote 0
                                • D Offline
                                  Dan Rathbun
                                  last edited by 3 Feb 2011, 19:41

                                  @driven said:

                                  @dan rathbun said:

                                  Here's the 1.8.6 constant list AND class methods for the Marshal module:

                                  What I was trying to say is I don't know the method you used to get the additional information about this Constant.

                                  If you mean the text that is in the XML descr attributes.. that I just copy and pasted manually out of the Ruby Core Reference Help CHM. Then edited it a bit to make it more readable, more concise, etc. (Sometimes those Japanese guys who work on the Ruby Core don't write the best English.)

                                  Of course... doing that manually for all of the methods in Ruby and the Sketchup API is a lifetime project.

                                  I'm looking at seeing if I can script it.. at least grabbing the text that can be edited and cut-down later. (Notepad++ has a memory limit to the text for each function.)

                                  @@ThomThom - That BitBucket website just about locks up MSIE 7. But I stopped posting new constant lists, as I realized that it is better the write a plugin that generates the XML files, so I've been working on that. Also need to write a database utility, or maybe a webform so the functions and overloads can be added, edited, etc. more easily by multiple people.

                                  I'm not here much anymore.

                                  1 Reply Last reply Reply Quote 0
                                  • D Offline
                                    driven
                                    last edited by 3 Feb 2011, 20:08

                                    @thomthom said:

                                    I use TextMate, would be nice to get an autocomplete for that. If that's even possible...

                                    I'll try this with TextWrangler, and let you know how it pans out http://c-command.com/bbautocomplete/

                                    john

                                    learn from the mistakes of others, you may not live long enough to make them all yourself...

                                    1 Reply Last reply Reply Quote 0
                                    • thomthomT Offline
                                      thomthom
                                      last edited by 3 Feb 2011, 20:13

                                      @dan rathbun said:

                                      @@ThomThom - That BitBucket website just about locks up MSIE 7

                                      hm... No problems in IE8 here. (Don't have IE7 any more on any of my machines.)

                                      Thomas Thomassen β€” SketchUp Monkey & Coding addict
                                      List of my plugins and link to the CookieWare fund

                                      1 Reply Last reply Reply Quote 0
                                      • U Offline
                                        unclex
                                        last edited by 9 Feb 2011, 03:28

                                        Wonderful!!!!!!

                                        1 Reply Last reply Reply Quote 0
                                        • J Offline
                                          Jim
                                          last edited by 2 Jun 2012, 20:56

                                          This seems sort on hard to maintain as a .xml file. Would it be easier to manage as in a different format that could be translated into the .xml?

                                          Maybe a spreadsheet?
                                          (A read-only version of the actual Spreadsheet)

                                          Edit - see next post.

                                          Hi

                                          1 Reply Last reply Reply Quote 0
                                          • 1
                                          • 2
                                          • 3
                                          • 4
                                          • 2 / 4
                                          • First post
                                            Last post
                                          Buy SketchPlus
                                          Buy SUbD
                                          Buy WrapR
                                          Buy eBook
                                          Buy Modelur
                                          Buy Vertex Tools
                                          Buy SketchCuisine
                                          Buy FormFonts

                                          Advertisement