###############################################################################
# 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 v. 2.0 which is available at
# http://www.eclipse.org/legal/epl-2.0.
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################

AbstractConsole_0=Exception occurred during console property change notification.

ConsoleDropDownAction_0=Select Console
ConsoleDropDownAction_1=Display Selected Console

ConsoleManager_0=An exception occurred during console notification
ConsoleManager_consoleContentChangeJob=Console content change

ConsoleView_0=No consoles to display at this time.

PinConsoleAction_0=Pi&n Console
PinConsoleAction_1=Pin Console

ClearOutputAction_title=Clea&r
ClearOutputAction_toolTipText=Clear Console

TextViewerGotoLineAction_Enter_line_number__8=Enter line number (1...{0}):
TextViewerGotoLineAction_Exceptions_occurred_attempt_to_go_to_line_2=Exceptions occurred attempt to go to line
TextViewerGotoLineAction_Go_to__Line____Ctrl_L_4=Go to &Line...@Ctrl+L
TextViewerGotoLineAction_Go_To_Line_1=Go to Line
TextViewerGotoLineAction_Line_number_out_of_range_1=Line number out of range
TextViewerGotoLineAction_Not_a_number_2=Not a number

ScrollLockAction_0=&Scroll Lock
ScrollLockAction_1=Scroll Lock
FollowHyperlinkAction_0=&Open Link
FollowHyperlinkAction_1=Follow the selected hyperlink
OpenConsoleAction_0=Open Console
OpenConsoleAction_1=Open Console
CloseConsoleAction_0=&Close Console
CloseConsoleAction_1=Close Console

TextConsolePage_SelectAllDescrip=Select All
TextConsolePage_SelectAllText=Select &All
TextConsolePage_CutText=C&ut
TextConsolePage_CutDescrip=Cut
TextConsolePage_CopyText=&Copy
TextConsolePage_CopyDescrip=Copy
TextConsolePage_PasteText=&Paste
TextConsolePage_PasteDescrip=Paste
PatternMatchListenerExtension_3=Console Pattern Match Listener
PatternMatchListenerExtension_4=contributed by
PatternMatchListenerExtension_5=is missing required enablement expression and will be removed
