# ====================================
# Eclipse Help System Properties File
# ====================================

# Part 1. (DO NOT TRANSLATE Part 1)
# These are the non-translable properties.
# -----------------------------------------
CSS_location = html/default.css
splash_location = html/default_home.html
bold_tag_name = b
notopic.html = html/notopic.html
noresults.html = html/noresults.html


# Part 2. (DO TRANSLATE Part 2)
# These are the translable properties.
# -----------------------------------------
icons = icons
contribution_accept = contribution accept
Error_in_generating_navigation = Error in generating navigation : 
host_ = host=%1
address(es)_retrieved =  address(es) retrieved from this system.
address_1 = address=%1
Error = Error
request = *** request:	
url_1 =  url=
Error_1 = Error 
keyword = keyword
within = within
Search_Results = Search Results
returned_no_matches = Your search returned no matches.
index_is_busy = index is busy, try again in a few minutes
User_assist_error = User assistance error: %1 %2
Search_Engine_debug_messag = Search Engine debug message: %1
_Millis_ =  Millis=
User_assist_msg = User assistance logged message: %1 %2  
Table = Table %1 has not been loaded.
File4 = File %1 cannot be read.
File = File 
Exception_occured = Exception occured while saving table %1 to file %2.
Expected = Expected: %1 but got: %2
OR = OR
NOT = NOT
AND = AND
Index_needs_updated = Updating documentation index.
Preparing_for_indexing = Preparing for indexing ...
Document1 = Document %1 cannot be read
Indexing = Indexing: 
Document2 = Document %1 cannot be indexed
Writing_index = Writing index ...
Plugin = Plugin 
Searching_for = Searching documents for "%1" 
Exception_copying = Exception while copying file from to file.
Search_cancelled = Search cancelled
Table2 = Table %1 cannot be saved to %2.
topicNotAvailable = Error occured accessing the document.
no_search_server = Document search could not be performed on the server.  The help server is not running or search is not installed.
search_not_installed = Search not installed on the server.
search_index_update_error = Search could not be performed, because an error has occured during update of index.
Undoing_document_adds = Undoing canceled operation.
Table_Of_Contents = Table Of Contents

# Error Messages 
# --------------
E001 = Error parsing URL: %1 at Line:%2 Column:%3 %4
E002 = Failed to parse URL: %1 at Line:%2 Column:%3 %4
E003 = Warning parsing URL: %1 at Line:%2 Column:%3 %4
E004 = Cannot read help configuration file %1
E005 = Error in launching help.
E006 = The following errors occurred:\n
E007 = The following contribution files where ignored because of errors:\n
E008 = Parser Errors:\n
E009 = Error loading %1.
E011 = No context information found for %1 plugin
E012 = Could not copy the model data from server
E013 = Could not copy the infoset data from server

ES01 = Error closing index
ES02 = Error creating index
ES03 = Error deleting index
ES04 = Error finishing update process of index
ES05 = Error veryfing index
ES06 = Error opening index
ES07 = Error searching index
ES08 = Error starting update process of index
ES09 = Error adding document %1
ES10 = Error aborting update process of index
ES11 = Error unzipping prebuilt index

EI01 = Cannot find the index directory: %1


# Warning Messages 
# ----------------
WS01 = Warning adding document %1
WS02 = Document model %1 could not be read.  Index will be created using the default model.
WS03 = Help Action Contribution %1 could not be executed.


# Info Messages 
# -------------
I001 = Remote Help System Log level = %1
I002 = Help System started.
I003 = Help System shutting down.
I004 = begining search...

