#-------------------------------------------------------------------------------
# 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

# Method Element Names (Singular)
activity_text=Atividade
artifact_text=Artefato
capabilityPattern_text=Padr\u00e3o de Recurso
checklist_text=Lista de Verifica\u00e7\u00e3o
checkItem_text=Item de Verifica\u00e7\u00e3o
compositeRole_text=Fun\u00e7\u00e3o Composta
concept_text=Conceito
contentPackage_text=Pacote de Conte\u00fado
customCategory_text=Categoria Customizada
deliverable_text=Distribu\u00edvel
deliveryProcess_text=Processo de Entrega
descriptor_text=Descritor
discipline_text=Disciplina
disciplineGrouping_text=Agrupamento de Disciplinas
domain_text=Dom\u00ednio
estimate_text=Estimar
estimatingMetric_text=M\u00e9trica Estimativa
estimationConsiderations_text=Considera\u00e7\u00f5es de Estimativas
example_text=Exemplo
guidance_text=Orienta\u00e7\u00e3o
guideline_text=Diretriz
iteration_text=Itera\u00e7\u00e3o
methodConfiguration_text=Configura\u00e7\u00e3o de M\u00e9todo
methodContent_text=Conte\u00fado do M\u00e9todo
methodLibrary_text=Biblioteca de M\u00e9todos
methodPackage_text=Pacote de M\u00e9todo
methodPlugin_text=Plug-in de M\u00e9todo
milestone_text=Marco
outcome_text=Resultado
phase_text=Fase
practice_text=Pr\u00e1tica
process_text=Processo
processContribution_text=Processo Diferencial
processFamily_text=Fam\u00edlia de Processos
processPackage_text=Pacote de Processo
report_text=Relat\u00f3rio
reusableAsset_text=Recurso Reutiliz\u00e1vel
roadmap_text=Roteiro
roleDescriptor_text=Descritor de Fun\u00e7\u00f5es
role_text=Fun\u00e7\u00e3o
roleSet_text=Conjunto de Fun\u00e7\u00f5es
roleSetGrouping_text=Agrupamento de Conjuntos de Fun\u00e7\u00f5es
standardCategory_text=Categoria Padr\u00e3o
step_text=Etapa
supportingMaterial_text=Material de Suporte
task_text=Tarefa
taskDescriptor_text=Descritor de Tarefas
teamProfile_text=Perfil de Equipe
template_text=Modelo
termDefinition_text=Defini\u00e7\u00e3o de Termo
tool_text=Ferramenta
toolMentor_text=Mentor de Ferramentas
whitepaper_text=Whitepaper
workProduct_text=Produto de Trabalho
workProductDescriptor_text=Descritor de Produtos de Trabalho
workProductElement_text=Elemento de Produto de Trabalho
workProductType_text=Tipo de Produto de Trabalho

