https://github.com/atsyplenkov/formalist

Positron extension to make R function calls explicit and fix lints on demand

https://github.com/atsyplenkov/formalist

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.2%) to scientific vocabulary

Keywords

positron rstats vscode-extension
Last synced: 9 months ago · JSON representation

Repository

Positron extension to make R function calls explicit and fix lints on demand

Basic Info
Statistics
  • Stars: 11
  • Watchers: 1
  • Forks: 0
  • Open Issues: 5
  • Releases: 5
Topics
positron rstats vscode-extension
Created over 1 year ago · Last pushed 11 months ago
Metadata Files
Readme Changelog Funding License

README.md

Open VSX Downloads Deploy Extension GitHub License Project Status: WIP – Initial development is in progress, but there has not yet been a stable, usable release suitable for the public. <!-- badges: end -->

Formalist — Positron Extension

[!IMPORTANT] The extension is designed to work ONLY in Positron IDE starting from version 2025.01.0, as it heavily depends on the Positron API.

Features

[!NOTE] All features work on selected text. If no text is selected, you'll receive a notification to make a selection first.

Make R Function Calls Explicit

Formalist can make R function calls explicit, instead of implicit ones, using the {pedant} R package. In other words, it checks the currently attached packages, i.e., the ones already loaded using library(), and transforms R function calls like select(mtcars, mpg, cyl) into dplyr::select(mtcars, mpg, cyl).

Fix Lints

Another key feature of Formalist is its ability to detect and correct lints in your R code. The linting process is performed locally using the {flir} package, which must be installed in your R environment.

[!TIP] The {flir} R package installs in your current environment, so, you can setup your custom lint rules by running flir::setup_flir() in your R console (read more here).

Installation

The extension is published on the Open VSX Registry: just click Install there or manually install it with:

1) Start the Positron.

2) Inside Positron, go to the extensions view either by executing the View: Show Extensions command (click View -> Command Palette...) or by clicking on the extension icon on the left side of the Positron window.

3) In the extensions view, simply search for the term Formalist in the marketplace search box, then select the extension named Formalist and click the install button.

Alternatively, you can install the latest version from the Releases page. Download the latest .vsix file and install it as described here.

Dependencies

Formalist depends on two R packages {pedant} and {flir}. If your current environment is lacking either of them, you will be prompted to install them.

Questions and Feature Requests

There's a lot going on with the development of new features in Formalist. If you have any questions or something is not working, feel free to open an issue or start a conversation on Mastodon.

Contributions

Contributions are welcome! If you'd like to contribute, please, fork, submit a PR and I'll merge it.

Owner

  • Name: Anatolii Tsyplenkov
  • Login: atsyplenkov
  • Kind: user
  • Location: New Zealand
  • Company: @manaakiwhenua

Scientist-Geomorphologist and Research Software Engineer, fond of all things geospatial

GitHub Events

Total
  • Create event: 5
  • Issues event: 10
  • Release event: 5
  • Watch event: 13
  • Issue comment event: 6
  • Push event: 14
  • Public event: 1
Last Year
  • Create event: 5
  • Issues event: 10
  • Release event: 5
  • Watch event: 13
  • Issue comment event: 6
  • Push event: 14
  • Public event: 1

Committers

Last synced: 10 months ago

All Time
  • Total Commits: 18
  • Total Committers: 1
  • Avg Commits per committer: 18.0
  • Development Distribution Score (DDS): 0.0
Past Year
  • Commits: 18
  • Committers: 1
  • Avg Commits per committer: 18.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
atsyplenkov a****v@f****m 18
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 9 months ago

All Time
  • Total issues: 7
  • Total pull requests: 0
  • Average time to close issues: about 2 months
  • Average time to close pull requests: N/A
  • Total issue authors: 2
  • Total pull request authors: 0
  • Average comments per issue: 0.14
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 7
  • Pull requests: 0
  • Average time to close issues: about 2 months
  • Average time to close pull requests: N/A
  • Issue authors: 2
  • Pull request authors: 0
  • Average comments per issue: 0.14
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • atsyplenkov (6)
  • e-kotov (1)
Pull Request Authors
Top Labels
Issue Labels
bug (1)
Pull Request Labels

Dependencies

.github/workflows/publish-extensions.yml actions
  • HaaLeo/publish-vscode-extension v1 composite
  • actions/checkout v4 composite
  • actions/setup-node v4 composite
package.json npm
  • @types/mocha ^10.0.7 development
  • @types/node 20.x development
  • @types/vscode ^1.93.0 development
  • @vscode/test-cli ^0.0.9 development
  • @vscode/test-electron ^2.4.0 development
  • eslint ^8.57.0 development
  • typescript ^5.4.5 development
yarn.lock npm
  • 229 dependencies