###############################################################################
# Copyright (c) 2005, 2017 IBM Corporation and others.
# All rights reserved. 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
###############################################################################
# properties file for org.eclipse.jst.jsp.ui.tests
Bundle-Vendor.0 = Eclipse Web Tools Platform
Bundle-Name.0 = Structured Source Editor for JSP Tests
view.name.0 = Embedded JSP Structured Text Viewer
editor.name.0 = Generic Structured Text Editor
taglibview.name.0=TaglibIndex Delta Trace View
_UI_SHOW_TRANSLATION=Show Java Translation