summaryrefslogtreecommitdiff
path: root/docs/README.md
blob: db5da29bd81b34c73cacc3d55c639d5fd6b9aba0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
## Introduction

**Terminal Media Launcher** is a command line utility to help streamline launching applications and other media. The goal of tml is to provide a fast, minimal, command line frontend with a Unix-like approach to setup and configuration. The program looks for a configuration file listing different groups of media and creates an ncurses menu from which to select from. If a configuration file is found, the program will draw two columns: one for groups, and one for entries. At the bottom of the window, a preview of the command execution is displayed.

## Compiling and Running

tml can be compiled on any system with make, gcc, and the ncurses library (libncurses-dev) installed. It has been tested to work on Ubuntu, and can also be compiled and run on Windows 10, but is designed with Linux in mind. To compile and run tml:

1. Clone the repository
2. Run `make` in the directory the repository was cloned into. This will create a file called `tml`
3. `./tml` to run the program

Note that tml will not run until you have created a configuration file.

### Installation

tml can be installed by running:

```
sudo make install
```

This will install `tml` to `/usr/local/bin/tml` as well as man pages `tml` and `tml-config`.
To uninstall these files:

```
sudo make uninstall
```

## Screenshots

![screenshot 1](screenshot1.png)
![screenshot 2](screenshot2.png)

## Configuration File

By default, tml searches in the following order for a configuration file:

1. `$HOME/.config/tml/config`
2. `$HOME/.tml/config`
3. `config` (in the current directory)

A different configuration file location can also be specified with the `-c` flag:

```
tml -c /path/to/config
```

For Documentation of the configuration file, see [tml-config](tml-config.md).
If you installed tml, you can also consult **tml**(1) and **tml-config**(5).