#-------------------------------------------------------------------------------
# Copyright (c) 2000, 2007 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=UI de montaje de UI
providerName=Eclipse.org

# Category
methodCategoryName=M\u00e9todo

# Perspective
authoringPerspectiveName=Creaci\u00f3n
browsingPerspectiveName=Examen

# Views
libraryViewName=Biblioteca
configurationViewName=Configuraci\u00f3n
contentViewName=Contenido
configurationErrorLogViewName=Registro de errores de configuraci\u00f3n

# Editors
methodElementEditorName=Editor de elementos de m\u00e9todo
configurationEditorName=Editor de configuraci\u00f3n
processEditorName=Editor de procesos
activityDiagramEditorName=Editor del diagrama de la actividad
activityDetailDiagramEditorName=Editor del diagrama de detalles de la actividad
workProductDepedencyDiagramEditorName=Editor del diagrama de dependencia del producto de trabajo

# Wizards
newMethodLibraryWizardName=Biblioteca de m\u00e9todos
newMethodLibraryWizardDescription=Crear una nueva biblioteca de m\u00e9todos.
newMethodPluginWizardName=Plug-in de m\u00e9todo
newMethodPluginWizardDescription=Crear un nuevo plug-in de m\u00e9todo.
newConfigurationWizardName=Configuraci\u00f3n de m\u00e9todo
newConfigurationWizardDescription=Crear una nueva configuraci\u00f3n de m\u00e9todo.

# Cheat Sheets
methodAuthoringCheatSheetsName=Hojas de orientaci\u00f3n de la creaci\u00f3n de m\u00e9todos
CheatsheetGetstartedCategoryText=C\u00f3mo empezar
CheatsheetReusableContentCategoryText=Crear contenido del m\u00e9todo reutilizable
CheatsheetWriteContentCategoryText=Escribir contenido del m\u00e9todo
CheatsheetProcessesCategoryText=Trabajar con procesos
CheatsheetNavigateMethodContent=Navegar por el contenido del m\u00e9todo
CheatsheetCreateMethodConfiguration=Crear una configuraci\u00f3n de m\u00e9todo propia
CheatsheetCreateMethodPlugin=Crear un plug-in de m\u00e9todo propio
CheatsheetAddMethodContent=A\u00f1adir contenido del m\u00e9todo nuevo, como roles, tareas, productos de trabajo o instruccioness
CheatsheetTailorMethodElements=Personalizar los elementos de m\u00e9todo existentes (Roles, Tareas, Productos de trabajo o Instrucciones) mediante la contribuci\u00f3n
CheatsheetReplaceMehtodElements=Reemplazar los elementos de m\u00e9todo existentes (Roles, Tareas, Productos de trabajo o Instrucciones)
CheatsheetAddMethodRefOrHyperlink=A\u00f1adir una referencia o hiperenlace al m\u00e9todo (URL)
CheatsheetApplyCapabilityPattern=Aplicar un patr\u00f3n de posibilidad
CheatsheetCreateProcess=Crear un proceso (Patr\u00f3n de posibilidad o Proceso de entrega)

# Action Set
authoringActionSet=Creaci\u00f3n
cheatSheetsActionSet=Hojas de orientaci\u00f3n

# Global Actions
newLibraryAction=&Biblioteca de m\u00e9todos
newLibraryActionTooltip=Crear una nueva biblioteca de m\u00e9todos
newPluginAction=&Plug-in de m\u00e9todo
newPluginActionTooltip=Crear un plug-in de m\u00e9todo nuevo
newConfigAction=&Configuraci\u00f3n de m\u00e9todo
newConfigActionTooltip=Crear una nueva configuraci\u00f3n de m\u00e9todo
openLibraryAction=&Biblioteca de m\u00e9todos
openLibraryActionTooltip=Abrir una biblioteca de m\u00e9todos existente
openConfigAction=&Configuraci\u00f3n de m\u00e9todo
openConfigActionTooltip=Abrir una configuraci\u00f3n de m\u00e9todo existente
openCheatSheets=&Hojas de orientaci\u00f3n...

# Library View Actions
linkWithEditor=Enlazar con el editor
linkWithEditorTooltip=Enlazar con el editor
showPresentationNames=Mostrar nombres de presentaci\u00f3n
showPresentationNamesTooltip=Mostrar nombres de presentaci\u00f3n

# Configuration View Actions
refreshConfig=Renovar
refreshConfigTooltip=Renovar la configuraci\u00f3n

# Preference Page
authoringPreferencePage=Creaci\u00f3n
processEditor=Editor de procesos
libraryOptions=Opciones de la biblioteca
startupAndShutdown=Inicio y conclusi\u00f3n
debug=Depurar
modelingOptions=Opciones de modelado
diagramAppearance=Aspecto del diagrama
breakdownElementAttributes=Atributos del elemento de desglose
libraryViewOptions=Opciones de vista de la biblioteca

# Command Handler
selectAll=Seleccionar todo

# Properties View
_UI_ProcessEditor_menu=Proceso
_UI_CreateChild_menu_item=&Nuevo hijo
_UI_CreateSibling_menu_item=Nu&evo igual
_UI_ShowPropertiesView_menu_item=Mostrar propiedades &Vista
_UI_RefreshViewer_menu_item=Re&novar
_UI_Properties_General=General
_UI_Properties_Documentation=Documentaci\u00f3n
_UI_Properties_Guidance=Instrucciones
_UI_Properties_Work_Rollup=Trabajar con elementos contra\u00eddos
_UI_Properties_Team_Rollup=Elementos contra\u00eddos de Equipo
_UI_Properties_WP_Rollup=Contracci\u00f3n de producto de trabajo
_UI_Properties_Roles=Roles
_UI_Properties_WorkProducts=Productos de trabajo
_UI_Properties_Steps=Pasos
_UI_Properties_Teams=Equipos

RichTextMarkerTypeName=Problemas de HTML
ConfigurationMarkerTypeName=Problemas de configuraci\u00f3n
