The OnSearchKeyword method in the MsdnExpert 1.0 has a
latent dead loop, so you need replace that method with
follow source code and recompile the package, sorry :)
or download the MsdnExpert 1.1
procedure TMsdnExpert.OnSearchKeyword(const Context:
IOTAKeyContext;
KeyCode: TShortcut; var BindingResult:
TKeyBindingResult);
function GetCurrentToken: string;
var
OTAEditPosition: IOTAEditPosition;
begin
OTAEditPosition := (BorlandIDEServices as
IOTAEditorServices).TopBuffer.EditPosition;
OTAEditPosition.Save;
try
while OTAEditPosition.IsWhiteSpace or
OTAEditPosition.IsSpecialCharacter do
if not OTAEditPosition.MoveRelative(0, -1) then
Break;
while OTAEditPosition.Column > 0 do
begin
if not OTAEditPosition.IsWordCharacter then
begin
OTAEditPosition.MoveRelative(0, 1);
Break;
end;
if not OTAEditPosition.MoveRelative(0, -1) then
Break;
end;
while True do
begin
if not OTAEditPosition.IsWordCharacter then
Break;
Result := Result + OTAEditPosition.Character;
if not OTAEditPosition.MoveRelative(0, 1) then
Exit;
end;
finally
OTAEditPosition.Restore;
end;
end;
begin
LookupKeyword(GetCurrentToken);
BindingResult := krHandled;
end;
MSDN Expert 1.1 update