Regarding the Ctrl+F shortcut misbehavior with PySide:
  * debugging: simply using Spyder's "Find in files" with "Ctrl+F" as
search pattern (regexp option unchecked) will guide you to the right
place, i.e. findreplace.py
  * why is it happening ? See here:
http://code.google.com/p/spyderlib/issues/detail?id=793

-Pierre

On 24 sep, 09:41, anatoly techtonik <[email protected]> wrote:
> Hello Carlos. I expected any answer, so this one is fine. Thanks.
> However, grep doesn't seem to me as a reliable entrypoint. Not
> everybody know how to search for shortcut - I'd search for 'Ctrl-F'
> instead of 'Ctrl+F' for example.
>
> I thought of is a more reliable instrument to find the relevant piece
> of code - it is a panel that show what happens when you press a key.
> This requires:
> 1. [ ] create panel that can be called from '?' menu entry - probably
> called 'Internal messages...'
> 2. [ ] add function that is called when key is pressed and logs action
> and piece of code that it is going to call
>         Two questions here:
>         - is that possible at all?
>         - how seriously it will affect performance?
> 3. [ ] add checkbox on the messages panel that will allow to
> dynamically turn on/off messages from keypresses
>
> Possible message format:
> (component) Action, Param1, Param2, ...
>
> Possible format for keys handling component:
> (core.keys) Ctrl-F, Action(), Location
>
> Possible format for Location component:
> {spyder}.utils.something - message from spyderlib
> {plugin}.something - message from external plugin
>
> This will require adding a separate function to add shortcuts. As a
> side effect, such function can be used to maintain a registry of
> available keys, to show it and spit warnings when on attempt to add
> duplicate keys. Maybe Qt maintains such list and handles conflicts
> itself already?
> --
> anatoly t.
>
> 2011/9/23 Carlos Córdoba <[email protected]>:
>
>
>
>
>
>
>
> > Anatoly, is this the kind of answer you were expecting? Or were you
> > expecting something else? Unfortunately this is all the advice I can give as
> > a semi-regular developer, but perhaps others can comment on this thread.
>
> > Carlos
>
> > El 22/09/11 16:30, Carlos Córdoba escribió:
>
> > Hi Anatoly,
>
> > I've seen you also work on Linux so I think you'll find my few advices
> > useful:
>
> > 1. First, use ack to find the file you need to work on. ack is a perl script
> > that behaves pretty much like grep, but doesn't search inside binaries,
> > build dirs, nor .hg or .git ones. It's been explicitly designed to easily
> > search source code trees and it has colored output.
>
> > In Ubuntu you can install it with:
>
> > $ sudo apt-get install ack-grep
>
> > In your case, I'd run a search for Ctrl-F with it, because that's how the
> > widget is called. Something like
>
> > $ ack-grep 'Ctrl\+F'
>
> > inside the spyderlib dir gives one promising result (apart from others):
>
> > widgets/findreplace.py
> > 142:        self.togglefind_sc = QShortcut(QKeySequence("Ctrl+F"), parent,
> > 167:                (self.togglefind_sc, "Find text", "Ctrl+F"),
>
> > So now you know that widgets/findreplace.py is your starting point.
>
> > 2. Now my advice become less explicit and more general. Obviously, your next
> > step is open the file and start to look at their classes. Maybe you realize
> > all you need to do is to modify code inside it. But it could be the case
> > that a class in it inherits a class from other file, which is the one you
> > think you have to modify. So you run ack again to find where this new code
> > is located, and so on until you find the right spot.
>
> > 3. Always maintain the Internal Console open to read the errors you get
> > while you hack on Spyder. I found it an invaluable tool to understand what I
> > am doing wrong. You can also add print statements to any file and the
> > results will be printed in the Internal console too (or simply in the
> > terminal from which you launched Spyder). That's quite cool! For example, it
> > let me solve Issue 647.
>
> > 4. Browse the Qt docs with passion to find how to use their classes and
> > libraries. At least I have to do that a lot since I know pretty much nothing
> > about Qt.
>
> > That's all I have to say. Maybe we could setup an IRC channel or use gmail
> > chat to work on bugs/enhancements together. I'm sure our productivity will
> > improve a lot.
>
> > Pierre, what do you think?
>
> > Cheers,
> > Carlos
>
> > El 22/09/11 04:47, anatolytechtonikescribió:
>
> > I won't expand on how cool it is if people with no knowledge of Spyder
> > codebase could send a patch in just a few hours. And to make this happen
> > they need two things:
>
> > An entrypoint
> > Some guidance
>
> > Even if I know spyderlib a bit, right now I am in position of such a person
> > - with no entrypoint and guidance at all. So, this is a question to all
> > developers - how can one find the source of a problem when Spyder
> > misbehaves? I'd like to limit the scope to this specific case - Spyder fails
> > to focus on search panel that is called by pressing Ctrl-F in editor if this
> > panel is already present.
>
> > --
> > You received this message because you are subscribed to the Google Groups
> > "spyder" group.
> > To view this discussion on the web visit
> >https://groups.google.com/d/msg/spyderlib/-/iAJonFU2mNcJ.
> > To post to this group, send email to [email protected].
> > To unsubscribe from this group, send email to
> > [email protected].
> > For more options, visit this group at
> >http://groups.google.com/group/spyderlib?hl=en.
>
> > --
> > You received this message because you are subscribed to the Google Groups
> > "spyder" group.
> > To post to this group, send email to [email protected].
> > To unsubscribe from this group, send email to
> > [email protected].
> > For more options, visit this group at
> >http://groups.google.com/group/spyderlib?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
"spyder" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/spyderlib?hl=en.

Reply via email to