README.md
author Mikael Berthe <mikael@lilotux.net>
Sat, 29 Sep 2018 12:24:43 +0200
changeset 239 605a00e9d1ab
parent 238 d5d0260ead40
child 240 7c3e7b53cbd3
permissions -rw-r--r--
Switch to Go modules (and bump Go version requirement) Go >= 1.9 required to support Go modules (because madon has a v2 major version); v1.11+ is recommended.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
5abace724584 Initial public release
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
     1
# madonctl
5abace724584 Initial public release
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
     2
5abace724584 Initial public release
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
     3
Golang command line interface for the Mastodon API
5abace724584 Initial public release
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
     4
5abace724584 Initial public release
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
     5
[![license](https://img.shields.io/badge/license-MIT-blue.svg?style=flat)](https://raw.githubusercontent.com/McKael/madonctl/master/LICENSE)
2
b4a2df4425c4 Add Travis status badge
Mikael Berthe <mikael@lilotux.net>
parents: 0
diff changeset
     6
[![Build Status](https://travis-ci.org/McKael/madonctl.svg?branch=master)](https://travis-ci.org/McKael/madonctl)
0
5abace724584 Initial public release
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
     7
5abace724584 Initial public release
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
     8
`madonctl` is a [Go](https://golang.org/) CLI tool to use the Mastondon REST API.
5abace724584 Initial public release
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
     9
199
2818e6882c1b Small README update
Mikael Berthe <mikael@lilotux.net>
parents: 186
diff changeset
    10
It is built on top of [madon](https://github.com/McKael/madon), my Golang
2818e6882c1b Small README update
Mikael Berthe <mikael@lilotux.net>
parents: 186
diff changeset
    11
implementation of the API.
4
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    12
0
5abace724584 Initial public release
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    13
## Installation
5abace724584 Initial public release
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    14
199
2818e6882c1b Small README update
Mikael Berthe <mikael@lilotux.net>
parents: 186
diff changeset
    15
### Download
173
1812a794b759 Add a note about the API change to the README file
Mikael Berthe <mikael@lilotux.net>
parents: 156
diff changeset
    16
199
2818e6882c1b Small README update
Mikael Berthe <mikael@lilotux.net>
parents: 186
diff changeset
    17
Check the [Release page](https://github.com/McKael/madonctl/releases) for some
2818e6882c1b Small README update
Mikael Berthe <mikael@lilotux.net>
parents: 186
diff changeset
    18
pre-built binaries.
2818e6882c1b Small README update
Mikael Berthe <mikael@lilotux.net>
parents: 186
diff changeset
    19
2818e6882c1b Small README update
Mikael Berthe <mikael@lilotux.net>
parents: 186
diff changeset
    20
More pre-built binaries might be available from the [Homepage](https://lilotux.net/~mikael/pub/madonctl/)
2818e6882c1b Small README update
Mikael Berthe <mikael@lilotux.net>
parents: 186
diff changeset
    21
(development version and builds for a few other platforms).
173
1812a794b759 Add a note about the API change to the README file
Mikael Berthe <mikael@lilotux.net>
parents: 156
diff changeset
    22
4
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    23
### From source
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    24
239
605a00e9d1ab Switch to Go modules (and bump Go version requirement)
Mikael Berthe <mikael@lilotux.net>
parents: 238
diff changeset
    25
madonctl now uses Go modules introduced with Go v1.11.
605a00e9d1ab Switch to Go modules (and bump Go version requirement)
Mikael Berthe <mikael@lilotux.net>
parents: 238
diff changeset
    26
605a00e9d1ab Switch to Go modules (and bump Go version requirement)
Mikael Berthe <mikael@lilotux.net>
parents: 238
diff changeset
    27
You should still be able to build it "the old way" with an up-to-date release
605a00e9d1ab Switch to Go modules (and bump Go version requirement)
Mikael Berthe <mikael@lilotux.net>
parents: 238
diff changeset
    28
of Go 1.9/1.10/1.11+ with:
0
5abace724584 Initial public release
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    29
54
c31ca7e1ac24 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 43
diff changeset
    30
    go get -u github.com/McKael/madonctl
0
5abace724584 Initial public release
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    31
54
c31ca7e1ac24 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 43
diff changeset
    32
For upgrades, don't forget the `-u` option to ensure the dependencies
c31ca7e1ac24 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 43
diff changeset
    33
(especially [madon](https://github.com/McKael/madon)) are updated as well.
21
9e94836dc081 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 19
diff changeset
    34
239
605a00e9d1ab Switch to Go modules (and bump Go version requirement)
Mikael Berthe <mikael@lilotux.net>
parents: 238
diff changeset
    35
Alternatively, with Go >= 1.11:
605a00e9d1ab Switch to Go modules (and bump Go version requirement)
Mikael Berthe <mikael@lilotux.net>
parents: 238
diff changeset
    36
605a00e9d1ab Switch to Go modules (and bump Go version requirement)
Mikael Berthe <mikael@lilotux.net>
parents: 238
diff changeset
    37
    git clone git clone https://github.com/McKael/madonctl
605a00e9d1ab Switch to Go modules (and bump Go version requirement)
Mikael Berthe <mikael@lilotux.net>
parents: 238
diff changeset
    38
    cd madonctl
605a00e9d1ab Switch to Go modules (and bump Go version requirement)
Mikael Berthe <mikael@lilotux.net>
parents: 238
diff changeset
    39
    go build    # (or go install)
605a00e9d1ab Switch to Go modules (and bump Go version requirement)
Mikael Berthe <mikael@lilotux.net>
parents: 238
diff changeset
    40
605a00e9d1ab Switch to Go modules (and bump Go version requirement)
Mikael Berthe <mikael@lilotux.net>
parents: 238
diff changeset
    41
and you should be able to use `madonctl`.
605a00e9d1ab Switch to Go modules (and bump Go version requirement)
Mikael Berthe <mikael@lilotux.net>
parents: 238
diff changeset
    42
605a00e9d1ab Switch to Go modules (and bump Go version requirement)
Mikael Berthe <mikael@lilotux.net>
parents: 238
diff changeset
    43
Travis automated testing is run for Go versions 1.9 - 1.11.
21
9e94836dc081 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 19
diff changeset
    44
0
5abace724584 Initial public release
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    45
## Usage
5abace724584 Initial public release
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    46
4
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    47
### Configuration
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    48
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    49
In order to use madonctl, you need to specify the instance name or URL, and
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    50
usually provide an account login/password (or a token).
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    51
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    52
These settings can be passed as command line arguments or environment variables,
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    53
but the easiest way is to use a configuration file.
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    54
107
093fc00b333d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 105
diff changeset
    55
Note that you can **generate a configuration file** for your settings with
4
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    56
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    57
`madonctl config dump -i mastodon.social -L username@domain -P password`
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    58
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    59
(You can redirect the output to a configuration file.)
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    60
115
8ae0dda7756d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 108
diff changeset
    61
If you don't want to use the password or if you have enabled *Two-factor
137
8fdaf5e1f8fc Add configration.md with settings details
Mikael Berthe <mikael@lilotux.net>
parents: 129
diff changeset
    62
authentication*, you can also use **OAuth2** with the `oauth2` command:
4
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    63
137
8fdaf5e1f8fc Add configration.md with settings details
Mikael Berthe <mikael@lilotux.net>
parents: 129
diff changeset
    64
`madonctl -i mastodon.social oauth2 > madonctl.yaml`
115
8ae0dda7756d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 108
diff changeset
    65
137
8fdaf5e1f8fc Add configration.md with settings details
Mikael Berthe <mikael@lilotux.net>
parents: 129
diff changeset
    66
For details on the configuration, please check the [configuration](configuration.md) page.
79
bca27c55be9f Add default visibility setting
Mikael Berthe <mikael@lilotux.net>
parents: 75
diff changeset
    67
4
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    68
### Usage
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    69
141
abaf660dc3fc Update documentation
Mikael Berthe <mikael@lilotux.net>
parents: 140
diff changeset
    70
The complete list of commands is available in the online help (`madonctl help`,
abaf660dc3fc Update documentation
Mikael Berthe <mikael@lilotux.net>
parents: 140
diff changeset
    71
`madonctl command --help`...) or in the
abaf660dc3fc Update documentation
Mikael Berthe <mikael@lilotux.net>
parents: 140
diff changeset
    72
[manpages](https://lilotux.net/~mikael/pub/madonctl/manual/html/).
4
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    73
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    74
### Examples
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    75
141
abaf660dc3fc Update documentation
Mikael Berthe <mikael@lilotux.net>
parents: 140
diff changeset
    76
This is a non-exhaustive list of commands, showing how madonctl works.
abaf660dc3fc Update documentation
Mikael Berthe <mikael@lilotux.net>
parents: 140
diff changeset
    77
4
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    78
To post a simple "toot":
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    79
``` sh
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    80
% madonctl toot "Hello, World"
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    81
```
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    82
108
cc73f7cb0f21 Update README again (style)
Mikael Berthe <mikael@lilotux.net>
parents: 107
diff changeset
    83
You can change the toot visibility, add a Content Warning (a.k.a. spoiler)
cc73f7cb0f21 Update README again (style)
Mikael Berthe <mikael@lilotux.net>
parents: 107
diff changeset
    84
or send a media file:
4
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    85
``` sh
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    86
% madonctl toot --visibility direct "@McKael Hello, you"
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    87
% madonctl toot --visibility private --spoiler CW "The answer was 42"
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    88
% madonctl post --file image.jpg Selfie # Send a media file
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    89
```
79
bca27c55be9f Add default visibility setting
Mikael Berthe <mikael@lilotux.net>
parents: 75
diff changeset
    90
Note: The default toot visibility can be set in the configuration file with
bca27c55be9f Add default visibility setting
Mikael Berthe <mikael@lilotux.net>
parents: 75
diff changeset
    91
the `default_visibility` setting or with the environment variable (example
bca27c55be9f Add default visibility setting
Mikael Berthe <mikael@lilotux.net>
parents: 75
diff changeset
    92
`export MADONCTL_DEFAULT_VISIBILITY=unlisted`).
4
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
    93
17
ab1aa9652791 Update documentation
Mikael Berthe <mikael@lilotux.net>
parents: 9
diff changeset
    94
Send (text) file content as new message:
ab1aa9652791 Update documentation
Mikael Berthe <mikael@lilotux.net>
parents: 9
diff changeset
    95
```
ab1aa9652791 Update documentation
Mikael Berthe <mikael@lilotux.net>
parents: 9
diff changeset
    96
% madonctl toot --text-file message.txt
ab1aa9652791 Update documentation
Mikael Berthe <mikael@lilotux.net>
parents: 9
diff changeset
    97
```
ab1aa9652791 Update documentation
Mikael Berthe <mikael@lilotux.net>
parents: 9
diff changeset
    98
72
8c7a2119dc9d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 54
diff changeset
    99
... or read message from standard input:
8c7a2119dc9d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 54
diff changeset
   100
```
8c7a2119dc9d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 54
diff changeset
   101
% echo "Hello from #madonctl" | madonctl toot --stdin
8c7a2119dc9d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 54
diff changeset
   102
```
8c7a2119dc9d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 54
diff changeset
   103
129
11966471aac3 toot: Add flag --add-mentions to add mentions when replying
Mikael Berthe <mikael@lilotux.net>
parents: 115
diff changeset
   104
Reply to a message:
11966471aac3 toot: Add flag --add-mentions to add mentions when replying
Mikael Berthe <mikael@lilotux.net>
parents: 115
diff changeset
   105
``` sh
11966471aac3 toot: Add flag --add-mentions to add mentions when replying
Mikael Berthe <mikael@lilotux.net>
parents: 115
diff changeset
   106
% madonctl toot --in-reply-to 1234 --visibility direct "@user1 @user2 response"
11966471aac3 toot: Add flag --add-mentions to add mentions when replying
Mikael Berthe <mikael@lilotux.net>
parents: 115
diff changeset
   107
% madonctl toot --in-reply-to 1234 --add-mentions "response"
11966471aac3 toot: Add flag --add-mentions to add mentions when replying
Mikael Berthe <mikael@lilotux.net>
parents: 115
diff changeset
   108
```
11966471aac3 toot: Add flag --add-mentions to add mentions when replying
Mikael Berthe <mikael@lilotux.net>
parents: 115
diff changeset
   109
The flag `--add-mentions` automatically adds mentions based on the toot you're
11966471aac3 toot: Add flag --add-mentions to add mentions when replying
Mikael Berthe <mikael@lilotux.net>
parents: 115
diff changeset
   110
replying to.
11966471aac3 toot: Add flag --add-mentions to add mentions when replying
Mikael Berthe <mikael@lilotux.net>
parents: 115
diff changeset
   111
107
093fc00b333d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 105
diff changeset
   112
Some **account-related commands**:
4
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   113
``` sh
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   114
% madonctl accounts blocked                       # List blocked accounts
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   115
% madonctl accounts muted                         # List muted accounts
209
3772cc6b3d0a accounts: Use singular form
Mikael Berthe <mikael@lilotux.net>
parents: 199
diff changeset
   116
3772cc6b3d0a accounts: Use singular form
Mikael Berthe <mikael@lilotux.net>
parents: 199
diff changeset
   117
% madonctl account notifications --list --all    # List really all notifications
3772cc6b3d0a accounts: Use singular form
Mikael Berthe <mikael@lilotux.net>
parents: 199
diff changeset
   118
% madonctl account notifications --list --clear  # List and clear notifications
3772cc6b3d0a accounts: Use singular form
Mikael Berthe <mikael@lilotux.net>
parents: 199
diff changeset
   119
% madonctl account notifications --notification-id 1234 # Display notification
3772cc6b3d0a accounts: Use singular form
Mikael Berthe <mikael@lilotux.net>
parents: 199
diff changeset
   120
% madonctl account notifications --dismiss --notification-id 1234
4
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   121
```
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   122
32
cd657f7ec881 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 31
diff changeset
   123
Note: By default, madonctl will send a single query.  If you want all available
cd657f7ec881 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 31
diff changeset
   124
results you should use the `--all` flag.  If you use a `--limit` value,
cd657f7ec881 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 31
diff changeset
   125
madonctl might send several queries until the number of results reaches this
cd657f7ec881 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 31
diff changeset
   126
value.
cd657f7ec881 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 31
diff changeset
   127
107
093fc00b333d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 105
diff changeset
   128
**Update** your account information:
7
df3e9e068778 Update documentation wrt accounts update
Mikael Berthe <mikael@lilotux.net>
parents: 5
diff changeset
   129
``` sh
209
3772cc6b3d0a accounts: Use singular form
Mikael Berthe <mikael@lilotux.net>
parents: 199
diff changeset
   130
% madonctl account update --display-name "John"  # Update display name
3772cc6b3d0a accounts: Use singular form
Mikael Berthe <mikael@lilotux.net>
parents: 199
diff changeset
   131
% madonctl account update --note "Newcomer"      # Update user note (bio)
3772cc6b3d0a accounts: Use singular form
Mikael Berthe <mikael@lilotux.net>
parents: 199
diff changeset
   132
% madonctl account update --note ""              # Clear note
3772cc6b3d0a accounts: Use singular form
Mikael Berthe <mikael@lilotux.net>
parents: 199
diff changeset
   133
% madonctl account update --avatar me.png        # Update avatar
238
d5d0260ead40 Update documentation (README)
Mikael Berthe <mikael@lilotux.net>
parents: 213
diff changeset
   134
d5d0260ead40 Update documentation (README)
Mikael Berthe <mikael@lilotux.net>
parents: 213
diff changeset
   135
% madonctl account update --bot               # Advertise account as automated
d5d0260ead40 Update documentation (README)
Mikael Berthe <mikael@lilotux.net>
parents: 213
diff changeset
   136
% madonctl account update --default-sensitive # Set medias sensitive by default
d5d0260ead40 Update documentation (README)
Mikael Berthe <mikael@lilotux.net>
parents: 213
diff changeset
   137
% madonctl account update --default-language fra    # Set default toot language
d5d0260ead40 Update documentation (README)
Mikael Berthe <mikael@lilotux.net>
parents: 213
diff changeset
   138
% madonctl account update --default-privacy private # Set default toot privacy
7
df3e9e068778 Update documentation wrt accounts update
Mikael Berthe <mikael@lilotux.net>
parents: 5
diff changeset
   139
```
df3e9e068778 Update documentation wrt accounts update
Mikael Berthe <mikael@lilotux.net>
parents: 5
diff changeset
   140
108
cc73f7cb0f21 Update README again (style)
Mikael Berthe <mikael@lilotux.net>
parents: 107
diff changeset
   141
See your own **posts**:
31
9dcb4491d7a1 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 24
diff changeset
   142
``` sh
209
3772cc6b3d0a accounts: Use singular form
Mikael Berthe <mikael@lilotux.net>
parents: 199
diff changeset
   143
% madonctl account statuses                      # See last posts
3772cc6b3d0a accounts: Use singular form
Mikael Berthe <mikael@lilotux.net>
parents: 199
diff changeset
   144
% madonctl account statuses --all                # See all statuses
31
9dcb4491d7a1 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 24
diff changeset
   145
```
9dcb4491d7a1 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 24
diff changeset
   146
108
cc73f7cb0f21 Update README again (style)
Mikael Berthe <mikael@lilotux.net>
parents: 107
diff changeset
   147
Display accounts you're **following** or your **followers**:
31
9dcb4491d7a1 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 24
diff changeset
   148
``` sh
9dcb4491d7a1 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 24
diff changeset
   149
% madonctl accounts following                     # See last following
9dcb4491d7a1 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 24
diff changeset
   150
% madonctl accounts following --all               # See all followed accounts
9dcb4491d7a1 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 24
diff changeset
   151
% madonctl accounts followers --limit 30          # Last 30 followers
9dcb4491d7a1 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 24
diff changeset
   152
```
9dcb4491d7a1 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 24
diff changeset
   153
107
093fc00b333d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 105
diff changeset
   154
Add/remove a **favourite**, **boost** a status...
4
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   155
``` sh
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   156
% madonctl status --status-id 416671 favourite    # Fave a status
238
d5d0260ead40 Update documentation (README)
Mikael Berthe <mikael@lilotux.net>
parents: 213
diff changeset
   157
% madonctl status --status-id 416671 boost        # Boost (reblog) a status
d5d0260ead40 Update documentation (README)
Mikael Berthe <mikael@lilotux.net>
parents: 213
diff changeset
   158
d5d0260ead40 Update documentation (README)
Mikael Berthe <mikael@lilotux.net>
parents: 213
diff changeset
   159
% madonctl status --status-id 416671 unboost       # Cancel a boost
d5d0260ead40 Update documentation (README)
Mikael Berthe <mikael@lilotux.net>
parents: 213
diff changeset
   160
% madonctl status --status-id 416671 boost --unset # Cancel a boost (deprecated)
4
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   161
```
0
5abace724584 Initial public release
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
   162
181
0f3fb2d27ddb Update documentation wrt pin/unpin status
Mikael Berthe <mikael@lilotux.net>
parents: 173
diff changeset
   163
**Pin/unpin** a status...
0f3fb2d27ddb Update documentation wrt pin/unpin status
Mikael Berthe <mikael@lilotux.net>
parents: 173
diff changeset
   164
``` sh
0f3fb2d27ddb Update documentation wrt pin/unpin status
Mikael Berthe <mikael@lilotux.net>
parents: 173
diff changeset
   165
% madonctl status --status-id 533769 pin          # Pin a status
238
d5d0260ead40 Update documentation (README)
Mikael Berthe <mikael@lilotux.net>
parents: 213
diff changeset
   166
% madonctl status --status-id 533769 unpin        # Unpin a status
d5d0260ead40 Update documentation (README)
Mikael Berthe <mikael@lilotux.net>
parents: 213
diff changeset
   167
% madonctl status --status-id 533769 pin --unset  # Unpin a status (deprecated)
d5d0260ead40 Update documentation (README)
Mikael Berthe <mikael@lilotux.net>
parents: 213
diff changeset
   168
```
d5d0260ead40 Update documentation (README)
Mikael Berthe <mikael@lilotux.net>
parents: 213
diff changeset
   169
d5d0260ead40 Update documentation (README)
Mikael Berthe <mikael@lilotux.net>
parents: 213
diff changeset
   170
**Pin/unpin** an account (i.e., account endorsement)...
d5d0260ead40 Update documentation (README)
Mikael Berthe <mikael@lilotux.net>
parents: 213
diff changeset
   171
``` sh
d5d0260ead40 Update documentation (README)
Mikael Berthe <mikael@lilotux.net>
parents: 213
diff changeset
   172
% madonctl status --account-id 1234 pin           # Pin (endorse) an account
d5d0260ead40 Update documentation (README)
Mikael Berthe <mikael@lilotux.net>
parents: 213
diff changeset
   173
% madonctl status --account-id 1234 unpin         # Unpin an account
d5d0260ead40 Update documentation (README)
Mikael Berthe <mikael@lilotux.net>
parents: 213
diff changeset
   174
d5d0260ead40 Update documentation (README)
Mikael Berthe <mikael@lilotux.net>
parents: 213
diff changeset
   175
% madonctl status pin @Gargron@mastodon.social
181
0f3fb2d27ddb Update documentation wrt pin/unpin status
Mikael Berthe <mikael@lilotux.net>
parents: 173
diff changeset
   176
```
0f3fb2d27ddb Update documentation wrt pin/unpin status
Mikael Berthe <mikael@lilotux.net>
parents: 173
diff changeset
   177
5
d70f8e8f3d2e Add examples with accounts and timelines
Mikael Berthe <mikael@lilotux.net>
parents: 4
diff changeset
   178
Search for an account (only accounts known to your instance):
d70f8e8f3d2e Add examples with accounts and timelines
Mikael Berthe <mikael@lilotux.net>
parents: 4
diff changeset
   179
``` sh
d70f8e8f3d2e Add examples with accounts and timelines
Mikael Berthe <mikael@lilotux.net>
parents: 4
diff changeset
   180
% madonctl accounts search gargron
d70f8e8f3d2e Add examples with accounts and timelines
Mikael Berthe <mikael@lilotux.net>
parents: 4
diff changeset
   181
```
d70f8e8f3d2e Add examples with accounts and timelines
Mikael Berthe <mikael@lilotux.net>
parents: 4
diff changeset
   182
107
093fc00b333d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 105
diff changeset
   183
**Follow** an account with known ID:
5
d70f8e8f3d2e Add examples with accounts and timelines
Mikael Berthe <mikael@lilotux.net>
parents: 4
diff changeset
   184
``` sh
209
3772cc6b3d0a accounts: Use singular form
Mikael Berthe <mikael@lilotux.net>
parents: 199
diff changeset
   185
% madonctl account follow --account-id 1234
5
d70f8e8f3d2e Add examples with accounts and timelines
Mikael Berthe <mikael@lilotux.net>
parents: 4
diff changeset
   186
```
d70f8e8f3d2e Add examples with accounts and timelines
Mikael Berthe <mikael@lilotux.net>
parents: 4
diff changeset
   187
4
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   188
Follow a remote account:
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   189
``` sh
209
3772cc6b3d0a accounts: Use singular form
Mikael Berthe <mikael@lilotux.net>
parents: 199
diff changeset
   190
% madonctl account follow --remote Gargron@mastodon.social
4
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   191
```
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   192
213
3569475f86ec Update help & documentation
Mikael Berthe <mikael@lilotux.net>
parents: 212
diff changeset
   193
madonctl 2.3.0+ is able to recognize the kind of argument to specify and to
3569475f86ec Update help & documentation
Mikael Berthe <mikael@lilotux.net>
parents: 212
diff changeset
   194
use the relevant API calls, so the previous commands could be written as:
3569475f86ec Update help & documentation
Mikael Berthe <mikael@lilotux.net>
parents: 212
diff changeset
   195
``` sh
3569475f86ec Update help & documentation
Mikael Berthe <mikael@lilotux.net>
parents: 212
diff changeset
   196
% madonctl account follow 1234
3569475f86ec Update help & documentation
Mikael Berthe <mikael@lilotux.net>
parents: 212
diff changeset
   197
% madonctl account follow Gargron@mastodon.social
3569475f86ec Update help & documentation
Mikael Berthe <mikael@lilotux.net>
parents: 212
diff changeset
   198
% madonctl account follow https://mastodon.social/@Gargron
3569475f86ec Update help & documentation
Mikael Berthe <mikael@lilotux.net>
parents: 212
diff changeset
   199
```
3569475f86ec Update help & documentation
Mikael Berthe <mikael@lilotux.net>
parents: 212
diff changeset
   200
3569475f86ec Update help & documentation
Mikael Berthe <mikael@lilotux.net>
parents: 212
diff changeset
   201
Note: If you know the numeric account ID, you should use it to save extra API
3569475f86ec Update help & documentation
Mikael Berthe <mikael@lilotux.net>
parents: 212
diff changeset
   202
calls.
3569475f86ec Update help & documentation
Mikael Berthe <mikael@lilotux.net>
parents: 212
diff changeset
   203
107
093fc00b333d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 105
diff changeset
   204
**Search** for accounts, statuses or hashtags:
105
07d96d963223 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 102
diff changeset
   205
``` sh
07d96d963223 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 102
diff changeset
   206
% madonctl search gargron
07d96d963223 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 102
diff changeset
   207
% madonctl search mastodon
07d96d963223 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 102
diff changeset
   208
```
07d96d963223 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 102
diff changeset
   209
07d96d963223 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 102
diff changeset
   210
When the account ID is unknown, --user-id can be useful.\
07d96d963223 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 102
diff changeset
   211
You can specify the (instance-specific) account ID number (--account-id) or
07d96d963223 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 102
diff changeset
   212
the user ID (--user-id).  In the later case, madonctl will search for the
07d96d963223 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 102
diff changeset
   213
user so it must match exactly the ID known to your instance (without the
140
92842a4f5f8b Remove notes for old versions in README
Mikael Berthe <mikael@lilotux.net>
parents: 137
diff changeset
   214
@domain suffix if the user is on the same instance).  The --user-id flag can
92842a4f5f8b Remove notes for old versions in README
Mikael Berthe <mikael@lilotux.net>
parents: 137
diff changeset
   215
also contain an HTTP account URL.
105
07d96d963223 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 102
diff changeset
   216
``` sh
209
3772cc6b3d0a accounts: Use singular form
Mikael Berthe <mikael@lilotux.net>
parents: 199
diff changeset
   217
% madonctl account --user-id Gargron@mastodon.social -l5 statuses # Last 5 statuses
3772cc6b3d0a accounts: Use singular form
Mikael Berthe <mikael@lilotux.net>
parents: 199
diff changeset
   218
% madonctl account --user-id https://mastodon.social/@Gargron -l5 statuses # Same
105
07d96d963223 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 102
diff changeset
   219
```
213
3569475f86ec Update help & documentation
Mikael Berthe <mikael@lilotux.net>
parents: 212
diff changeset
   220
3569475f86ec Update help & documentation
Mikael Berthe <mikael@lilotux.net>
parents: 212
diff changeset
   221
With madonctl 2.3.0+, you can use the shorter forms:
3569475f86ec Update help & documentation
Mikael Berthe <mikael@lilotux.net>
parents: 212
diff changeset
   222
``` sh
3569475f86ec Update help & documentation
Mikael Berthe <mikael@lilotux.net>
parents: 212
diff changeset
   223
% madonctl account statuses -l5 Gargron@mastodon.social
3569475f86ec Update help & documentation
Mikael Berthe <mikael@lilotux.net>
parents: 212
diff changeset
   224
% madonctl account statuses -l5 https://mastodon.social/@Gargron
3569475f86ec Update help & documentation
Mikael Berthe <mikael@lilotux.net>
parents: 212
diff changeset
   225
% madonctl account statuses -l5 1   # (account ID)
3569475f86ec Update help & documentation
Mikael Berthe <mikael@lilotux.net>
parents: 212
diff changeset
   226
```
3569475f86ec Update help & documentation
Mikael Berthe <mikael@lilotux.net>
parents: 212
diff changeset
   227
156
bafe489779e5 Add a note about --user-id account format
Mikael Berthe <mikael@lilotux.net>
parents: 153
diff changeset
   228
Please note that the form "Gargron@mastodon.social" will only work if this
bafe489779e5 Add a note about --user-id account format
Mikael Berthe <mikael@lilotux.net>
parents: 153
diff changeset
   229
account is known by the instance.  If it is unknown, the https link should work
bafe489779e5 Add a note about --user-id account format
Mikael Berthe <mikael@lilotux.net>
parents: 153
diff changeset
   230
(and the Mastodon server will learn about the account).
105
07d96d963223 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 102
diff changeset
   231
107
093fc00b333d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 105
diff changeset
   232
Read **timelines**:
5
d70f8e8f3d2e Add examples with accounts and timelines
Mikael Berthe <mikael@lilotux.net>
parents: 4
diff changeset
   233
``` sh
d70f8e8f3d2e Add examples with accounts and timelines
Mikael Berthe <mikael@lilotux.net>
parents: 4
diff changeset
   234
% madonctl timeline                 # Display home timeline
238
d5d0260ead40 Update documentation (README)
Mikael Berthe <mikael@lilotux.net>
parents: 213
diff changeset
   235
% madonctl timeline home            # (same as previous command)
5
d70f8e8f3d2e Add examples with accounts and timelines
Mikael Berthe <mikael@lilotux.net>
parents: 4
diff changeset
   236
% madonctl timeline public          # Display federated timeline
d70f8e8f3d2e Add examples with accounts and timelines
Mikael Berthe <mikael@lilotux.net>
parents: 4
diff changeset
   237
% madonctl timeline public --local  # Display public local timeline
238
d5d0260ead40 Update documentation (README)
Mikael Berthe <mikael@lilotux.net>
parents: 213
diff changeset
   238
% madonctl timeline direct          # Display timeline of direct messages
24
9fcffbaa8cd0 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 21
diff changeset
   239
9fcffbaa8cd0 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 21
diff changeset
   240
% madonctl timeline --limit 3       # Display 3 latest home timeline messages
5
d70f8e8f3d2e Add examples with accounts and timelines
Mikael Berthe <mikael@lilotux.net>
parents: 4
diff changeset
   241
```
d70f8e8f3d2e Add examples with accounts and timelines
Mikael Berthe <mikael@lilotux.net>
parents: 4
diff changeset
   242
107
093fc00b333d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 105
diff changeset
   243
Use the **streaming API** and fetch timelines and notifications:
4
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   244
``` sh
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   245
% madonctl stream                   # Stream home timeline and notifications
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   246
% madonctl stream local             # Stream local timeline
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   247
% madonctl stream public            # Stream federated timeline
238
d5d0260ead40 Update documentation (README)
Mikael Berthe <mikael@lilotux.net>
parents: 213
diff changeset
   248
% madonctl stream direct            # Stream direct messages
4
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   249
```
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   250
107
093fc00b333d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 105
diff changeset
   251
You can also use **hashtag streams**:
75
447ac88b67c6 Update README documentation wrt streams
Mikael Berthe <mikael@lilotux.net>
parents: 72
diff changeset
   252
``` sh
447ac88b67c6 Update README documentation wrt streams
Mikael Berthe <mikael@lilotux.net>
parents: 72
diff changeset
   253
% madonctl stream :mastodon         # Stream for hastag 'mastodon'
447ac88b67c6 Update README documentation wrt streams
Mikael Berthe <mikael@lilotux.net>
parents: 72
diff changeset
   254
% madonctl stream :madonctl,golang  # Stream for several hashtags
447ac88b67c6 Update README documentation wrt streams
Mikael Berthe <mikael@lilotux.net>
parents: 72
diff changeset
   255
```
447ac88b67c6 Update README documentation wrt streams
Mikael Berthe <mikael@lilotux.net>
parents: 72
diff changeset
   256
447ac88b67c6 Update README documentation wrt streams
Mikael Berthe <mikael@lilotux.net>
parents: 72
diff changeset
   257
Please note that madonctl will use one socket per stream, so the number of
447ac88b67c6 Update README documentation wrt streams
Mikael Berthe <mikael@lilotux.net>
parents: 72
diff changeset
   258
concurrent hashtags is currently limited to 4 for "politeness".
447ac88b67c6 Update README documentation wrt streams
Mikael Berthe <mikael@lilotux.net>
parents: 72
diff changeset
   259
115
8ae0dda7756d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 108
diff changeset
   260
It is also possible to send every stream event (notification or status) to
8ae0dda7756d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 108
diff changeset
   261
an **external command**.  You can can even combine it with a customized theme.
8ae0dda7756d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 108
diff changeset
   262
The contents will be sent to the standard input of this command:
8ae0dda7756d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 108
diff changeset
   263
``` sh
8ae0dda7756d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 108
diff changeset
   264
madonctl stream --command gateway.sh --theme gateway
8ae0dda7756d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 108
diff changeset
   265
```
75
447ac88b67c6 Update README documentation wrt streams
Mikael Berthe <mikael@lilotux.net>
parents: 72
diff changeset
   266
108
cc73f7cb0f21 Update README again (style)
Mikael Berthe <mikael@lilotux.net>
parents: 107
diff changeset
   267
(Almost) All commands have a **customizable output**:
4
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   268
``` sh
209
3772cc6b3d0a accounts: Use singular form
Mikael Berthe <mikael@lilotux.net>
parents: 199
diff changeset
   269
% madonctl account show            # Display an account
3772cc6b3d0a accounts: Use singular form
Mikael Berthe <mikael@lilotux.net>
parents: 199
diff changeset
   270
% madonctl account show -o yaml    # Display an account, in yaml
3772cc6b3d0a accounts: Use singular form
Mikael Berthe <mikael@lilotux.net>
parents: 199
diff changeset
   271
% madonctl account show -o json    # Display an account, in json
4
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   272
% madonctl stream local -o json     # Stream local timeline and output to JSON
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   273
```
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   274
107
093fc00b333d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 105
diff changeset
   275
You can also use Go (Golang) **templates**:
4
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   276
``` sh
209
3772cc6b3d0a accounts: Use singular form
Mikael Berthe <mikael@lilotux.net>
parents: 199
diff changeset
   277
% madonctl account --account-id 1 followers --template '{{.acct}}{{"\n"}}'
4
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   278
```
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   279
140
92842a4f5f8b Remove notes for old versions in README
Mikael Berthe <mikael@lilotux.net>
parents: 137
diff changeset
   280
You can write and use [themes](templates) as well:
92
aa7d918e727d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 79
diff changeset
   281
```
aa7d918e727d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 79
diff changeset
   282
madonctl --theme=ansi timeline
aa7d918e727d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 79
diff changeset
   283
```
aa7d918e727d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 79
diff changeset
   284
4
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   285
There are many more commands, you can find them in the online help or the manpage.
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   286
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   287
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   288
### Shell completion
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   289
107
093fc00b333d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 105
diff changeset
   290
If you want **shell completion**, you can generate scripts with the following command: \
4
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   291
`madonctl completion bash` (or zsh)
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   292
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   293
Then, just source the script in your shell.
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   294
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   295
For example, I have this line in my .zshrc:
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   296
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   297
`source <(madonctl completion zsh)`
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   298
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   299
### Commands output
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   300
107
093fc00b333d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 105
diff changeset
   301
The output can be set to **json**, **yaml** or to a **Go template** for all commands.\
4
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   302
If you are familiar with Kubernetes' kubectl, it is very similar.
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   303
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   304
For example, you can display your user token with:\
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   305
`madonctl config whoami --template '{{.access_token}}'`\
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   306
or the application ID with:\
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   307
`madonctl config dump --template '{{.ID}}'`
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   308
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   309
All the users that have favorited a given status:\
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   310
`madonctl status --status-id 101194 favourited-by --template '{{.username}}{{"\n"}}'`
a3b95e2f0b0b Update README - add some documentation
Mikael Berthe <mikael@lilotux.net>
parents: 2
diff changeset
   311
107
093fc00b333d Update README
Mikael Berthe <mikael@lilotux.net>
parents: 105
diff changeset
   312
Sets of templates can be grouped as **themes**.
105
07d96d963223 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 102
diff changeset
   313
24
9fcffbaa8cd0 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 21
diff changeset
   314
For more complex templates, one can use the `--template-file` option.\
105
07d96d963223 Update README
Mikael Berthe <mikael@lilotux.net>
parents: 102
diff changeset
   315
See the [themes & templates](templates) folder.
0
5abace724584 Initial public release
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
   316
5abace724584 Initial public release
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
   317
## References
5abace724584 Initial public release
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
   318
141
abaf660dc3fc Update documentation
Mikael Berthe <mikael@lilotux.net>
parents: 140
diff changeset
   319
- [madonctl manpages](https://lilotux.net/~mikael/pub/madonctl/manual/html/)
0
5abace724584 Initial public release
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
   320
- [madon](https://github.com/McKael/madon), the Go library for Mastodon API
5abace724584 Initial public release
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
   321
- [Mastodon API documentation](https://github.com/tootsuite/documentation/blob/master/Using-the-API/API.md)
5abace724584 Initial public release
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
   322
- [Mastodon repository](https://github.com/tootsuite/mastodon)