#-------------------------------------------------------------------------------
# Copyright (c) 2005, 2006 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 implementation.
#-------------------------------------------------------------------------------
# NLS_MESSAGEFORMAT_VAR

# Plug-in
pluginName=EPF - Benutzerschnittstelle f\u00fcr Ver\u00f6ffentlichung
providerName=Eclipse.org

# Default feedback URL
feedbackURL=http://www.published_website.com/feedback

# Publish Configuration Action
publishConfigAction=&Ver\u00f6ffentlichen...
publishConfigActionTooltip=Eine Website f\u00fcr eine Konfiguration ver\u00f6ffentlichen

# Preference Page
publishingOptions=Ver\u00f6ffentlichungsoptionen

# Publishing Actions
configActionSet=Konfiguration
configMenu=&Konfiguration

# Print Configuration Action
printConfigAction=Drucken

# the title for the published site
#don't define here, let user specify it.
#title=OpenUP/Basic

################################################################################
# THE FOLLOWING PROPERTIES SHOULD NOT BE TRANSLATED!!!
################################################################################

# Default Publish Path
publishPath=<user.home>/<app.name>/Publish