# Method Element Names (Plural)
activity_text_plural=Atividades
artifact_text_plural=Artefatos
capabilityPattern_text_plural=Padr\u00f5es de Recurso
checklist_text_plural=Listas de Verifica\u00e7\u00e3o
checkItem_text_plural=Itens de Verifica\u00e7\u00e3o
compositeRole_text_plural=Fun\u00e7\u00f5es Compostas
concept_text_plural=Conceitos
contentPackage_text_plural=Pacotes de Conte\u00fado
customCategory_text_plural=Categorias Customizadas
deliverable_text_plural=Distribu\u00edveis
deliveryProcess_text_plural=Processos de Entrega
descriptor_text_plural=Descritores
discipline_text_plural=Disciplinas
disciplineGrouping_text_plural=Agrupamentos de Disciplinas
domain_text_plural=Dom\u00ednios
estimate_text_plural=Estimativas
estimatingMetric_text_plural=M\u00e9tricas de Estimativa
estimationConsiderations_text_plural=Considera\u00e7\u00f5es de Estimativas
example_text_plural=Exemplos
guidance_text_plural=Orienta\u00e7\u00f5es
guideline_text_plural=Diretrizes
iteration_text_plural=Itera\u00e7\u00f5es
methodConfiguration_text_plural=Configura\u00e7\u00f5es de M\u00e9todo
methodContent_text_plural=Conte\u00fados de M\u00e9todo
methodLibrary_text_plural=Bibliotecas de M\u00e9todos
methodPackage_text_plural=Pacotes de M\u00e9todo
methodPlugin_text_plural=Plug-ins de M\u00e9todo
milestone_text_plural=Marcos
outcome_text_plural=Resultados
phase_text_plural=Fases
practice_text_plural=Pr\u00e1ticas
process_text_plural=Processos
processContribution_text_plural=Processos Diferenciais
processFamily_text_plural=    Fam\u00edlias de Processos
processPackage_text_plural=Pacotes de Processo
report_text_plural=Relat\u00f3rios
reusableAsset_text_plural=Recursos Reutiliz\u00e1veis
roadmap_text_plural=Mapas de Rotas
roleDescriptor_text_plural=Descritores de Fun\u00e7\u00e3o
role_text_plural=Fun\u00e7\u00f5es
roleSet_text_plural=Conjuntos de Fun\u00e7\u00f5es
roleSetGrouping_text_plural=Agrupamentos de Conjunto de Fun\u00e7\u00f5es
standardCategory_text_plural=Categorias Padr\u00e3o
step_text_plural=Etapas
supportingMaterial_text_plural=Materiais de Suporte
task_text_plural=Tarefas
taskDescriptor_text_plural=Descritores de Tarefa
teamProfile_text_plural=Perfis de Equipe
template_text_plural=Modelos
termDefinition_text_plural=Defini\u00e7\u00f5es de Termos
tool_text_plural=Ferramentas
toolMentor_text_plural=Mentores de Ferramentas
whitepaper_text_plural=White papers
workProduct_text_plural=Produtos de Trabalho
workProductDescriptor_text_plural=Descritores de Produto de Trabalho
workProductElement_text_plural=Elementos de Produto de Trabalho
workProductType_text_plural=Tipos de Produto de Trabalho

# Application title.
application_title={0} - {1}

# Open Method Library Wizard
openLibraryWizard_title=Abrir Biblioteca de M\u00e9todos
openLibraryMainWizardPage_title=Especifique o caminho que cont\u00e9m a biblioteca de m\u00e9todos
openLibraryMainWizardPage_title_2=Selecione uma biblioteca de m\u00e9todos
openLibraryMainWizardPage_text=O {0} armazena m\u00e9todos e processos em uma pasta chamada \numa biblioteca de m\u00e9todos. Selecione uma pasta de biblioteca de m\u00e9todos para utilizar para esta sess\u00e3o.
pathLabel_text=Caminho:
nameLabel_text=Nome:
uriLabel_text=URI:
openUnlistedLibraryCheckbox_text=Abra uma biblioteca de m\u00e9todos que n\u00e3o esteja listada acima
libraryTypeLabel_text=Tipo:
libraryLabel_text=Biblioteca:
browseButton_text=Procurar...
promptForLibraryCheckbox_text=Utilizar esta como padr\u00e3o e n\u00e3o perguntar novamente.
openLibraryDialog_newLibrary_text=N\u00e3o h\u00e1 nenhuma biblioteca de m\u00e9todos em ''{0}''.\nUma nova biblioteca de m\u00e9todos ser\u00e1 criada e aberta para voc\u00ea no diret\u00f3rio especificado.\n\nClique em OK para prosseguir ou Cancelar para especificar outro caminho para biblioteca de m\u00e9todos.

# Select Method Library Folder Dialog
selectLibraryFolderDialog_title=Selecionar Biblioteca de M\u00e9todos
selectLibraryFolderDialog_text=Selecione uma pasta de biblioteca de m\u00e9todos.

# Open Library Progress Message
openingLibraryTask_name=Abrindo a biblioteca de m\u00e9todos...

# Open Method Library Error Dialog
openLibraryError_msg=IUPL0301E: Imposs\u00edvel criar a biblioteca de m\u00e9todos.
openLibraryInternlError_reason=Ocorreu um erro interno.
openLibraryError_reason1=O caminho da biblioteca de m\u00e9todos especificado ''{0}'' \u00e9 inv\u00e1lido.
openLibraryError_reason2=J\u00e1 existe uma biblioteca de m\u00e9todos em ''{0}''.
openLibraryError_reason3=N\u00e3o \u00e9 poss\u00edvel criar a pasta da biblioteca de m\u00e9todos especificada ''{0}''.
openLibraryError_reason4=A pasta da biblioteca de m\u00e9todos especificada \u00e9 uma pasta de exporta\u00e7\u00e3o de especifica\u00e7\u00e3o de configura\u00e7\u00e3o ou de plug-in.
openLibraryError_advice=Selecione OK para especificar outro caminho da biblioteca de m\u00e9todos.

