I would like to view this page in
O MPS 2024.3 introduz melhorias na interface de usuário, mecanismo interno reformulado em muitos componentes e TextGen com saída binária. Você também encontrará um melhor suporte a ícones e inúmeras atualizações na plataforma.
Confira abaixo a lista detalhada de melhorias.
Agora a janela de ferramentas ProjectView contém três pastas-raízes, para manter a estrutura do projeto mais organizada:
A pasta Checkpoints and Transient Models é sempre mostrada abaixo da pasta Modules Pool e está sempre vazia, a menos que esteja disponível algum modelo transiente ou de checkpoint. Tais modelos são mostrados nesta pasta, em vez de no nível mais alto, como era antes.
Como efeito colateral, a nova pasta Checkpoints and Transient Models permite que a janela de ferramentas ProjectView se lembre das subárvores expandidas e comprimidas da estrutura do projeto depois da reinicialização do MPS.
Agora o MPS respeita as opções a seguir para habilitar e desabilitar a aba de pré-visualização oferecida pela IntelliJ Platform. Estas opções garantem que o editor do MPS tenha o mesmo comportamento que os editores das outras ferramentas da JetBrains:
Foi adicionada a nova opção reports dir à seção de opções de test configuration
em scripts de build. O usuário pode especificar o diretório de saída onde os relatórios gerados de testes do JUnit deverão ser armazenados.
Foi adicionada a nova seção applicable às definições Quick-Fix, para permitir que você controle a aplicabilidade de correções rápidas. O valor-padrão <always>
garante aplicabilidade irrestrita.
Durante a geração, os ícones e imagens que usam caminhos relativos ao módulo não são mais copiados para junto dos locais onde serão usados individualmente. Em vez disso, eles são copiados uma só vez para o módulo de distribuição, na forma de arquivos de imagem, e ficam disponíveis para uso a partir deste local único. Isso traz dois benefícios imediatos: evita a duplicação de arquivos de imagem, economizando espaço em disco, e permite acessar as imagens a partir tanto do módulo de distribuição quanto do módulo de origem.
Além dos conceitos TextIcon e FileIcon, que já existiam, agora também está disponível o novo conceito ConstantFieldIcon. Ele permite que seja especificado um ícone através de uma referência a uma declaração concreta de campo estático contendo uma instância de javax.swing.Icon
.
Inspirados pela necessidade de um melhor tratamento de arquivos de ícones, adicionamos um novo mecanismo para produzir saída binária, em vez de em texto, durante o processo de geração de texto. A nova API consiste de uma operação write
que manipula os dados diretamente como instâncias de byte[]
.
Todas as janelas de ferramentas, como Inspector, HierarchyView e Usages, foram reformuladas para não seguirem mais o mecanismo de componentes de projeto da IntelliJ Platform (ProjectComponent), já obsoleto há muito tempo. As mudanças na API foram mínimas, mas no caso de algumas janelas de ferramentas, mudou a forma como elas são obtidas a partir do código:
Project.getComponent()
não retorna mais nenhuma das janelas de ferramentas. com.intellij.openapi.project.Project.tool <ToolConcept>
. getInstance()
: UsagesViewTool.getInstance()
InspectorTool.getInstance()
EditorContext.inspectorTool()
. Além das janelas de ferramentas, a maior parte da funcionalidade essencial do MPS foi reformulada para não usar mais o ApplicationComponent e o ProjectComponent do IntelliJ IDEA.
Anteriormente, o MPS dependia fortemente dos recursos da IntelliJ Platform para compor o aplicativo completo. Agora a maioria dos componentes legados foi refatorada para usar APIs atuais do MPS ou do IntelliJ IDEA (tais como os pontos de extensão e serviços de aplicativo e projeto do IntelliJ IDEA, os CoreComponents e extensões do MPS, etc.). Ainda restaram alguns poucos componentes inalterados, que a equipe do MPS planeja eliminar completamente na próxima versão.
Provavelmente, a maioria dos usuários não notará nenhuma diferença, a não ser uma inicialização mais rápida.
Consulte o Guia de Migração se o seu código usar algum mecanismo obsoleto de recuperação e por isso não conseguir localizar algum dos componentes da plataforma.
Agora o MPS usa a nova interface de usuário. A versão antiga da interface ainda pode ser habilitada instalando o plug-in Classic UI.
Como de costume, essa versão corrige alguns bugs. Você pode encontrar uma lista completa de todos os problemas que corrigimos aqui.
Estamos fazendo a transição do JetBrains Runtime 17 (JBR17) para o JetBrains Runtime 21 (JBR21). A partir do IntelliJ IDEA 2024.2, todas as atualizações do IDE virão com o JBR21, oferecendo segurança e desempenho aprimorados, bem como suporte de renderização do Wayland para Linux.
O IntelliJ IDEA agora detecta automaticamente as configurações de proxy do sistema definidas na sua máquina e as usa por padrão, facilitando a interação perfeita com recursos e serviços externos.
Redesenhamos o layout e o comportamento dos elementos da interface do usuário na caixa de diálogo Customize Main Toolbar, tornando-a mais intuitiva e organizada. Agora, ficou mais fácil pesquisar, adicionar e excluir ações na barra de ferramentas principal.
Aumentamos o limite padrão de abas no editor para 30. Isso significa que agora você pode manter mais abas abertas antes que o IDE comece a fechar aquelas usadas menos recentemente. Você pode controlar essa configuração em Settings | Editor | General | Editor Tabs.
O IntelliJ IDEA agora pode renderizar nativamente expressões matemáticas em arquivos Markdown. Ao trabalhar com Markdown, você pode usar $
para inserir expressões matemáticas inline e $$
para blocos de código com conteúdo matemático.
Demos às tags um nó dedicado no widget Version Control, facilitando sua verificação. O nó é exibido por padrão, mas, se preferir ocultá-lo, basta clicar no ícone de engrenagem e desmarcar a opção Show Tags.
Todas as configurações relacionadas à janela de ferramentas Log foram consolidadas em uma página de configurações dedicada, que você pode acessar por meio de Settings/Preferences | Version Control | Log ou através de um novo menu suspenso na barra de ferramentas da janela de ferramentas Log.
A tela Welcome agora mostra o nome do branch, o que ajuda a manter a organização ao lidar com várias versões do projeto e permite alternar facilmente entre os diretórios de trabalho.
Adicionamos novas opções do Git para simplificar a visualização dos históricos de branches. Use a opção First Parent para focar nas alterações da linha principal, ocultando commits individuais dos merges. Como alternativa, você pode filtrar totalmente os commits de merges com a opção No Merges. Ambas as opções agora estão disponíveis no ícone Graph Options da janela de ferramentas Git, facilitando o rastreamento de alterações nos seus branches.
O novo terminal agora oferece processamento de comandos aprimorado, e o alinhamento de sua interface de usuário foi refinado, proporcionando uma experiência mais suave e intuitiva. O terminal agora é mais ágil e processa os comandos mais rapidamente. A alternância de sessão agora é perfeita, com retenção consistente de estado entre as abas para garantir que seu workflow não seja interrompido. A complementação automática acessa nomes de comandos, sinalizadores e caminhos mais rapidamente, reduzindo a digitação manual. Também introduzimos opções adicionais de personalização, inclusive para estilos de comando, nomes de sessão e variáveis de ambiente, proporcionando maior controle sobre o ambiente do terminal.
Para cada lançamento principal, preparamos instruções sobre como migrar de versões mais antigas do MPS para garantir que tudo corra bem. Por favor, revise-as com cuidado.