# NLS_ENCODING=UNICODE
#-------------------------------------------------------------------------------
# Copyright (c) 2000, 2008 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 Composer RCP UI
productName=EPF Composer
providerName=Eclipse.org

# About text
aboutText=Eclipse Process Framework Composer\n\
\n\
\u0627\u0644\u0646\u0633\u062e\u0629: {0}\n\
\n\
\u200f(c)\u200f \u062d\u0642\u0648\u0642 \u0627\u0644\u0646\u0634\u0631 \u0644\u0634\u0631\u0643\u0627\u0621 Eclipse \u0648\u0622\u062e\u0631\u064a\u0646 {1}\u060c {2}. \u062c\u0645\u064a\u0639 \u0627\u0644\u062d\u0642\u0648\u0642 \u0645\u062d\u0641\u0648\u0638\u0629.\n

# Category
methodCategoryName=\u0637\u0631\u064a\u0642\u0629

# Views
welcomeViewName=\u0645\u0631\u062d\u0628\u0627

# Actions
globalActionSet=\u0645\u062c\u0645\u0648\u0639\u0629 \u062a\u0635\u0631\u0641\u0627\u062a \u0634\u0627\u0645\u0644\u0629
newAction=&\u062c\u062f\u064a\u062f
newActionTooltip=\u062c\u062f\u064a\u062f
openAction=&\u0641\u062a\u062d...
openActionTooltip=\u0641\u062a\u062d
searchAction=&\u0628\u062d\u062b...
searchActionTooltip=\u0628\u062d\u062b
welcomeAction=&\u0645\u0631\u062d\u0628\u0627
welcomeActionToolTip=\u0645\u0631\u062d\u0628\u0627

# Tooltips
shortcut.overview.tooltip=\u0639\u0648\u062f\u0629 \u0627\u0644\u0649 \u0635\u0641\u062d\u0629 \u0627\u0644\u0645\u0642\u062f\u0645\u0629
shortcut.tutorials.tooltip=\u0639\u0648\u062f\u0629 \u0627\u0644\u0649 \u0635\u0641\u062d\u0629 \u0627\u0644\u0628\u0631\u0646\u0627\u0645\u062c \u0627\u0644\u062a\u0639\u0644\u064a\u0645\u064a
shortcut.firststeps.tooltip=\u0639\u0648\u062f\u0629 \u0627\u0644\u0649 \u0635\u0641\u062d\u0629 \u0627\u0644\u062e\u0637\u0648\u0627\u062a \u0627\u0644\u0623\u0648\u0644\u0649
shortcut.webresources.tooltip=\u0639\u0648\u062f\u0629 \u0627\u0644\u0649 \u0635\u0641\u062d\u0629 \u0645\u0635\u0627\u062f\u0631 \u0634\u0628\u0643\u0629 \u0627\u0644\u0627\u0646\u062a\u0631\u0646\u062a       

#Action Set
actionSet.description = \u062a\u0635\u0631\u0641 \u062e\u0637 \u0623\u062f\u0648\u0627\u062a \u0646\u0638\u0627\u0645 \u0627\u0644\u0645\u0633\u0627\u0639\u062f\u0629
actionSet.label = \u0646\u0638\u0627\u0645 \u0627\u0644\u0645\u0633\u0627\u0639\u062f\u0629
searchAction.label = \u0645\u0633\u0627\u0639\u062f\u0629 \u0627\u0644\u0628&\u062d\u062b
searchAction.tooltip = \u0645\u0633\u0627\u0639\u062f\u0629 \u0627\u0644\u0628\u062d\u062b
dynamicHelpAction.label = &\u0645\u0633\u0627\u0639\u062f\u0629 \u062f\u064a\u0646\u0627\u0645\u064a\u0643\u064a\u0629 
dynamicHelpAction.tooltip = \u0645\u0633\u0627\u0639\u062f\u0629 \u062f\u064a\u0646\u0627\u0645\u064a\u0643\u064a\u0629

