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

_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
