###############################################################################
# Copyright (c) 2000, 2003 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
#
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################
Add=&Add
Clean=Clean
Save_Needed=Save Needed
Editor_Action_executed=Editor Action executed
Readme_Editor=Readme Editor
Readme_Outline=Readme Outline
Line_count=Line count
Title_length=Title length
Title_start=Title start
Popup_Menu_Action_executed=Popup Menu Action executed
Readme_Example=Readme Example
Automatic_sample_section_generation=Automatic sample section generation
Create_Readme_File=Create Readme File
Create_a_new_Readme_file_resource=Create a new Readme file resource.
Generate_sample_section_titles=&Generate sample section titles
Generate_sample_subsection_titles=Generate sample subsection &titles
Open_file_for_editing_when_done=&Open file for editing when done
Readme_file_name=&Readme file name:
SAMPLE_README_FILE=\n\n     SAMPLE README FILE\n\n
SECTION_1=1. SECTION 1\n
SECTION_1_BODY_1=This text is a placeholder for the section body.\n
SECTION_2=2. SECTION 2\n
SECTION_2_BODY_1=This text is a placeholder for the section body. It is\n
SECTION_2_BODY_2=a bit longer in order to span two lines.\n
Subsection_1_1=\ \ \ 1.1 Subsection\n
Subsection_1_1_Body_1=\ \ \ This text is a placeholder for the subsection body\n
Subsection_2_1=\ \ \ 2.1 Subsection\n
Subsection_2_1_BODY_1=\ \ \ This text is a placeholder for the subsection body\n
Subsection_2_2=\ \ \ 2.2 Subsection\n
Subsection_2_2_BODY_1=\ \ \ This text is a placeholder for the subsection body\n
New_Readme_File=New Readme File
Exception_in_readme_drop_adapter=Exception in readme drop adapter: 
Editor_Action1=Editor Action &1
Editor_Action2=Editor Action &2
Editor_Action3=Editor Action &3
Editor_Action4=Editor Action &4
Editor_Action5=Editor Action &5
Outline_Action2=Outline Action &2
Outline_Action3=Outline Action &3
Outline_Action4=Outline Action &4
Outline_Action5=Outline Action &5
Editor_is_active=Editor is active
Empty_Editor_Name=Empty
Readme_Editor_Action1=Readme Editor Action 1
Readme_Editor_Action2=Readme Retarget Editor Action 2
Readme_Editor_Action3=Readme Label Retarget Editor Action 3
Readme_Editor_Action5=Readme Label Retarget Editor Action 5
Readme_Outline_Action3=Readme Label Retarget Outline Action 3
Readme_Outline_Action5=Readme Label Retarget Outline Action 5
Readme_Menu=&Readme
ReadmeEditorActionExecuted=Readme Editor Action executed: {0} for: {1}
ReadmeOutlineActionExecuted=Readme Outline Action executed
<Unknown>=<Unknown>
<file_contents_not_local>=<file contents not local>
Additional_information=Additional information about the Readme file can go here.
File_name=File name:
Number_of_sections=Number of sections:
Path=Path: 
Size=Size: 
Additional_Readme_properties_not_available.=Additional Readme properties not available.
Had_it_been_less_than_256_bytes_this_page_would_be_a_placeholder_page.=Had it been less than 256 bytes, this page would be a placeholder page.
The_size_of_the_Readme_file_is_at_least_256_bytes.=The size of the Readme file is at least 256 bytes.
This_illustrates_a_property_page_that_is_dynamically_determined=This illustrates a property page that is dynamically determined
not_to_be_available_based_on_the_state_of_the_object.=not to be available based on the state of the object.
to_be_available_based_on_the_state_of_the_object.=to be available based on the state of the object.
Unable_to_create_file_parser=Unable to create file parser.
Default_text=Default text
Change=Chan&ge
Check_Box_Options=Check Box Options
Check_box_1=&Check box 1
Check_box_2=C&heck box 2
Check_box_3=Check bo&x 3
Radio_Button_Options=Radio Button Options
Radio_button_1=&Radio button 1
Radio_button_2=Rad&io button 2
Radio_button_3=Radio b&utton 3
Text_Field=&Text Field
Readme_Sections=Readme Sections
View_Action_executed=View Action executed
Add_Sentence=Add Sentence
Resolution_Error=Resolution Error
Unable_to_open_file_editor=Unable to open file editor
Simple_sentence=This is a simple sentence.\n
Readme_marker_message_example=Readme marker example 
Add_readme_marker_action_label=Readme Marker Example &
