Làm cách nào để kích hoạt mã định dạng tự động cho Intellij IDEA?


129

Có thể trong Intellij IDEA sau khi gõ ';' hoặc nhấn 'Enter' đã xảy ra định dạng của chuỗi này?

Chẳng hạn, để:

a+b=10;

sau:

a + b = 10;

Hoặc chỉ có thể tùy chọn: Mã> Mã định dạng lại ... ?

Cảm ơn bạn!


1
Alt+ c+r
Gayan Weerakutti

nếu bạn muốn tính năng này được bao gồm trong chính IntelliJ (không phải trong bất kỳ plugin nào), vui lòng bỏ phiếu tại đây: youtrack.jetbrains.net/su/IDEABKL-5806
Dòng

Câu trả lời:


180

Các phím tắt định dạng trong Intellij IDEA là:

  • Đối với Windows: Ctrl+ Alt+L
  • Đối với Ubuntu: Ctrl+ Alt+ Windows+ L
  • Đối với máy Mac: ⌥ (Option)+ ⌘ (Command)+L

88
Có, nhưng tôi muốn điều này tự động xảy ra mà không cần nhấn phím nóng.
0x131313

Vĩ mô? ctrl + alt + l trở thành ctrl + alt + l + enter
Jeff

17
Câu hỏi nêu rõ "định dạng tự động" sau mỗi dòng được viết.
xe đẩy

2
@axelrod có cách để thực hiện việc này một cách tự động khi lưu hoặc biên dịch mã
Kasun Siyambalapitiya

3
Điều đó không trả lời câu hỏi. Câu trả lời của Nafiur Rahman Khadem hiện.
Dakatine

22

Tôi đã tìm thấy hai cách để làm điều này:

  1. Đi đến Settings> Keymap.Trong phần bên phải, Editor Actions> complete current statement.nhấp vào Nhấp vào nó và chọn thêm phím tắt. Nhấn ; và chọn ok.

  2. Sử dụng macro. Đi đến

Edit> Macros> Start Macro Recording.

Bây giờ hãy nhấn dấu chấm phẩy và phím tắt để định dạng lại mã (bạn có thể tìm thấy phím tắt từ các câu trả lời khác hoặc từ cài đặt> sơ đồ bàn phím).

Sau khi thực hiện định dạng lại

Edit> Macros> Stop Macro Recording

Lưu macro với một tên (định dạng tự động hoặc cái gì khác). Sau đó đi đến

Settings> Keymap> Macros> auto format (tên vĩ mô).

Bấm vào đó và chọn thêm phím tắt, sau đó nhấn dấu chấm phẩy và bấm ok. Bây giờ bất cứ khi nào bạn sẽ nhấn dấu chấm phẩy, nó sẽ viết dấu chấm phẩy và thực hiện định dạng tự động.


Đẹp. Tôi cũng đã thêm Shift+[bằng cách sử dụng phương thức đầu tiên để định dạng dòng khi viết ifcâu lệnh và phương thức, v.v. Vì một số lý do, Enterdường như không hoạt động.
Matt

1
Điều này rất hữu ích, thật kỳ lạ khi Intellij hoàn toàn không có tùy chọn định dạng lại tự động
Teedeez


7

Mặc định là Ctrl+ Alt+ L Có một hộp thoại ánh xạ khóa nơi bạn có thể định cấu hình / ghi đè tất cả các phím tắt.

Điều hướng tệp-> Cài đặt-> KeyMap

nhập mô tả hình ảnh ở đây


7

Tệp-> Cài đặt -> Sơ đồ bàn phím-> Hoàn thành Báo cáo hiện tại

Tôi đã thêm ;chìa khóa vào đó. Khi gõ ';' ở cuối dòng, nó là định dạng tự động.

CẬP NHẬT

Tôi nhận ra rằng điều này sẽ gây ra một số vấn đề trong một số tình huống. Sử dụng Ctrl+ Shift+ Enterthay thế. Phím này có thể được sử dụng ở bất kỳ vị trí nào của con trỏ trong một dòng. Nó sẽ thêm ;vào cuối dòng. Ngoài ra phím tắt này có một số tính năng hữu ích khác.

giống:

public void someMethod()

sau khi tắt:

public void someMethod() {
    // The cursor is here
}

vì vậy định dạng khi chèn ;là không cần thiết.


Thông minh, nhưng không dành cho Kotlin
jobbert

6

Điều này cũng có thể đạt được bằng Ctrl + WindowsBtn + Alt + L. Điều này sẽ rất quan trọng đối với một số người, vì trong một số Máy ảo, Ctrl + Alt + L có thể đăng xuất bạn.



3

Không có giải pháp nào trong Intellij thanh lịch (hoặc hữu ích) như trong Eclipse. Những gì chúng ta cần là yêu cầu tính năng cho intellij để chúng ta có thể thêm một hook (những hành động cần thực hiện) khi IDE tự động lưu.

Trong Eclipse, chúng ta có thể thêm các hành động "lưu sau", chẳng hạn như tổ chức nhập và định dạng lớp. Có, bạn phải thực hiện "lưu" hoặc ctrl-s nhưng hook rất thuận tiện.


1
Có liên hệ nào với intellij về htis cho đến nay? Nếu vậy xin vui lòng gửi liên kết ở đây :)
Ruthi Ruth