# Open Method Library Error Messages
invalidLibraryPath_msg=IUPL0302E: N\u00e3o foi poss\u00edvel abrir a biblioteca de m\u00e9todos especificada.
invalidLibraryPath_reason=A pasta da biblioteca de m\u00e9todos selecionada \u00e9 inv\u00e1lida, n\u00e3o existe ou voc\u00ea n\u00e3o tem a permiss\u00e3o correta para acess\u00e1-la.\n\nClique em OK para selecionar outra pasta de biblioteca.

# Read-only Project File Error Dialog
readOnlyProjectFile_text=IUPL0304E: ''{0}'' \u00e9 de leitura. Torne-o grav\u00e1vel antes de continuar.
retryButton_text=Repetir
cancelButton_text=Cancelar
# Version Mismatch Dialog
versionMismatchDialog_text=IUPL305E: A biblioteca selecionada n\u00e3o pode ser aberta. \u00c9 necess\u00e1rio fazer upgrade de {0} para a vers\u00e3o {1} ou superior a fim de abrir essa biblioteca.
versionMismatchDialog_text_unknown=IUPL306E: A biblioteca selecionada n\u00e3o pode ser aberta. Voc\u00ea deve fazer upgrade de {0} para uma vers\u00e3o mais recente a fim de abrir essa biblioteca.

# Upgrade Method Library Dialog
upgradeLibraryDialog_title=Fazer Upgrade de Biblioteca de M\u00e9todos
upgradeLibraryDialog_text=A biblioteca selecionada precisa ter upgrade feito para a nova estrutura da biblioteca.\n\nDeseja prosseguir com o upgrade?
upgradingLibraryTask_name=Fazendo upgrade da biblioteca de m\u00e9todos...

# Upgrade Library Error Dialog
upgradeLibraryError_msg=IUPL0306E: Falha ao fazer upgrade da biblioteca de m\u00e9todos. Consulte o arquivo de log para obter detalhes adicionais.

# Switch Configuration Dialog
switchConfigDialog_title=Alternar Configura\u00e7\u00e3o
switchConfigDialog_text=Deseja alternar a configura\u00e7\u00e3o atual para a configura\u00e7\u00e3o padr\u00e3o, ''{0}'', associada ao processo selecionado?
	
# Configuration Combo
currentConfigLabel_text=Configura\u00e7\u00e3o atual:
selectConfigLabel_text=Selecione uma configura\u00e7\u00e3o

# Delete Files Confirmation Message
deleteFilesConfirmation_msg=O caminho especificado ''{0}'' j\u00e1 existe. Todos os arquivos na pasta ser\u00e3o exclu\u00eddos. Deseja continuar?

# Paths/Files Error Messages
deleteFilesError_reason=O caminho ''{0}'' cont\u00e9m um ou mais arquivos que n\u00e3o podem ser exclu\u00eddos.\n\nSelecione outro caminho e tente novamente.
createPathError_reason=N\u00e3o foi poss\u00edvel criar o caminho ''{0}''.\n\nSelecione outro caminho e tente novamente.
invalidPath_msg=O caminho especificado n\u00e3o \u00e9 v\u00e1lido.
overrideCurrentLibraryError_msg0=N\u00e3o \u00e9 poss\u00edvel exportar para um caminho contendo a biblioteca do m\u00e9todo atual; selecione outro caminho e tente novamente.

# Backup Library Dialog
backupLibraryDialog_title=Fazer Backup da Biblioteca
backupLibraryDialog_text=\u00c9 altamente recomend\u00e1vel fazer backup da biblioteca de m\u00e9todos atual antes de prosseguir.\n\nClique em OK para criar uma c\u00f3pia de backup da biblioteca no diret\u00f3rio especificado. Clique em Ignorar para continuar sem criar o backup.
backingUpLibraryTask_name=Fazendo backup dos arquivos de biblioteca ...

