blob: 9fdb4d07a99c78541c71b355d96fa5eb12c333cf (
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
<h1 align="center">
A'tuin
</h1>
<blockquote align="center">
Through the fathomless deeps of space swims the star turtle Great AโTuin, bearing on its back the four giant elephants who carry on their shoulders the mass of the Discworld.
</blockquote>
<p align="center">
<a href="https://github.com/ellie/atuin/actions?query=workflow%3ARust"><img src="https://img.shields.io/github/workflow/status/ellie/atuin/Rust?style=flat-square" /></a>
<a href="https://crates.io/crates/atuin"><img src="https://img.shields.io/crates/v/atuin.svg?style=flat-square" /></a>
<a href="https://crates.io/crates/atuin"><img src="https://img.shields.io/crates/d/atuin.svg?style=flat-square" /></a>
<a href="https://github.com/ellie/atuin/blob/main/LICENSE"><img src="https://img.shields.io/crates/l/atuin.svg?style=flat-square" /></a>
</p>
A'tuin manages and synchronizes your shell history! Instead of storing
everything in a text file (such as ~/.history), A'tuin uses a sqlite database.
While being a little more complex, this allows for more functionality.
As well as the expected command, A'tuin stores
- duration
- exit code
- working directory
- hostname
- time
- a unique session ID
## Install
`atuin` needs a recent version of Rust + Cargo! It's best to use
[rustup](https://rustup.rs/) for getting set up there.
```
cargo install atuin
```
Once the binary is installed, the shell plugin requires installing:
zplug:
```
zplug "ellie/atuin", at:main
```
otherwise, clone the repo and `source /path/to/repo/atuin.plugin.zsh` in your `.zshrc`
## Usage
By default A'tuin will rebind ctrl-r to use fzf to fuzzy search your history. You
can specify a different fuzzy tool by changing the value of `ATUIN_FUZZY`:
```
export ATUIN_FUZZY=fzy
```
### Import history
```
atuin import auto # detect shell, then import
or
atuin import zsh # specify shell
```
### List history
```
atuin history list
```
## ...what's with the name?
A'tuin is named after "The Great A'tuin", a giant turtle from Terry Pratchett's
Discworld series of books.
|