IDE: resourcestrings

git-svn-id: trunk@45401 -
This commit is contained in:
mattias 2014-06-08 13:51:11 +00:00
parent 24a6aab526
commit 3c98dd7469
28 changed files with 560 additions and 429 deletions

View File

@ -20,13 +20,14 @@ uses
{$ELSE}
LazMethodList, contnrs,
{$ENDIF}
LazLogger, LazFileUtils, LazFileCache, Menus, LCLProc;
ObjInspStrConsts, LazLogger, LazFileUtils, LazFileCache, Menus, LCLProc;
const
SubToolFPC = 'FPC';
SubToolFPCPriority = 100;
SubToolFPCLinker = 'FPCLinker';
SubToolFPCRes = 'FPCRes';
SubToolFPCWindRes = 'FPCWindRes';
SubToolMake = 'make';
SubToolMakePriority = 1000; // higher than FPC
@ -1235,7 +1236,7 @@ begin
Result:=AddParser(ParserClass);
exit;
end;
raise Exception.Create('unable to find parser for tool "'+SubTool+'"');
raise Exception.Create(Format(lisUnableToFindParserForTool, [SubTool]));
end;
function TAbstractExternalTool.AddParser(ParserClass: TExtToolParserClass

View File

@ -259,6 +259,10 @@ msgstr ""
msgid "Set value"
msgstr ""
#: objinspstrconsts.lisunabletofindparserfortool
msgid "unable to find parser for tool \"%s\""
msgstr ""
#: objinspstrconsts.nbcesaddpage
#, fuzzy
#| msgid "Add page"

View File

@ -260,6 +260,10 @@ msgstr "IfNDef"
msgid "Set value"
msgstr "Nastavit hodnotu"
#: objinspstrconsts.lisunabletofindparserfortool
msgid "unable to find parser for tool \"%s\""
msgstr ""
#: objinspstrconsts.nbcesaddpage
#| msgid "Add page"
msgid "Add Page"

View File

@ -263,6 +263,10 @@ msgstr "IfNDef"
msgid "Set value"
msgstr "Wert setzen"
#: objinspstrconsts.lisunabletofindparserfortool
msgid "unable to find parser for tool \"%s\""
msgstr ""
#: objinspstrconsts.nbcesaddpage
#| msgid "Add page"
msgid "Add Page"

View File

@ -260,6 +260,10 @@ msgstr "IfNDef"
msgid "Set value"
msgstr "Establecer valor"
#: objinspstrconsts.lisunabletofindparserfortool
msgid "unable to find parser for tool \"%s\""
msgstr ""
#: objinspstrconsts.nbcesaddpage
#, fuzzy
#| msgid "Add page"

View File

@ -252,6 +252,10 @@ msgstr ""
msgid "Set value"
msgstr "Aseta arvo"
#: objinspstrconsts.lisunabletofindparserfortool
msgid "unable to find parser for tool \"%s\""
msgstr ""
#: objinspstrconsts.nbcesaddpage
msgid "Add Page"
msgstr "Lisää välilehti"

View File

@ -264,6 +264,10 @@ msgstr ""
msgid "Set value"
msgstr ""
#: objinspstrconsts.lisunabletofindparserfortool
msgid "unable to find parser for tool \"%s\""
msgstr ""
#: objinspstrconsts.nbcesaddpage
#, fuzzy
#| msgid "Add page"

View File

@ -257,6 +257,10 @@ msgstr "IfNDef"
msgid "Set value"
msgstr "קבע ערך"
#: objinspstrconsts.lisunabletofindparserfortool
msgid "unable to find parser for tool \"%s\""
msgstr ""
#: objinspstrconsts.nbcesaddpage
#, fuzzy
#| msgid "Add page"

View File

@ -1,4 +1,3 @@
#
msgid ""
msgstr ""
"Project-Id-Version: \n"
@ -207,8 +206,7 @@ msgstr "Nem sikerült összegyűjteni a Dataset mezőinek listáját"
#: objinspstrconsts.fesnofieldsnote
msgid "Field's list is not available, can't check for duplicates"
msgstr ""
"A mezők listája nem érhető el, nem lehet többszörös előfordulásokat keresni"
msgstr "A mezők listája nem érhető el, nem lehet többszörös előfordulásokat keresni"
#: objinspstrconsts.fesokbtn
msgctxt "objinspstrconsts.fesokbtn"
@ -265,6 +263,10 @@ msgstr "IfNDef"
msgid "Set value"
msgstr "Érték megadása"
#: objinspstrconsts.lisunabletofindparserfortool
msgid "unable to find parser for tool \"%s\""
msgstr ""
#: objinspstrconsts.nbcesaddpage
msgid "Add Page"
msgstr "Lap hozzáadása"
@ -1066,34 +1068,20 @@ msgid "Test Input"
msgstr "Teszt bemenet"
#: objinspstrconsts.oistheidentifierisnotamethodpresscanceltoundopressign
msgid ""
"The identifier %s%s%s is not a method.%sPress Cancel to undo,%spress Ignore "
"to force it."
msgstr ""
"A(z) %s%s%s azonosító nem metódus.%sKlikkeljen a Mégsé-re a visszavonáshoz,"
"%svagy a Kihagyás-ra az erőltetéshez."
msgid "The identifier %s%s%s is not a method.%sPress Cancel to undo,%spress Ignore to force it."
msgstr "A(z) %s%s%s azonosító nem metódus.%sKlikkeljen a Mégsé-re a visszavonáshoz,%svagy a Kihagyás-ra az erőltetéshez."
#: objinspstrconsts.oisthemethodisincompatibletothiseventpresscanceltound
msgid ""
"The method %s%s%s is incompatible to this event (%s).%sPress Cancel to undo,"
"%spress Ignore to force it."
msgstr ""
"A(z) %s%s%s metódus nem kompatibilis ezzel az eseménnyel (%s).%sKlikkeljen a "
"Mégsé-re a visszavonáshoz,%svagy a Kihagyás-ra az erőltetéshez."
msgid "The method %s%s%s is incompatible to this event (%s).%sPress Cancel to undo,%spress Ignore to force it."
msgstr "A(z) %s%s%s metódus nem kompatibilis ezzel az eseménnyel (%s).%sKlikkeljen a Mégsé-re a visszavonáshoz,%svagy a Kihagyás-ra az erőltetéshez."
#: objinspstrconsts.oisthemethodisnotpublishedpresscanceltoundopressignor
msgid ""
"The method %s%s%s is not published.%sPress Cancel to undo,%spress Ignore to "
"force it."
msgstr ""
"A(z) %s%s%s metódus nincs publikálva.%sKlikkeljen a Mégsé-re a "
"visszavonáshoz,%svagy a Kihagyás-ra az erőltetéshez."
msgid "The method %s%s%s is not published.%sPress Cancel to undo,%spress Ignore to force it."
msgstr "A(z) %s%s%s metódus nincs publikálva.%sKlikkeljen a Mégsé-re a visszavonáshoz,%svagy a Kihagyás-ra az erőltetéshez."
#: objinspstrconsts.oisunabletochangeparentofcontroltonewparent
msgid "Unable to change parent of control %s%s%s to new parent %s%s%s.%s%s"
msgstr ""
"A(z) %s%s%s vezérlő szülőjét nem lehet megváltoztatni az új szülőre: %s%s%s."
"%s%s"
msgstr "A(z) %s%s%s vezérlő szülőjét nem lehet megváltoztatni az új szülőre: %s%s%s.%s%s"
#: objinspstrconsts.oisundo
msgctxt "objinspstrconsts.oisundo"
@ -1389,7 +1377,7 @@ msgstr "Betöltés ..."
msgid "Move Rows/Cols"
msgstr ""
"Sorok/Oszlopok\n"
"mozgatása"
"mozgatása\n"
#: objinspstrconsts.sccssgedtopendialog
msgctxt "objinspstrconsts.sccssgedtopendialog"
@ -1536,278 +1524,193 @@ msgstr "Fül beszúrása"
msgid "Move tab left"
msgstr "Fül mozgatása eggyel balra"
~ msgid "OEM 1"
~ msgstr "OEM 1"
~ msgid "OEM 2"
~ msgstr "OEM 2"
~ msgid "OEM 3"
~ msgstr "OEM 3"
~ msgid "OEM 4"
~ msgstr "OEM 4"
~ msgid "OEM 5"
~ msgstr "OEM 5"
~ msgid "OEM 6"
~ msgstr "OEM 6"
~ msgid "OEM 7"
~ msgstr "OEM 7"
~ msgid "OEM 8"
~ msgstr "OEM 8"
~ msgid "OEM comma"
~ msgstr "OEM vessző"
~ msgid "OEM minus"
~ msgstr "OEM minusz"
~ msgid "OEM period"
~ msgstr "OEM pont"
~ msgid "OEM plus"
~ msgstr "OEM plusz"
~ msgid "All"
~ msgstr "Mind"
~ msgctxt "objinspstrconsts.oiscancel"
~ msgid "&Cancel"
~ msgstr "Mégsem"
~ msgid "Copy components"
~ msgstr "Komponensek másolása"
~ msgid "Cut components"
~ msgstr "Komponensek kivágása"
~ msgid "Delete components"
~ msgstr "Komponensek törlése"
~ msgid "Edit action list..."
~ msgstr "Műveletlista szerkesztése..."
~ msgid "Index out of bounds"
~ msgstr "Az index kívül esik a határokon"
~ msgid "not supported"
~ msgstr "nem támogatott"
~ msgid "Paste components"
~ msgstr "Komponensek beillesztése"
~ msgid "Set to default value"
~ msgstr "Beállítás alapértelmezett értékre"
~ msgid "Custom options"
~ msgstr "Saját beállítások"
~ msgid "Debug search path"
~ msgstr "Hibakereső keresési útvonala"
~ msgid "Include search path"
~ msgstr "Include fájlok keresési útvonala"
~ msgid "Library search path"
~ msgstr "Függvénytár keresési útvonal"
~ msgid "Linker options"
~ msgstr "Linker opciók"
~ msgid "Object search path"
~ msgstr "Objektum keresési útvonal"
~ msgid "Result"
~ msgstr "Eredmény"
~ msgid "Unit"
~ msgstr "Unit"
~ msgid "Unit search path"
~ msgstr "Unit keresési útvonal"
~ msgid "Unit source search path"
~ msgstr "Unit forrás keresési útvonal"
~ msgid "Add..."
~ msgstr "Hozzáadás..."
~ msgctxt "objinspstrconsts.sccsiledtdelete"
~ msgid "Delete"
~ msgstr "Törlés"
~ msgid "Edit ListView Items..."
~ msgstr "ListView elemek szerkesztése..."
~ msgid "Edit TreeView Items..."
~ msgstr "TreeView elemeinek szerkesztése..."
~ msgid "Alt"
~ msgstr "Alt"
~ msgid "Ctrl"
~ msgstr "Ctrl"
~ msgid "Accept"
~ msgstr "Elfogadás"
~ msgid "Application Key"
~ msgstr "Alkalmazás gomb"
~ msgid "Backspace"
~ msgstr "Backspace"
~ msgctxt "objinspstrconsts.srvk_cancel"
~ msgid "Cancel"
~ msgstr "Mégsem"
~ msgid "Capital"
~ msgstr "Capital"
~ msgctxt "objinspstrconsts.srvk_clear"
~ msgid "Clear"
~ msgstr "Clear"
~ msgid "Cmd"
~ msgstr "Cmd"
~ msgid "Control"
~ msgstr "Control"
~ msgid "Convert"
~ msgstr "Convert"
~ msgctxt "objinspstrconsts.srvk_delete"
~ msgid "Delete"
~ msgstr "Törlés"
~ msgctxt "objinspstrconsts.srvk_down"
~ msgid "Down"
~ msgstr "Le"
~ msgid "End"
~ msgstr "End"
~ msgid "Escape"
~ msgstr "Escape"
~ msgid "Execute"
~ msgstr "Execute"
~ msgid "Hanja"
~ msgstr "Hanja"
~ msgctxt "objinspstrconsts.srvk_help"
~ msgid "Help"
~ msgstr "Súgó"
~ msgid "Home"
~ msgstr "Home"
~ msgctxt "objinspstrconsts.srvk_insert"
~ msgid "Insert"
~ msgstr "Insert"
~ msgid "Junja"
~ msgstr "Junja"
~ msgid "Kana"
~ msgstr "Kana"
~ msgid "Mouse Button Left"
~ msgstr "Bal egérgomb"
~ msgctxt "objinspstrconsts.srvk_left"
~ msgid "Left"
~ msgstr "Balra"
~ msgid "Left Windows Key"
~ msgstr "Bal Windows gomb"
~ msgid "Mouse Button Middle"
~ msgstr "Középső egérgomb"
~ msgid "Menu"
~ msgstr "Menü"
~ msgid "Meta"
~ msgstr "Meta"
~ msgid "Mode Change"
~ msgstr "Mód váltása"
~ msgctxt "objinspstrconsts.srvk_next"
~ msgid "Next"
~ msgstr "Következő"
~ msgid "Nonconvert"
~ msgstr "Nonconvert"
~ msgid "none"
~ msgstr "semmi"
~ msgid "Numlock"
~ msgstr "Num Lock"
~ msgid "Numpad %d"
~ msgstr "Numpad %d"
~ msgid "Pause key"
~ msgstr "Pause gomb"
~ msgid "Print"
~ msgstr "Nyomtatás"
~ msgctxt "objinspstrconsts.srvk_prior"
~ msgid "Prior"
~ msgstr "Előző"
~ msgid "Mouse Button Right"
~ msgstr "Jobb egérgomb"
~ msgid "Return"
~ msgstr "Enter"
~ msgctxt "objinspstrconsts.srvk_right"
~ msgid "Right"
~ msgstr "Jobbra"
~ msgid "Right Windows Key"
~ msgstr "Jobb Windows gomb"
~ msgid "Scroll"
~ msgstr "Görgetés"
~ msgid "Select"
~ msgstr "Kijelölés"
~ msgid "Shift"
~ msgstr "Shift"
~ msgid "Snapshot"
~ msgstr "Snapshot"
~ msgid "Space key"
~ msgstr "Szóköz"
~ msgid "Super"
~ msgstr "Super"
~ msgid "Tab"
~ msgstr "Tab"
~ msgctxt "objinspstrconsts.srvk_unknown"
~ msgid "Unknown"
~ msgstr "Ismeretlen"
~ msgctxt "objinspstrconsts.srvk_up"
~ msgid "Up"
~ msgstr "Fel"
#: objinspstrconsts.tccesmovetabright
msgid "Move tab right"
msgstr "Fül mozgatása eggyel jobbra"
#~ msgid "OEM 1"
#~ msgstr "OEM 1"
#~ msgid "OEM 2"
#~ msgstr "OEM 2"
#~ msgid "OEM 3"
#~ msgstr "OEM 3"
#~ msgid "OEM 4"
#~ msgstr "OEM 4"
#~ msgid "OEM 5"
#~ msgstr "OEM 5"
#~ msgid "OEM 6"
#~ msgstr "OEM 6"
#~ msgid "OEM 7"
#~ msgstr "OEM 7"
#~ msgid "OEM 8"
#~ msgstr "OEM 8"
#~ msgid "OEM comma"
#~ msgstr "OEM vessző"
#~ msgid "OEM minus"
#~ msgstr "OEM minusz"
#~ msgid "OEM period"
#~ msgstr "OEM pont"
#~ msgid "OEM plus"
#~ msgstr "OEM plusz"
#~ msgid "All"
#~ msgstr "Mind"
#~ msgctxt "objinspstrconsts.oiscancel"
#~ msgid "&Cancel"
#~ msgstr "Mégsem"
#~ msgid "Copy components"
#~ msgstr "Komponensek másolása"
#~ msgid "Cut components"
#~ msgstr "Komponensek kivágása"
#~ msgid "Delete components"
#~ msgstr "Komponensek törlése"
#~ msgid "Edit action list..."
#~ msgstr "Műveletlista szerkesztése..."
#~ msgid "Index out of bounds"
#~ msgstr "Az index kívül esik a határokon"
#~ msgid "not supported"
#~ msgstr "nem támogatott"
#~ msgid "Paste components"
#~ msgstr "Komponensek beillesztése"
#~ msgid "Set to default value"
#~ msgstr "Beállítás alapértelmezett értékre"
#~ msgid "Custom options"
#~ msgstr "Saját beállítások"
#~ msgid "Debug search path"
#~ msgstr "Hibakereső keresési útvonala"
#~ msgid "Include search path"
#~ msgstr "Include fájlok keresési útvonala"
#~ msgid "Library search path"
#~ msgstr "Függvénytár keresési útvonal"
#~ msgid "Linker options"
#~ msgstr "Linker opciók"
#~ msgid "Object search path"
#~ msgstr "Objektum keresési útvonal"
#~ msgid "Result"
#~ msgstr "Eredmény"
#~ msgid "Unit"
#~ msgstr "Unit"
#~ msgid "Unit search path"
#~ msgstr "Unit keresési útvonal"
#~ msgid "Unit source search path"
#~ msgstr "Unit forrás keresési útvonal"
#~ msgid "Add..."
#~ msgstr "Hozzáadás..."
#~ msgctxt "objinspstrconsts.sccsiledtdelete"
#~ msgid "Delete"
#~ msgstr "Törlés"
#~ msgid "Edit ListView Items..."
#~ msgstr "ListView elemek szerkesztése..."
#~ msgid "Edit TreeView Items..."
#~ msgstr "TreeView elemeinek szerkesztése..."
#~ msgid "Alt"
#~ msgstr "Alt"
#~ msgid "Ctrl"
#~ msgstr "Ctrl"
#~ msgid "Accept"
#~ msgstr "Elfogadás"
#~ msgid "Application Key"
#~ msgstr "Alkalmazás gomb"
#~ msgid "Backspace"
#~ msgstr "Backspace"
#~ msgctxt "objinspstrconsts.srvk_cancel"
#~ msgid "Cancel"
#~ msgstr "Mégsem"
#~ msgid "Capital"
#~ msgstr "Capital"
#~ msgctxt "objinspstrconsts.srvk_clear"
#~ msgid "Clear"
#~ msgstr "Clear"
#~ msgid "Cmd"
#~ msgstr "Cmd"
#~ msgid "Control"
#~ msgstr "Control"
#~ msgid "Convert"
#~ msgstr "Convert"
#~ msgctxt "objinspstrconsts.srvk_delete"
#~ msgid "Delete"
#~ msgstr "Törlés"
#~ msgctxt "objinspstrconsts.srvk_down"
#~ msgid "Down"
#~ msgstr "Le"
#~ msgid "End"
#~ msgstr "End"
#~ msgid "Escape"
#~ msgstr "Escape"
#~ msgid "Execute"
#~ msgstr "Execute"
#~ msgid "Hanja"
#~ msgstr "Hanja"
#~ msgctxt "objinspstrconsts.srvk_help"
#~ msgid "Help"
#~ msgstr "Súgó"
#~ msgid "Home"
#~ msgstr "Home"
#~ msgctxt "objinspstrconsts.srvk_insert"
#~ msgid "Insert"
#~ msgstr "Insert"
#~ msgid "Junja"
#~ msgstr "Junja"
#~ msgid "Kana"
#~ msgstr "Kana"
#~ msgid "Mouse Button Left"
#~ msgstr "Bal egérgomb"
#~ msgctxt "objinspstrconsts.srvk_left"
#~ msgid "Left"
#~ msgstr "Balra"
#~ msgid "Left Windows Key"
#~ msgstr "Bal Windows gomb"
#~ msgid "Mouse Button Middle"
#~ msgstr "Középső egérgomb"
#~ msgid "Menu"
#~ msgstr "Menü"
#~ msgid "Meta"
#~ msgstr "Meta"
#~ msgid "Mode Change"
#~ msgstr "Mód váltása"
#~ msgctxt "objinspstrconsts.srvk_next"
#~ msgid "Next"
#~ msgstr "Következő"
#~ msgid "Nonconvert"
#~ msgstr "Nonconvert"
#~ msgid "none"
#~ msgstr "semmi"
#~ msgid "Numlock"
#~ msgstr "Num Lock"
#~ msgid "Numpad %d"
#~ msgstr "Numpad %d"
#~ msgid "Pause key"
#~ msgstr "Pause gomb"
#~ msgid "Print"
#~ msgstr "Nyomtatás"
#~ msgctxt "objinspstrconsts.srvk_prior"
#~ msgid "Prior"
#~ msgstr "Előző"
#~ msgid "Mouse Button Right"
#~ msgstr "Jobb egérgomb"
#~ msgid "Return"
#~ msgstr "Enter"
#~ msgctxt "objinspstrconsts.srvk_right"
#~ msgid "Right"
#~ msgstr "Jobbra"
#~ msgid "Right Windows Key"
#~ msgstr "Jobb Windows gomb"
#~ msgid "Scroll"
#~ msgstr "Görgetés"
#~ msgid "Select"
#~ msgstr "Kijelölés"
#~ msgid "Shift"
#~ msgstr "Shift"
#~ msgid "Snapshot"
#~ msgstr "Snapshot"
#~ msgid "Space key"
#~ msgstr "Szóköz"
#~ msgid "Super"
#~ msgstr "Super"
#~ msgid "Tab"
#~ msgstr "Tab"
#~ msgctxt "objinspstrconsts.srvk_unknown"
#~ msgid "Unknown"
#~ msgstr "Ismeretlen"
#~ msgctxt "objinspstrconsts.srvk_up"
#~ msgid "Up"
#~ msgstr "Fel"

View File

@ -259,6 +259,10 @@ msgstr ""
msgid "Set value"
msgstr ""
#: objinspstrconsts.lisunabletofindparserfortool
msgid "unable to find parser for tool \"%s\""
msgstr ""
#: objinspstrconsts.nbcesaddpage
#, fuzzy
#| msgid "Add page"

View File

@ -263,6 +263,10 @@ msgstr ""
msgid "Set value"
msgstr "Imposta valore"
#: objinspstrconsts.lisunabletofindparserfortool
msgid "unable to find parser for tool \"%s\""
msgstr ""
#: objinspstrconsts.nbcesaddpage
#, fuzzy
#| msgid "Add page"

View File

@ -257,6 +257,10 @@ msgstr "IfNDef"
msgid "Set value"
msgstr "値を設定"
#: objinspstrconsts.lisunabletofindparserfortool
msgid "unable to find parser for tool \"%s\""
msgstr ""
#: objinspstrconsts.nbcesaddpage
msgid "Add Page"
msgstr "ページを追加"

View File

@ -261,6 +261,10 @@ msgstr "IfNDef"
msgid "Set value"
msgstr "Keisti vertę"
#: objinspstrconsts.lisunabletofindparserfortool
msgid "unable to find parser for tool \"%s\""
msgstr ""
#: objinspstrconsts.nbcesaddpage
#| msgid "Add page"
msgid "Add Page"

View File

@ -254,6 +254,10 @@ msgstr ""
msgid "Set value"
msgstr ""
#: objinspstrconsts.lisunabletofindparserfortool
msgid "unable to find parser for tool \"%s\""
msgstr ""
#: objinspstrconsts.nbcesaddpage
#, fuzzy
#| msgid "Add page"

View File

@ -262,6 +262,10 @@ msgstr ""
msgid "Set value"
msgstr ""
#: objinspstrconsts.lisunabletofindparserfortool
msgid "unable to find parser for tool \"%s\""
msgstr ""
#: objinspstrconsts.nbcesaddpage
#, fuzzy
#| msgid "Add page"

View File

@ -252,6 +252,10 @@ msgstr ""
msgid "Set value"
msgstr ""
#: objinspstrconsts.lisunabletofindparserfortool
msgid "unable to find parser for tool \"%s\""
msgstr ""
#: objinspstrconsts.nbcesaddpage
msgid "Add Page"
msgstr ""

View File

@ -260,6 +260,10 @@ msgstr "\"IfNDef\""
msgid "Set value"
msgstr "Definir valor"
#: objinspstrconsts.lisunabletofindparserfortool
msgid "unable to find parser for tool \"%s\""
msgstr ""
#: objinspstrconsts.nbcesaddpage
#| msgid "Add page"
msgid "Add Page"

View File

@ -263,6 +263,10 @@ msgstr "IfNDef"
msgid "Set value"
msgstr "Установить значение"
#: objinspstrconsts.lisunabletofindparserfortool
msgid "unable to find parser for tool \"%s\""
msgstr ""
#: objinspstrconsts.nbcesaddpage
#| msgid "Add page"
msgid "Add Page"

View File

@ -263,6 +263,10 @@ msgstr ""
msgid "Set value"
msgstr ""
#: objinspstrconsts.lisunabletofindparserfortool
msgid "unable to find parser for tool \"%s\""
msgstr ""
#: objinspstrconsts.nbcesaddpage
#, fuzzy
#| msgid "Add page"

View File

@ -261,6 +261,10 @@ msgstr "IfNDef"
msgid "Set value"
msgstr "Вказати значення"
#: objinspstrconsts.lisunabletofindparserfortool
msgid "unable to find parser for tool \"%s\""
msgstr ""
#: objinspstrconsts.nbcesaddpage
#| msgid "Add page"
msgid "Add Page"

View File

@ -264,6 +264,10 @@ msgstr ""
msgid "Set value"
msgstr "设置值"
#: objinspstrconsts.lisunabletofindparserfortool
msgid "unable to find parser for tool \"%s\""
msgstr ""
#: objinspstrconsts.nbcesaddpage
#, fuzzy
#| msgid "Add page"

View File

@ -429,6 +429,7 @@ resourcestring
oisUnableToChangeParentOfControlToNewParent = 'Unable to change parent of '
+'control %s%s%s to new parent %s%s%s.%s%s';
oisAddCollectionItem = '&Add Item';
lisUnableToFindParserForTool = 'unable to find parser for tool "%s"';
implementation

View File

@ -39,7 +39,7 @@ uses
CompOptsIntf, CodeToolsFPCMsgs, CodeToolsStructs, CodeCache, CodeToolManager,
DirectoryCacher, BasicCodeTools, DefineTemplates, SourceLog, LazUTF8,
FileUtil, LConvEncoding, TransferMacros, etMakeMsgParser, EnvironmentOpts,
LCLProc;
LCLProc, LazarusIDEStrConsts;
const
FPCMsgIDLogo = 11023;
@ -611,11 +611,8 @@ end;
procedure TPatternToMsgIDs.Add(Pattern: string; MsgID: integer);
procedure RaiseInvalidMsgID;
var
s: String;
begin
s:='invalid MsgID: '+IntToStr(MsgID);
raise Exception.Create(s);
raise Exception.Create('invalid MsgID: '+IntToStr(MsgID));
end;
var
@ -1419,7 +1416,7 @@ begin
if WPos=nil then exit;
Result:=true;
MsgLine:=CreateMsgLine;
MsgLine.SubTool:='windres';
MsgLine.SubTool:=SubToolFPCWindRes;
MsgLine.Urgency:=mluWarning;
p := wPos + 7;
if CompStr('.exe', p) then
@ -1662,7 +1659,7 @@ procedure TIDEFPCParser.ImproveMsgUnitNotFound(aPhase: TExtToolParserSyncPhase;
LazarusIDE.SaveSourceEditorChangesToCodeCache(nil);
if not CodeToolBoss.FindUnitInAllUsesSections(CodeBuf,MissingUnitname,NamePos,InPos)
then begin
DebugLn('QuickFixUnitNotFoundPosition failed due to syntax errors or '+MissingUnitname+' is not used in '+CodeBuf.Filename);
DebugLn('TIDEFPCParser.ImproveMsgUnitNotFound failed due to syntax errors or '+MissingUnitname+' is not used in '+CodeBuf.Filename);
exit;
end;
Tool:=CodeToolBoss.CurCodeTool;
@ -1776,7 +1773,7 @@ begin
// change to lazarus.pp(1,1)
Filename:=AppendPathDelim(EnvironmentOptions.GetParsedLazarusDirectory)+'ide'+PathDelim+'lazarus.pp';
MsgLine.SetSourcePosition(Filename,1,1);
MsgLine.Msg:='Can''t find a valid '+MissingUnitname+'.ppu';
MsgLine.Msg:=Format(lisCanTFindAValidPpu, [MissingUnitname]);
end else if SysUtils.CompareText(ExtractFileNameOnly(Filename),UsedByUnit)<>0
then begin
// the message belongs to another unit
@ -1846,37 +1843,39 @@ begin
if PPUFilename<>'' then begin
// there is a ppu file, but the compiler didn't like it
// => change message
s:='Cannot find '+MissingUnitname;
s:=Format(lisCannotFind, [MissingUnitname]);
if UsedByUnit<>'' then
s+=' used by '+UsedByUnit;
s+=', incompatible ppu='+CreateRelativePath(PPUFilename,ExtractFilePath(CodeBuf.Filename));
s+=Format(lisUsedBy, [UsedByUnit]);
s+=Format(lisIncompatiblePpu, [CreateRelativePath(PPUFilename,
ExtractFilePath(CodeBuf.Filename))]);
if PkgName<>'' then
s+=', package '+PkgName;
s+=Format(lisPackage3, [PkgName]);
end else if PkgName<>'' then begin
// ppu is missing, but the package is known
// => change message
s:='Can''t find ppu of unit '+MissingUnitname;
s:=Format(lisCanTFindPpuOfUnit, [MissingUnitname]);
if UsedByUnit<>'' then
s+=' used by '+UsedByUnit;
s+='. Maybe package '+PkgName+' needs a clean rebuild.';
s+=Format(lisUsedBy, [UsedByUnit]);
s+=Format(lisMaybePackageNeedsACleanRebuild, [PkgName]);
end;
end else begin
// there is no ppu file in the unit path
s:='Cannot find unit '+MissingUnitname;
s:=Format(lisCannotFindUnit, [MissingUnitname]);
if UsedByUnit<>'' then
s+=' used by '+UsedByUnit;
s+=Format(lisUsedBy, [UsedByUnit]);
if (UsedByOwner is TIDEPackage)
and (CompareTextCT(TIDEPackage(UsedByOwner).Name,PkgName)=0) then
begin
// two units of a package cannot find each other
s+='. Check search path package '+TIDEPackage(UsedByOwner).Name+', try a clean rebuild, check implementation uses sections.';
s+=Format(lisCheckSearchPathPackageTryACleanRebuildCheckImpleme, [
TIDEPackage(UsedByOwner).Name]);
end else begin
if PkgName<>'' then
s+='. Check if package '+PkgName+' is in the dependencies';
s+=Format(lisCheckIfPackageIsInTheDependencies, [PkgName]);
if UsedByOwner is TLazProject then
s+=' of the project inspector'
s+=lisOfTheProjectInspector
else if UsedByOwner is TIDEPackage then
s+=' of package '+TIDEPackage(UsedByOwner).Name;
s+=Format(lisOfPackage, [TIDEPackage(UsedByOwner).Name]);
end;
s+='.';
end;
@ -2460,7 +2459,8 @@ begin
then begin
// Error while compiling resources
AddResourceMessages;
MsgLine.Msg:=MsgLine.Msg+' -> Compile with -vd for more details. Check for duplicates.';
MsgLine.Msg:=Format(lisCompileWithVdForMoreDetailsCheckForDuplicates, [
MsgLine.Msg]);
end
else if IsMsgID(MsgLine,FPCMsgIDErrorWhileLinking,fMsgItemErrorWhileLinking) then
AddLinkingMessages

View File

@ -456,86 +456,104 @@ var
begin
MessagesMenuRoot := RegisterIDEMenuRoot(MessagesMenuRootName);
Root:=MessagesMenuRoot;
MsgFindMenuItem := RegisterIDEMenuCommand(Root, 'Find', 'Find ...');
MsgFindMenuItem := RegisterIDEMenuCommand(Root, 'Find', lisFind);
MsgQuickFixMenuSection := RegisterIDEMenuSection(Root, 'Quick Fix');
MsgAboutSection:=RegisterIDEMenuSection(Root,'About');
Parent:=MsgAboutSection;
Parent.ChildsAsSubMenu:=true;
Parent.Caption:='About ...';
Parent.Caption:=lisAbout;
MsgAboutToolMenuItem:=RegisterIDEMenuCommand(Parent, 'About', 'About Tool');
MsgOpenToolOptionsMenuItem:=RegisterIDEMenuCommand(Parent, 'Open Tool Options', 'Open Tool Options');
MsgFilterMsgOfTypeMenuItem:=RegisterIDEMenuCommand(Root,'FilterMsgOfType','');
MsgRemoveCompOptHideMenuSection:=RegisterIDEMenuSection(Root,'RemoveCompOptHideMsg');
Parent:=MsgRemoveCompOptHideMenuSection;
Parent.ChildsAsSubMenu:=true;
Parent.Caption:='Remove Compiler Option Hide Message';
Parent.Caption:=lisRemoveCompilerOptionHideMessage;
MsgRemoveMsgTypeFilterMenuSection:=RegisterIDEMenuSection(Root,'RemoveMsgTypeFilters');
Parent:=MsgRemoveMsgTypeFilterMenuSection;
Parent.ChildsAsSubMenu:=true;
Parent.Caption:='Remove Message Type Filter';
Parent.Caption:=lisRemoveMessageTypeFilter;
MsgRemoveFilterMsgOneTypeMenuSection:=RegisterIDEMenuSection(Parent,'RemoveOneMsgTypeFilterSection');
MsgRemoveFilterAllMsgTypesMenuItem:=RegisterIDEMenuCommand(Parent,'Remove all message type filters','Remove all message type filters');
MsgRemoveFilterAllMsgTypesMenuItem:=RegisterIDEMenuCommand(Parent, 'Remove'
+' all message type filters', lisRemoveAllMessageTypeFilters);
MsgFilterBelowMenuSection:=RegisterIDEMenuSection(Root,'Filter Below Section');
Parent:=MsgFilterBelowMenuSection;
Parent.ChildsAsSubMenu:=true;
Parent.Caption:='Filter non urgent Messages ...';
MsgFilterWarningsMenuItem:=RegisterIDEMenuCommand(Parent,'Filter Warnings','Filter Warnings and below');
Parent.Caption:=lisFilterNonUrgentMessages;
MsgFilterWarningsMenuItem:=RegisterIDEMenuCommand(Parent,
'Filter Warnings', lisFilterWarningsAndBelow);
MsgFilterWarningsMenuItem.RadioItem:=true;
MsgFilterWarningsMenuItem.GroupIndex:=2;
MsgFilterNotesMenuItem:=RegisterIDEMenuCommand(Parent,'Filter Notes','Filter Notes and below');
MsgFilterNotesMenuItem:=RegisterIDEMenuCommand(Parent, 'Filter Notes',
lisFilterNotesAndBelow);
MsgFilterNotesMenuItem.RadioItem:=true;
MsgFilterNotesMenuItem.GroupIndex:=2;
MsgFilterHintsMenuItem:=RegisterIDEMenuCommand(Parent,'Filter Hints','Filter Hints and below');
MsgFilterHintsMenuItem:=RegisterIDEMenuCommand(Parent, 'Filter Hints',
lisFilterHintsAndBelow);
MsgFilterHintsMenuItem.RadioItem:=true;
MsgFilterHintsMenuItem.GroupIndex:=2;
MsgFilterVerboseMenuItem:=RegisterIDEMenuCommand(Parent,'Filter Verbose Messages','Filter Verbose Messages and below');
MsgFilterVerboseMenuItem:=RegisterIDEMenuCommand(Parent, 'Filter Verbose '
+'Messages', lisFilterVerboseMessagesAndBelow);
MsgFilterVerboseMenuItem.RadioItem:=true;
MsgFilterVerboseMenuItem.GroupIndex:=2;
MsgFilterDebugMenuItem:=RegisterIDEMenuCommand(Parent,'Filter Debug Messages','Filter Debug Messages and below');
MsgFilterDebugMenuItem:=RegisterIDEMenuCommand(Parent, 'Filter Debug '
+'Messages', lisFilterDebugMessagesAndBelow);
MsgFilterDebugMenuItem.RadioItem:=true;
MsgFilterDebugMenuItem.GroupIndex:=2;
MsgFilterNoneMenuItem:=RegisterIDEMenuCommand(Parent,'Filter None, do not filter by urgency','Filter None, do not filter by urgency');
MsgFilterNoneMenuItem:=RegisterIDEMenuCommand(Parent, 'Filter None, do not'
+' filter by urgency', lisFilterNoneDoNotFilterByUrgency);
MsgFilterNoneMenuItem.RadioItem:=true;
MsgFilterNoneMenuItem.GroupIndex:=2;
MsgFilterHintsWithoutPosMenuItem:=RegisterIDEMenuCommand(Root, 'Filter Hints without Source Position', 'Filter Hints without Source Position');
MsgFilterHintsWithoutPosMenuItem:=RegisterIDEMenuCommand(Root, 'Filter Hints'
+' without Source Position', lisFilterHintsWithoutSourcePosition);
MsgFiltersMenuSection:=RegisterIDEMenuSection(Root,'Switch Filter Section');
Parent:=MsgFiltersMenuSection;
Parent.ChildsAsSubMenu:=true;
Parent.Caption:='Switch Filter Settings ...';
Parent.Caption:=lisSwitchFilterSettings;
MsgSelectFilterMenuSection:=RegisterIDEMenuSection(Parent,'Filters');
MsgAddFilterMenuItem:=RegisterIDEMenuCommand(Parent,'Add Filter','Add Filter ...');
MsgAddFilterMenuItem:=RegisterIDEMenuCommand(Parent, 'Add Filter',
lisAddFilter);
MsgCopyMenuSection:=RegisterIDEMenuSection(Root,'Copy');
Parent:=MsgCopyMenuSection;
Parent.ChildsAsSubMenu:=true;
Parent.Caption:='Copy ...';
MsgCopyFilenameMenuItem:=RegisterIDEMenuCommand(Parent,'Filename','Copy File Name to Clipboard');
Parent.Caption:=lisCopy2;
MsgCopyFilenameMenuItem:=RegisterIDEMenuCommand(Parent, 'Filename',
lisCopyFileNameToClipboard);
MsgCopyMsgMenuItem := RegisterIDEMenuCommand(Parent, 'Selected',lisCopySelectedMessagesToClipboard);
MsgCopyShownMenuItem := RegisterIDEMenuCommand(Parent, 'Shown', lisCopyAllShownMessagesToClipboard);
MsgCopyAllMenuItem:=RegisterIDEMenuCommand(Parent,'All','Copy All/Original Messages to Clipboard');
MsgCopyAllMenuItem:=RegisterIDEMenuCommand(Parent, 'All',
lisCopyAllOriginalMessagesToClipboard);
MsgSaveToFileMenuSection:=RegisterIDEMenuSection(Root,'Save');
Parent:=MsgSaveToFileMenuSection;
Parent.ChildsAsSubMenu:=true;
Parent.Caption:='Save ...';
MsgSaveShownToFileMenuItem:=RegisterIDEMenuCommand(Parent,'Save Shown Messages to File','Save Shown Messages to File ...');
MsgSaveAllToFileMenuItem:=RegisterIDEMenuCommand(Parent,'Save All Messages to File','Save All/Original Messages to File ...');
Parent.Caption:=lisDlgSave;
MsgSaveShownToFileMenuItem:=RegisterIDEMenuCommand(Parent, 'Save Shown '
+'Messages to File', lisSaveShownMessagesToFile);
MsgSaveAllToFileMenuItem:=RegisterIDEMenuCommand(Parent, 'Save All '
+'Messages to File', lisSaveAllOriginalMessagesToFile);
MsgHelpMenuItem := RegisterIDEMenuCommand(Root, 'Help for this message',lisHelp);
MsgEditHelpMenuItem := RegisterIDEMenuCommand(Root, 'Edit help for messages',lisEditHelp);
MsgClearMenuItem := RegisterIDEMenuCommand(Root, 'Clear', 'Clear');
MsgClearMenuItem := RegisterIDEMenuCommand(Root, 'Clear', lisClear);
MsgOptionsMenuSection:=RegisterIDEMenuSection(Root,'Option Section');
Parent:=MsgOptionsMenuSection;
Parent.ChildsAsSubMenu:=true;
Parent.Caption:='Options ...';
MsgWndStayOnTopMenuItem:=RegisterIDEMenuCommand(Parent,'Window stay on top','Window stays on top');
Parent.Caption:=lisMenuGeneralOptions;
MsgWndStayOnTopMenuItem:=RegisterIDEMenuCommand(Parent,
'Window stay on top', lisWindowStaysOnTop);
MsgFilenameStyleMenuSection:=RegisterIDEMenuSection(Parent,'Filename Styles');
Parent:=MsgFilenameStyleMenuSection;
Parent.ChildsAsSubMenu:=true;
Parent.Caption:='Filename Style ...';
MsgFileStyleShortMenuItem:=RegisterIDEMenuCommand(Parent,'Short','Short, no path');
MsgFileStyleRelativeMenuItem:=RegisterIDEMenuCommand(Parent,'Relative','Relative');
MsgFileStyleFullMenuItem:=RegisterIDEMenuCommand(Parent,'Full','Full');
Parent.Caption:=lisFilenameStyle;
MsgFileStyleShortMenuItem:=RegisterIDEMenuCommand(Parent, 'Short',
lisShortNoPath);
MsgFileStyleRelativeMenuItem:=RegisterIDEMenuCommand(Parent, 'Relative',
lisRelative);
MsgFileStyleFullMenuItem:=RegisterIDEMenuCommand(Parent, 'Full', lisFull);
Parent:=MsgOptionsMenuSection;
MsgTranslateMenuItem:=RegisterIDEMenuCommand(Parent, 'Translate', 'Translate the English Messages');
MsgShowIDMenuItem:=RegisterIDEMenuCommand(Parent, 'ShowID', 'Show Message Type ID');
MsgTranslateMenuItem:=RegisterIDEMenuCommand(Parent, 'Translate',
lisTranslateTheEnglishMessages);
MsgShowIDMenuItem:=RegisterIDEMenuCommand(Parent, 'ShowID',
lisShowMessageTypeID);
end;
{$R *.lfm}
@ -668,7 +686,9 @@ begin
end;
MsgLine:=PendingLines.CreateLine(-1);
MsgLine.Urgency:=mluPanic;
MsgLine.Msg:='tool stopped with exit code '+IntToStr(ExitStatus)+'. Use context menu to get more information.';
MsgLine.Msg:=Format(
lisToolStoppedWithExitCodeUseContextMenuToGetMoreInfo, [IntToStr(
ExitStatus)]);
PendingLines.Add(MsgLine);
finally
LeaveCriticalSection;
@ -2195,17 +2215,17 @@ function TMessagesCtrl.GetHeaderText(View: TLMsgWndView): string;
inc(HintCnt,Lines.UrgencyCounts[c]);
end;
if ErrCnt>0 then
Result+=', Errors:'+IntToStr(ErrCnt);
Result+=Format(lisErrors2, [IntToStr(ErrCnt)]);
if WarnCnt>0 then
Result+=', Warnings:'+IntToStr(WarnCnt);
Result+=Format(lisWarnings, [IntToStr(WarnCnt)]);
if HintCnt>0 then
Result+=', Hints:'+IntToStr(HintCnt);
Result+=Format(lisHints, [IntToStr(HintCnt)]);
end;
begin
Result:=View.Caption;
if Result='' then
Result:='Messages';
Result:=lisMenuViewMessages;
if View.SummaryMsg<>'' then
Result+=': '+View.SummaryMsg;
if mcoShowStats in Options then begin
@ -2568,11 +2588,11 @@ procedure TMessagesFrame.MsgCtrlPopupMenuPopup(Sender: TObject);
if IDETool=nil then continue;
if IDETool is TLazProject then begin
CompOpts:=TLazProject(IDETool).LazCompilerOptions as TBaseCompilerOptions;
ModuleName:='Project Option';
ModuleName:=lisProjectOption;
end else if IDETool is TIDEPackage then begin
Pkg:=TIDEPackage(IDETool);
CompOpts:=Pkg.LazCompilerOptions as TBaseCompilerOptions;
ModuleName:='Package "'+Pkg.Name+'" Option';
ModuleName:=Format(lisPackageOption, [Pkg.Name]);
end else
continue;
for Flag in CompOpts.IDEMessageFlags do begin
@ -2720,12 +2740,12 @@ begin
// About
if View<>nil then
begin
MsgAboutToolMenuItem.Caption:='About '+View.Caption;
MsgAboutToolMenuItem.Caption:=Format(lisAbout2, [View.Caption]);
MsgAboutSection.Visible:=true;
if View.Tool.Data is TIDEExternalToolData then begin
ToolData:=TIDEExternalToolData(View.Tool.Data);
if ToolData.Kind=IDEToolCompilePackage then
ToolOptionsCaption:='Open Package '+ToolData.ModuleName;
ToolOptionsCaption:=Format(lisCPOpenPackage, [ToolData.ModuleName]);
end;
end else
MsgAboutSection.Visible:=false;
@ -2740,7 +2760,8 @@ begin
// Filtering
if CanFilterMsgType then begin
MsgFilterMsgOfTypeMenuItem.Caption:='Filter all messages of type '+MsgType;
MsgFilterMsgOfTypeMenuItem.Caption:=Format(lisFilterAllMessagesOfType, [
MsgType]);
MsgFilterMsgOfTypeMenuItem.Visible:=true;
end else begin
MsgFilterMsgOfTypeMenuItem.Visible:=false;
@ -3114,10 +3135,10 @@ begin
if Tool.Terminated then
s+='Terminated'+LineEnding+LineEnding
else
s+='Exit Status:'+LineEnding+IntToStr(Proc.ExitStatus)+LineEnding+LineEnding;
s+='ExitStatus:'+LineEnding+IntToStr(Proc.ExitStatus)+LineEnding+LineEnding;
end;
if Tool.ErrorMessage<>'' then
s+='Error: '+Tool.ErrorMessage+LineEnding+LineEnding;
s+=lisError+Tool.ErrorMessage+LineEnding+LineEnding;
end;
Form:=TForm.CreateNew(Self);
@ -3127,7 +3148,7 @@ begin
Width:=500;
Height:=300;
Position:=poScreenCenter;
Caption:='About '+View.Caption;
Caption:=Format(lisAbout2, [View.Caption]);
end;
Memo:=TMemo.Create(Form);
@ -3153,16 +3174,17 @@ var
NewFilter: TLMsgViewFilter;
Filters: TLMsgViewFilters;
begin
aCaption:='Filter';
aCaption:=lisFilter;
i:=1;
Filters:=MessagesCtrl.Filters;
while Filters.GetFilter(aCaption+IntToStr(i),false)<>nil do
inc(i);
if not InputQuery('Create Filter','Name:',aCaption) then exit;
if not InputQuery(lisCreateFilter, lisCodeToolsDefsName, aCaption) then exit;
aCaption:=UTF8Trim(aCaption,[]);
if aCaption='' then exit;
if Filters.GetFilter(aCaption,false)<>nil then begin
IDEMessageDialog('Filter already exists','A filter with the name "'+aCaption+'" already exists.',mtError,[mbCancel],'');
IDEMessageDialog(lisFilterAlreadyExists, Format(
lisAFilterWithTheNameAlreadyExists, [aCaption]), mtError, [mbCancel], '');
exit;
end;
NewFilter:=Filters.GetFilter(aCaption,true);
@ -3201,7 +3223,7 @@ var
begin
Dlg:=TSaveDialog.Create(nil);
try
Dlg.Title:='Save messages';
Dlg.Title:=lisSaveMessages;
Dlg.FileName:='messages.txt';
Dlg.Options:=Dlg.Options+[ofPathMustExist,ofCreatePrompt];
InitIDEFileDialog(Dlg);
@ -3221,7 +3243,9 @@ begin
end;
except
on E: Exception do begin
IDEMessageDialog('Write Error','Unable to write file "'+Filename+'".',mtError,[mbCancel]);
IDEMessageDialog(lisWriteError, Format(lisUnableToWriteFile2, [Filename]
),
mtError, [mbCancel]);
end;
end;
@ -3239,12 +3263,13 @@ begin
s:=AllMessagesAsString(OnlyShown);
if length(s)>1000000 then begin
if length(s)<10000 then
Msg:=IntToStr(length(s))+' byte'
Msg:=Format(lisByte, [IntToStr(length(s))])
else if Length(s)<10000000 then
Msg:=IntToStr(length(s) div 1000)+' KB'
Msg:=Format(lisKB, [IntToStr(length(s) div 1000)])
else
Msg:=IntToStr(length(s) div 1000)+' MB';
if IDEMessageDialog('Warning','This will put a lot of text ('+Msg+') on the clipboard.'#13'Proceed?',
Msg:=Format(lisMB, [IntToStr(length(s) div 1000)]);
if IDEMessageDialog(lisCCOWarningCaption, Format(
lisThisWillPutALotOfTextOnTheClipboardProceed, [Msg, #13]),
mtConfirmation,[mbYes,mbNo])<>mrYes then exit;
end;
Clipboard.AsText:=s;
@ -3337,18 +3362,21 @@ begin
Parent:=Self;
UrgencyStyles[mluNone].SetValues('?',ImgIDInfo,clDefault);
UrgencyStyles[mluProgress].SetValues('Progress',ImgIDInfo,clDefault);
UrgencyStyles[mluDebug].SetValues('Debug',ImgIDInfo,clDefault);
UrgencyStyles[mluVerbose3].SetValues('Extremely Verbose',ImgIDInfo,clDefault);
UrgencyStyles[mluVerbose2].SetValues('Very Verbose',ImgIDInfo,clDefault);
UrgencyStyles[mluVerbose].SetValues('Verbose',ImgIDInfo,clDefault);
UrgencyStyles[mluHint].SetValues('Hint',ImgIDHint,clDefault);
UrgencyStyles[mluNote].SetValues('Note',ImgIDNote,clDefault);
UrgencyStyles[mluWarning].SetValues('Warning',ImgIDWarning,clDefault);
UrgencyStyles[mluImportant].SetValues('Important',ImgIDInfo,clDefault);
UrgencyStyles[mluError].SetValues('Error',ImgIDError,clDefault);
UrgencyStyles[mluFatal].SetValues('Fatal',ImgIDFatal,clDefault);
UrgencyStyles[mluPanic].SetValues('Panic',ImgIDFatal,clDefault);
UrgencyStyles[mluProgress].SetValues(lisPDProgress, ImgIDInfo, clDefault);
UrgencyStyles[mluDebug].SetValues(uemDebugWord, ImgIDInfo, clDefault);
UrgencyStyles[mluVerbose3].SetValues(lisExtremelyVerbose, ImgIDInfo,
clDefault);
UrgencyStyles[mluVerbose2].SetValues(lisVeryVerbose, ImgIDInfo, clDefault);
UrgencyStyles[mluVerbose].SetValues(lisVerbose, ImgIDInfo, clDefault);
UrgencyStyles[mluHint].SetValues(lisHint, ImgIDHint, clDefault);
UrgencyStyles[mluNote].SetValues(lisNote, ImgIDNote, clDefault);
UrgencyStyles[mluWarning].SetValues(lisCCOWarningCaption, ImgIDWarning,
clDefault);
UrgencyStyles[mluImportant].SetValues(lisImportant, ImgIDInfo, clDefault);
UrgencyStyles[mluError].SetValues(lisCCOErrorCaption, ImgIDError, clDefault
);
UrgencyStyles[mluFatal].SetValues(lisFatal, ImgIDFatal, clDefault);
UrgencyStyles[mluPanic].SetValues(lisPanic, ImgIDFatal, clDefault);
Images:=IDEImages.Images_12;
PopupMenu:=MsgCtrlPopupMenu;
end;
@ -3356,12 +3384,12 @@ begin
// search
SearchPanel.Visible:=false; // by default the search is hidden
HideSearchSpeedButton.Hint:='Hide Search';
HideSearchSpeedButton.Hint:=lisHideSearch;
HideSearchSpeedButton.LoadGlyphFromResourceName(HInstance, 'debugger_power_grey');
SearchEdit.Text:=GetDefaultSearchText;
SearchNextSpeedButton.Hint:='Find the next occurence of the phrase';
SearchNextSpeedButton.Hint:=lisFindTheNextOccurenceOfThePhrase;
SearchNextSpeedButton.LoadGlyphFromResourceName(HInstance, 'callstack_bottom');
SearchPrevSpeedButton.Hint:='Find the previous occurence of the phrase';
SearchPrevSpeedButton.Hint:=lisFindThePreviousOccurenceOfThePhrase;
SearchPrevSpeedButton.LoadGlyphFromResourceName(HInstance, 'callstack_top');
end;
@ -3495,7 +3523,7 @@ end;
function TMessagesFrame.GetDefaultSearchText: string;
begin
Result:='(Search)';
Result:=lisUDSearch;
end;
function TMessagesFrame.SelectFirstUrgentMessage(

View File

@ -35,7 +35,7 @@ uses
Classes, SysUtils, FileUtil, LazConfigStorage, IDEMsgIntf, IDEImagesIntf,
IDEExternToolIntf, LazIDEIntf, SrcEditorIntf, BaseIDEIntf, SynEditMarks,
Forms, Controls, Graphics, Dialogs, LCLProc, etMessageFrame, etSrcEditMarks,
etQuickFixes;
etQuickFixes, LazarusIDEStrConsts;
type
@ -99,7 +99,7 @@ implementation
procedure TMessagesView.FormCreate(Sender: TObject);
begin
IDEMessagesWindow:=Self;
Caption:='Messages';
Caption:=lisMenuViewMessages;
MessagesFrame1.MessagesCtrl.OnOpenMessage:=@OnOpenMessage;
MessagesFrame1.MessagesCtrl.OnOptionsChanged:=@OnMsgCtrlOptsChanged;

View File

@ -53,7 +53,8 @@ uses
Classes, SysUtils, Menus, Dialogs, Controls, CodeToolManager, CodeCache,
CodeTree, CodeAtom, BasicCodeTools, KeywordFuncLists, LazLogger, AvgLvlTree,
LazFileUtils, IDEExternToolIntf, IDEMsgIntf, LazIDEIntf, IDEDialogs, MenuIntf,
ProjectIntf, PackageIntf, CompOptsIntf, etFPCMsgParser, AbstractsMethodsDlg;
ProjectIntf, PackageIntf, CompOptsIntf, etFPCMsgParser, AbstractsMethodsDlg,
LazarusIDEStrConsts;
type
@ -150,7 +151,7 @@ type
procedure ShowError(Msg: string);
begin
IDEMessageDialog('QuickFix error',Msg,mtError,[mbCancel]);
IDEMessageDialog(lisQuickFixError, Msg, mtError, [mbCancel]);
end;
function IsIdentifierInCode(Code: TCodeBuffer; X,Y: integer;
@ -167,7 +168,7 @@ begin
end;
Code.LineColToPosition(Y,X,p);
if p<1 then begin
ShowError(ErrorMsg+' (position outside of source');
ShowError(Format(lisPositionOutsideOfSource, [ErrorMsg]));
exit;
end;
GetIdentStartEndAtPosition(Code.Source,p,IdentStart,IdentEnd);
@ -213,11 +214,11 @@ begin
if IDETool is TLazProject then begin
CompOpts:=TLazProject(IDETool).LazCompilerOptions;
if CompOpts.MessageFlags[Msg.MsgID]=cfvHide then exit;
s:='Hide with project option (-vm'+IntToStr(Msg.MsgID)+')'
s:=Format(lisHideWithProjectOptionVm, [IntToStr(Msg.MsgID)])
end else if IDETool is TIDEPackage then begin
CompOpts:=TIDEPackage(IDETool).LazCompilerOptions;
if CompOpts.MessageFlags[Msg.MsgID]=cfvHide then exit;
s:='Hide with package option (-vm'+IntToStr(Msg.MsgID)+')';
s:=Format(lisHideWithPackageOptionVm, [IntToStr(Msg.MsgID)]);
end;
Fixes.AddMenuItem(Self,Msg,s);
end;
@ -297,7 +298,7 @@ begin
for i:=0 to Fixes.LineCount-1 do begin
Msg:=Fixes.Lines[i];
if not IsApplicable(Msg,Identifier) then continue;
Fixes.AddMenuItem(Self,Msg,'Remove local variable "'+Identifier+'"');
Fixes.AddMenuItem(Self, Msg, Format(lisRemoveLocalVariable3, [Identifier]));
exit;
end;
end;
@ -319,9 +320,8 @@ begin
if Code=nil then exit;
if not IsIdentifierInCode(Code,Msg.Column,Msg.Line,Identifier,
Identifier+' not found in '+Code.Filename
+' at line '+IntToStr(Msg.Line)+', column '+IntToStr(Msg.Column)+'.'
+LineEnding+'Maybe the message is outdated.')
Format(lisNotFoundInAtLineColumnMaybeTheMessageIsOutdated, [Identifier, Code
.Filename, IntToStr(Msg.Line), IntToStr(Msg.Column), LineEnding]))
then exit;
if not CodeToolBoss.RemoveIdentifierDefinition(Code,Msg.Column,Msg.Line) then
@ -358,7 +358,8 @@ begin
for i:=0 to Fixes.LineCount-1 do begin
Msg:=Fixes.Lines[i];
if not IsApplicable(Msg,aClassName,aMethodName) then continue;
Fixes.AddMenuItem(Self,Msg,'Show abstract methods of "'+aClassName+'"');
Fixes.AddMenuItem(Self, Msg, Format(lisShowAbstractMethodsOf, [aClassName])
);
exit;
end;
end;
@ -401,9 +402,9 @@ begin
if CodeToolBoss.ErrorMessage<>'' then begin
LazarusIDE.DoJumpToCodeToolBossError
end else begin
IDEMessageDialog('Class not found',
'Class '+aClassName+' not found at '
+Code.Filename+'('+IntToStr(Msg.Line)+','+IntToStr(Msg.Column)+')',
IDEMessageDialog(lisClassNotFound,
Format(lisClassNotFoundAt, [aClassName, Code.Filename, IntToStr(Msg.Line
), IntToStr(Msg.Column)]),
mtError,[mbCancel]);
end;
exit;
@ -455,7 +456,7 @@ begin
for i:=0 to Fixes.LineCount-1 do begin
Msg:=Fixes.Lines[i];
if not IsApplicable(Msg,MissingUnitName,UsedByUnit) then continue;
Fixes.AddMenuItem(Self,Msg,'Remove uses "'+MissingUnitName+'"');
Fixes.AddMenuItem(Self, Msg, Format(lisRemoveUses, [MissingUnitName]));
exit;
end;
end;
@ -540,7 +541,7 @@ begin
for i:=0 to Fixes.LineCount-1 do begin
Msg:=Fixes.Lines[i];
if not IsApplicable(Msg,Identifier) then continue;
Fixes.AddMenuItem(Self,Msg,'Create local variable "'+Identifier+'"');
Fixes.AddMenuItem(Self, Msg, Format(lisCreateLocalVariable, [Identifier]));
// ToDo: add private/public variable
exit;
end;
@ -567,9 +568,8 @@ begin
if Code=nil then exit;
if not IsIdentifierInCode(Code,Msg.Column,Msg.Line,Identifier,
Identifier+' not found in '+Code.Filename
+' at line '+IntToStr(Msg.Line)+', column '+IntToStr(Msg.Column)+'.'
+LineEnding+'Maybe the message is outdated.')
Format(lisNotFoundInAtLineColumnMaybeTheMessageIsOutdated2, [Identifier,
Code.Filename, IntToStr(Msg.Line), IntToStr(Msg.Column), LineEnding]))
then exit;
if not CodeToolBoss.CreateVariableForIdentifier(Code,Msg.Column,Msg.Line,-1,
@ -689,7 +689,8 @@ begin
end;
if List.Count=0 then exit;
if List.Count>1 then
Fixes.AddMenuItem(Self,nil,'Hide all hints and warnings by inserting IDE directives {%H-}');
Fixes.AddMenuItem(Self, nil,
lisHideAllHintsAndWarningsByInsertingIDEDirectivesH);
for i:=0 to List.Count-1 do begin
Msg:=TMessageLine(List[i]);
@ -700,9 +701,9 @@ begin
if List.Count>1 then
aCaption+='('+IntToStr(Msg.Line)+','+IntToStr(Msg.Column)+')';
if aCaption<>'' then
aCaption:='Hide message at '+aCaption+' by inserting IDE directive {%H-}'
aCaption:=Format(lisHideMessageAtByInsertingIDEDirectiveH, [aCaption])
else
aCaption:='Hide message by inserting IDE directive {%H-}';
aCaption:=lisHideMessageByInsertingIDEDirectiveH;
Fixes.AddMenuItem(Self,Msg,aCaption);
end;
finally

View File

@ -44,7 +44,8 @@ uses
// IDEIntf
IDEExternToolIntf, BaseIDEIntf, MacroIntf, IDEMsgIntf,
// IDE
IDEDialogs, CompOptsIntf, PackageIntf, LazIDEIntf, TransferMacros;
IDEDialogs, CompOptsIntf, PackageIntf, LazIDEIntf, TransferMacros,
LazarusIDEStrConsts;
type
TLMVToolState = (
@ -382,7 +383,7 @@ begin
EnterCriticalSection;
try
if (not Terminated) and (ExitStatus<>0) and (ErrorMessage='') then
ErrorMessage:='Exit code '+IntToStr(ExitStatus);
ErrorMessage:=Format(lisExitCode, [IntToStr(ExitStatus)]);
if FStage>=etsStopped then exit;
FStage:=etsStopped;
finally
@ -522,7 +523,7 @@ begin
if ErrorMessage<>'' then
View.SummaryMsg:=ErrorMessage
else
View.SummaryMsg:='Success';
View.SummaryMsg:=lisSuccess;
View.InputClosed; // this might delete the view
end;
finally
@ -677,7 +678,7 @@ begin
begin
if not ResolveMacros then begin
if ErrorMessage='' then
ErrorMessage:='failed to resolve macros';
ErrorMessage:=lisFailedToResolveMacros;
if CheckError then exit;
end;
end;
@ -696,13 +697,13 @@ begin
if ExtractFilePath(Process.Executable)<>'' then
Process.Executable:=AppendPathDelim(GetCurrentDirUTF8)+Process.Executable
else if Process.Executable='' then begin
ErrorMessage:='tool "'+Title+'" has no executable';
ErrorMessage:=Format(lisToolHasNoExecutable, [Title]);
CheckError;
exit;
end else begin
ExeFile:=FindDefaultExecutablePath(Process.Executable,GetCurrentDirUTF8);
if ExeFile='' then begin
ErrorMessage:='can not find executable "'+ExeFile+'"';
ErrorMessage:=Format(lisCanNotFindExecutable, [ExeFile]);
CheckError;
exit;
end;
@ -710,17 +711,17 @@ begin
end;
end;
if not FileExistsUTF8(Process.Executable) then begin
ErrorMessage:='missing executable "'+ExeFile+'"';
ErrorMessage:=Format(lisMissingExecutable, [ExeFile]);
CheckError;
exit;
end;
if DirectoryExistsUTF8(Process.Executable) then begin
ErrorMessage:='executable "'+ExeFile+'" is a directory';
ErrorMessage:=Format(lisExecutableIsADirectory, [ExeFile]);
CheckError;
exit;
end;
if not FileIsExecutable(Process.Executable) then begin
ErrorMessage:='executable "'+ExeFile+'" lacks the permission to run';
ErrorMessage:=Format(lisExecutableLacksThePermissionToRun, [ExeFile]);
CheckError;
exit;
end;
@ -738,7 +739,7 @@ begin
aParser.Init;
except
on E: Exception do begin
ErrorMessage:='parser "'+DbgSName(aParser)+'": '+E.Message;
ErrorMessage:=Format(lisParser, [DbgSName(aParser), E.Message]);
CheckError;
exit;
end;
@ -794,7 +795,7 @@ begin
if Stage=etsStopped then exit;
if ErrorMessage='' then
ErrorMessage:='Aborted';
ErrorMessage:=lisAborted;
fTerminated:=true;
if Stage=etsRunning then
NeedProcTerminate:=true;
@ -990,8 +991,9 @@ function TExternalTool.ResolveMacros: boolean;
Result:=IDEMacros.SubstituteMacros(NewValue);
if Result then exit;
if ErrorMessage='' then
ErrorMessage:='Invalid macros in "'+aValue+'"';
IDEMessageDialog('Error','Invalid macros "'+aValue+'" in external tool "'+Title+'"',
ErrorMessage:=Format(lisInvalidMacrosIn, [aValue]);
IDEMessageDialog(lisCCOErrorCaption, Format(lisInvalidMacrosInExternalTool,
[aValue, Title]),
mtError,[mbCancel]);
end;
@ -1541,13 +1543,14 @@ begin
{$ENDIF}
if not FileIsExecutable(Tool.Process.Executable) then begin
Tool.ErrorMessage:='can not execute "'+Tool.Process.Executable+'"';
Tool.ErrorMessage:=Format(lisCanNotExecute, [Tool.Process.Executable]);
Tool.ProcessStopped;
exit;
end;
if not DirectoryExistsUTF8(ChompPathDelim(Tool.Process.CurrentDirectory))
then begin
Tool.ErrorMessage:='missing directory "'+Tool.Process.CurrentDirectory+'"';
Tool.ErrorMessage:=Format(lisMissingDirectory, [Tool.Process.
CurrentDirectory]);
Tool.ProcessStopped;
exit;
end;
@ -1574,7 +1577,7 @@ begin
DebuglnThreadLog(['TExternalToolThread.Execute ',Title,' execute failed: ',E.Message]);
{$ENDIF}
if Tool.ErrorMessage='' then
Tool.ErrorMessage:='unable to execute: '+E.Message;
Tool.ErrorMessage:=Format(lisUnableToExecute, [E.Message]);
end;
end;
// BEWARE: we are now either in the normal thread or in the failed forked thread
@ -1653,7 +1656,7 @@ begin
{$ENDIF}
Tool.ExitStatus:=Tool.Process.ExitStatus;
except
Tool.ErrorMessage:='unable to read process ExitStatus';
Tool.ErrorMessage:=lisUnableToReadProcessExitStatus;
end;
except
on E: Exception do begin
@ -1682,7 +1685,7 @@ begin
DebuglnThreadLog(['TExternalToolThread.Execute adding pending messages: ',E.Message]);
{$ENDIF}
if Tool<>nil then
Tool.ErrorMessage:='freeing buffer lines: '+E.Message;
Tool.ErrorMessage:=Format(lisFreeingBufferLines, [E.Message]);
end;
end;
end;

View File

@ -62,6 +62,7 @@ resourcestring
lisOpen = 'Open';
lisSave = 'Save';
lisDlgSave = 'Save ...';
lisSaveShownMessagesToFile = 'Save Shown Messages to File ...';
lisSaveAs = 'Save As';
lisSaveAll = 'Save All';
lisExportHtml = 'Export as HTML';
@ -84,6 +85,7 @@ resourcestring
lisBtnQuit = '&Quit';
lisRestart = 'Restart';
lisHelp = 'Help';
lisSaveAllOriginalMessagesToFile = 'Save All/Original Messages to File ...';
lisEnabled = 'Enabled';
lisBtnEnabled = '&Enabled';
lisUndo = 'Undo';
@ -355,8 +357,30 @@ resourcestring
lisMenuViewUnitInfo = 'Unit Information ...';
lisMenuViewToggleFormUnit = 'Toggle Form/Unit View';
lisMenuViewMessages = 'Messages';
lisProjectOption = 'Project Option';
lisPackageOption = 'Package "%s" Option';
lisAbout2 = 'About %s';
lisCopySelectedMessagesToClipboard = 'Copy Selected Messages to Clipboard';
lisCopyFileNameToClipboard = 'Copy File Name to Clipboard';
lisFind = 'Find ...';
lisAbout = 'About ...';
lisRemoveCompilerOptionHideMessage = 'Remove Compiler Option Hide Message';
lisRemoveMessageTypeFilter = 'Remove Message Type Filter';
lisRemoveAllMessageTypeFilters = 'Remove all message type filters';
lisFilterNonUrgentMessages = 'Filter non urgent Messages ...';
lisFilterWarningsAndBelow = 'Filter Warnings and below';
lisFilterNotesAndBelow = 'Filter Notes and below';
lisFilterHintsAndBelow = 'Filter Hints and below';
lisFilterVerboseMessagesAndBelow = 'Filter Verbose Messages and below';
lisFilterDebugMessagesAndBelow = 'Filter Debug Messages and below';
lisFilterNoneDoNotFilterByUrgency = 'Filter None, do not filter by urgency';
lisFilterHintsWithoutSourcePosition = 'Filter Hints without Source Position';
lisSwitchFilterSettings = 'Switch Filter Settings ...';
lisAddFilter = 'Add Filter ...';
lisCopy2 = 'Copy ...';
lisCopyAllShownMessagesToClipboard = 'Copy All Shown Messages to Clipboard';
lisCopyAllOriginalMessagesToClipboard = 'Copy All/Original Messages to '
+'Clipboard';
lisCopyAllShownAndHiddenMessagesToClipboard = 'Copy All Shown and Hidden'
+' Messages to Clipboard';
lisCopyItemToClipboard = 'Copy Item to Clipboard';
@ -513,6 +537,19 @@ resourcestring
lisMEProjects = 'Projects';
lisMEAction = 'Action';
lisMenuGeneralOptions = 'Options ...';
lisWindowStaysOnTop = 'Window stays on top';
lisFilenameStyle = 'Filename Style ...';
lisShortNoPath = 'Short, no path';
lisRelative = 'Relative';
lisFull = 'Full';
lisTranslateTheEnglishMessages = 'Translate the English Messages';
lisShowMessageTypeID = 'Show Message Type ID';
lisToolStoppedWithExitCodeUseContextMenuToGetMoreInfo = 'tool stopped with '
+'exit code %s. Use context menu to get more information.';
lisErrors2 = ', Errors:%s';
lisWarnings = ', Warnings:%s';
lisHints = ', Hints:%s';
lisInternalError = 'internal error: %s';
lisMenuEditCodeTemplates = 'Code Templates ...';
dlgEdCodeTempl = 'Code Templates';
@ -696,6 +733,8 @@ resourcestring
lisUnableToRenameFile = 'Unable to rename file';
lisUnableToCopyFile = 'Unable to copy file';
lisWriteError = 'Write Error';
lisUnableToWriteFile2 = 'Unable to write file "%s".';
lisByte = '%s byte';
lisFileDoesNotLookLikeATextFileOpenItAnyway =
'File %s%s%s%sdoes not look like a text file.%sOpen it anyway?';
lisUnableToCreateBackupDirectory = 'Unable to create backup directory %s%s%s.';
@ -783,6 +822,17 @@ resourcestring
lisNOTECouldNotCreateDefineTemplateForFreePascal = 'NOTE: Could not create '
+'Define Template for Free Pascal Sources';
lisClassNotFound = 'Class not found';
lisClassNotFoundAt = 'Class %s not found at %s(%s,%s)';
lisRemoveUses = 'Remove uses "%s"';
lisCreateLocalVariable = 'Create local variable "%s"';
lisNotFoundInAtLineColumnMaybeTheMessageIsOutdated2 = '%s not found in %s at'
+' line %s, column %s.%sMaybe the message is outdated.';
lisHideAllHintsAndWarningsByInsertingIDEDirectivesH = 'Hide all hints and '
+'warnings by inserting IDE directives {%H-}';
lisHideMessageAtByInsertingIDEDirectiveH = 'Hide message at %s by inserting '
+'IDE directive {%H-}';
lisHideMessageByInsertingIDEDirectiveH = 'Hide message by inserting IDE '
+'directive {%H-}';
lisOIFClassNotFound = 'Class %s%s%s not found.';
lisClassIsNotARegisteredComponentClassUnableToPaste = 'Class %s%s%s is not '
+'a registered component class.%sUnable to paste.';
@ -2122,6 +2172,18 @@ resourcestring
dlgCCOTestMissingPPU = 'Test: Checking missing fpc ppu ...';
dlgCCOTestCompilerDate = 'Test: Checking compiler date ...';
lisCCOErrorCaption = 'Error';
lisFatal = 'Fatal';
lisPanic = 'Panic';
lisFindTheNextOccurenceOfThePhrase = 'Find the next occurence of the phrase';
lisHideSearch = 'Hide Search';
lisFindThePreviousOccurenceOfThePhrase = 'Find the previous occurence of the'
+' phrase';
lisInvalidMacrosInExternalTool = 'Invalid macros "%s" in external tool "%s"';
lisCanNotExecute = 'can not execute "%s"';
lisMissingDirectory = 'missing directory "%s"';
lisUnableToExecute = 'unable to execute: %s';
lisUnableToReadProcessExitStatus = 'unable to read process ExitStatus';
lisFreeingBufferLines = 'freeing buffer lines: %s';
lisCompilerMessagesFileNotFound = 'Compiler messages file not found:%s%s';
lisUnableToOpen = 'Unable to open "%s"';
lisCompilerDoesNotSupportTarget = 'Compiler "%s" does not support target %s-%s';
@ -2162,6 +2224,11 @@ resourcestring
lisSAMUnableToShowAbstractMethodsOfTheCurrentClassBecaus = 'Unable to show '
+'abstract methods of the current class, because';
lisCCOWarningCaption = 'Warning';
lisImportant = 'Important';
lisMB = '%s MB';
lisKB = '%s KB';
lisThisWillPutALotOfTextOnTheClipboardProceed = 'This will put a lot of text'
+' (%s) on the clipboard.%sProceed?';
lisThePathOfMakeIsNotCorrect = 'The path of "make" is not correct: "%s"';
lisTheCompilerFileDoesNotLookCorrect = 'The compiler file "%s" does not look'
+' correct:%s%s';
@ -2246,6 +2313,7 @@ resourcestring
lisTargetFileNameEmptyUseUnitOutputDirectory = 'Target file name: (-o, empty = '
+'use unit output directory)';
lisHint = 'Hint';
lisNote = 'Note';
lisTheContainsAStarCharacterLazarusUsesThisAsNormalCh = 'The %s contains a '
+'star * character.%sLazarus uses this as normal character and does not '
+'expand this as file mask.';
@ -2333,6 +2401,7 @@ resourcestring
lisShowUnits = 'Show units';
lisShowIdentifiers = 'Show identifiers';
lisFilter = 'Filter';
lisCreateFilter = 'Create Filter';
lisIssues = 'Issues';
lisUseMessageFile = 'Use message file:';
lisRegularExpression = 'Regular expression';
@ -2447,6 +2516,9 @@ resourcestring
uemShowLineNumbers = 'Show Line Numbers';
lisDisableI18NForLFM = 'Disable I18N for LFM';
uemDebugWord = 'Debug';
lisExtremelyVerbose = 'Extremely Verbose';
lisVeryVerbose = 'Very Verbose';
lisVerbose = 'Verbose';
uemToggleBreakpoint = 'Toggle &Breakpoint';
uemEvaluateModify = '&Evaluate/Modify ...';
uemAddWatchAtCursor = 'Add &Watch At Cursor';
@ -3247,6 +3319,10 @@ resourcestring
lisCodeToolsDefsInsertKylix3ProjectTempl = 'Insert Kylix 3 Project Template';
lisCodeToolsDefsSelectedNode = 'Selected Node:';
lisCodeToolsDefsName = 'Name:';
lisFilterAlreadyExists = 'Filter already exists';
lisAFilterWithTheNameAlreadyExists = 'A filter with the name "%s" already '
+'exists.';
lisSaveMessages = 'Save messages';
lisCodeToolsDefsDescription = 'Description:';
lisCodeToolsDefsVariable = 'Variable:';
lisCodeToolsDefsValueAsText = 'Value as Text';
@ -3313,6 +3389,16 @@ resourcestring
lisMakeResStrSourcePreview = 'Source preview';
lisNoStringConstantFound = 'No string constant found';
lisSuccess = 'Success';
lisFailedToResolveMacros = 'failed to resolve macros';
lisToolHasNoExecutable = 'tool "%s" has no executable';
lisCanNotFindExecutable = 'can not find executable "%s"';
lisMissingExecutable = 'missing executable "%s"';
lisExecutableIsADirectory = 'executable "%s" is a directory';
lisExecutableLacksThePermissionToRun = 'executable "%s" lacks the permission'
+' to run';
lisParser = 'parser "%s": %s';
lisAborted = 'Aborted';
lisInvalidMacrosIn = 'Invalid macros in "%s"';
lisAllBlocksLooksOk = 'All blocks look ok.';
lisTheApplicationBundleWasCreatedFor = 'The Application Bundle was created for "%s"';
@ -3537,6 +3623,12 @@ resourcestring
lisCompPalOpenPackage = 'Open package';
lisKMOpenPackageFile = 'Open package file';
lisCPOpenPackage = 'Open Package %s';
lisFilterAllMessagesOfType = 'Filter all messages of type %s';
lisExecutable3 = 'Executable: ';
lisCurrentDirectory2 = 'CurrentDirectory: ';
lisDesktop = 'Desktop: ';
lisExecutable2 = 'Executable: %s';
lisCurrentDirectory = 'CurrentDirectory: %s';
lisCPOpenUnit = 'Open Unit %s';
lisCompPalOpenUnit = 'Open unit';
lisCompPalComponentList = 'View All';
@ -5598,6 +5690,32 @@ resourcestring
lisDADImageName = 'Image Name';
lisDADPID = 'PID';
lisDADAttach = 'Attach';
lisExitCode = 'Exit code %s';
lisCanTFindAValidPpu = 'Can''t find a valid %s.ppu';
lisCannotFind = 'Cannot find %s';
lisUsedBy = ' used by %s';
lisCheckSearchPathPackageTryACleanRebuildCheckImpleme = '. Check search path'
+' package %s, try a clean rebuild, check implementation uses sections.';
lisCheckIfPackageIsInTheDependencies = '. Check if package %s is in the '
+'dependencies';
lisOfTheProjectInspector = ' of the Project Inspector';
lisOfPackage = ' of package %s';
lisCompileWithVdForMoreDetailsCheckForDuplicates = '%s -> Compile with -vd '
+'for more details. Check for duplicates.';
lisMaybePackageNeedsACleanRebuild = '. Maybe package %s needs a clean '
+'rebuild.';
lisCannotFindUnit = 'Cannot find unit %s';
lisIncompatiblePpu = ', incompatible ppu=%s';
lisPackage3 = ', package %s';
lisCanTFindPpuOfUnit = 'Can''t find ppu of unit %s';
lisQuickFixError = 'QuickFix error';
lisPositionOutsideOfSource = '%s (position outside of source';
lisHideWithProjectOptionVm = 'Hide with project option (-vm%s)';
lisHideWithPackageOptionVm = 'Hide with package option (-vm%s)';
lisRemoveLocalVariable3 = 'Remove local variable "%s"';
lisNotFoundInAtLineColumnMaybeTheMessageIsOutdated = '%s not found in %s at '
+'line %s, column %s.%sMaybe the message is outdated.';
lisShowAbstractMethodsOf = 'Show abstract methods of "%s"';
implementation