2009-09-25 14 views
7

Trong doxygen, tiêu chuẩn "/// \ todo stuff" được sử dụng để gắn thẻ một mục cần làm. Tôi làm hầu hết các mã của tôi trong MSVC vì vậy nó tiện dụng để có thể xem TODO trong Danh sách nhiệm vụ. MSVC sử dụng "// TODO stuff" cho các thẻ của họ. Có cách nào để làm cho chúng hoạt động cùng nhau không? Tôi tìm thấy ngăn thuộc tính cho danh sách Tác vụ và thử thêm "\ todo" vào danh sách, nhưng nó không giống ký tự "\". Tôi có thể làm hai cái này hoạt động cùng nhau không?Nhận thẻ Doxygen và MSVC TODO để hoạt động cùng nhau

Chỉnh sửa: Tôi đặc biệt quan tâm để tìm hiểu làm thế nào để làm điều này trong Visual Studio 10.

Trả lời

8

IIRC Doxygen hỗ trợ javadoc kiểu lệnh cấu trúc, nghĩa là bạn sẽ có thể use @todo and \todo interchangeably, trong tình huống đó MSVC sẽ chấp nhận @todo như một dấu nhiệm vụ: lệnh

cấu (giống như tất cả lệnh khác) bắt đầu với một dấu chéo ngược(), hoặc tại-dấu (@) nếu bạn thích 0.123.Kiểu JavaDoc, theo sau là một tên lệnh và một hoặc nhiều tham số.

Một tùy chọn khác là sử dụngFILE_VERSION_FILTER như một Preprocessor Doxygen, cung cấp một kịch bản tùy chỉnh (hay chương trình), ví dụ nếu bạn đã cài đặt Cygwin trong C:\cygwin thì sau đây sẽ làm việc độc đáo:

FILE_VERSION_FILTER = "C:\cygwin\bin\sed -e 's:// *TODO:@todo:g'" 
+0

Thật không may, MSVC 2010 nói rằng các ký tự hợp lệ duy nhất cho mã thông báo danh sách công việc là các ký tự chữ và số, _, $ và dấu ngoặc đơn. Một bước tiền xử lý cho doxygen dường như là lựa chọn duy nhất ... – Dima

1

Tôi không biết về cách đối xử với VS những "TODO" s. Nhưng tôi nghĩ rằng có một cách dễ dàng nếu nó cũng nhận ra \ TODO như một mục để làm. Trong trường hợp này, bạn có thể muốn xem qua số doxygen documentation for \xref. Điều này cho phép bạn tạo thẻ/lệnh và liên kết đến một phần đặc biệt và một trang liên quan. \ Todo hoặc @todo được định nghĩa là

\xrefitem todo "Todo" "Todo List" 

gì bạn có thể làm bây giờ để tạo một phong tục "\ TODO" hoặc "@TODO" lệnh là đi đến tập tin cấu hình của bạn hoặc doxywizard và thêm dòng

\xrefitem TODO "Todo" "Todo List" 

cho nó. Có lẽ điều đó sẽ giúp ích.