#-------------------------------------------------------------------------------
# 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 Authoring UI
providerName=Eclipse.org

# Category
methodCategoryName=\u30e1\u30bd\u30c3\u30c9

# Perspective
authoringPerspectiveName=\u30aa\u30fc\u30b5\u30ea\u30f3\u30b0
browsingPerspectiveName=\u30d6\u30e9\u30a6\u30ba

# Views
libraryViewName=\u30e9\u30a4\u30d6\u30e9\u30ea\u30fc
configurationViewName=\u69cb\u6210
contentViewName=\u30b3\u30f3\u30c6\u30f3\u30c4
configurationErrorLogViewName=\u69cb\u6210\u30a8\u30e9\u30fc\u30fb\u30ed\u30b0

# Editors
methodElementEditorName=\u30e1\u30bd\u30c3\u30c9\u8981\u7d20\u30a8\u30c7\u30a3\u30bf\u30fc
configurationEditorName=\u69cb\u6210\u30a8\u30c7\u30a3\u30bf\u30fc
processEditorName=\u30d7\u30ed\u30bb\u30b9\u30fb\u30a8\u30c7\u30a3\u30bf\u30fc
activityDiagramEditorName=\u30a2\u30af\u30c6\u30a3\u30d3\u30c6\u30a3\u30fc\u56f3\u30a8\u30c7\u30a3\u30bf\u30fc
activityDetailDiagramEditorName=\u30a2\u30af\u30c6\u30a3\u30d3\u30c6\u30a3\u30fc\u8a73\u7d30\u56f3\u30a8\u30c7\u30a3\u30bf\u30fc
workProductDepedencyDiagramEditorName=\u30ef\u30fc\u30af\u30fb\u30d7\u30ed\u30c0\u30af\u30c8\u4f9d\u5b58\u95a2\u4fc2\u56f3\u30a8\u30c7\u30a3\u30bf\u30fc

