diff --git a/CHANGELOG.md b/CHANGELOG.md index c4ef099..918ed8e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Columns++ for Notepad++ -- Pre-releases +## Vesion 0.2.0.6-alpha -- April 18th, 2023 + +* Changed to search in "indicated region" instead of "rectangular selection." This is more flexible, makes it easier to see what is happening, and solves the problem of replacements causing which text is included in the selection to change (Issue #6) -- but it is a little harder to explain how it works to end users. It is possible to use the existing Notepad++ Styles (1st-5th or Find Mark Style), or to use a custom indicator just for Columns++. The indicator can be chosen on the Search dialog; settings for the custom indicator number and color are in Options. + +* A known loose end is that backward regular expression searches are not disabled, but they also are not done "zig-zag" (backward by lines but forward in each line) as before, because that concept is not so straightforward when using indicators instead of rectangular selections. Whether to disable them, allow them (with whatever unexpected results it is that can happen), or re-implement the "zig-zag" approach remains to be decided. + +* There is no way that I know of to ensure that the indicator number used for custom selections is not also used by some other plugin. (DSpellCheck, for example, just hard-codes number 19.) For that reason, I made it configurable; but there's no easy way to explain to the end user what's going on, since we don't really know what's going on. For now, I left it default enabled using indicator number 18; if experience shows this conflicts with some other plugin, it can either be changed to another number or initially disabled. + ## Version 0.1.0.5-alpha - April 14th, 2023 * Added new prompts when a command needs a rectangular selection and the current selection is not rectangular or is zero-width. diff --git a/README.md b/README.md index 0f5eb5c..390ce62 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ The integrated implementation of __Elastic tabstops__ works to line up columns w ## Main Features * __Elastic tabstops:__ Columns++ includes a new implementation of Nick Gravgaard's [Elastic tabstops](https://nickgravgaard.com/elastic-tabstops/). _(Please note that as of this writing I have not communicated with Mr. Gravgaard about my implementation of his proposal, and no endorsement on his part is implied.)_ -* __Find and replace in rectangular selections__ +* __Find and replace:__ Columns++ supports find and replace within regions, which can be defined by rectangular selections or multiple selections. * __Calculations:__ There are commands to add or average numbers in one or more columns. * __Alignment:__ You can left- or right-align text, or line up numbers. * __Sorting:__ Columns++ includes sort commands that work correctly with rectangular selections in files that use tabs. diff --git a/help.htm b/help.htm index 261bbdf..6417064 100644 --- a/help.htm +++ b/help.htm @@ -240,13 +240,21 @@
Columns++ offers the ability to find and replace in a rectangular selection. The Search... item on the Columns++ menu opens the Search in rectangular selection dialog. Most of the options on this dialog are similar to the corresponding Notepad++ search options.
+Columns++ offers the ability to find and replace within a region marked by an indicator. Notepad++ uses several indicators, including the 1st to 5th Styles from the Search menu and the Find Mark Style used by the Mark function. Columns++ lets you use any one of those six indicators, or a custom indicator, to define the region for searching.
-To allow for repeated finding and replacing, Columns++ remembers your last rectangular selection even after it finds and selects text. Within reason, you can move the caret or even edit text and still resume searching, from the caret position, within the previous selection. You can tell whether the previous selection will be restored by the text on the Find button: if it says Find First or Find Last a new search will begin in a new rectangular selection; if it says Find Next or Find Previous, searching will resume within the previous rectangular selection.
+The Search... item on the Columns++ menu opens the Search in indicated region dialog. Most of the options on this dialog are similar to the corresponding Notepad++ search options.
-Lines are searched sequentially (forward or backward), one at a time. It is not possible for a single match to span multiple lines. When no more occurrences of the search string can be found, Columns++ restores the rectangular selection.
+When you initiate a search, Columns++ looks for a rectangular selection or a multiple selection from which to create a search region. If you do not have a such a selection but you do have text marked with the indicator you are using for search, the search proceeds within the indicated region. If you have neither a searchable region nor a rectangular or multiple selection, Columns++ will prompt you to make a selection.
-When using regular expressions, the circumflex (^) matches only if the left end of the selection is at the beginning of the line; the dollar sign ($) matches the end of the selection on each line regardless of whether it is at the end of the line. If you select both Backward direction and Regular expression lines are searched from bottom to top, but from left to right within each line.
+Segments of the indicated region are searched sequentially (forward or backward), one at a time. It is not possible for a single match to span multiple segments. When no more occurrences of the search string can be found, Columns++ gives a status message to that effect; if focus remains on the search dialog, the next search will resume from the beginning of the region.
+ +The Indicator section at the bottom of the Search in indicated region dialog lets you select which indicator will be used to identify the search region.
+ +The Clear automatically checkbox determines whether an existing indicated region is cleared when the dialog is closed and when initiating a search when you have a rectangular or multiple selection. This option is set to checked when you choose the Custom Style indicator and to unchecked when you choose any other indicator; however, you may change it after you select an indicator and it will stick until you change the indicator again.
+ +The Clear button in the Indicator section clears the current search indicator, so that there is no search region indicated.
+ +It is currently possible to select both Backward direction and Regular expression; however, this combination may produce unexpected results.