[PythonCE] IdleCE Feature Request

Ed Blake kitsune_e at yahoo.com
Mon Feb 7 19:02:45 CET 2005


--- Michael Foord <mike at pcblokes.com> wrote:

> A couple of feature requests. The first of which isn't straightforward - 
> but would be nice.
> 
> 1) Get IdleCE to use the windows clipboard for cut/copy/past operations. 
> At the moment it's not possible to copy and paste into IdleCE from other 
> applications. This would mean finding the right function calls in the 
> windows API I guess. Whilst we're on the subject ctrl- C, X, V, S key 
> bindings would also be very nice.
> 
> 2) Is there a maximum file size limit for IdleCE ? When attempting to 
> edit a 46kb file yesterday, it would only seem to load the first couple 
> of kilobytes ?
> 
> Regards,
> 
> Fuzzy

Okay, I'll answer the first question first.  To my knowledge IdleCE is using
the system clipboard.  I have a number of influential Python texts stored on
my SD card and I copy example code from IE to IdleCE to test it out. 
Possibly the version of tcl/tk you are using is flawed/hacked/altered to
change its behavior.  The version of PythonCE and Tk I am using were obtained
here:

http://fore.validus.com/~kashtan/

Also about ctrl-c/x/v/z... These also should work by default, but on my
device (HP Ipaq PPC WinCE 2003) I cannot generate a ctrl-keysym event.  This
is why I have added the highlight-click popup menu and the the double-tap to
paste.  I assume since you are asking about the key combinations you are
using an HPC, the only thing I can suggest is that you get my event-check
script and try to setup your own event binding to do copy/paste/etc.  Just
put self.bind('<mod-key>',self.copy/paste/etc.) in the __init__ of the
SyntaxHighlightingText widget.  One of the future features I am planning is a
visible clipboard with a memory, this also may solve some of your problems/my
bugs.

On the second topic I have wondered myself what the file size limits are. 
Python takes a largish amount of memory to run, and with a Tkinter app
running you also have tcl/tk and the Tkinter modules loaded into memory.  Now
if you have several other applications running as well you may be nearing the
limits of your availible memory.  Also I did not use any memory safe
operations in opening files, I just open()ed then readlines() into a
variable.  I should probably change it to readline()...  There changed, now
it uses iteration to get the lines in the file.  So far the largest file I've
opened is IdleCE itself (~26k)  I would be interested to hear the size of the
largest file others had successfully edited.

Anyway if I have time I will play around with the editing stuff and testing
file capabilities, but their is so much to do.  Anyway thanks for the feed
back and  feel free to get in there and play around with the code.  Alot of
stuff I did the easiest/fastest way I could think of so there are plenty of
things to improve.  I think most of the code is fairly straight forward, the
only hairy parts is the colorizer and where stuff is hacked to pass
selections between the popup menu and subsequent functions.


More information about the PythonCE mailing list