User Tools

Site Tools


qt:pyqt_ide_options

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
qt:pyqt_ide_options [2011/04/17 11:11] – [Code writing support] mithatqt:pyqt_ide_options [2011/04/20 17:06] – [General IDE support] mithat
Line 22: Line 22:
  
 In almost all cases, getting good autocompletion/calltips requires adding api files, references to libs, or possibly both. In almost all cases, getting good autocompletion/calltips requires adding api files, references to libs, or possibly both.
 +
 +===== PyQt specific stuff =====
 +The following are needed specifically for easy PyQt4 development:
 +  * A wizard for starting a project that creates a default form and gives stuff the names that you want
 +  * A wizard that creates new forms, including the ''<formname>.ui'' file as well as a ''<formname>.py'' file that defines a ''<FormName>'' class.
 +  * A wizard for creating and an interface for managing ''*.qrc'' Qt resource files
  
 ===== The candidates ===== ===== The candidates =====
Line 55: Line 61:
  
 ===== The results ===== ===== The results =====
-means good,+:-) means good,
 ~ means eh, ~ means eh,
 -- means available but sucks, -- means available but sucks,
Line 61: Line 67:
 ext means handled externally automatically or by specifying a user command ext means handled externally automatically or by specifying a user command
  
-==== Project support ==== +==== Yes/No/Maybe? ==== 
-^ IDE           ^ Y/N? ^ UI  ^ survival  ^ IDE proj ^ PyQt proj ^ PyQt files ^ designer  ^ hg  ^ install  ^ debugging +^ IDE           ^ Y/N? ^ 
-^ Eclipse+PyDev |  Y   | +~  |  + (py +) |  +        ✘        |  ?†        | + (both)‡ |  p  |  --      |  +        +^ Eclipse+PyDev |  Yes    
-^ Editra        | maybe +  |  ~        |  ✘        ✘        |  t?        | :-\ (ext) |  +  |  +~      |  ~ ext    +^ Editra        |  maybe  | 
-^ Eric 4        | maybe +* |  ~        |  +        --        ?         | + (ext)    ✘  |  ~        +        +^ Eric 4        |  maybe  | 
-^ Monkey Studio |  N    +  |  --        ?        +        |  +         | + (int)    ✘  |  +        ~ ext    +^ Monkey Studio |  no     
-^ Netbeans+Py   |  N    +  |  + (py ~) |  ?        ✘        |  ?         | + (ext)    +  |  +        --       +^ Netbeans+Py   |  no     
-^ Spyder        | maybe +  |  ~        |  ✘        ✘        |  t?        | :-\ (ext) |  ✘  |  +~      |  ~        +^ Spyder        |  maybe  | 
-^ Stani's IDE     |  ~  |  ~        |  ?        ?        |  ?          ?        |  ?  |  ?        ?        |+^ Stani's IDE        |
  
-* After manual intervention\\+==== General IDE support ==== 
 +^ IDE           ^ UI    ^ survival    ^ project ^ hg    ^ install  ^ debugging (py)^ 
 +^ Eclipse+PyDev |  :-)~ |  :-)        |  :-)    |  p    |  --      |  :-)          | 
 +^ Editra        |  :-)  |  ~          |  ✘      |  :-)  |  :-)~    |  ~ ext        | 
 +^ Eric 4        |  :-)* |  ~          |  :-)    |  ✘    |  ~        :-)          | 
 +^ Monkey Studio |  :-)  |  --          ?      |  ✘    |  :-)      ~ ext        | 
 +^ Netbeans+Py    :-)  |  :-) (py ~) |  ?      |  :-)  |  :-)      --           | 
 +^ Spyder        |  :-)  |  ~          |  ✘      |  ✘    |  :-)~    |  ~            | 
 +^ Stani's IDE    ~    |  ~          |  ?      |  ?    |  ?        ?            | 
 + 
 +* After significant manual intervention 
 + 
 +==== PyQt-specific project support ==== 
 +^ IDE           ^ PyQt proj ^ PyQt forms ^ qrc files ^ designer   ^ 
 +^ Eclipse+PyDev |  ✘        |  ?†        |  ~*       | :-)‡       | 
 +^ Editra        |  ✘        |  t?        |  ✘        | !!! (ext)  | 
 +^ Eric 4        |  --        --††      |  :-)      | :-) (ext)  | 
 +^ Monkey Studio |  :-)      |  :-)        ✘        | :-) (int)  | 
 +^ Netbeans+Py    ✘        |  ?          ?        | :-) (ext)  | 
 +^ Spyder        |  ✘        |  t?        |  ✘        | !!! (ext)  | 
 +^ Stani's IDE    ?        |  ?          ?        |  ?         | 
 + 
 +* With Qt support from Nokia, has nice GUI for adding resources, but compile with pyrcc4 for python must be done manually. \\
 † Need to check what happens w/ Qt for Eclipse stuff from Nokia\\ † Need to check what happens w/ Qt for Eclipse stuff from Nokia\\
 ‡ With just Eclipse+PyDev, it's external. With the Qt for Eclipse stuff from Nokia, it's either.\\ ‡ With just Eclipse+PyDev, it's external. With the Qt for Eclipse stuff from Nokia, it's either.\\
 p means untested plugin available\\ p means untested plugin available\\
 t means template, not wizard\\ t means template, not wizard\\
