আমি আমার সমস্ত স্ক্রিপ্টগুলিতে কল করি "ডেটা ম্যানেজমেন্ট" প্যাকেজে আমি ব্যক্তিগতভাবে নিম্নলিখিত কোডটি ব্যবহার করি। এটিতে রজিন ডকুমেন্টেশন এবং উদাহরণ রয়েছে। আপনি আসলে ডকুমেন্টটি কল করেন () এবং এসসিআর / এ সি কোডে অক্সিজেন চালিয়েছেন ran ডকটি তাত্ক্ষণিকভাবে / ডোজিনে রাখা হয়েছে যাতে আপনার প্যাকেজটি CRAN প্রস্তুত।
আর শেষ ব্যবহারকারীদের জন্য আর ডকুমেন্টেশন ডিজাইন করা হচ্ছে সি কোডের দিকে নজর দেওয়া উচিত নয় আমি ক্লাসিক আর ডকুমেন্টেশনে সি কোড ডকুমেন্টেশন একীকরণ করি নি তবে ফলস্বরূপ সি ডকুমেন্টেশনগুলিকে "ভিগনেট" হিসাবে অনুলিপি করা ভাল অভ্যাস হবে ।
library("testthat")
library("devtools")
ReplaceTag <- function(fileStrings,tag,newVal){
iLine <- grep(paste0("^",tag,"\\>"),fileStrings)
nLines <- length(iLine)
if(nLines == 0){
line <- paste0(tag,"\t= ",newVal)
iLine <- length(fileStrings)+1
}else if (nLines > 0){
line <- gsub("=.*",paste0("= ",newVal),fileStrings[iLine])
if(nLines >1){
warning(paste0("File has",nLines,"for key",tag,"check it up manually"))
}
}
fileStrings[iLine] <- line
return(fileStrings)
}
DoxInit <- function(rootFolder="."){
doxyFileName <- "Doxyfile"
initFolder <- getwd()
if(rootFolder != "."){
setwd(rootFolder)
}
rootFileYes <- length(grep("DESCRIPTION",dir()))>0
doxDir <- "inst/doxygen"
if(!file.exists(doxDir)){
dir.create(doxDir,recursive=TRUE)
}
setwd(doxDir)
system(paste0("doxygen -g ",doxyFileName))
doxyfile <- readLines("Doxyfile")
doxyfile <- ReplaceTag(doxyfile,"EXTRACT_ALL","YES")
doxyfile <- ReplaceTag(doxyfile,"INPUT","src/")
doxyfile <- ReplaceTag(doxyfile,"OUTPUT_DIRECTORY","inst/doxygen/")
cat(doxyfile,file=doxyFileName,sep="\n")
setwd(initFolder)
return(NULL)
}
document <- function(doxygen=file.exists("src")){
if(doxygen){
doxyFileName<-"inst/doxygen/Doxyfile"
if(!file.exists(doxyFileName)){
DoxInit()
}
system(paste("doxygen",doxyFileName))
}
devtools::document()
}