Может с API, конечно, всё так печально... я использовал:
Code: Select all
result = AkelPad.GetTextRange(0, nMax);
А нет ли возможности определить позицию начала выделения и от неё взять сколько-то?
Code: Select all
result = AkelPad.GetTextRange(0, nMax);
Code: Select all
#define IDC_COMBOBOXEDIT 1001
...
case DLGTYPE_FIND:
case DLGTYPE_REPLACE:
if ( bModelessDlgIsFocused || !bQSearchDlgIsFocused )
{
HWND hFindTextWnd = GetDlgItem(hModelessDlg, IDC_SEARCH_FIND);
HWND hFindTextEditWnd = GetDlgItem(hFindTextWnd, IDC_COMBOBOXEDIT);
if (SendMessage(hFindTextEditWnd, EM_GETMODIFY, 0, 0))
bSetText = TRUE;
...
Code: Select all
var hMainWnd=AkelPad.GetMainWnd();
var oSys=AkelPad.SystemFunction();
var hModelessDlg=AkelPad.SendMessage(hMainWnd, 1275 /*AKD_GETMODELESS*/, 0, 0);
var hFindTextWnd=oSys.Call("user32::GetDlgItem", hModelessDlg, 3052 /*IDC_SEARCH_FIND*/);
var hFindTextEditWnd=oSys.Call("user32::GetDlgItem", hFindTextWnd, 1001 /*IDC_COMBOBOXEDIT*/);
WScript.Echo("" + AkelPad.SendMessage(hFindTextEditWnd, 0x00B8 /*EM_GETMODIFY*/, 0, 0));
Indeed, this is intentional. The motivation:nbsp wrote:When searching for ".+" ("Search: Use regular expressions" is selected), the search is non-greedy and finds only 1 character
The purpose of "avoid selection to the end of the file" is highly noticeable in the on-the-fly mode, when + or * appears in the middle of the RegEx being typed.QSearch-Eng.txt wrote:v.5.4 (May 2013)
* now the search ignores "+", "*", "+?" and "*?" at the end of regexp to avoid selection to the end of the file
Дело в том, что по описанию:DV wrote: As you mentioned, ++ or *+ can be used to make it greedy explicitly.
А в AP, шаблон ".+", находит совпадение полностью со всем текстом.QSearch-Rus.txt wrote: Поиск с регулярными выражениями. Используется реализация регулярных
выражений в AkelPad.
Code: Select all
(?<=").+?\K\b\\\b
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Wow6432Node\CLSID\{9BE31822-FDAD-461B-AD51-BE1D1C159921}\ProgID]
@="VideoLAN.VLCPlugin.2"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Wow6432Node\CLSID\{9BE31822-FDAD-461B-AD51-BE1D1C159921}\Programmable]
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Wow6432Node\CLSID\{9BE31822-FDAD-461B-AD51-BE1D1C159921}\ToolboxBitmap32]
@="D:\\_programs\\TC UP 6.7\\Plugins\\Media\\VLC\App\\VLC\\axvlc.dll,1"
I've just recently noticed this option in AkelPad's Find Dialog, and I also thought it would be good to add this in QSearch.nbsp wrote:the option ". matches \n"
Собственно, да: не могу подобрать ни название этому пункту меню, ни место, куда его вставить во всплывающее меню.nbsp wrote:the option ". matches \n"
Code: Select all
Поиск: Использовать регулярные выражения
Поиск: . совпадает с \n в рег. выражениях
Поиск: Подхватывать выделенный текст
Code: Select all
Поиск: Останавливаться в конце файла
RegExp: . совпадает с \n
Окно: Расположить сверху
Code: Select all
Поиск: Использовать регулярные выражения
Поиск: . захватывает переводы строк
А зачем изобретать? Можно глянуть как это уже сделано:DV wrote:Собственно, да: не могу подобрать ни название этому пункту менюnbsp wrote:the option ". matches \n"
...