# Cheat Sheets
methodAuthoringCheatSheetsName=\u30e1\u30bd\u30c3\u30c9\u30fb\u30aa\u30fc\u30b5\u30ea\u30f3\u30b0\u864e\u306e\u5dfb
CheatsheetGetstartedCategoryText=\u59cb\u3081\u306b
CheatsheetReusableContentCategoryText=\u518d\u4f7f\u7528\u53ef\u80fd\u306a\u30e1\u30bd\u30c3\u30c9\u30fb\u30b3\u30f3\u30c6\u30f3\u30c4\u306e\u4f5c\u6210
CheatsheetWriteContentCategoryText=\u30e1\u30bd\u30c3\u30c9\u30fb\u30b3\u30f3\u30c6\u30f3\u30c4\u306e\u4f5c\u6210
CheatsheetProcessesCategoryText=\u30d7\u30ed\u30bb\u30b9\u306e\u51e6\u7406
CheatsheetNavigateMethodContent=\u30e1\u30bd\u30c3\u30c9\u30fb\u30b3\u30f3\u30c6\u30f3\u30c4\u306e\u30ca\u30d3\u30b2\u30fc\u30c8
CheatsheetCreateMethodConfiguration=\u72ec\u81ea\u306e\u30e1\u30bd\u30c3\u30c9\u69cb\u6210\u306e\u4f5c\u6210
CheatsheetCreateMethodPlugin=\u72ec\u81ea\u306e\u30e1\u30bd\u30c3\u30c9\u30fb\u30d7\u30e9\u30b0\u30a4\u30f3\u306e\u4f5c\u6210
CheatsheetAddMethodContent=\u300c\u30ed\u30fc\u30eb\u300d\u3001\u300c\u30bf\u30b9\u30af\u300d\u3001\u300c\u30ef\u30fc\u30af\u30fb\u30d7\u30ed\u30c0\u30af\u30c8\u300d\u3001\u307e\u305f\u306f\u300c\u30ac\u30a4\u30c0\u30f3\u30b9\u300d\u306a\u3069\u3001\u65b0\u898f\u30e1\u30bd\u30c3\u30c9\u30fb\u30b3\u30f3\u30c6\u30f3\u30c4\u306e\u8ffd\u52a0
CheatsheetTailorMethodElements=\u65e2\u5b58\u306e\u30e1\u30bd\u30c3\u30c9\u8981\u7d20 (\u300c\u30ed\u30fc\u30eb\u300d\u3001\u300c\u30bf\u30b9\u30af\u300d\u3001\u300c\u30ef\u30fc\u30af\u30fb\u30d7\u30ed\u30c0\u30af\u30c8\u300d\u3001\u307e\u305f\u306f\u300c\u30ac\u30a4\u30c0\u30f3\u30b9\u300d) \u306e\u300c\u5bc4\u4e0e\u300d\u3092\u4f7f\u7528\u3057\u305f\u8abf\u6574
CheatsheetReplaceMehtodElements=\u65e2\u5b58\u306e\u30e1\u30bd\u30c3\u30c9\u8981\u7d20 (\u300c\u30ed\u30fc\u30eb\u300d\u3001\u300c\u30bf\u30b9\u30af\u300d\u3001\u300c\u30ef\u30fc\u30af\u30fb\u30d7\u30ed\u30c0\u30af\u30c8\u300d\u3001\u307e\u305f\u306f\u300c\u30ac\u30a4\u30c0\u30f3\u30b9\u300d) \u306e\u7f6e\u63db
CheatsheetAddMethodRefOrHyperlink=\u30e1\u30bd\u30c3\u30c9\u53c2\u7167\u307e\u305f\u306f\u30cf\u30a4\u30d1\u30fc\u30ea\u30f3\u30af (URL) \u306e\u8ffd\u52a0
CheatsheetApplyCapabilityPattern=\u30b1\u30fc\u30d1\u30d3\u30ea\u30c6\u30a3\u30fc\u30fb\u30d1\u30bf\u30fc\u30f3\u306e\u9069\u7528
CheatsheetCreateProcess=\u30d7\u30ed\u30bb\u30b9 (\u30b1\u30fc\u30d1\u30d3\u30ea\u30c6\u30a3\u30fc\u30fb\u30d1\u30bf\u30fc\u30f3\u307e\u305f\u306f\u30c7\u30ea\u30d0\u30ea\u30fc\u30fb\u30d7\u30ed\u30bb\u30b9) \u306e\u4f5c\u6210

# Action Set
authoringActionSet=\u30aa\u30fc\u30b5\u30ea\u30f3\u30b0
cheatSheetsActionSet=\u864e\u306e\u5dfb

# Global Actions
newLibraryAction=\u30e1\u30bd\u30c3\u30c9\u30fb\u30e9\u30a4\u30d6\u30e9\u30ea\u30fc(&L)
newLibraryActionTooltip=\u30e1\u30bd\u30c3\u30c9\u30fb\u30e9\u30a4\u30d6\u30e9\u30ea\u30fc\u306e\u65b0\u898f\u4f5c\u6210
newPluginAction=\u30e1\u30bd\u30c3\u30c9\u30fb\u30d7\u30e9\u30b0\u30a4\u30f3(&P)
newPluginActionTooltip=\u30e1\u30bd\u30c3\u30c9\u30fb\u30d7\u30e9\u30b0\u30a4\u30f3\u306e\u65b0\u898f\u4f5c\u6210
newConfigAction=\u30e1\u30bd\u30c3\u30c9\u69cb\u6210(&C)
newConfigActionTooltip=\u30e1\u30bd\u30c3\u30c9\u69cb\u6210\u306e\u65b0\u898f\u4f5c\u6210
openLibraryAction=\u30e1\u30bd\u30c3\u30c9\u30fb\u30e9\u30a4\u30d6\u30e9\u30ea\u30fc(&L)
openLibraryActionTooltip=\u65e2\u5b58\u306e\u30e1\u30bd\u30c3\u30c9\u30fb\u30e9\u30a4\u30d6\u30e9\u30ea\u30fc\u3092\u958b\u304f
openConfigAction=\u30e1\u30bd\u30c3\u30c9\u69cb\u6210(&C)
openConfigActionTooltip=\u65e2\u5b58\u306e\u30e1\u30bd\u30c3\u30c9\u69cb\u6210\u3092\u958b\u304f
openCheatSheets=\u864e\u306e\u5dfb...

