Difference between revisions of "ThreadSearch plugin"
From Code::Blocks
Line 16: | Line 16: | ||
* highly configurable | * highly configurable | ||
* contextual menu "Find occurrences" to start a search in files with the word under cursor | * contextual menu "Find occurrences" to start a search in files with the word under cursor | ||
+ | |||
+ | == Why ? == | ||
+ | * The default ''Search in files'' displays a blocking dialog. Being blocked for 6 minutes is unpleasant. Workaround was to run 2 Code::Blocks instances. | ||
+ | * The default ''Search in files'' automatically move to first occurrence. Current edition situation is lost, either a new editor is open or cursor is moved. | ||
+ | * The line containing search expression may be senseless without its context, forcing user to open the file to browse the result. | ||
+ | * Impossibility to search in files both in workspace and other directory. | ||
+ | * I love Code::Blocks and I wanted to bring my contribution. | ||
== Screenshots == | == Screenshots == | ||
Line 24: | Line 31: | ||
[[Image:ThreadSearchOptions.png]] | [[Image:ThreadSearchOptions.png]] | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== Configuration == | == Configuration == | ||
Line 39: | Line 39: | ||
Note : | Note : | ||
items 1 and 2 may not be available according to current configuration. | items 1 and 2 may not be available according to current configuration. | ||
+ | |||
Let's browse configuration panel... Most of the items are available on the ''Thread search'' panel. | Let's browse configuration panel... Most of the items are available on the ''Thread search'' panel. | ||
− | + | <p> | |
− | ''Search in'' part defines the set of files that will be analysed. | + | '''Search in''' part defines the set of files that will be analysed. |
− | Project and Workspace checkboxes are mutually exclusive. | + | * Project and Workspace checkboxes are mutually exclusive. |
− | Directory path can be edited or set with ''Select'' button. | + | * Directory path can be edited or set with ''Select'' button. |
− | Mask is the set a file specifications separated by ';'. For example: ''*.cpp;*.c;*.h''. | + | * Mask is the set a file specifications separated by ';'. For example: ''*.cpp;*.c;*.h''. |
Is it necessary to describe other items ?? | Is it necessary to describe other items ?? | ||
− | + | </p> | |
− | ''Options'' | + | <p> |
− | 'Whole word': if checked, line matches search expression if search expression is found with no alpha-numeric + '_' before and after. | + | '''Options''' |
+ | * 'Whole word': if checked, line matches search expression if search expression is found with no alpha-numeric + '_' before and after. | ||
+ | * 'Start word': if checked, line matches search expression if search expression is found at the beginning of a word, ie no alpha-numeric + '_' before search expression. | ||
+ | * 'Match case': if checked, the search is case sensitive. | ||
+ | * 'Regular expression': the search expression is a regular expression. wxRE_ADVANCED format is used. | ||
+ | </p> | ||
+ | <p> | ||
+ | '''Thread search options''' | ||
+ | * 'Enable 'Find occurrences contextual menu item' ': if checked, the ''Find occurrences of 'Focused word' ''entry is added to the editor contextual menu. | ||
+ | * 'Use default options when running 'Find occurrences' ': if checked, a set of default options is applied to the searches launched with the 'Find occurrences' contextual menu item. Default values are : | ||
+ | ** 'Whole word' = true | ||
+ | ** 'Start word' = false | ||
+ | ** 'Match case' = true | ||
+ | ** 'Regular expression' = false | ||
+ | </p> | ||
== Usage == | == Usage == |
Revision as of 21:09, 1 July 2007
Features
ThreadSearch plugin offers the following features:
- multi-threaded "Search in files"
- internal read-only editor to preview the results
- file open in editors notebook
- highly configurable
- contextual menu "Find occurrences" to start a search in files with the word under cursor
Why ?
- The default Search in files displays a blocking dialog. Being blocked for 6 minutes is unpleasant. Workaround was to run 2 Code::Blocks instances.
- The default Search in files automatically move to first occurrence. Current edition situation is lost, either a new editor is open or cursor is moved.
- The line containing search expression may be senseless without its context, forcing user to open the file to browse the result.
- Impossibility to search in files both in workspace and other directory.
- I love Code::Blocks and I wanted to bring my contribution.
Screenshots
Configuration
To access ThreadSearch plugin configuration panel click on:
- Options button on Messages notebook Thread search panel.
- Options button on Thread search toolbar.
- Settings/Environment menu item and then on the Thread search item on the left columns
Note : items 1 and 2 may not be available according to current configuration.
Let's browse configuration panel... Most of the items are available on the Thread search panel.
Search in part defines the set of files that will be analysed.
- Project and Workspace checkboxes are mutually exclusive.
- Directory path can be edited or set with Select button.
- Mask is the set a file specifications separated by ';'. For example: *.cpp;*.c;*.h.
Is it necessary to describe other items ??
Options
- 'Whole word': if checked, line matches search expression if search expression is found with no alpha-numeric + '_' before and after.
- 'Start word': if checked, line matches search expression if search expression is found at the beginning of a word, ie no alpha-numeric + '_' before search expression.
- 'Match case': if checked, the search is case sensitive.
- 'Regular expression': the search expression is a regular expression. wxRE_ADVANCED format is used.
Thread search options
- 'Enable 'Find occurrences contextual menu item' ': if checked, the Find occurrences of 'Focused word' entry is added to the editor contextual menu.
- 'Use default options when running 'Find occurrences' ': if checked, a set of default options is applied to the searches launched with the 'Find occurrences' contextual menu item. Default values are :
- 'Whole word' = true
- 'Start word' = false
- 'Match case' = true
- 'Regular expression' = false
Usage
- Configure your search preferences (see configuration part).
- Once the plugin is installed, there are 4 ways to run a search :
- Type/Select a word in the search combo box and press enter or click on Search on the Thread search panel of the Messages notebook
- Type/Select a word in the toolbar search combo box and press enter or click on Search button
- Right click on any 'word' in active editor and click on Find occurrences of 'word'
- Click on Search/Thread search in the toolbar to search for current word in active editor
Note :
items 1, 2 and 3 may not be available according to current configuration.
- Click again on the search button to cancel current search.
- A single click on a result item displays it on the preview editor at right location.
- A double click on a result item opens or set an editor in editors notebook at right location.