2 Redesigning Search/Replace: Requirements:
3 -----------------------------------------
5 Reference implementation: Regexxer.
8 1.1 Search and replace dialogs should be the same.
9 1.2 Same dialog for all files/current file.
11 R2. Specifying search expressions:
13 2.2 Regular expressions.
17 2.3.3 Beginning of word
18 2.4 Subexpressions (ref 4.2)
20 R3. Specifying search range:
23 3.1.2 Current selection
25 3.1.4 Current function (top level block)
26 3.1.5 All open buffers
28 3.2.1 All project files
29 3.2.2 Files of a particular module (e.g. include)
31 3.3.1 Include directory patterns (globbing)
32 3.3.2 File patterns (globbing)
33 3.3.3 Exclude file patterns (globbing)
34 3.3.4 Exclude directory patterns (globbing)
36 R4. Replace expression:
38 4.2 String with back references (ref 2.4)
39 4.3 Result of function call on matched string
40 4.3.1 User defined functions (Python scripting)
41 4.3.2 Pre-defined functions (upcase, etc.)
42 4.3.2 Output of tool (Tools interface)
44 R5. Reuse configured dialogs (saved searches)
45 5.1 Save current dialog
47 5.1.2 Project Level (?)
48 5.2 Assign names to commonly used dialog settings.
49 5.3 Retrieve dialog settings by name from combo.
51 R6. Context help with variables and regular expressions.
53 R7. Miscellaneous options:
54 7.1 Ask before replacing.
55 7.2 Open in editor before replacing.
57 R8. Displaying search results:
58 8.1 Show in find pane.
60 8.3 Highlight all occurences in buffers.
62 -----------------------------------------------