Ir para o conteúdo

Características


Linguagens suportadas

Suporte para a linguagem C/C++ do KDevelop

As seguintes linguagens são totalmente suportadas, o que significa que têm um realce de sintaxe semântico, a navegação de código e a completação do mesmo:

  • C/C++ e ObjC (com base nas bibliotecas do Clang/LLVM
  • QML do Qt e JavaScript
  • Python ('plugin' opcional)
  • PHP ('plugin' opcional)

Para virtualmente todas as linguagens não suportadas, ainda existe algum realce de sintaxe e completação de código básico.

Sistemas de controlo de versões suportados

A funcionalidade para "Mostrar as anotações" com o SCV Git.

Os seguintes sistemas de controlo de versões estão integrados na interface gráfica:

  • Git
  • Bazaar
  • Subversion
  • CVS
  • Mercurial (hg) ('plugin' opcional)
  • Perforce (desde o 5.1)

Uma funcionalidade especialmente útil é o contorno Anotar, que mostra quem alterou uma dada linha e quando. A apresentação das diferenças introduzidas está apenas a um 'click' de distância!

Sistemas de compilação suportados

Janela de Configuração do CMake no KDevelop

São suportados os seguintes sistemas de compilação, o que significa que o KDevelop consegue obter e compilar automaticamente os alvos, assim como detectar os locais de inclusão a partir dos mesmos:

  • CMake
  • QMake
  • Makefile's personalizadas (parcialmente)
  • Sistema de compilação genérico (sem detecção automática dos locais de inclusão)

O KDevelop sabe como invocar as ferramentas de automatização das compilações, como o make e o ninja, e tem páginas de configuração e tem páginas de configuração dedicadas às mesmas.

Funcionalidades de suporte às linguagens

Para todas as linguagens suportadas, o KDevelop suporta as seguintes funcionalidades:

Elemento de navegação

O elemento de navegação que aparece quando passar o cursor do rato sobre os itens, ou quando carregar na tecla Alt com o cursor de texto sobre os mesmos. O elemento gráfico permite a navegação, i.e. por por exemplo navegar para a classe-mãe da classe que está a ver, usando o elemento de navegação para essa classe-mãe.

  • Descoberta de utilizações dos símbolos (variáveis, tipos, etc.)
  • Ir para a declaração / definição
  • Abertura Rápida, que permite procurar por qualquer função, classe ou ficheiro a nível do projecto.
  • Navegador do projecto, de classes e funções

O modo de navegação do código (carregar em Ctrl quando carrega num símbolo) torna super simples navegar por um determinado conjunto de código desconhecido.

Compreensão do código admirável

Completação de código do KDevelop

O KDevelop sempre se orgulhou do suporte no estado da arte para a linguagem C/C++. Com a adopção do Clang no 5.0, temos uma funcionalidade de processamento de código 100% correcta, o que significa que o IDE consegue verificar com previsão os erros de código, sem que sequer tenha invocado o compilador! Não estando limitado ao C/C++, todas as linguagens suportadas partilham as funcionalidades descritas abaixo.

  • Realce semântico: O realce que tem em conta a semântica da linguagem, onde por exemplo realça os nomes das classes de forma diferente das variáveis, mesmo que isto não possa ser reconhecido com base na sintaxe do código em si.
  • Realce em arco-íris: Realça cada uma das ocorrências da mesma variável com uma determinada cor, mudando com base na variável. Experimente, irá adorar isto assim que se habituar ao mesmo. É algo opcional.
  • Completação de código semântica e dependente do contexto: o KDevelop tem heurísticas sofisticadas desenhadas para lhe apresentar as sugestões mais prováveis para a posição actual do cursor. No caso do Python, PHP e JS, estas completações são geradas a partir da representação do código em 'cache' do KDevelop e estão assim disponíveis instantaneamente -- sem atrasos notórios.

'Cache' persistente em disco da base de dados do código. Dependendo do tamanho e da complexidade do seu projecto, a análise poderá demorar algum tempo da primeira vez, ficando depois tudo em 'cache' e carregado em alguns segundos, a cada arranque subsequente do IDE.

Personalizável

O KDevelop com um tema escuro

Fácil de se adaptar ao seu estilo!

  • Livre para reordenar, activar ou desactivar qualquer botão do menu
  • Áreas divididas arbitrárias
  • Disposição arbitrária das áreas de ferramentas dentro da janela principal
  • Esquema de cores completamente configurável, sendo separado por aplicação e editor.
  • Pode atribuir atalhos de teclado para praticamente todas as acções no IDE

Integração da documentação

Integração da documentação no KDevelop (aqui: QtHelp)

O KDevelop oferece uma integração transparente com uma grande variedade de fornecedores de documentação. Os sistemas suportados são:

  • Ficheiros de documentação do QtHelp (QCH)
  • Páginas de manual (as que aparecem com o 'man' na linha de comandos)
  • Páginas de ajuda do CMake

Poderá simplesmente abrir uma página de documentação, passando o cursor sobre um símbolo e depois seleccionar "Mostrar a documentação de..."

Outros detalhes

  • Arranque rápido e uma ocupação de memória tipicamente pequena.
  • Desenhado geralmente para se comportar como um editor de texto simples em muitos dos casos; por exemplo, poderá executar simplesmente 'kdevelop ficheiro.cpp' no terminal, para que ele abra o ficheiro na sessão actual.
  • Excertos de código poderosos e completamente programáveis, com campos no modelo (carregue em Tab para saltar entre os campos definidos pelo utilizador, podendo ter campos com conteúdos programados, etc); estes também poderão ser configurados para aparecer na lista de completação de código
  • Pesquisa e substituição poderosa, incluindo pelos projectos inteiros, opcionalmente com expressões regulares
  • Integração de testes unitários
  • Área de Problemas com filtros, mostrando todos os problemas (erros de sintaxe e semântica, TODO's, etc)
  • Suporte gráfico para os depuradores (C/C++ e Python, PHP através de um 'plugin' extra)
  • Suporte para a formatação de código (diversos predefinidos para o C/C++ e Python, assim como alguns programas de formatação personalizados)
  • Modelos de ficheiros e projectos (poderá ainda descarregar e instalar modelos extra)
  • Consegue ver praticamente qualquer ficheiro como uma página / documento dentro do IDE, graças aos KParts (p.ex., um PDF)
  • Área da consola
  • Suporte para programas externos
  • Modo de edição compatível com o Vim