#-------------------------------------------------------------------------------
# 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=Modification de la biblioth\u00e8que EPF
providerName=Eclipse.org

_UI_Content_group=Contenu de la m\u00e9thode

_UI_Disciplines_group=Disciplines
_UI_Domains_group=Domaines
_UI_WorkProductTypes_group=Types de produits
_UI_Role_Sets_group=Ensembles de r\u00f4les
_UI_Tools_group=Outils
_UI_Standard_Categories_group=Cat\u00e9gories standard
_UI_Custom_Categories_group=Cat\u00e9gories personnalis\u00e9es
_UI_MethodContent_group=Packages de contenu
_UI_Categories_group=Cat\u00e9gories

_UI_Processes_group=Processus
_UI_PlanningTemplates_group=Canevas de planification

_UI_CapabilityPatterns_text=Patterns de capacit\u00e9
_UI_DeliveryProcesses_text=Processus de livraison
_UI_ProcessContributions_text=Processus diff\u00e9rentiels
_UI_PlanningTemplates_text=Canevas de planification

_UI_CapabilityPattern_text=Pattern de capacit\u00e9
_UI_DeliveryProcess_text=Processus de livraison
_UI_ProcessContribution_text=Processus diff\u00e9rentiel

_UI_Configurations_text=Configurations

_UI_ProcessFamilies_text=Familles de processus

_UI_Uncategorized_text=Non affect\u00e9 \u00e0 une cat\u00e9gorie
_UI_Uncategorized_Tasks_text=T\u00e2ches non affect\u00e9es \u00e0 une cat\u00e9gorie
_UI_Uncategorized_Roles_text=R\u00f4les non affect\u00e9s \u00e0 une cat\u00e9gorie

_UI_Guidances_group=Conseil
_UI_Guidances_Checklists=Listes de contr\u00f4le
_UI_Guidances_Concepts=Concepts
_UI_Guidances_Examples=Exemples
_UI_Guidances_EstimationConsiderations=Consid\u00e9rations relatives \u00e0 l'estimation
_UI_Guidances_Practices=Pratiques
_UI_Guidances_Reports=Rapports
_UI_Guidances_ReusableAssets=Ressources r\u00e9utilisables
_UI_Guidances_Roadmap=Feuille de route
_UI_Guidances_SupportingMaterials=Documents d'accompagnement
_UI_Guidances_Techniques=Techniques
_UI_Guidances_Templates=Canevas
_UI_Guidances_TermDefinitions=D\u00e9finitions de termes
_UI_Guidances_ToolMentors=Guides d'utilisation de l'outil
_UI_Guidances_Whitepapers=Livres blancs
_UI_Guidances_WorkProductGuidelines=Instructions
_UI_Key_Concepts=Concepts cl\u00e9


_UI_Roles_group=R\u00f4les
_UI_Tasks_group=T\u00e2ches
_UI_WorkProducts_group=Produits de travail
_UI_Activities_group=Activit\u00e9s

# Breakdown structure column display names
BS_Column_name=Nom
BS_Column_prefix=Pr\u00e9fixe
BS_Column_id=Index
BS_Column_predecessors=Pr\u00e9d\u00e9cesseurs
BS_Column_is_repeatable=R\u00e9it\u00e9rable
BS_Column_is_ongoing=En cours
BS_Column_is_event_driven=Command\u00e9 par les \u00e9v\u00e9nements
BS_Column_entry_state=Etat d'entr\u00e9e
BS_Column_exit_state=Etat de sortie
BS_Column_teams=Equipe
BS_Column_type=Type
BS_Column_model_info=Informations relatives au mod\u00e8le
BS_Column_presentation_name=Nom de pr\u00e9sentation
BS_Column_deliverable=Livrable
BS_Column_is_optional=Facultatif
BS_Column_is_planned=Planifi\u00e9
BS_Column_has_multiple_occurrences=Plusieurs occurrences

