Comment afficher le type d'une expression scala dans IntelliJ


125

Le plugin Eclipse scala a une fonctionnalité intéressante qui vous montre le type d'une variable lorsque vous passez la souris dessus. Comment voir les mêmes informations avec le plugin IntelliJ?

Réponses:


128

Sélectionnez l'expression et tapez Alt+ =.


Si vous souhaitez modifier le raccourci, accédez à Preferences > Keymapet entrez "Type Info" dans le champ de recherche.

Dans les anciennes versions, c'est Shift+ Ctrl+ Alt+ T.


2
Je pense que c'est ce que je recherche, Ctrl + Q ne fonctionne que pour les variables pas toutes les expressions.
Jon Freedman

Ce n'est pas exactement ce que vous recherchez; c'est pénible car vous devez repositionner votre curseur, utiliser une combinaison de 4 touches, puis repositionner votre curseur là où il était. Mais c'est le meilleur qui existe, et le seul moyen d'obtenir le type inféré d'une déclaration, plutôt qu'un usage.
Luigi Plinge du

67
ctrl-shift-P sur osx dans Intellij Leda
Dustin Getz

2
wow, les raccourcis clavier ne cessent de changer. Il est étrange que je trouve IntelliJ souvent jeter des info-bulles sur mon visage inutilement, mais celui-ci - qui compte réellement, est difficile à atteindre. Tant pis.
akauppi

J'ai dû revenir ici pour le retrouver. IntelliJ pourrait vraiment faire mieux en rendant cela plus facile à atteindre / à mémoriser ..
akauppi

45

Sur OS X, c'est ctrl+ shift+ Ppour moi. Cela montre le type exact avec les génériques résolus.



32

Vous pouvez appuyer sur Ctrl+ Qsur une variable ou une signature de méthode pour afficher son type.

Il existe également une astuce intéressante pour afficher le type de n'importe quelle expression: sélectionnez l'expression et tapez Ctrl+ Alt+ V. Cela affichera la boîte de dialogue Extraire la variable avec le type d'expression à extraire pour plus de commodité.


On dirait que Ctrl + Q résout les types paramétrés dans la dernière version du plugin
Jon Freedman

22

Vous pouvez configurer IntelliJ comme une éclipse. Aller à:

File -> Settings -> Languages & Frameworks -> Scala

puis cochez "Afficher les informations de type sur le survol de la souris après, ms" et définissez votre délai d'expiration préféré.

Cela fonctionne bien sauf que les autres messages semblent avoir la préférence. Le plus courant étant "La déclaration n'est jamais utilisée", ce qui est assez fréquent si vous venez d'écrire un valet que vous voulez voir son type. Ensuite, vous devez recourir à ( Alt+ =) pour PC ou ( Ctrl+ Shift+ P) pourMac.


1
En fait, cela devrait être la bonne réponse puisque @JonFreedman veut avoir le même comportement que dans Eclipse. Les autres réponses donnent juste des raccourcis pour obtenir la même chose, ce qui prend plus de temps que de simplement déplacer la souris sur la variable
Ignacio Alorre

19

Dans IntelliJ 2016 et Mac OS X 10.5+versions ultérieures avec des combinaisons de touches, la liaison de touches est Ctrl+ + P.

Ancienne réponse:

Sous MacOS avec Mac OS X 10.5+raccourcis clavier, il est censé être + =, mais cela ne semble pas du tout fonctionner (pour moi).

Dans les paramètres ( Preferences > Keymapet entrez "Type Info" dans le champ de recherche), j'ai ajouté le raccourci Ctrl+ + Tà l'action. Ce raccourci fonctionne très bien.


2
Un dernier conseil: pour sélectionner facilement une expression, appuyez sur ⎇ ↑ ou ⎇ ↓ pour agrandir ou réduire votre sélection.
Erik van Oosten

1
+1 OSX 10.7.4, intellij CE 11.1. cmd- = était lié mais n'a pas fonctionné, la reliure à autre chose a fonctionné.
Dustin Getz

1
IntelliJ 14, OS X Yosemite: - type d' CTRL + Shift + Pévaluation d' expression: - type de valeur unique (fournit plus de détails):CTRL + J
Raul

3

Maintenez la touche Commande enfoncée pendant que vous passez la souris. Remarque: j'ai testé cela sur Mac OS X avec des raccourcis clavier standard. Différents systèmes d'exploitation ou combinaisons de touches non standard peuvent bien sûr être différents, mais la fonctionnalité est certainement là.


1
J'obtiens ce qui ressemble au scaladoc de la classe sous-jacente lorsque je maintiens shift et mouseover, mais cela ne montre pas les informations de type complètes, par exemple, les informations de val test = Seq(1,2)type pour Seq [+ A] et non Seq [Int]
Jon Freedman

1

Il y a de bons conseils rassemblés ici, mais comme les mappages varient selon les liaisons du clavier, voici un résumé des Mac OS X 10.5+liaisons.

  • ctrl + hover: affiche le type de l'expression

  • alt + hover: cliquer sur l'expression inspecte sa valeur (très pratique!)

  • + hover fonctionne comme ctrl+ hover, mais permet également de cliquer sur le lien pour accéder à d'autres références de l'expression (ctrl + clic ne le fait évidemment pas car il est considéré comme un clic droit sous OS X).

Remarque: les Mac OS X 10.5+liaisons ne sont toujours pas la valeur par défaut dans IntelliJ 13.1, mais elles devraient vraiment l'être. Ils ont une sensation OS X plus native que les anciennes Mac OS Xliaisons. Vous pouvez les activer via Preferences > "keyboard"(dans le champ de recherche)>Keymap > Keymaps: Mac OS X 10.5+

Le vrai problème d'utilisation avec ceux-ci (à partir d'IntelliJ 13.1) est qu'il faut maintenir la touche, puis déplacer le curseur. Cela devrait idéalement aussi fonctionner lorsque vous avez déjà le curseur sur l'expression, puis commencez à maintenir ctrl / alt / cmd enfoncé. Je leur demanderai pour cela.

ps. Je sais que c'est OS X, officiellement, pas Mac OS X. IntelliJ IDEA utilise toujours l'ancien nom au moins pour les keycaps.


1

Pour OS X, utilisez ctrl+ Jsur une variable, une fonction ou une signature pour obtenir la définition, le type et les paramètres complets. Utilisez ctrl+ shift+ Ppour le type évalué (cela fonctionne également sur le bloc de code ou l'expression en surbrillance).


En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.