# Library View Actions
linkWithEditor=\u30a8\u30c7\u30a3\u30bf\u30fc\u3092\u4f7f\u7528\u3057\u3066\u30ea\u30f3\u30af
linkWithEditorTooltip=\u30a8\u30c7\u30a3\u30bf\u30fc\u3092\u4f7f\u7528\u3057\u3066\u30ea\u30f3\u30af
showPresentationNames=\u8868\u793a\u540d\u306e\u8868\u793a
showPresentationNamesTooltip=\u8868\u793a\u540d\u306e\u8868\u793a

# Configuration View Actions
refreshConfig=\u66f4\u65b0
refreshConfigTooltip=\u69cb\u6210\u306e\u66f4\u65b0

# Preference Page
methodAuthoringPage=\u30e1\u30bd\u30c3\u30c9\u30fb\u30aa\u30fc\u30b5\u30ea\u30f3\u30b0
processEditor=\u30d7\u30ed\u30bb\u30b9\u30fb\u30a8\u30c7\u30a3\u30bf\u30fc
libraryOptions=\u30e9\u30a4\u30d6\u30e9\u30ea\u30fc\u30fb\u30aa\u30d7\u30b7\u30e7\u30f3
diagram=\u30c0\u30a4\u30a2\u30b0\u30e9\u30e0
startupAndShutdown=\u59cb\u52d5\u3068\u30b7\u30e3\u30c3\u30c8\u30c0\u30a6\u30f3
debug=\u30c7\u30d0\u30c3\u30b0

# Command Handler
selectAll=\u3059\u3079\u3066\u9078\u629e

# Properties View
_UI_ProcessEditor_menu=\u30d7\u30ed\u30bb\u30b9
_UI_CreateChild_menu_item=\u65b0\u898f\u306e\u5b50(&N)
_UI_CreateSibling_menu_item=\u65b0\u898f\u306e\u5144\u5f1f(&E)
_UI_ShowPropertiesView_menu_item=\u30d7\u30ed\u30d1\u30c6\u30a3\u30fc\u30fb\u30d3\u30e5\u30fc\u306e\u8868\u793a(&V)
_UI_RefreshViewer_menu_item=\u66f4\u65b0(&F)
_UI_Properties_General=\u4e00\u822c
_UI_Properties_Documentation=\u6587\u66f8
_UI_Properties_Guidance=\u30ac\u30a4\u30c0\u30f3\u30b9
_UI_Properties_Work_Rollup=\u30ef\u30fc\u30af\u306e\u30ed\u30fc\u30eb\u30a2\u30c3\u30d7
_UI_Properties_Team_Rollup=\u30c1\u30fc\u30e0\u306e\u30ed\u30fc\u30eb\u30a2\u30c3\u30d7
## The following value of string should be "Work Product Rollup". But
## due to limitation/bug in Eclipse WTP, it's been truncated to 
## "Work Prod Rollup". So during translation, please take this into consideration.
_UI_Properties_WP_Rollup=\u30ef\u30fc\u30af\u30fb\u30d7\u30ed\u30c0\u30af\u30c8\u306e\u30ed\u30fc\u30eb\u30a2\u30c3\u30d7
_UI_Properties_Roles=\u30ed\u30fc\u30eb
_UI_Properties_WorkProducts=\u30ef\u30fc\u30af\u30fb\u30d7\u30ed\u30c0\u30af\u30c8
_UI_Properties_Steps=\u30b9\u30c6\u30c3\u30d7
_UI_Properties_Teams=\u30c1\u30fc\u30e0
