#-------------------------------------------------------------------------------
# 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=Interface utilisateur d'autorisation EPF
providerName=Eclipse.org

# Category
methodCategoryName=M\u00e9thode

# Perspective
authoringPerspectiveName=Cr\u00e9ation
browsingPerspectiveName=Exploration

# Views
libraryViewName=Biblioth\u00e8que
configurationViewName=Configuration
contentViewName=Contenu
configurationErrorLogViewName=Journal des erreurs de configuration

# Editors
methodElementEditorName=Editeur d'\u00e9l\u00e9ment de m\u00e9thode
configurationEditorName=Editeur de configuration
processEditorName=Editeur de processus
activityDiagramEditorName=Editeur de diagramme d'activit\u00e9
activityDetailDiagramEditorName=Editeur de diagramme de d\u00e9tail d'activit\u00e9
workProductDepedencyDiagramEditorName=Editeur de diagramme de d\u00e9pendance de produit

# Wizards
newMethodLibraryWizardName=Biblioth\u00e8que de m\u00e9thodes
newMethodLibraryWizardDescription=Cr\u00e9er une nouvelle biblioth\u00e8que de m\u00e9thodes.
newMethodPluginWizardName=Plug-in de m\u00e9thodes
newMethodPluginWizardDescription=Cr\u00e9er un nouveau plug-in de m\u00e9thodes.
newConfigurationWizardName=Configuration de m\u00e9thode
newConfigurationWizardDescription=Cr\u00e9er une nouvelle configuration de m\u00e9thode.

# Cheat Sheets
methodAuthoringCheatSheetsName=Aide-m\u00e9moire de cr\u00e9ation de m\u00e9thode
CheatsheetGetstartedCategoryText=Mise en route
CheatsheetReusableContentCategoryText=Cr\u00e9er un contenu de m\u00e9thode r\u00e9utilisable
CheatsheetWriteContentCategoryText=Ecrire le contenu de la m\u00e9thode
CheatsheetProcessesCategoryText=G\u00e9rer les processus
CheatsheetNavigateMethodContent=Naviguer dans le contenu de la m\u00e9thode
CheatsheetCreateMethodConfiguration=Cr\u00e9er votre propre configuration de m\u00e9thode
CheatsheetCreateMethodPlugin=Cr\u00e9er votre propre plug-in de m\u00e9thodes
CheatsheetAddMethodContent=Ajouter du nouveau contenu de m\u00e9thode, tel que des r\u00f4les, des t\u00e2ches, des produits ou des conseils
CheatsheetTailorMethodElements=Personnaliser les \u00e9l\u00e9ments de m\u00e9thode existants (r\u00f4les, t\u00e2ches, produits ou conseils) \u00e0 l'aide de la contribution
CheatsheetReplaceMehtodElements=Remplacer les \u00e9l\u00e9ments de m\u00e9thode existants (r\u00f4les, t\u00e2ches, produits ou conseils)
CheatsheetAddMethodRefOrHyperlink=Ajouter une r\u00e9f\u00e9rence de m\u00e9thode ou un lien hypertexte (URL)
CheatsheetApplyCapabilityPattern=Appliquer un pattern de capacit\u00e9
CheatsheetCreateProcess=Cr\u00e9er un processus (pattern de capacit\u00e9 ou processus de livraison)

# Action Set
authoringActionSet=Cr\u00e9ation
cheatSheetsActionSet=Aide-m\u00e9moires

# Global Actions
newLibraryAction=&Biblioth\u00e8que de m\u00e9thodes
newLibraryActionTooltip=Cr\u00e9er une nouvelle biblioth\u00e8que de m\u00e9thodes
newPluginAction=&Plug-in de m\u00e9thodes
newPluginActionTooltip=Cr\u00e9er un nouveau plug-in de m\u00e9thodes
newConfigAction=&Configuration de m\u00e9thode
newConfigActionTooltip=Cr\u00e9er une nouvelle configuration de m\u00e9thode
openLibraryAction=&Biblioth\u00e8que de m\u00e9thodes
openLibraryActionTooltip=Ouvrir une biblioth\u00e8que de m\u00e9thodes existante
openConfigAction=&Configuration de m\u00e9thode
openConfigActionTooltip=Ouvrir une configuration de m\u00e9thode existante
openCheatSheets=&Aides-m\u00e9moire...

# Library View Actions
linkWithEditor=Lien avec l'\u00e9diteur
linkWithEditorTooltip=Lien avec l'\u00e9diteur
showPresentationNames=Afficher les noms de pr\u00e9sentation
showPresentationNamesTooltip=Afficher les noms de pr\u00e9sentation

# Configuration View Actions
refreshConfig=Actualiser
refreshConfigTooltip=Actualiser la configuration

# Preference Page
authoringPreferencePage=Cr\u00e9ation
processEditor=Editeur de processus
libraryOptions=Options de la biblioth\u00e8que
startupAndShutdown=D\u00e9marrage et arr\u00eat
debug=D\u00e9boguer
modelingOptions=Options de mod\u00e9lisation
diagramAppearance=Aspect du diagramme
breakdownElementAttributes=Attributs d'\u00e9l\u00e9ment de r\u00e9partition
libraryViewOptions=Options de la vue Biblioth\u00e8que

# Command Handler
selectAll=S\u00e9lectionner tout

# Properties View
_UI_ProcessEditor_menu=Processus
_UI_CreateChild_menu_item=&Nouvel enfant
_UI_CreateSibling_menu_item=N&ouveau fr\u00e8re/soeur
_UI_ShowPropertiesView_menu_item=&Vue Afficher propri\u00e9t\u00e9s
_UI_RefreshViewer_menu_item=Act&ualiser
_UI_Properties_General=Dispositions g\u00e9n\u00e9rales
_UI_Properties_Documentation=Documentation
_UI_Properties_Guidance=Conseil
_UI_Properties_Work_Rollup=Cumul de travail
_UI_Properties_Team_Rollup=Cumul de l'\u00e9quipe
_UI_Properties_WP_Rollup=Cumul de produit de travail
_UI_Properties_Roles=R\u00f4les
_UI_Properties_WorkProducts=Produits de travail
_UI_Properties_Steps=Etapes
_UI_Properties_Teams=Equipes

RichTextMarkerTypeName=Probl\u00e8mes HTML
ConfigurationMarkerTypeName=Probl\u00e8mes de configuration
