2011-07-05 26 views

Trả lời

4

Cách dễ dàng là xác định lệnh của riêng bạn để chèn chú thích này. Thêm phần này vào tập tin emacs của bạn:

(defun insert-doc-comment() (interactive) 
    (insert "/**\n * Brief description. Long description. \n * @param \n * @return \n * @exception \n * @see \n * @author \n */")) 

Sau đó ràng buộc lệnh mới để khóa theo ý thích của bạn:

(define-key global-map [(S-f1)] 'insert-doc-comment) 

Bây giờ nhấn Shift-F1 sẽ chèn một khối bình luận như thế này:

/** 
* Brief description. Long description. 
* @param 
* @return 
* @exception 
* @see 
* @author 
*/ 
+0

Đã làm như bạn đã nói. Nhưng khi nhấn Shift + F1, nó sẽ hiển thị '; 2P'. Bạn có biết tại sao? – ajmartin

+2

Có lẽ bạn đang ở trên một thiết bị đầu cuối không nhận ra phím chức năng Shift +. Nhấn 'C-h k' và sau đó là' S-f1' để xem Emac có nhận ra các phím đó là 'S-f1' hay không. – sanityinc

+0

Có, nó không nhận ra phím Shift. Sửa đổi chìa khóa cho cái gì khác. Cảm ơn. – ajmartin

0

Bạn đang tìm kiếm M-x comment-region và bạn bè của nó cho chế độ cụ thể của bạn.

+0

Tôi đã thử nó, nhưng có vẻ như bình luận với dấu gạch chéo. Tôi cần một sự kết hợp của các dấu gạch chéo và các ngôi sao (như được hiển thị ở trên). Làm thế nào tôi có thể tùy chỉnh? – ajmartin

1

Bạn có thể tạo mẫu bằng biểu tượng emac. Mẫu là bộ xương cho cấu trúc tệp và có thể được gắn với các tệp có phần mở rộng cụ thể. Ví dụ, bạn có thể tạo một khuôn mẫu java áp dụng cho bất kỳ tệp mới nào bạn tạo với phần mở rộng .java và bạn có thể tạo một mẫu C++ áp dụng cho bất kỳ tệp nào bạn tạo bằng phần mở rộng .cpp (và tệp khác cho tệp .h Nếu cần thiết).

Điều này wiki có nhiều ví dụ hơn để giúp bạn bắt đầu với mẫu lớp C++.

-1

Bạn có thể xác định macro bàn phím để thực hiện công việc và chạy nó. Đối với trường hợp của bạn, hãy nhập vào đầu /*, sau đó thực hiện C-x ( rồi, C-n M-m * và, C-x). Làm C-x e cho đến dòng cuối cùng bạn muốn nhận xét. Khi ở dòng cuối cùng, kết thúc bằng một số /.

Tôi biết nó trông rất xấu xí, và như vậy, nhưng FWIW, nó hoạt động cho tôi. Khi tôi phải bình luận những khối lớn, tôi sử dụng cách tiếp cận này.

0
M-x customize-group RET comment 

Nhìn vào "Menu giá trị" của biến "Kiểu nhận xét".

(Sau đó, bạn có thể sử dụng cả hai "comment-dwim" hoặc "bình luận-hoặc-bỏ ghi chú vùng" để chuyển ý kiến ​​trong và ngoài khối chọn)

Bạn cũng có thể sử dụng điều này nếu bạn muốn dòng hiện tại nhận xét vào/ra nếu không có khu vực hoạt động:

(defun px-toggle-comments() 
    "If region is set, [un]comments it. Otherwise [un]comments current line." 
    (interactive) 
    (if (eq mark-active nil) 
     (progn 
       (beginning-of-line 1) 
       (set-mark (point)) 
       (forward-line) 
       (comment-dwim nil)) 
    (comment-dwim nil)) 
    (deactivate-mark)) 

tôi thường ràng buộc nó vào Md:

(global-set-key (kbd "M-d") 'px-toggle-comments) 
1

sử dụng yasnippet snipept, nếu bạn không sử dụng nó chưa, hãy thử nó.

Đặt này trong bạn đoạn/** - chế độ/

# -*- mode: snippet -*- 
# name: dock 
# key: /* 
# -- 
/* 
* $1 
*/ 
$0 

hoặc phiên bản khác:

# -*- mode: snippet -*- 
# name: docblock 
# key: /** 
# -- 
/** 
* ${1:name} - ${2:short description} 
* @${3:argv1}: $4 
* @${5:argv2}: $6 
* 
* ${7:long description} 
*/ 
$0 

tôi bị cả hai trong đoạn tôi /, bằng cách này bạn nên sao chép yasnippets-xx/snippets để một địa điểm khác như ~/.emacs.d/snippets và đặt địa chỉ này vào số .emacs:

(setq yas-snippet-dirs '("~/.emacs.d/snippets")) 

trở thành mỗi lần bạn cập nhật yasnippet, các đoạn mã-xx/đoạn mã sẽ được thay thế bằng đoạn trích của tác giả, bạn có thể add/delete/modify đoạn mã của riêng bạn theo số ~/.emacs.d/snippets cho nhu cầu của riêng bạn.

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