Title: Collaborative Editing of Rmd (or Rnw) Documents in Google Drive
Version: 1.1.1
Description: Collaborative writing and editing of R Markdown (or Sweave) documents. The local .Rmd (or .Rnw) is uploaded as a plain-text file to Google Drive. By taking advantage of the easily readable Markdown (or LaTeX) syntax and the well-known online interface offered by Google Docs, collaborators can easily contribute to the writing and editing process. After integrating all authors’ contributions, the final document can be downloaded and rendered locally.
Depends: R (≥ 3.5)
License: GPL-3
Encoding: UTF-8
Imports: cli (≥ 3.0.0), googledrive (> 1.0.1), rmarkdown
Suggests: covr, devtools, gargle, knitr, pagedown, sodium, testthat (≥ 3.0.0), vcr
Config/testthat/edition: 3
RoxygenNote: 7.1.1
VignetteBuilder: knitr
URL: https://github.com/claudiozandonella/trackdown/, https://claudiozandonella.github.io/trackdown/
BugReports: https://github.com/claudiozandonella/trackdown/issues
NeedsCompilation: no
Packaged: 2021-12-19 11:06:52 UTC; claudio
Author: Emily Kothe ORCID iD [aut], Claudio Zandonella Callegher ORCID iD [aut, cre], Filippo Gambarota ORCID iD [aut], Janosch Linkersdörfer ORCID iD [aut], Mathew Ling ORCID iD [aut]
Maintainer: Claudio Zandonella Callegher <claudiozandonella@gmail.com>
Repository: CRAN
Date/Publication: 2021-12-19 14:40:02 UTC

trackdown - R package for improving collaborative writing

Description

The trackdown package offers a simple solution for collaborative writing and editing of R Markdown (or Sweave) documents. Using trackdown, the local .Rmd (or .Rnw) file can be uploaded as a plain-text file to Google Drive. By taking advantage of the easily readable Markdown (or LaTeX) syntax and the well-known online interface offered by Google Docs, collaborators can easily contribute to the writing and editing process. After integrating all authors’ contributions, the final document can be downloaded and rendered locally.

The trackdown Workflow

During the collaborative writing/editing of an .Rmd (or .Rnw) document, it is important to employ different workflows for computer code and narrative text:

Thus, the workflow’s main idea is simple: Upload the .Rmd (or .Rnw) document to Google Drive to collaboratively write/edit the narrative text in Google Docs; download the document locally to continue working on the code while harnessing the power of Git for version control and collaboration. This iterative process of uploading to and downloading from Google Drive continues until the desired results are obtained. The workflow can be summarized as:

Collaborative code writing using Git & collaborative writing of narrative text using Google Docs

Functions

trackdown offers different functions to manage the workflow:

Special Features

trackdown offers additional features to facilitate the collaborative writing and editing of documents in Google Docs. In particular, it is possible to:

Advantages of Google Docs

Google Docs offers users a familiar, intuitive, and free web-based interface that allows multiple users to simultaneously write/edit the same document. In Google Docs it is possible to:

Moreover, Google Docs allows anyone to contribute to the writing/editing of the document. No programming experience is required, users can just focus on writing/editing the narrative text.

Note that not all collaborators have to have a Google account (although this is recommended to utilize all Google Docs features). Only the person who manages the trackdown workflow needs to have a Google account to upload files to Google Drive. Other collaborators can be invited to contribute to the document using a shared link.

Documentation and Vignettes

All the documentation is available at https://claudiozandonella.github.io/trackdown/.

To know more about the trackdown, please reference:


Downloads from Google Docs

Description

Download edited version of a file from Google Drive updating the local version with the new changes.

Use with caution as local version of the file will be overwritten!

To know more about trackdown workflow and features see trackdown-package help page.

Usage

download_file(
  file,
  gfile = NULL,
  gpath = "trackdown",
  shared_drive = NULL,
  rm_gcomments = FALSE
)

Arguments

file

character. The path of a local '.Rmd' or '.Rnw' file.

gfile

character. The name of a Google Drive file (defaults to local file name).

gpath

