---
name: "Catmandu::Importer::RIS"
section: "3pm"
platform: "linux"
package: "libcatmandu-ris-perl"
version: "0.13-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Catmandu::Importer::RIS"
---

# Catmandu::Importer::RIS(3pm)

a RIS importer

## NAME

Catmandu::Importer::RIS - a RIS importer

## SYNOPSIS

Command line interface:

```
  catmandu convert RIS < input.txt
  # Use the --human option to translate RIS tags into human readable strings
  catmandu convert RIS --human 1 < input.txt
  # Provide a comma separated mapping file to translate RIS tags
  catmandu convert RIS --human mappings/my_tags.txt < input.txt
```

In Perl code:

```
  use Catmandu::Importer::RIS;
  my $importer = Catmandu::Importer::RIS->new(file => "/foo/bar.txt");
  my $n = $importer->each(sub {
    my $hashref = $_[0];
    # ...
  });
```

## CONFIGURATION

- sep\_char

  Set a field separator

- human

  If set to 1, then RIS tries to translate tags into human readable strings. If set to a file name, then RIS will read the file as a comma delimited lists of tag/string translations. E.g.

  ```
      catmandu convert RIS --human mappings/my_tags.txt < input.txt
  ```

  where mappings/my\_tags.txt like:

  ```
      A2,Secondary-Author
      A3,Tertiary-Author
      A4,Subsidiary-Author
      AB,Abstract
      AD,Author-Address
      AF,Notes
      .
      .
      .
  ```

## METHODS

### new(file =\> $filename, fh =\> $fh , fix =\> \[...\])

Create a new RIS importer for `$filename`. Use STDIN when no filename is given.

The constructor inherits the fix parameter from Catmandu::Fixable. When given, then any fix or fix script will be applied to imported items.

### count

### each(&callback)

### ...

Every Catmandu::Importer is a Catmandu::Iterable all its methods are inherited.

## SEE ALSO

Catmandu::Iterable
