---
name: "mu-script"
section: "1"
platform: "linux"
package: "maildir-utils"
version: "1.8.14-1"
release: "Debian 12 (Bookworm)"
platforms: ["linux"]
url: "https://new.carta.tech/mu-script"
---

# mu-script(1)

show the available mu scripts, and/or run them.

## NAME

mu\_script - show the available mu scripts, and/or run them.

## SYNOPSIS

**mu script \[options\] \[\<pattern\>\]**

**mu \<script-name\> \[\<script-options\>\]**

## DESCRIPTION

**mu script** is the **mu** command to list available **mu** scripts. The scripts are to be implemented in the Guile programming language, and therefore only work if your **mu** is built with support for Guile. In addition, many scripts require you to have **gnuplot** installed.

Without any parameters, **mu script** lists the available scripts. If you provide a pattern (a regular expression), only the scripts whose name or one-line description match this pattern are listed. See the examples below.

**mu** ships with a number of scripts.

## OPTIONS

- **--verbose**,**-v**

  when listing the available scripts, show the long descriptions.

  **--** all options on the right side of the **--** are passed to the script.

## EXAMPLES

List all available scripts (one-line descriptions):

```
  $ mu script
```

List all available scripts matching *month* (long descriptions):

```
  $ mu script -v month
```

Run the *msgs-per-month* script for messages matching 'hello', and pass it the *--textonly* parameter:

```
  $ mu msgs-per-month --query=hello --textonly
```

## RETURN VALUE

**mu script** returns 0 when all went well, and returns some non-zero error code when this is not the case.

## FILES

You can make your own Scheme scripts accessible through **mu script** by putting them in either *\<XDG\_DATA\_HOME\>/mu/scripts* (e.g., *~/.local/share/mu/scripts*) or, if *muhome* is specified, in

It is a good idea to document the scripts by using some special comments in the source code:

```
;; INFO: this is my script -- one-line description
;; INFO: (longer description)
;; INFO: --option1=<foo> (describe option1)
;; INFO: etc.
```

## BUGS

Please report bugs if you find them: **https://github.com/djcb/mu/issues**

## AUTHOR

Dirk-Jan C. Binnema \<djcb@djcbsoftware.nl\>

## SEE ALSO

[**mu**(1)](/mu/1.md), [**guile**(1)](/guile/1.md)
