2007年02月02日 星期五 00:06
¹ØÓÚUliPadµÄImpact CommandģʽÖУ¬ÀàËÆvimµÄÏÈÊäÈëÖظ´´ÎÊý£¬ÔÙÊäÈëÖ¸ÁîµÄ ³õ²½ÊµÏÖ¡£ ¼´£¬¿ÉÒÔÔÚImpact CommandģʽÖУ¬ÊäÈë3j£¬±íʾÏòÏÂ×ß3ÐУ¬4w±íʾÏòÇ°×ß4¸öµ¥´Ê¡£ ÎÒµÄʵÏÖ·½·¨ÊÇ£¬ÐÞ¸Ä./mixins/Import.pyµÄon_first_charº¯Êý£¬Èç¹ûÒ»¿ªÊ¼ÊäÈëµÄÊý¾ÝÊÇ Êý×Ö£¬Ôò±£ÁôÊý×Ö£¬µÈµ½ÊäÈëÁËÖ¸Áîºó£¬ÔÙ°ÑÖ¸ÁîÖظ´Ö´Ðжà´Î¡£ Ïê¼û¸½¼þ¡£ Áí£¬ÎÒÓÐһЩµØ·½²»ÊǺÜÃ÷°×¡£ÎªÊ²Ã´mCommand.pyºÍImport.pyÖеÄһЩ´úÂëÊÇÖصġ£ Import.pyºÃÏñÊǶà¸öpyÎļþµÄºÏ¼¯¡£ÕâÊÇΪʲôÄØ£¿ -- Best Regards, Leo Jay -------------- 下一部分 -------------- Ò»¸ö·ÇÎı¾¸½¼þ±»Çå³ý... ·¢ÐÅÈË: %(who)s Ö÷Ìâ: %(subject)s ÈÕÆÚ: %(date)s ´óС: 1870 Url: http://python.cn/pipermail/python-chinese/attachments/20070202/0fcd30db/attachment.bin
2007年02月02日 星期五 08:03
On 2/2/07, Leo Jay <python.leojay在gmail.com> wrote: > 关于UliPad的Impact Command模式中,类似vim的先输入重复次数,再输入指令的 > 初步实现。 > > 即,可以在Impact Command模式中,输入3j,表示向下走3行,4w表示向前走4个单词。 > > 我的实现方法是,修改./mixins/Import.py的on_first_char函数,如果一开始输入的数据是 > 数字,则保留数字,等到输入了指令后,再把指令重复执行多次。 > > 详见附件。 > > 另,我有一些地方不是很明白。为什么mCommand.py和Import.py中的一些代码是重的。 > Import.py好像是多个py文件的合集。这是为什么呢? > 非常感谢。我会尽快考虑。 Import.py是一个自动生成的文件,它是通过tools/create.py来生成的。一般在win下我是这样运行的: tools\run.bat 这样会自动把__init__.py中定义的plugin模块,注意都是使用注释来写的,自动合并成一个大的Import.py。这样在导入时就不需要一次导入多个文件(现在有很多),目的是为了加快启动速度。 -- I like python! UliPad <>: http://wiki.woodpecker.org.cn/moin/UliPad My Blog: http://www.donews.net/limodou
2007年02月02日 星期五 10:06
On 2/2/07, limodou <limodou在gmail.com> wrote: > On 2/2/07, Leo Jay <python.leojay在gmail.com> wrote: > > 关于UliPad的Impact Command模式中,类似vim的先输入重复次数,再输入指令的 > > 初步实现。 > > > > 即,可以在Impact Command模式中,输入3j,表示向下走3行,4w表示向前走4个单词。 > > > > 我的实现方法是,修改./mixins/Import.py的on_first_char函数,如果一开始输入的数据是 > > 数字,则保留数字,等到输入了指令后,再把指令重复执行多次。 > > > > 详见附件。 > > > > 另,我有一些地方不是很明白。为什么mCommand.py和Import.py中的一些代码是重的。 > > Import.py好像是多个py文件的合集。这是为什么呢? > > > 非常感谢。我会尽快考虑。 > > Import.py是一个自动生成的文件,它是通过tools/create.py来生成的。一般在win下我是这样运行的: > > tools\run.bat > > 这样会自动把__init__.py中定义的plugin模块,注意都是使用注释来写的,自动合并成一个大的Import.py。这样在导入时就不需要一次导入多个文件(现在有很多),目的是为了加快启动速度。 > > 我仔细想了一下,vi的数字模式不是这么简单的。比如3ia,可以插入3个'a',然后进入编辑模式。这样从命令上看,应该是把次数传给后面要执行的命令,而不是简单地重复三次。当然ulipad并没有考虑到重复执行的问题,而且也不是所有命令都需要次数参数。所以如果ulipad可以识别出要执行的命令支持次数参数,然后把参数传进去,如果不支持就重复多次可能更好一些。但出何知道支持次数参数,可能需要有一种配置或探测的方法才可以。这个可以再想一想。 是否很多人对模拟vi很有兴趣呢? -- I like python! UliPad <>: http://wiki.woodpecker.org.cn/moin/UliPad My Blog: http://www.donews.net/limodou
2007年02月02日 星期五 10:56
On 2/2/07, limodou <limodou在gmail.com> wrote: > On 2/2/07, limodou <limodou在gmail.com> wrote: > > On 2/2/07, Leo Jay <python.leojay在gmail.com> wrote: > > > 关于UliPad的Impact Command模式中,类似vim的先输入重复次数,再输入指令的 > > > 初步实现。 > > > > > > 即,可以在Impact Command模式中,输入3j,表示向下走3行,4w表示向前走4个单词。 > > > > > > 我的实现方法是,修改./mixins/Import.py的on_first_char函数,如果一开始输入的数据是 > > > 数字,则保留数字,等到输入了指令后,再把指令重复执行多次。 > > > > > > 详见附件。 > > > > > > 另,我有一些地方不是很明白。为什么mCommand.py和Import.py中的一些代码是重的。 > > > Import.py好像是多个py文件的合集。这是为什么呢? > > > > > 非常感谢。我会尽快考虑。 > > > > Import.py是一个自动生成的文件,它是通过tools/create.py来生成的。一般在win下我是这样运行的: > > > > tools\run.bat > > > > 这样会自动把__init__.py中定义的plugin模块,注意都是使用注释来写的,自动合并成一个大的Import.py。这样在导入时就不需要一次导入多个文件(现在有很多),目的是为了加快启动速度。 > > > > > 我仔细想了一下,vi的数字模式不是这么简单的。比如3ia,可以插入3个'a',然后进入编辑模式。这样从命令上看,应该是把次数传给后面要执行的命令,而不是简单地重复三次。当然ulipad并没有考虑到重复执行的问题,而且也不是所有命令都需要次数参数。所以如果ulipad可以识别出要执行的命令支持次数参数,然后把参数传进去,如果不支持就重复多次可能更好一些。但出何知道支持次数参数,可能需要有一种配置或探测的方法才可以。这个可以再想一想。 > > 是否很多人对模拟vi很有兴趣呢? > 嗯,所以我说这只是个初步的实现,我现在对ulipad整个结构还不是很清楚, 所以先实现一些简单些的功能,上上手。 前一段时间我一直在研究vim的源代码,现在对vim的处理方法颇有些心得。 我接下来的目标就是按vim的处理方法给ulipad加入vim的功能。呵呵。 -- Best Regards, Leo Jay
2007年02月02日 星期五 11:16
> 嗯,所以我说这只是个初步的实现,我现在对ulipad整个结构还不是很清楚, > 所以先实现一些简单些的功能,上上手。 > > 前一段时间我一直在研究vim的源代码,现在对vim的处理方法颇有些心得。 > 我接下来的目标就是按vim的处理方法给ulipad加入vim的功能。呵呵。 > 好。 -- I like python! UliPad <>: http://wiki.woodpecker.org.cn/moin/UliPad My Blog: http://www.donews.net/limodou
2007年02月02日 星期五 21:12
On 2/2/07, Leo Jay <python.leojay在gmail.com> wrote: > > On 2/2/07, limodou <limodou在gmail.com> wrote: > > On 2/2/07, limodou <limodou在gmail.com> wrote: > > > On 2/2/07, Leo Jay <python.leojay在gmail.com> wrote: > > > > 关于UliPad的Impact Command模式中,类似vim的先输入重复次数,再输入指令的 > > > > 初步实现。 > > > > > > > > 即,可以在Impact Command模式中,输入3j,表示向下走3行,4w表示向前走4个单词。 > > > > > > > > 我的实现方法是,修改./mixins/Import.py的on_first_char函数,如果一开始输入的数据是 > > > > 数字,则保留数字,等到输入了指令后,再把指令重复执行多次。 我觉得这可以是一个项目,因为有了VIM的源代码的算法,可以少走弯路。基本可行。 建议先研究一下mixins技术,而且它可以重用。所以我觉得目标可以是wxpython下的STC控件 模拟VIM的key mapping.视野可以开阔一些。不要依赖ulipad具体的东西。 > > > > > > > 详见附件。 > > > > > > > > 另,我有一些地方不是很明白。为什么mCommand.py和Import.py中的一些代码是重的。 > > > > Import.py好像是多个py文件的合集。这是为什么呢? > > > > > > > 非常感谢。我会尽快考虑。 > > > > > > Import.py是一个自动生成的文件,它是通过tools/create.py来生成的。一般在win下我是这样运行的: > > > > > > tools\run.bat > > > > > > 这样会自动把__init__.py中定义的plugin模块,注意都是使用注释来写的,自动合并成一个大的Import.py > 。这样在导入时就不需要一次导入多个文件(现在有很多),目的是为了加快启动速度。 > > > > > > > > > 我仔细想了一下,vi的数字模式不是这么简单的。比如3ia,可以插入3个'a',然后进入编辑模式。这样从命令上看,应该是把次数传给后面要执行的命令,而不是简单地重复三次。当然ulipad并没有考虑到重复执行的问题,而且也不是所有命令都需要次数参数。所以如果ulipad可以识别出要执行的命令支持次数参数,然后把参数传进去,如果不支持就重复多次可能更好一些。但出何知道支持次数参数,可能需要有一种配置或探测的方法才可以。这个可以再想一想。 > > > > 是否很多人对模拟vi很有兴趣呢? > > > > 嗯,所以我说这只是个初步的实现,我现在对ulipad整个结构还不是很清楚, > 所以先实现一些简单些的功能,上上手。 > > 前一段时间我一直在研究vim的源代码,现在对vim的处理方法颇有些心得。 > 我接下来的目标就是按vim的处理方法给ulipad加入vim的功能。呵呵。 > > > -- > Best Regards, > Leo Jay > _______________________________________________ > python-chinese > Post: send python-chinese在lists.python.cn > Subscribe: send subscribe to python-chinese-request在lists.python.cn > Unsubscribe: send unsubscribe to python-chinese-request在lists.python.cn > Detail Info: http://python.cn/mailman/listinfo/python-chinese -- ※※※※※※※※※※※※※※※※※※※※※※※※ My blog: http://blog.donews.com/ygao Forum http://groups.google.com/group/python_study ※※※※※※※※※※※※※※※※※※※※※※※※ -------------- 下一部分 -------------- 一个HTML附件被移除... URL: http://python.cn/pipermail/python-chinese/attachments/20070202/d5f39280/attachment.htm
Zeuux © 2025
京ICP备05028076号