###############################################################################
# Copyright (c) 2011 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
###############################################################################
Bundle-Name = Example Debug Core Plug-in
variable.description = Path to Perl executable in the local file system
pda.launchConfigurationType.name = PDA Application
midi.launchConfigurationType.name = MIDI Sequence
sourceLocator.name = PDA Source Locator
line.breakpoints.name = PDA Line Breakpoints
watchpoints.name = PDA Watchpoints
line.breakpoint.marker.name = PDA Line Breakpoint Marker
watchpoint.marker.name = PDA Watchpoint Marker
logicalStructureType.description = Words