#Activities/Capabilities
activity.general=\u0627\u0633\u062a\u0642\u0628\u0627\u0644 \u0648\u062a\u0635\u062f\u064a\u0631 \u0627\u0644\u0645\u0634\u0631\u0648\u0639\u0627\u062a \u0648\u0627\u0644\u0645\u0635\u0627\u062f\u0631
activity.general.desc=\u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u0627\u0645\u0643\u0627\u0646\u064a\u0627\u062a Eclipse \u0627\u0644\u0642\u064a\u0627\u0633\u064a\u0629 \u0644\u0627\u0633\u062a\u0642\u0628\u0627\u0644/\u062a\u0635\u062f\u064a\u0631 \u0627\u0644\u0645\u0634\u0631\u0648\u0639\u0627\u062a/\u0627\u0644\u0645\u0635\u0627\u062f\u0631.
activity.team.cvs=\u062f\u0639\u0645 CVS
activity.team.cvs.desc=\u0627\u0633\u062a\u062e\u062f\u0645 Concurrent Versions System (CVS) \u0644\u0627\u062f\u0627\u0631\u0629 \u0627\u0644\u0645\u0635\u0627\u062f\u0631.
activity.team=\u062f\u0639\u0645 \u0627\u0644\u0641\u0631\u064a\u0642 \u0627\u0644\u0623\u0633\u0627\u0633\u064a
activity.team.desc=\u0645\u0634\u0627\u0631\u0643\u0629 \u0627\u0644\u0645\u0634\u0631\u0648\u0639\u0627\u062a \u0628\u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u0646\u0638\u0645 \u0627\u062f\u0627\u0631\u0629 \u0627\u0644\u062a\u0648\u0635\u064a\u0641.

activity.cat.general=\u0639\u0627\u0645
activity.cat.general.desc=\u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u0627\u0645\u0643\u0627\u0646\u064a\u0627\u062a Eclipse \u0627\u0644\u0642\u064a\u0627\u0633\u064a\u0629.
activity.cat.team=\u0627\u0644\u0641\u0631\u064a\u0642
activity.cat.team.desc=\u0627\u0633\u062a\u062e\u062f\u0645 \u0646\u0638\u0645 \u0627\u062f\u0627\u0631\u0629 \u0627\u0644\u062a\u0648\u0635\u064a\u0641 \u0644\u0627\u062f\u0627\u0631\u0629 \u0627\u0644\u0645\u0635\u0627\u062f\u0631.

PreferencePages.Capabilities = \u0627\u0645\u0643\u0627\u0646\u064a\u0627\u062a
PreferencePages.Capabilities.activityName = &\u0627\u0645\u0643\u0627\u0646\u064a\u0627\u062a
PreferencePages.Capabilities.categoryName = &\u0627\u0645\u0643\u0627\u0646\u064a\u0627\u062a
PreferencePages.Capabilities.activityPromptButton = &\u0631\u0633\u0627\u0644\u0629 \u062d\u062b \u0639\u0646\u062f \u0627\u062a\u0627\u062d\u0629 \u0627\u0644\u0627\u0645\u0643\u0627\u0646\u064a\u0627\u062a
PreferencePages.Capabilities.activityPromptButtonTooltip = \u0631\u0633\u0627\u0644\u0629 \u062d\u062b \u0639\u0646\u062f \u0623\u0648\u0644 \u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u0644\u0645\u064a\u0632\u0629 \u062a\u062a\u0637\u0644\u0628 \u0627\u062a\u0627\u062d\u0629 \u0627\u0644\u0627\u0645\u0643\u0627\u0646\u064a\u0627\u062a
PreferencePages.Capabilities.captionMessage = \u062a\u062a\u064a\u062d \u0644\u0643 \u0627\u0644\u0627\u0645\u0643\u0627\u0646\u064a\u0627\u062a \u0627\u062a\u0627\u062d\u0629 \u0623\u0648 \u0627\u064a\u0642\u0627\u0641 \u0627\u062a\u0627\u062d\u0629 \u0627\u0644\u0639\u062f\u064a\u062f \u0645\u0646 \u0645\u0643\u0648\u0646\u0627\u062a \u0627\u0644\u0645\u0646\u062a\u062c\u0627\u062a.  \u064a\u062a\u0645 \u062a\u062c\u0645\u064a\u0639 \u0647\u0630\u0647 \u0627\u0644\u0627\u0645\u0643\u0627\u0646\u064a\u0627\u062a \u0648\u0641\u0642 \u0645\u062c\u0645\u0648\u0639\u0629 \u0645\u0646 \u0627\u0644\u062a\u0635\u0646\u064a\u0641\u0627\u062a \u0627\u0644\u0645\u0639\u0631\u0641\u0629 \u0645\u0633\u0628\u0642\u0627.