-:-\ means it's ill on Linux because of MIME issues (works with GNOME, Xfce (I think), and KDE (maybe), but not in others)\\ +!!! means it's ill on Linux because of MIME issues (works with GNOME, Xfce (I think), and KDE (maybe), but not in others)\\ 
-==== Code writing support ====+†† has facility to add ''*.ui'' files (as XML) but not the corresponding ''*.py'' file. 
 + 
 +==== Python and PyQt code writing support ==== 
 + 
 +^ IDE           ^ autocomp. ^ calltips ^ nav.   ^ refac. ^ check  ^ rt err. ^ 
 +^ Eclipse+PyDev |  :-)†      :-)†    |  :-)    :-)    ~      :-)    | 
 +^ Editra        |  :-)      |  :-)      ✘      ✘      ~      ✘      | 
 +^ Eric 4        |  :-)~*    |  :-)*†    :-)~‡ |  :-)    :-)    ✘      | 
 +^ Monkey Studio |  ~*        ~*      |  ✘      ✘      ✘      ✘      | 
 +^ Netbeans+Py    --        ?        :-)    ~      ~      ~      | 
 +^ Spyder        |  :-)†      :-)†    |  :-)    ✘      :-)    :-)    | 
 +^ Stani's IDE    ?        |  ?        ?      ?      ?      ?      | 
 + 
 +* API based\\ 
 +† Needs custom config (adding lib to PYTHONPATH or tweaking Rope config or similar)\\ 
 +‡ With Eric4's Rope plugin you can select the identifier, and then do navigation with //Refactoring -> Query -> <an option>//, then double click on an entry (or assign a keyboard shortcut to bring up the dialog and enter to dismiss and goto.)
  
-^ IDE           ^ autocomp. ^ calltips ^ nav. ^ refac. ^ check  ^ rt err. ^ 
-^ Eclipse+PyDev |  +        |  ?        +    +      ~      +      | 
-^ Editra        |  +        |  ?        ✘    ✘      ~      ✘      | 
-^ Eric 4        |  +~        ?        ✘    +      +      ✘      | 
-^ Monkey Studio |  ~        |  ?        ✘    ✘      ✘      ✘      | 
-^ Netbeans+Py    --        ?        +    ~      ~      ~      | 
-^ Spyder        |  +        |  ?        +    ✘      +      +      | 
-^ Stani's IDE    ?        |  ?        ?    ?      ?      ?      | 
  
 I have some results in [[pyqt ide autocompletion testing]]. I have some results in [[pyqt ide autocompletion testing]].
Line 110: Line 145:
   * Eclipse + PyDev + Qt stuff for CDT from Nokia   * Eclipse + PyDev + Qt stuff for CDT from Nokia
   * Eclipse + PyDev + Qt stuff for CDT from Nokia + CDT   * Eclipse + PyDev + Qt stuff for CDT from Nokia + CDT
 +    * Has wizard for adding ''*.ui'' form files, but not the associated *.py (obviously)
 +    * Has wizard for adding ''*.qrc'' resource files along with a nice resource manager interface
  
 == Conclusion == == Conclusion ==
qt/pyqt_ide_options.txt · Last modified: 2011/04/20 20:44 by mithat

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki