oh the code snippet is in Python (of course ;) )

On Fri, Feb 1, 2013 at 6:39 PM, Eric Turman <[email protected]> wrote:

> wow...hot key to send mail...must find and delete <lol>
>
> okay the two problems:
> 1) it is not awesome like Sublime ;)
> 2) it autocompletes/intellisenses in Japanese (which is fine if you can
> read Japanese ;P )
>
>
> On Fri, Feb 1, 2013 at 6:37 PM, Eric Turman <[email protected]> wrote:
>
>> well there is this IDE that you can use right out of Softimage,
>>
>> # This loads the debugger module...
>> import pywin.debugger as dbg
>>
>> # This launches the GUI:
>> dbg.brk()
>>
>> but there are two problems:
>>
>>
>>
>>
>> On Thu, Jan 31, 2013 at 12:10 PM, jo benayoun <[email protected]>wrote:
>>
>>> IDEs provide code completion and code analysis by actually having a
>>> backend specific to the language the editor is set to.  Thats actually one
>>> of the main difference between a text editor (sublime) and an IDE
>>> (eclipse).  The editor does not just consider the text as a suite of words
>>> but as a language and so understand what you write.
>>>
>>> To implement such thing, you will need basically to do the job of the
>>> python engine (minus compilation/interpreter step).  Meaning, use an ast
>>> generator and write python specifics.
>>>
>>> The actual parser generator used internally by the CPython
>>> implementation is exposed in the std library under the name pgen2 (do a
>>> grep for seeing its usage).  Because this is just a parser generator, you
>>> will need then a way to get and manipulate the ast the parser will generate
>>> for ya.  fortunately, there is a bunch of modules that provide exactly what
>>> you need (ast, keyword, ...) that let you go further in the code
>>> exploration.
>>> (pgen2 and parser/ast/keyword/... are two separate things with two
>>> different usages, dont mix them up)
>>>
>>> Thats about python, for the softimage libraries, you're on the right way
>>> :)
>>> --jon
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> 2013/1/31 Alan Fregtman <[email protected]>
>>>
>>>> I've generated autocompletions, but it seems (and kinda makes sense)
>>>> that I cannot really know what class someone is coding for to show the
>>>> methods filtered by that class alone, so in its current state I will
>>>> autocomplete both global commands AND all methods. That said, for methods I
>>>> put "[blabla class]" after them so you know which one it's for. I still
>>>> think it's useful, but I wish it could be better.
>>>>
>>>> Anyone have any bright ideas for somehow knowing what class someone is
>>>> coding for? (...because Sublime won't load Softimage's Python environment
>>>> to actually know what is what, what with the dynamic dispatching and all.)
>>>>
>>>> By the way, once you tab to choose one, I autocomplete all the
>>>> arguments as a "snippet" and you can tab through the named arguments to
>>>> write your own variables or delete them.
>>>>
>>>>
>>>>
>>>>
>>>> On Wed, Jan 30, 2013 at 10:56 PM, Alan Fregtman <
>>>> [email protected]> wrote:
>>>>
>>>>> Okay... Getting somewhere!
>>>>>
>>>>> import sysimport os.pathfrom win32com.client import makepy
>>>>>
>>>>> tlbs = 
>>>>> ['/path/to/Softimage_2013_SP1/Application/bin/Converter.tlb','/path/to/Softimage_2013_SP1/Application/bin/LightRig.tlb','/path/to/Softimage_2013_SP1/Application/bin/XSIDial.tlb','/path/to/Softimage_2013_SP1/Application/bin/dotXSI_ie.tlb','/path/to/Softimage_2013_SP1/Application/bin/dsauto.tlb','/path/to/Softimage_2013_SP1/Application/bin/enums.tlb','/path/to/Softimage_2013_SP1/Application/bin/ophelper.tlb','/path/to/Softimage_2013_SP1/Application/bin/si3dobjectmodel.tlb','/path/to/Softimage_2013_SP1/Application/bin/si3dobjectmodel10.tlb','/path/to/Softimage_2013_SP1/Application/bin/siobjectmodel.tlb','/path/to/Softimage_2013_SP1/Application/bin/xsiutils.tlb']
>>>>> for path in tlbs:
>>>>>     baseFolder = r'/path/somewhere/to/save/pyfiles/'
>>>>>     sys.argv = ["makepy", "-o", "%s/%s.py" % (baseFolder, 
>>>>> os.path.basename(path).split('.')[0]), path]
>>>>>     makepy.main()
>>>>>
>>>>>
>>>>> This gets me some files I can introspect for methods and such.
>>>>>
>>>>>
>>>>>
>>>>> On Wed, Jan 30, 2013 at 10:20 PM, Alan Fregtman <
>>>>> [email protected]> wrote:
>>>>>
>>>>>> Reviving this old thread out of interest...
>>>>>>
>>>>>> So, with that sample code, we can introspect predefined global
>>>>>> objects like Application and XSIUtils. That's cool, but for example,
>>>>>> another object type like... "Parameter".... that's a class but I can't
>>>>>> create it. I can't do win32com.client.Dispatch("Parameter") and
>>>>>> XSIFactory.CreateObject("Parameter") won't work either.
>>>>>>
>>>>>> Is there any way I can somehow create the object on the fly, knowing
>>>>>> its class type, some other way so that I can query its methods and
>>>>>> properties?
>>>>>>
>>>>>>
>>>>>> ps: Raff, could you elaborate how you AL guys got your introspection
>>>>>> going for non-predefined globals?
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Fri, Jan 4, 2013 at 6:15 AM, Andy Nicholas 
>>>>>> <[email protected]>wrote:
>>>>>>
>>>>>>>  You guys should check this out. It might give you a good start...
>>>>>>>
>>>>>>>
>>>>>>> http://xsisupport.com/2012/10/06/saturday-snippet-getting-a-list-of-properties-and-methods-with-python-introspection/
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On 04 January 2013 at 00:54 jo benayoun <[email protected]>
>>>>>>> wrote:
>>>>>>>
>>>>>>>
>>>>>>> > The Softimage API (object model) is not visible because its all
>>>>>>> about dynamic
>>>>>>> > dispatching at runtime.  This is like thinking your editor will be
>>>>>>> natively
>>>>>>> > enough smart to detect attributes you would add dynamically when
>>>>>>> overriding
>>>>>>> > the __getattr__ method of a class.
>>>>>>> >  Happily for us the dispatching is cached somewhere and even
>>>>>>> introspectable by
>>>>>>> > using the pythoncom/pywin32 API.  With a little effort and
>>>>>>> sticking with
>>>>>>> > python, one would have no problem in developing a plugin for this
>>>>>>> text editor
>>>>>>> > specially if sublime API is as convenient as it is claimed.  The
>>>>>>> first step is
>>>>>>> > to learn how to use correctly the pywin32 package and what it does
>>>>>>> under the
>>>>>>> > hood to fully understand what the 'ultimate' solution could be.
>>>>>>> >  --jo
>>>>>>> >
>>>>>>> >
>>>>>>> >
>>>>>>> >
>>>>>>> >
>>>>>>> >  2013/1/3 César Sáez <[email protected] <mailto:[email protected]>
>>>>>>> >
>>>>>>> >    > > You're right, sublime/any-other-editor can't see that
>>>>>>> softimage
>>>>>>> >    > > variables.
>>>>>>> > >    If you're using 'Application' (or any 'implicit variable'
>>>>>>> like that) your
>>>>>>> > > script will fail on import, sipyutils module (or your own
>>>>>>> version of it) is
>>>>>>> > > the way to go IMHO.
>>>>>>> > >
>>>>>>> > >
>>>>>>> > >    On Thu, Jan 3, 2013 at 9:18 PM, Alan Fregtman <
>>>>>>> [email protected]
>>>>>>> > > <mailto:[email protected]> > wrote:
>>>>>>> > >      > > > But it won't be able to find global XSI objects just
>>>>>>> like that,
>>>>>>> > >      > > > right? "Application" is defined by the axscript
>>>>>>> module, but I
>>>>>>> > >      > > > feel like SI internally dispatches it in a way I
>>>>>>> don't think
>>>>>>> > >      > > > Sublime could "see" it.
>>>>>>> > > >
>>>>>>> > > >
>>>>>>> > > >
>>>>>>> > > >      On Thu, Jan 3, 2013 at 1:40 PM, César Sáez <
>>>>>>> [email protected]
>>>>>>> > > > <mailto:[email protected]> > wrote:
>>>>>>> > > >        > > > > You have to add your environment paths to the
>>>>>>> 'env' tag in
>>>>>>> > > >        > > > > your python.sublime-build config file, this way
>>>>>>> if you have
>>>>>>> > > >        > > > > a shortcuts module it will instrospect it.
>>>>>>> > > > >        El 03/01/2013 17:34, "Gene Crucean" <
>>>>>>> [email protected]
>>>>>>> > > > > <mailto:[email protected]> > escribió:
>>>>>>> > > > >          > > > > > Hehe I was trying to figure out the same
>>>>>>> thing.
>>>>>>> > > > > >
>>>>>>> > > > > >          On Thu, Jan 3, 2013 at 8:09 AM, Alan Fregtman
>>>>>>> > > > > > <[email protected] <mailto:[email protected]>
>>>>>>> > wrote:
>>>>>>> > > > > >            > > > > > > I use SublimeCodeIntel too but it's
>>>>>>> not aware
>>>>>>> > > > > >            > > > > > > of XSI globals like Application,
>>>>>>> XSIUtils and
>>>>>>> > > > > >            > > > > > > so on, so it won't introspect them.
>>>>>>> > > > > > >            How would one hack it to be more aware of
>>>>>>> such?
>>>>>>> > > > > > >
>>>>>>> > > > > > >
>>>>>>> > > > > > >
>>>>>>> > > > > > >
>>>>>>> > > > > > >            On Wed, Jan 2, 2013 at 9:19 PM, César Sáez
>>>>>>> > > > > > > <[email protected] <mailto:[email protected]> > wrote:
>>>>>>> > > > > > >              > > > > > > > SublimeCodeIntel does a great
>>>>>>> job
>>>>>>> > > > > > >              > > > > > > > autocompleting python modules
>>>>>>> and import
>>>>>>> > > > > > >              > > > > > > > statements (via
>>>>>>> introspoction, works with
>>>>>>> > > > > > >              > > > > > > > your own modules too), it's
>>>>>>> not softimage
>>>>>>> > > > > > >              > > > > > > > specific but helps alot.
>>>>>>> > > > > > > >
>>>>>>> > > > > > > >              Another cool package is the
>>>>>>> SublimeLinter, it
>>>>>>> > > > > > > > highlight potential errors in your code (IDE-like). I
>>>>>>> have no idea
>>>>>>> > > > > > > > how far I was from PEP8 until I start using it, now my
>>>>>>> code is way
>>>>>>> > > > > > > > cleaner and easy to the eyes :)
>>>>>>> > > > > > > >
>>>>>>> > > > > > > >
>>>>>>> > > > > > > >
>>>>>>> > > > > > > >              On Thu, Jan 3, 2013 at 12:22 AM, Raffaele
>>>>>>> Fragapane
>>>>>>> > > > > > > > <[email protected] <mailto:
>>>>>>> [email protected]>
>>>>>>> > > > > > > > > wrote:
>>>>>>> > > > > > > >                > > > > > > > > You actually can
>>>>>>> introspect
>>>>>>> > > > > > > >                > > > > > > > > recursively almost the
>>>>>>> entirety of
>>>>>>> > > > > > > >                > > > > > > > > the scripting API and
>>>>>>> generate a
>>>>>>> > > > > > > >                > > > > > > > > dummy set of libraries
>>>>>>> from there.
>>>>>>> > > > > > > >                > > > > > > > > That will offer
>>>>>>> autocompletion in
>>>>>>> > > > > > > >                > > > > > > > > most IDEs.
>>>>>>> > > > > > > > >
>>>>>>> > > > > > > > >                We've had that running here in AL for
>>>>>>> a while
>>>>>>> > > > > > > > > thanks to Aloys' efforts a long time ago and it's
>>>>>>> worked without
>>>>>>> > > > > > > > > a hitch for years.
>>>>>>> > > > > > > > >
>>>>>>> > > > > > > > >                On Thu, Jan 3, 2013 at 10:18 AM, Gene
>>>>>>> Crucean
>>>>>>> > > > > > > > > <[email protected]
>>>>>>> > > > > > > > > <mailto:[email protected]> > wrote:
>>>>>>> > > > > > > > >                  > > > > > > > > > It would be
>>>>>>> completely
>>>>>>> > > > > > > > >                  > > > > > > > > > bitchin if it
>>>>>>> autocompleted
>>>>>>> > > > > > > > >                  > > > > > > > > > the entire sdk...
>>>>>>> and not
>>>>>>> > > > > > > > >                  > > > > > > > > > just simple
>>>>>>> commonly used
>>>>>>> > > > > > > > >                  > > > > > > > > > snippets.
>>>>>>> > > > > > > > > >                > > > > > > > >
>>>>>>> > > > > > > > >
>>>>>>> > > > > > > > >              > > > > > > >
>>>>>>> > > > > > > >
>>>>>>> > > > > > > >
>>>>>>> > > > > > > >            > > > > > >
>>>>>>> > > > > > >
>>>>>>> > > > > > >
>>>>>>> > > > > > >          > > > > >
>>>>>>> > > > > >
>>>>>>> > > > > >
>>>>>>> > > > > >          --
>>>>>>> > > > > >          Gene Crucean - Emmy winning - Oscar nominated VFX
>>>>>>> Supervisor
>>>>>>> > > > > > / iOS-OSX Developer / Filmmaker / Photographer
>>>>>>> > > > > >          ** Freelance for hire **
>>>>>>> > > > > >          www.genecrucean.com <http://www.genecrucean.com>
>>>>>>> > > > > >
>>>>>>> > > > > >          ~~ Please use my website's contact form on
>>>>>>> > > > > > www.genecrucean.com <http://www.genecrucean.com/>  for
>>>>>>> any personal
>>>>>>> > > > > > emails. Thanks. I may not get them at this address. ~~
>>>>>>> > > > > >
>>>>>>> > > > > >
>>>>>>> > > > > >        > > > >
>>>>>>> > > > >
>>>>>>> > > > >      > > >
>>>>>>> > > >
>>>>>>> > > >
>>>>>>> > > >    > >
>>>>>>> > >
>>>>>>> > >
>>>>>>> > >  >
>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>>
>>
>>
>> --
>>
>>
>>
>>
>> -=T=-
>>
>
>
>
> --
>
>
>
>
> -=T=-
>



-- 




-=T=-

Reply via email to