PHPackages                             iodigital-com/slugify-cli - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [CLI &amp; Console](/categories/cli)
4. /
5. iodigital-com/slugify-cli

ActiveProject[CLI &amp; Console](/categories/cli)

iodigital-com/slugify-cli
=========================

CLI wrapper for the cocur/slugify package

v1.2.0(1y ago)114MITPHPPHP ~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0

Since Nov 4Pushed 1y ago8 watchersCompare

[ Source](https://github.com/iodigital-com/slugify-cli)[ Packagist](https://packagist.org/packages/iodigital-com/slugify-cli)[ RSS](/packages/iodigital-com-slugify-cli/feed)WikiDiscussions develop Synced 1mo ago

READMEChangelog (3)Dependencies (5)Versions (5)Used By (0)

Slugify CLI
===========

[](#slugify-cli)

A CLI wrapper around the [cocur/slugify](https://github.com/cocur/slugify) package. All options that can be supplied via the Slugify constructor are available as command-line options.

Installation
------------

[](#installation)

Add the package as a requirement to your project:

```
$ composer require iodigital-com/slugify-cli

```

This will install the `slugify-cli` script to the `vendor/bin` folder of the project.

Or as a global requirement:

```
$ composer global require iodigital-com/slugify-cli

```

This will install the `slugify` script to the `$HOME/.composer/vendor/bin` folder.

Usage
-----

[](#usage)

Usage: `slugify [OPTION...] [FILE ...]`

Transform each line from the given input `FILE`s to a slug and write it to `STDOUT`. The transformation uses the `cocur/slugify` package to perform the transformation.

When no `FILE` is supplied, input is read from `STDIN`.

The following `OPTION`s are available:

- `-h`/`--help`: prints usage information
- `-v`/`--version`: prints the version
- `-s`/`--separator`: specify the separator to be used in the slugs (default `-`)
- `--no-lowercase`: do not convert slugs to lowercase
- `--no-trim`: do not trim slugs
- `--regexp`: specify the regular expression to replace characters with separator (default `/[^A-Za-z0-9]+/`)
- `--lowercase-after-regexp`: perform lowercasing after applying the regular expression
- `--strip-tags`: strip HTML tags
- `--rulesets`: specify a comma-separated list of rulesets to use and in which order (see  for details)

Examples
--------

[](#examples)

Basic usage without any options:

```
$ echo 'Déjà Vu!' | bin/slugify
deja-vu

$ echo 'Fußgängerübergangsmörtel' | bin/slugify
fussgaengeruebergangsmoertel

```

Using a different separator:

```
$ echo 'Déjà Vu!' | bin/slugify -s _
deja_vu

```

Do not use lowercasing or trimming:

```
$ echo 'Déjà Vu!' | bin/slugify --no-lowercase --no-trim
Deja-Vu-

```

Use a different regex and lowercase after regex:

```
$ echo 'Déjà Vu!' | bin/slugify --regexp '/[^A-Z]+/' --lowercase-after-regexp
d-v

```

Strip tags:

```
$ echo 'Déjà Vu!' | bin/slugify --strip-tags
deja-vu

```

Use a different ruleset:

```
$ echo 'Gülümsemek' | bin/slugify --rulesets default,turkish
gulumsemek

```

Read multiple files:

```
$ bin/slugify
