You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

2.0 KiB

---
output: rmarkdown::github_document
---
[![Project Status: Active - The project has reached a stable, usable state and is being actively developed.](http://www.repostatus.org/badges/0.1.0/active.svg)](http://www.repostatus.org/#active)
[![Travis-CI Build Status](https://travis-ci.org/hrbrmstr/wand.svg?branch=master)](https://travis-ci.org/hrbrmstr/wand)

`wand` : Retrieve 'Magic' Attributes from Files and Directories

The `libmagic` library must be installed and available to use this.

- `apt-get install libmagic-dev` on Debian-ish systems
- `brew install libmagic` on macOS

While the package was developed using the 5.28 version of `libmagic` it has been configured to work with older versions. Note that some fields in the resultant data frame might not be available with older library versions. When using the function `magic_wand_file()` it checks for which version of `libmagic` is installed on your system and provides a suitable `magic.mgc` file for it.

The package should also be pretty straightforward to get working on Windows. Assistance to do that is welcome. Think of all the fame and glory you'll receive!

The following functions are implemented:

- `incant` : returns the "magic" metadata of the files in the input vector (as a data frame)
- `magic_wand_file` : provides a full path to the package-provided `magic` file

### Installation

```{r eval=FALSE}
devtools::install_github("hrbrmstr/wand")
```

```{r echo=FALSE, message=FALSE, warning=FALSE, error=FALSE}
options(width=120)
```

### Usage

```{r message=FALSE}
library(wand)
library(magrittr)
library(dplyr)

system.file("img", package="wand") %>%
list.files(full.names=TRUE) %>%
incant() %>%
glimpse()

system.file("img", package="wand") %>%
list.files(full.names=TRUE) %>%
incant(magic_wand_file()) %>%
select(description) %>%
unlist(use.names=FALSE)

# current verison
packageVersion("wand")

```

### Test Results

```{r message=FALSE}
library(wand)
library(testthat)

date()

test_dir("tests/")
```