2013-09-04 48 views
6

Khi tôi làm việc với một số loại tác phẩm, chẳng hạn như: tập tin Java, tập tin HTML hoặc tập tin Jasmine thử nghiệm tôi có thể tạo ra một số đoạn mã hữu ích sử dụng Code > Generate tùy chọn, ví dụ:Thêm máy phát điện mã tùy chỉnh

  • nếu tôi đang làm việc với tập tin Java Code > Generate cho phép tôi để chèn getter, setter, nhà xây dựng vv
  • nếu tôi đang làm việc với tập tin HTML Code > Generate cho phép tôi để chèn một thẻ XML
  • nếu tôi đang làm việc với Jasmine bản tập tin Code > Generate cho phép tôi để chèn một giàn giáo của một bộ thử nghiệm hoặc một trường hợp thử nghiệm singe

Tôi đã tự hỏi nếu (và làm thế nào) tôi có thể thêm 'máy phát điện' của riêng tôi. Tôi biết tôi có thể sử dụng Mẫu trực tiếp, nhưng tôi thích thực tế là Code > Generate cung cấp cho tôi danh sách nhanh tất cả các trình tạo sẵn có.

Trả lời

8

Vâng, bạn có thể làm điều đó bằng cách viết một plugin IntelliJ và mở rộng lớp này:

com.intellij.openapi.actionSystem.Action 

Nếu bạn tạo một dự án Plugin IntelliJ (chỉ cần google intellij plugin development để biết thông tin về làm thế nào để bắt đầu), nhấn Alt- nhập vào một nơi nào đó trong cây nguồn dự án của bạn và chọn Action, bạn sẽ nhận được một hộp thoại cho phép bạn định cấu hình nơi hành động của bạn sẽ xuất hiện.

Bạn muốn đặt nó liên quan đến một hành động khác đã tồn tại, ví dụ ngay bên dưới nó. Trong trường hợp của bạn - hãy xem nhóm menu có tên GenerateGroup (Generate).

Khi hành động của bạn được xác định theo cách này trong plugin.xml của bạn, hãy tạo và chạy plugin của bạn trong hộp cát.

Bây giờ, khi hành động của bạn được kích hoạt, AnActionEvent sẽ được kích hoạt chứa tất cả thông tin cần thiết (dự án, tệp, vị trí con trỏ trong tệp, cây psi, v.v.).

Hãy thử làm việc này cho đến nay và quay lại với bất kỳ câu hỏi cụ thể nào.

Chúc may mắn!

Các vấn đề liên quan