Search, Inspect, and Replace Text Across Files
Overview
An inspectable and composable workflow for search-and-replace in text files. Files can be listed, filtered, and searched separately, with inspectable exclusions showing what was excluded and why. Matches are represented as structured vectors that can be printed with context, summarized, and filtered. Replacements can be defined at search time or set and updated after the search. Only matches present in the vector are modified when files are written. Backup and restore helpers are provided for file workflows. Text that has already been read can also be searched and updated directly, giving users control over input, output, and encoding when needed.
This is a complete redesign of seekr.
seekr is now a much more ambitious package built around a different model of
search-and-replace. Instead of providing a small set of helpers for finding text
in files, it now introduces a full workflow for listing files, filtering files,
finding matches, inspecting and refining results, staging replacements, modifying
selected files, creating backups, and restoring them.
This release introduces the seekr_match vector, implemented as a vctrs
record-style (rcrd) vector. Each element represents one independent match in
one file, while fields store the file path, match location, matched text, planned
replacement, surrounding context, and related metadata.
This release is intentionally not backward compatible with seekr 0.1.3. The
scope of the package has expanded substantially, and keeping the previous API
Show all changes in 0.2.0Hide the rest of the changes in 0.2.0
would have required maintaining two separate paradigms side by side. The previous
API has therefore been removed, and existing code using earlier versions of
seekr will need to be rewritten with the new workflow-oriented API.
From NEWS.md in the release
Install
Health
- OK13 OK2026-08-04
- NOTE12 OK, 1 NOTE2026-08-01
- OK13 OK2026-06-09
- ERROR12 OK, 1 ERROR2026-06-08
- WARNING12 OK, 1 WARNING2026-06-07
Show 1 earlier changeHide 1 earlier change
- OK14 OK2026-03-10
Documentation
The repository also keeps web-only articles.
- Help pages
- 32 (9 internal)includes a package overview page
- Examples that run
- 96%22 run in a plain check · 1 never run
- Exported functions with examples
- 95%
- Documented parameters
- 98%
- Return-value docs
- 90%
- Help pages citing references
- 0%
Downloads
Repository
- PRs merged (all time)
- 88%
- Median days to close, 50 most recently updated closed issues
- 8
- Median days to close, 50 most recently updated closed PRs
- 0
Stars over time
Forks over time
Releases over time
Issues over time
Commits over time
10 development-tooling and community-health practices detected across 6 families in the upstream repository
Checks run against github.com/smartiing/seekr on 2026-10-18.
The R CMD check workflow runs on Linux
GitHub Pages site last deployed 2026-07-31 · The repository has a site deploy workflow
pkgdown site last built 2026-07-31
Show all practicesHide 2 practices
Dependencies
Code & Tests
Datasets
People & History
Pick two releases to compare their code metrics.
- 0.2.0Latest2026-07-10 · current release · diff ↗ ·
removed 1 export
seek_inadded 33 exports
field<-, as_match, as_seekr_path, coll, delete_backups, empty_stage, exclude_functions, exclusions, field, fields, filter_files, filter_match, fixed, is_dependency_dir, is_git_dir, is_minified_file, is_not_text_mime, last_backup, list_backups, match_files, match_text, new_seekr_match, open_backup_dir, regex, replace_files, replace_text, restore_files, restore_files_interactive, seekr, seekr_option and 3 more - RR 4.6.0 released · 2026-04-24
- 0.1.42026-02-08 · diff ↗
- 0.1.32025-05-11 · diff ↗
- 0.1.22025-05-05
- RR 4.5.0 released · 2025-04-11
Package metadata
- First published
- 2025-05-05
- Total releases
- 4 / 1 yrs
- License
- MIT + file LICENSE OSI
- Minimum R
- ≥ 4.1
- Download size
- 1.8 MB
Cite
Cite this package
Run in R for the authors' preferred citation:
citation("seekr")This package has no citation file, so citation() returns this entry built from DESCRIPTION.
Cite the R Observatory
For a number measured here: a download total, a coverage figure, an archival date.
From data release v2026-10-22, which the citation names so these numbers can be found later. More on citing and the projects behind them.