2012-05-30 20 views
34

RStudio có hỗ trợ việc tạo mẫu roxygen tự động không?RStudio có thể tự động tạo mẫu roxygen cho một chức năng không?

Trong Emacs-ESS, C-x C-o sẽ tạo mẫu roxygen cho hàm. Ví dụ, nó sẽ Automagically chuyển đổi này:

foo <- function(x,y) x+y 

vào đây:

##' .. content for \description{} (no empty lines) .. 
##' 
##' .. content for \details{} .. 
##' @title 
##' @param x 
##' @param y 
##' @return 
##' @author David 
foo <- function(x,y) x+y 

Có chức năng tương tự tồn tại trong RStudio?

cập nhật

  • như của ESS 12.09-2, lệnh đã được thay đổi để C-c C-o C-o
  • tính năng này đã được đề xuất để Rstudio, nhưng trang hỗ trợ đã được gỡ bỏ.
+1

Để tham khảo trong tương lai: Nhà phát triển RStudio thực sự giỏi trong việc thực hiện phản hồi và đề xuất. Bạn luôn có thể đưa ra đề xuất và nêu ý kiến ​​của mình về các tính năng bạn muốn xem tại [trang hỗ trợ RStudio] (http://support.rstudio.org/) – Dason

+0

[Something] (http://chat.stackoverflow.com/ bảng điểm/tin nhắn/5009687 # 5009687) cho tôi biết điều này sẽ sớm xảy ra. –

+1

Trong trường hợp của tôi, sử dụng ESS 12.04-4, đó là 'C-c C-o C-o'. Nó cũng có sẵn từ thanh menu EMACS thông qua 'ESS' ->' Roxygen' -> 'Cập nhật/Tạo mẫu'. – dardisco

Trả lời

23

(Chuyển đổi @Crops bình luận vào một câu trả lời đầy đủ)

Trong RStudio v0.99 có một tùy chọn mới dưới menu "Mã" cho .R file: "Chèn Roxygen Skeleton". Có một hình ảnh của nó trong RStudio's blog post about v0.99 preview.

Roxygen skeleton menu image from RStudio

9

Sự im lặng theo sau câu hỏi của bạn sẽ cho bạn biết điều gì đó ... Câu trả lời, hiện tại là KHÔNG. Tôi biết một số người sử dụng EMACS vì lý do chính xác này, và sẽ không xem xét chuyển sang RStudio cho đến khi có hỗ trợ roxygen đầy đủ. Điều đó nói rằng, đã có một số cuộc thảo luận về điều này giữa người dùng và các nhà sản xuất của RStudio. Xem xét tất cả những điều thú vị đã được thêm vào RStudio gần đây, tôi sẽ không ngạc nhiên khi thấy nó xảy ra. Trong thực tế, tôi nghĩ rằng nó là khá có khả năng nó sẽ xảy ra. Nhưng đừng giữ hơi thở của bạn cho nó, nó có thể là một chờ đợi lâu ...

+0

có thể đáng để xóa câu trả lời này ngay bây giờ? (Hết ngày ...) –

+0

@BenBolker Tôi nghĩ đó là dấu thời gian lịch sử tốt đẹp :) –

1

Giải pháp của tôi là sử dụng thiết bị mở rộng văn bản (PhraseExpress trong trường hợp của tôi) để thực hiện việc này.

2

Hoặc bạn có thể sử dụng R gói RoxygenReady để tạo bộ xương Roxygen/Roxygen mẫu.