IDE:修改过的pyScripter

IDE:修改过的pyScripter

下载地址:
http://seewind.dreamhosters.com/share/PyScripter060811.rar
060810更新:之前改用1.5最新代码修改后,出现了些问题,现在修正了.

版权归原作者,本人只是在pyScripter1.3版上改改,加强了稳定性、代码自动完成、代码提示等,软件运行速度快,也有简单的调试功能,使用类似Delphi的操作,大家有空试试,简单的问题我还可以改改

有一个python GUI IDE?与BOA比起来怎么样?感觉BOA上画各种控件还是麻烦了一点。SPE不知道会不会好点。
这个只是个比较简单的IDE,没有可视化设计界面功能;
我说它简单,可能和它的使用类似DELPHI有关。鼠标放在代码上就有代码提示,输入.或者按ctrl+space就有代码自动完成功能,ctrl+鼠标点击代码就可以找到定义的源代码,感觉对于学习py瞒有帮助的。
还有就是使用上感觉速度比其他IDE快。
有简单的调试功能,可以设置断点,单步调试,例如用它来调试DJANGO的代码,看看DJANGO内部是怎么实现的...
当然这些功能在其他IDE里面也有,还更强大,例如wing IDE,不过用WING感觉就是慢,功能强大用起来就感觉复杂(新人的感觉)
不错的ide。wing ide不是open source的,不好。

我下载了最新的1.5.1.0,run一个简单的程序不成功。在ide外面运行是没有问题的。
先是这句报错

[Copy to clipboard] [ - ]
CODE:
print "Usage: %s host port path count" % __file__

错误信息

QUOTE:
Traceback (most recent call last):
  File "<string>", line 74, in run_nodebug
  File "D:\......\Module1.py", line 1, in ?
    print "Usage: %s host port path count" % __file__
NameError: name '__file__' is not defined

可能是ide里没有__file__这个内置属性吧

:)斑竹的错误信息看不错是什么问题。
这个IDE在调试上是有些问题,EXE是直接使用PY的DLL来执行和调试代码,如果执行twisted的代码,当PY代码在监听端口,那EXE整个会停在那没反映拉(调试DJANGO就会这样,不过在监听代码后加个断点,当界面没反映时,用IE游览下运行的DJANGO项目,EXE就会恢复,并停在断点上,可以继续调试);
当执行完某段PY,那些全局的对象并不会在代码执行完后释放,一样在EXE的DLL空间里面,这个问题我在菜单上提供了个清空环境,恢复原样的功能;
不支持多线程调试;等等,瞒多问题的,呵呵。。。

斑竹改的好快啊,后面这个错误我知道什么原因:NameError: name '__file__' is not defined
__file__是在模块被引入时才会有的属性,这个IDE直接执行、调试某个PY文件时,并没有这个属性的,是这IDE的问题



QUOTE:
原帖由 seewind 于 2006-5-11 22:19 发表
:)斑竹的错误信息看不错是什么问题。
这个IDE在调试上是有些问题,EXE是直接使用PY的DLL来执行和调试代码,如果执行twisted的代码,当PY代码在监听端口,那EXE整个会停在那没反映拉(调试DJANGO就会这样,不过 ...

抱歉!我修改了我的回复,我感觉是ide里找不到模块的__file__属性。请重新看一下我上面的回复。

你可以新建一个PY文件,用这个新建的PY文件来import和执行你想调试的文件就行

刚看了下这个EXE的代码,应该可以修改下,加上这个属性
这个还不错 用过 感觉还好
seewind你好,我也很喜欢pyScripter,它的调试功能在免费软件中比较强且速度快
我想制作一份“可移植的python”放到u盘上,pyScripter是我挑选的ide,但是它把配置写在c:\Documents and Settings\$user$\Application Data\PyScripter.ini中,并且更重要的是,它把pythonpath等环境变量也保存在这个文件里面,我想它在运行python程序的时候,是优先从这个文件而不是系统环境变量中查找pythonpath……。
不知可否对pyScripter做如下修改:
1。配置保存在pyScripter.exe所在目录
2。配置文件如果不可写(比如我在写保护的U盘、或者CD上放我的python),不会报错
3。PyScripter.ini里面可以使用变量、相对路径表示。比如,pyScripter.exe和python.exe在相同的目录,那么PyScripter.ini里面这样表示:

[Copy to clipboard] [ - ]
CODE:
[Tools\External Run\Environment]
Item20=path=%path%;$FILEDIR$
Item21=pythonpath=$FILEDIR$;$DISK$\lib;$FILEDIR$\Libs;$FILEDIR$\Libs\site-packages
Item25=TCL_LIBRARY=$FILEDIR$\tcl\tcl8.4
Item27=TK_LIBRARY=$FILEDIR$\tcl\tk8.4

其中$FILEDIR$表示pyScripter.exe所在地路径,例如u:\tool\prg\py23;$DISK$表示pyScripter.exe所在地磁盘,例如u:。之所以这样,是因为移动设备的盘符总是改变的,不可能写成固定的值
那么,实际pyScripter.exe运行的时候,设置如下的环境变量

[Copy to clipboard] [ - ]
CODE:
path=%path%;u:\tool\prg\py23
pythonpath=u:\tool\prg\py23;u:\lib;u:\tool\prg\py23\Libs;u:\tool\prg\py23\Libs\site-packages
TCL_LIBRARY=u:\tool\prg\py23\tcl\tcl8.4
TK_LIBRARY=u:\tool\prg\py23\tcl\tk8.4

这样的环境下,python.exe是可以运行的,在pyScripter.exe中调试也是可行的
但是我不会delphi,所以可否麻烦您看看,能否做这样的修改?

另外,PyScripter Version 1.5.1已经出来了


谢谢
哈哈哈,陈WP 居然跑到这里来了!