2012-02-23 21 views
17

MS Visual Studio có một tính năng tuyệt vời: nó tự động đề xuất các đơn vị để thêm vào trong mệnh đề using khi bạn nhập mã với các điều chỉnh vào các lớp tiêu chuẩn vắng mặt.Bất kỳ công cụ nào để đề xuất tham chiếu đơn vị tự động cho Delphi 2010?

Có công cụ nào của bên thứ ba để triển khai tính năng tương tự cho Delphi không?

Tôi rất mệt khi thêm tất cả các SysUtils, Windows, Tin nhắn v.v ... vào từng đơn vị mới.

+7

+1 Đó là một tính năng tuyệt vời trong VS thiếu một chút trong RAD Studio –

+0

+1 những gì David nói + không quá phức tạp để phân tích tất cả các đơn vị từ "đường dẫn" và lưu trữ chúng trong db sqlite do đó khi bạn nhấn CTRL + SPACE và nhập thứ gì đó không liên quan đến các đơn vị đã được bao gồm, nó sẽ hiển thị các tùy chọn như "khai báo loại | lớp | vv." hoặc "bao gồm đơn vị X" nếu nó tìm thấy những gì bạn đang nhập ... – ComputerSaysNo

+0

Khi bạn sử dụng hoàn thành mã, đơn vị sẽ được thêm khi nó chưa có ở đó. Vì vậy, nó là có thể. –

Trả lời

12

Nếu đơn vị, trong đó có các tài liệu tham khảo chưa trong danh sách sử dụng, đây là cách tôi tiết kiệm được nhiều bước thủ công:

  • nhấp chuột phải vào văn bản (lỗi insighted) nhấn mạnh
  • chọn “Tái cấu trúc | Tìm đơn vị… “.

Hộp thoại sẽ hiển thị đơn vị có sẵn chứa loại hoặc ký hiệu không xác định và nhấp chuột thêm đơn vị đã chọn vào danh sách sử dụng của tệp hiện tại.

+1

Tôi có thể thay đổi/mở rộng đường dẫn duyệt web không? – Andrew

+0

Điều này thổi lên với bộ nhớ trong XE5 Cập nhật 2 :-(Phương pháp của tôi cho các chức năng RTL: nhấn F1 trên định danh và sao chép và dán đơn vị chúng đang ở. – costa

+0

Không phải lúc nào cũng hoạt động: sẽ không tìm thấy Winapi.MMSystem cho Chức năng PlaySound. –

1

Đây không phải là công cụ để đề xuất các tham chiếu, nó chỉ làm sạch các mệnh đề đơn vị không cần thiết.

CnPack IDE Wizards là một plugin nguồn mở tuyệt vời cho Delphi.
http://www.cnpack.org/index.php?lang=en

Tôi sử dụng số Uses cleaner tính năng này rất nhiều. Có một mục menu:
CnPack ->Cải tiến dự án ->Sử dụng Unit

Tôi nghĩ rằng đây có thể hữu ích cho nhu cầu của bạn.

+0

không. nó có thể giúp quản lý các tham chiếu tồn tại, nhưng không thể gợi ý các tham chiếu. – Andrew

+1

@hubalu, nhưng câu hỏi này là về đề xuất đơn vị. Khi bạn gõ ví dụ 'ShellExecute', bạn sẽ nhận được đơn vị' ShellAPI' được đề xuất. – TLama

2

Trình trợ giúp đầu vào CNPack có thể là đơn vị sugest và tự động hoàn thành (xin lỗi vì câu trả lời khác, nhưng tôi không thể nhận xét khác).

CNPack tiếc là không tự động thêm các đơn vị từ nơi nhập mã nhưng bạn có thể:

  • Sao chép một từ từ nơi con trỏ (CNPack-> Editor enchancements-> Tabset/Nút> Clipboard operations- > Cắt/sao chép mã thông báo ...).
  • Cuối cùng tìm kiếm từ này trong tệp nguồn (grep) để xác định đơn vị.
  • Sử dụng CNPack-> Chuyển đổi Sử dụng/Bao gồm Field (Ctrl + U) và bắt đầu nhập và sử dụng CNPack-> Input Helper sugestion/autocompletion, hoặc IDE/GExperts/CNPack đơn vị sử dụng trong tương lai
  • Về nơi mã phiên bản
+0

Tôi không thể hiểu cách sử dụng Trình trợ giúp đầu vào này để đề xuất đơn vị nào cần bao gồm trong mệnh đề 'uses'. Bạn có thể giải thích kịch bản của bạn? – Andrew

2

The JCL bao gồm "Thuật sĩ sử dụng". Nó xem các lỗi biên dịch đề cập đến "Số nhận dạng không khai báo" và khi nó nhìn thấy số nhận dạng, nó sẽ tự động thêm đơn vị trong đó số nhận dạng được khai báo.

Gói JclUsesExpert.dpk chỉ khả dụng cho một số phiên bản Delphi nhất định. Tôi không biết nếu đó là bởi vì các plug-in không hoạt động trong các phiên bản sau này, hoặc nếu ai đó chỉ đơn thuần là bị bỏ quên để sao chép dự án vào thư mục các phiên bản sau này.

0

Hoặc có thể bạn có thể thử này: http://www.epocalipse.com/products.htm

Unit Expert

"Một phần mềm miễn phí Delphi add-in cho phép bạn đơn vị nhanh chóng mở và cũng có thể thêm chúng vào các điều khoản sử dụng"

Tôi chưa bao giờ thử chuyên gia này nhưng nó có triển vọng đầy hứa hẹn.

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