@RuthiRuth đã tìm thấy nó;) youtrack.jetbrains.net/su/IDEABKL-5806
Dòng

3

nếu bạn muốn, bạn có thể sử dụng plugin saveActions . Bạn có thể định dạng lại tệp, tối ưu hóa nhập và nhiều thứ khác, nó thực sự có thể tùy chỉnh và dễ cài đặt.


2

Trong Mac, nó là Alt+ Command+ L(giả sử bạn chưa thay đổi bất kỳ phím bổ trợ hoặc phím tắt Intellij nào từ trạng thái mặc định)



1

Vâng, điều đó là không thể, nhưng trong intellij 13, làm thế nào về việc thêm một cử chỉ chuột, một cái gì đó giống như nhấp chuột trái để định dạng lại mã? Hoặc nếu bạn không sử dụng chuột nhiều thì hãy thêm một phím nóng bàn phím rất đơn giản mà bạn sử dụng mọi lúc (có thể là "nhập"? Không chắc chắn liệu intellij có hài lòng với điều đó không?


2
Tại sao các downvote? Tôi đang nói rằng những gì bạn muốn là không thể, và cố gắng cung cấp những thứ gần nhất có thể ..
sakis kaliakoudas

Downvote rất dễ giải thích: Nhấp chuột. Một lợi thế lớn của IntelliJ là các phím tắt và bạn không cần chuột thường xuyên. Nếu bạn viết mã nhiều, bạn không muốn sử dụng chuột nhiều, vì bạn nhanh hơn với bàn phím. Có một phím tắt để hình thành rồi.
Phil

1

Cách tôi thực hiện cải cách tự động như trong Microsoft Visual Studio (Nó không hoạt động hoàn hảo):

1. Edit > Macros > Start Macro Recording
2. Press continuously: Enter + Ctrl+Alt+I
3. Edit > Macros > Stop Macro Recording (Name it for example ReformatingByEnter)

Bây giờ chúng ta cần thực hiện các hành động tương tự nhưng đối với Ctrl + Alt + L +;

4. Edit > Macros > Start Macro Recording
5. Press continuously: ; + Ctrl+Alt+I
6. Edit > Macros > Stop Macro Recording (Name it for example ReformatingBy;)

Bây giờ chúng ta cần gán HotKey cho các macro này:

7. File > Settings > Keymap > press on a gear button > Duplicate...
8. Unfold a macro button (beneath) and by right clicking on two 
ours macros assign HotKeys for them: "Enter" and ";" correspondingly.

Có thể là một hạn chế của bàn phím của tôi, nhưng tôi dường như chỉ có thể ghi 3 phím cùng một lúc.
Matt

1

Tôi biết câu hỏi này khá cũ nhưng thực sự có một plugin Lưu hành động cho IntelliJ có thể được cấu hình để định dạng mã tự động.


1

Bạn có thể làm điều này với plugin Lưu hành động Tham khảo Bài viết này về cách định cấu hình plugin.

Plugin Save Action Hỗ trợ cấu hình, Eclipse như, lưu hành động, bao gồm "tối ưu hóa nhập", "mã định dạng lại", "sắp xếp lại mã", "biên dịch tệp" và một số sửa chữa nhanh cho Java như "thêm / loại bỏ" vòng loại này ", v.v. Plugin thực thi các hành động được cấu hình khi tệp được đồng bộ hóa (hoặc lưu) trên đĩa.

  1. Cài đặt plugin
  2. Chuyển đến Cài đặt > Cài đặt khác > Lưu hành động
  3. Đánh dấu Kích hoạt hành động lưu khi lưu
  4. Đánh dấu tập tin định dạng lại
  5. Áp dụng> OK

nhập mô tả hình ảnh ở đây

Tôi thích các phím nóng hơn, đối với Mac,

Để định dạng mã: Ctrl+ Alt(Option)+L

thêm tôi làm ,: Ctrl+ Alt(Option)+ O , Điều này sẽ loại bỏ nhập khẩu không sử dụng và định dạng danh sách nhập khẩu là tốt.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.