fixes: #5270 regex case-sensitive should behave like monaco
This commit is contained in:
@@ -499,12 +499,18 @@ export class SearchAddon extends Disposable implements ITerminalAddon , ISearchA
|
|||||||
const [stringLine, offsets] = cache;
|
const [stringLine, offsets] = cache;
|
||||||
|
|
||||||
const offset = this._bufferColsToStringOffset(row, col);
|
const offset = this._bufferColsToStringOffset(row, col);
|
||||||
const searchTerm = searchOptions.caseSensitive ? term : term.toLowerCase();
|
let searchTerm: string = term;
|
||||||
const searchStringLine = searchOptions.caseSensitive ? stringLine : stringLine.toLowerCase();
|
let searchStringLine: string = stringLine;
|
||||||
|
if (searchOptions.regex === false){
|
||||||
|
searchTerm = searchOptions.caseSensitive ? term : term.toLowerCase();
|
||||||
|
searchStringLine = searchOptions.caseSensitive ? stringLine : stringLine.toLowerCase();
|
||||||
|
}
|
||||||
|
|
||||||
let resultIndex = -1;
|
let resultIndex = -1;
|
||||||
if (searchOptions.regex) {
|
if (searchOptions.regex) {
|
||||||
const searchRegex = RegExp(searchTerm, 'g');
|
let regexFlags = 'g';
|
||||||
|
searchOptions.caseSensitive !== true ? regexFlags+='i':'';
|
||||||
|
const searchRegex = RegExp(searchTerm, regexFlags);
|
||||||
let foundTerm: RegExpExecArray | null;
|
let foundTerm: RegExpExecArray | null;
|
||||||
if (isReverseSearch) {
|
if (isReverseSearch) {
|
||||||
// This loop will get the resultIndex of the _last_ regex match in the range 0..offset
|
// This loop will get the resultIndex of the _last_ regex match in the range 0..offset
|
||||||
|
|||||||
Reference in New Issue
Block a user