# Copy Library Dialog
copyLibraryDialog_title=Copiar Biblioteca
copyLibraryDialog_text_readOnlyLib=A biblioteca n\u00e3o permite grava\u00e7\u00f5es. Clique em Copiar para criar uma c\u00f3pia grav\u00e1vel da biblioteca no diret\u00f3rio especificado. Clique em Ignorar para continuar sem criar a c\u00f3pia.
copyLibraryTask_name=Fazendo uma c\u00f3pia dos arquivos da biblioteca...
copyLibraryDialog_copyButton_text=Copiar

# Path Selection Dialog
pathSelectionError_msg=N\u00e3o foi poss\u00edvel criar o diret\u00f3rio
okButton_text=OK
skipButton_text=Ignorar

# Process Editor preferences
alwaysButton_text=Sempre
neverButton_text=Nunca
promptButton_text=Avisar

# Add Link Dialog
linkToURL_name=URL
linkToFile_name=Arquivo
elementLink_name=Elemento de M\u00e9todo
elementLinkWithType_name=Elemento de m\u00e9todo com prefixo de tipo
elementLinkWithUserText_name=Elemento de m\u00e9todo com texto personalizado

# Convert Activity Type Dialog
convertActivityDialog_title=Converter Tipo de Atividade
convertActivityDialog_text=Selecionar o tipo de atividade de destino.
unsupportedActivityType_msg=IUPL0307E: Esta atividade n\u00e3o pode ser convertida para outro tipo.
unsupportedActivityType_reason=N\u00e3o h\u00e1 tipo de atividade compat\u00edvel com {0}.

# Select Process Wizard Page
selectProcessWizardPage_title=Selecionar Processo
selectProcessWizardPage_text=Selecione um padr\u00e3o de recurso ou processo de entrega a ser exportado.
processesLabel_text=Processos:
briefDescriptionLabel_text=Descri\u00e7\u00e3o resumida:

# Export Process Wizard Error Message.
noOpenLibraryWarning_msg=IUPL0308E: Nenhuma biblioteca de m\u00e9todos est\u00e1 atualmente aberta. Clique em Cancelar, abra ou crie uma biblioteca de m\u00e9todos, e execute este assistente novamente. 

# Moved from Authoring UI plug-in to avoid Authoring UI dependency
errorDialog_title=Erro
MethodElementDeleteAction_deleteconfirm_text=Tem certeza de que deseja excluir ''{0}''?
confirmDeleteDialog_title=Confirmar Exclus\u00e3o
confirmDeleteDialog_msg=Tem certeza de que deseja excluir ''{0}''?
confirmDeleteDialog_msgWithReference=Tem certeza de que deseja excluir ''{0}''?\n\nOs seguintes elementos cont\u00eam refer\u00eancias aos termos a serem exclu\u00eddos: {1}
ProcessDeleteAction_deletecofirm_text=Isto salvar\u00e1 o editor atual e a altera\u00e7\u00e3o ser\u00e1 permanente. Tem certeza de que deseja excluir ''{0}''?

# Save Method Library Dialog
saveLibraryDialog_title=Salvar Biblioteca de M\u00e9todos
saveLibraryDialog_text=A biblioteca de m\u00e9todos atual foi modificada. Deseja salvar as altera\u00e7\u00f5es?

# Save Method Library Error Messages
saveLibraryError_msg=IUPL0308E: A biblioteca de m\u00e9todos n\u00e3o pode ser salva.
error_reason=Ocorreu um erro.\n\nClique em Detalhes para obter informa\u00e7\u00f5es adicionais.

# ElementTreeContentProvider Strings
elementTCProvider_methodContent=Conte\u00fado do M\u00e9todo
elementTCProvider_contentPackages=Pacotes de Conte\u00fado
elementTCProvider_standardCategories=Categorias Padr\u00e3o
elementTCProvider_disciplines=Disciplinas
elementTCProvider_domains=Dom\u00ednios
elementTCProvider_workProductTypes=Tipos de Produto de Trabalho
elementTCProvider_roleSets=Conjuntos de Fun\u00e7\u00f5es
elementTCProvider_tools=Ferramentas
elementTCProvider_customCategories=Categorias Customizadas
elementTCProvider_processes=Processos
elementTCProvider_capabilityPatterns=Padr\u00f5es de Recurso
elementTCProvider_deliveryProcesses=Processos de Entrega

