¿Cómo agregar punto y coma después de la llamada al método cuando está dentro de la lista de parámetros en IntelliJ IDEA?


137

Finalmente estoy haciendo el viaje de regreso a IntelliJ a través de Eclipse. Actualmente mi Eclipse está configurado de modo que si actualmente tengo una declaración como esta (donde ^ denota dónde se encuentra actualmente mi cursor):

foo.bar("hello"^)

y presioné la tecla de punto y coma (;), automáticamente colocará el punto y coma al final de la declaración:

foo.bar("hello");

Actualmente IntelliJ hace esto:

foo.bar("hello";)

Lo que significa que tendré que escribir explícitamente el corchete de cierre antes de escribir el punto y coma.

Obviamente, no es un gran problema, pero me he encontrado poniendo el punto y coma en el lugar equivocado varias veces hoy mientras hago la transición de regreso a IntelliJ y pensé que podría ser más eficiente (tanto para mis dedos como para mi cerebro) no tener para escribir el corchete de cierre.


3
Gracias, por cierto, no hay tal cosa como "llaves" son solo "llaves".
Gordon Dickens el

2
He agregado el acceso directo de netbeans (ctrl +;) a IntelliJ para esta funcionalidad. Puede agregarlo en Archivo -> Configuración -> Mapa de teclas -> buscar "completar la declaración actual" -> agregar atajo de teclado.
Stefanos Kalantzis

1
no solo el punto y coma, sino también el corsé. Y si QUIERO poner el semicon en la posición del cursor, pero eclipsarlo de manera inteligente al final, simplemente presione la tecla de retroceso y volverá a donde debería estar. Por eso sigo usando eclipse en lugar de como.
jiashie

Respuestas:


221

Para usuarios de Windows o Linux , Ctrl+ Shift+ Enter.

Para usuarios de macOS / OS X , ⌘ Command+ ⇧ Shift+ Enter.

Eso termina la declaración que estás escribiendo actualmente. Pruébelo en algunas situaciones diferentes, como en declaraciones if, para bucles, etc., y verá que completará la línea y le abrirá algunas llaves si es necesario.


9
No es tan agradable como en Eclipse, ya que requiere pensar en el contexto y son tres claves en lugar de una. Pero mejor que Fin; Punto y coma, así que gracias!
robinst

28
No me gusta Eclipse gana en este caso, es una molestia dolorosa. Ni siquiera es un atajo en Eclipse, solo mueve el punto y coma al final porque es obvio que debería (cuando la configuración está activada). Usar cualquier tipo de tecla de acceso directo para hacer esto es estúpido.
Manius

44
Estoy totalmente de acuerdo en que Eclipse es mucho mejor en este caso. También hay muchos otros, lo que me lleva a llamar ocasionalmente al IDE de JetBrains: UnIntelliJ
Stan Kurdziel

1
No creo que el OP quiera un atajo de teclado para hacer lo que debe hacer una tecla (el punto y coma). Especialmente si tienes que mover tu mano y presionar tres veces más teclas en el proceso.
SMBiggs

1
Lo peor en IntelliJ, especialmente para aquellos que vienen de Eclipse, es adaptarse a los atajos. Creo que han dedicado mucho tiempo a descubrir cómo hacerlos lo menos intuitivos posible.
Jordan Silva

37

Puede agregar un mapa de teclas propio. Agregué Ctrl+ ;a mis mapas de teclas para la acción "Completar declaración actual". Esto me ahorró un golpe de tecla adicional y lo hizo un poco más intuitivo.

  1. Vaya a Configuración> Mapa de teclas
  2. En el cuadro de búsqueda, ingrese "Completar declaración actual".
  3. Haga clic derecho en la entrada y seleccione "Agregar atajo de teclado"
  4. Con el campo First Stroke resaltado, ingrese su combinación de teclas. Por ejemplo, Ctrl+ ;, que se mostrará comoCtrl+Semicolon
  5. Haga clic en OK, y OKpara guardar y salir.

Puede optar por eliminar o mantener la asignación existente. Debería verse así cuando hayas terminado:

ingrese la descripción de la imagen aquí


1
Usé el símbolo de punto y coma ;como acceso directo. Parece funcionar bien.
SMBiggs

1

si quieres siempre tenlo solo haz esto

ingrese la descripción de la imagen aquí


1
Wow, eso funciona! Me pregunto: ¿es un nuevo escenario o ha estado allí durante los últimos 10 años?
LimaNightHawk
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.