###############################################################################
# Copyright (c) 2000, 2010 IBM Corporation and others.
#
# This program and the accompanying materials
# are made available under the terms of the Eclipse Public License 2.0
# which accompanies this distribution, and is available at
# https://www.eclipse.org/legal/epl-2.0/
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################

Editor.AddTask.label=&Task...
Editor.AddTask.tooltip=Add Task
Editor.AddTask.image=
Editor.AddTask.description=Add Task
Editor.AddTask.dialog.title=Add Task
Editor.AddTask.dialog.message=Enter Task description
Editor.AddTask.error.dialog.title=Add Task
Editor.AddTask.error.dialog.message=Problems adding new task

Editor.ManageTasks.tooltip=Adds and Removes Tasks
Editor.ManageTasks.image=
Editor.ManageTasks.description=Adds and removes Tasks
Editor.ManageTasks.add.label=Add &Task...
Editor.ManageTasks.remove.label=Remove &Task
Editor.ManageTasks.add.dialog.title=Add Task
Editor.ManageTasks.add.dialog.message=Enter Task description
Editor.ManageTasks.error.dialog.title=Managing Tasks
Editor.ManageTasks.error.dialog.message=Problems managing tasks

Editor.AddBookmark.label=Boo&kmark...
Editor.AddBookmark.tooltip=Add Bookmark
Editor.AddBookmark.image=
Editor.AddBookmark.description=Add Bookmark
Editor.AddBookmark.dialog.title=Add Bookmark
Editor.AddBookmark.dialog.message=Enter Bookmark name:
Editor.AddBookmark.error.dialog.title=Add Bookmark
Editor.AddBookmark.error.dialog.message=Problems adding new bookmark

Editor.ManageBookmarks.tooltip=Adds and Removes Bookmarks
Editor.ManageBookmarks.image=
Editor.ManageBookmarks.description=Adds and removes Bookmarks
Editor.ManageBookmarks.add.label=Add Boo&kmark...
Editor.ManageBookmarks.remove.label=Remove Boo&kmark
Editor.ManageBookmarks.add.dialog.title=Add Bookmark
Editor.ManageBookmarks.add.dialog.message=Enter Bookmark name:
Editor.ManageBookmarks.add.dialog.addbutton=&Add
Editor.ManageBookmarks.error.dialog.title=Managing Bookmarks
Editor.ManageBookmarks.error.dialog.message=Problems managing bookmarks

Editor.SelectMarker.label=Select &Marker Range
Editor.SelectMarker.tooltip=Selects the Marker's Range
Editor.SelectMarker.image=
Editor.SelectMarker.description=Selects the Marker's Range
Editor.SelectMarker.error.dialog.title=Selecting Marker Range
Editor.SelectMarker.error.dialog.message=Problems selecting marker range

Editor.ToggleLineNumbersAction.label=Show Line &Numbers
Editor.ToggleLineNumbersAction.description=Show line numbers
Editor.ToggleLineNumbersAction.tooltip=Display the Line Number Ruler
Editor.ToggleLineNumbersAction.image=

Editor.ToggleQuickDiffAction.label=Show &Quick Diff
Editor.ToggleQuickDiffAction.description=Show differences
Editor.ToggleQuickDiffAction.tooltip=Show Differences
Editor.ToggleQuickDiffAction.image=

Editor.HideRevisionInformationAction.label=&Hide Revision Information
Editor.HideRevisionInformationAction.description=Hides revision information
Editor.HideRevisionInformationAction.tooltip=Hide Revision Info
Editor.HideRevisionInformationAction.image=

Editor.CycleRevisionRenderingAction.label=Cycle Revision Coloring
Editor.CycleRevisionRenderingAction.description=Cycles through the available revision coloring modes
Editor.CycleRevisionRenderingAction.tooltip=Cycle Revision Coloring
Editor.CycleRevisionRenderingAction.image=

Editor.ToggleRevisionAuthorAction.label=Show A&uthor
Editor.ToggleRevisionAuthorAction.description=Toggles the display of the revision author
Editor.ToggleRevisionAuthorAction.tooltip=Toggle Revision Author Display
Editor.ToggleRevisionAuthorAction.image=

Editor.ToggleRevisionIdAction.label=Show &Id
Editor.ToggleRevisionIdAction.description=Toggles the display of the revision id
Editor.ToggleRevisionIdAction.tooltip=Toggle Revision Id Display
Editor.ToggleRevisionIdAction.image=

Editor.RulerPreferencesAction.label=Pre&ferences...
Editor.RulerPreferencesAction.description=Show ruler preferences
Editor.RulerPreferencesAction.tooltip=Show Preferences
Editor.RulerPreferencesAction.image=

Editor.ContextPreferencesAction.label=Pre&ferences...
Editor.ContextPreferencesAction.description=Show preferences
Editor.ContextPreferencesAction.tooltip=Show Preferences
Editor.ContextPreferencesAction.image=

Editor.ChangeEncodingAction.label= Set Encodin&g...
Editor.ChangeEncodingAction.tooltip= Set Encoding
Editor.ChangeEncodingAction.image=
Editor.ChangeEncodingAction.description= Set Encoding
Editor.ChangeEncodingAction.dialog.title= Set Encoding

Editor.Print.label=&Print
Editor.Print.tooltip=Print
Editor.Print.image=
Editor.Print.description=Print

Editor.ShowChangeRulerInformation.label= Show Quick Diff Ruler Tooltip
Editor.ShowChangeRulerInformation.tooltip= Show Quick Diff Ruler Tooltip
Editor.ShowChangeRulerInformation.image=
Editor.ShowChangeRulerInformation.description= Displays change information for the caret line in a focused hover

Editor.ShowRulerAnnotationInformation.label= Show Ruler Annotation Tooltip
Editor.ShowRulerAnnotationInformation.tooltip= Show Ruler Annotation Tooltip
Editor.ShowRulerAnnotationInformation.image=
Editor.ShowRulerAnnotationInformation.description= Displays annotation information for the caret line in a focused hover
