[Idle-dev] SearchBar - Have fun searching in IDLE!

Tal Einat taleinat at gmail.com
Wed Jun 24 12:15:57 CEST 2009


I've finally found the time to fix up SearchBar - the powerful replacement
for IDLE's feeble search capabilities. It supports all of the original
search engine's features, a less intrusive interface, incremental searching
(search-as-you-type), highlighting of all matches in the text and word
completion in the find/replace entries.

I hope this is now almost ready for including in IDLE out-of-the-box. I've
fixed all outstanding issues, cleaned up and optimized the code, and added
comments and documentation where needed.

This version should work with any 2.x version of Python from 2.3 onwards. I
have tested with versions 2.3 through 2.6 on WindowsXP. I'd appreciate
anyone who can give it a try and see how it works out, especially
non-Windows users.


*Installation:* (see the included README file)
Unpack the attached archive, or download from
http://pypi.python.org/pypi/SearchBar/
Place the .py files in your Lib/idlelib directory, and add the following to
the text file Lib\idlelib\config-extensions.def:

[SearchBar]
enable=1
is_incremental=1
[Searchbar_bindings]
toggle-search-bar=

Usage:
Just search as usual. (When the extension is enabled it binds to the usual
find/replace events.)

   - Enter, Control+f and Control+g all search for the next appearance
   - The Escape key closes the search bar, and so will clicking outside of
   it
   - Alt+/ completes words in the find and replace entries, press multiple
   times to cycle through possible completions
   - When replacing: Enter replaces and jumps to the next appearance,
   Shift+Enter jumps to the next appearance without replacing
   - Incremental searching can be toggled via the extension configuration


On Mon, Jan 29, 2007 at 2:40 AM, Tal Einat <taleinat at gmail.com> wrote:

> Attached is a first working version of the SearchBar extension, with incremental
> search and word completion.
>
> What I need now is beta testers! Please take the 2 minutes it takes to
> install this, and report and issues or comments.
> (You can always disable the extension in config-extensions.def (enable=0),
> and the good old dialogs will kick in.)
>
> * AFAIK this -should- work with all recent versions of IDLE (those shipped
> with Python2.2 and above).
>
> Enjoy!
> Comments et. al. much appreciated.
>
> - Tal
>
>
> Usage:
> Just search as usual. When the extension is enabled it binds to the usual
> find/replace events.
> To complete words in the find and replace entries: Alt+/  ("slash", on the
> question mark key)
>
> Installation:
> Place the attached files in your idlelib dir,
> and add the following lines to config-extensions.def:
> "
> [SearchBar]
> enable=1
> is_incremental=1
> [Searchbar_bindings]
> toggle-search-bar=
> "
>
> (yes, the last 2 lines are required)
>
>
> On 12/8/06, Tal Einat <taleinat at gmail.com> wrote:
>>
>>
>>
>> On 12/7/06, Michael Foord < fuzzyman at voidspace.org.uk> wrote:
>>>
>>> Kurt B. Kaiser wrote:
>>> > My top items:
>>> [snip]
>>>
>>  > Incremental search (in a text entry widget in the bottom status bar).
>>> >
>>>
>>> +1 million. :-)
>>>
>>> Not because I need it, but just because it's the best way.
>>
>>
>> I've been working some on that too. I've created a Search Bar extension
>> which can be used instead of the Find & Replace dialogs. The search bar
>> shows a thin bar on the bottom of the window, with an entry box and the
>> usual options (wrap, direction, case-sensitive...). For replacing, the bar
>> is twice as thick, with two entries and extra replacement options (replace,
>> find next, replace all).
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/idle-dev/attachments/20090624/2afc5a50/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: SearchBar-0.6.tar.gz
Type: application/x-gzip
Size: 9381 bytes
Desc: not available
URL: <http://mail.python.org/pipermail/idle-dev/attachments/20090624/2afc5a50/attachment.bin>


More information about the IDLE-dev mailing list