character. (Sub)directory in My Drive or a shared drive (optional). By default files are uploaded in the folder "trackdown". To specify another folder the full path is required (e.g., "trackdown/my_folder"). Use NULL to upload directly at the root level, although it is not recommended.

shared_drive

character. The name of a Google Drive shared drive (optional).

rm_gcomments

[experimental] logical value indicating whether or not to remove Google comments.

Value

'TRUE' if file from Google Drive was saved, 'FALSE' otherwise


Render file from Google Drive

Description

Render file from Google Drive if there have been edits

To know more about trackdown workflow and features see trackdown-package help page.

Usage

render_file(
  file,
  gfile = basename(file),
  gpath = "trackdown",
  shared_drive = NULL
)

Arguments

file

character. The path of a local '.Rmd' or '.Rnw' file.

gfile

character. The name of a Google Drive file (defaults to local file name).

gpath

character. (Sub)directory in My Drive or a shared drive (optional). By default files are uploaded in the folder "trackdown". To specify another folder the full path is required (e.g., "trackdown/my_folder"). Use NULL to upload directly at the root level, although it is not recommended.

shared_drive

character. The name of a Google Drive shared drive (optional).

Value

'TRUE' if file from Google Drive was saved and rendered, 'FALSE' otherwise


Updates file in Google Drive

Description

Replaces the content of an existing file in Google Drive with the contents of a local file. It is also possible to update (or upload if not already present) the output (pdf or html) of the file specifying the path_output argument. In case of html files, if pagedown package and Chrome are available, users can decide to upload a pdf version of the html file.

Use with caution as tracked changes in the Google Drive file will be lost!

To know more about trackdown workflow and features see trackdown-package help page.

Usage

update_file(
  file,
  gfile = NULL,
  gpath = "trackdown",
  shared_drive = NULL,
  hide_code = FALSE,
  path_output = NULL
)

Arguments

file

character. The path of a local '.Rmd' or '.Rnw' file.

gfile

character. The name of a Google Drive file (defaults to local file name).

gpath

character. (Sub)directory in My Drive or a shared drive (optional). By default files are uploaded in the folder "trackdown". To specify another folder the full path is required (e.g., "trackdown/my_folder"). Use NULL to upload directly at the root level, although it is not recommended.

shared_drive

character. The name of a Google Drive shared drive (optional).

hide_code

logical value indicating whether to remove code from the text document (chunks and header). Placeholders of type "[[chunk-<name>]]" are displayed instead.

path_output

default NULL, specify the path to the output to upload together with the other file. PDF are directly uploaded, HTML can be first converted into PDF if package pagedown and Chrome are available.

Value

a dribble of the uploaded file (and output if specified)


Upload file to Google Drive for collaborative writing and editing

Description

Uploads a local file to Google Drive as a plain text document. Will only upload the file if it doesn't already exist in the chosen location. By default files are uploaded in the folder "trackdown", if is not available on Google Drive, permission to create it is required to the user. To update an already existing file see update_file. It is also possible to upload the output (pdf or html) of the file specifying the path_output argument. In case of html files, if pagedown package and Chrome are available, users can decide to upload a pdf version of the html file.

To know more about trackdown workflow and features see trackdown-package help page.

Usage

upload_file(
  file,
  gfile = NULL,
  gpath = "trackdown",
  shared_drive = NULL,
  hide_code = FALSE,
  path_output = NULL
)

Arguments

file

character. The path of a local '.Rmd' or '.Rnw' file.

gfile

character. The name of a Google Drive file (defaults to local file name).

gpath

character. (Sub)directory in My Drive or a shared drive (optional). By default files are uploaded in the folder "trackdown". To specify another folder the full path is required (e.g., "trackdown/my_folder"). Use NULL to upload directly at the root level, although it is not recommended.

shared_drive

character. The name of a Google Drive shared drive (optional).

hide_code

logical value indicating whether to remove code from the text document (chunks and header). Placeholders of type "[[chunk-<name>]]" are displayed instead.

path_output

default NULL, specify the path to the output to upload together with the other file. PDF are directly uploaded, HTML can be first converted into PDF if package pagedown and Chrome are available.

Value

a dribble of the uploaded file (and output if specified)

mirror server hosted at Truenetwork, Russian Federation.