Minor fixes
This commit is contained in:
parent
ccdaa21fc6
commit
fbaeedbba4
5 changed files with 58 additions and 3 deletions
2
Cargo.lock
generated
2
Cargo.lock
generated
|
@ -49,7 +49,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "atuin"
|
||||
version = "0.2.1"
|
||||
version = "0.2.2"
|
||||
dependencies = [
|
||||
"chrono",
|
||||
"directories",
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "atuin"
|
||||
version = "0.2.1"
|
||||
version = "0.2.2"
|
||||
authors = ["Ellie Huxtable <e@elm.sh>"]
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
|
|
48
README.md
48
README.md
|
@ -17,3 +17,51 @@ As well as the expected command, this stores
|
|||
- hostname
|
||||
- time
|
||||
- a unique session ID
|
||||
|
||||
## Install
|
||||
|
||||
`atuin` needs a recent version of Rust + Cargo! It's best to use rustup for.
|
||||
|
||||
```
|
||||
cargo install atuin
|
||||
```
|
||||
|
||||
and then add this to your ~/.zshrc
|
||||
|
||||
```
|
||||
export ATUIN_SESSION=$(atuin uuid)
|
||||
|
||||
_atuin_preexec(){
|
||||
id=$(atuin history start $1)
|
||||
export ATUIN_HISTORY_ID="$id"
|
||||
}
|
||||
|
||||
_atuin_precmd(){
|
||||
local EXIT="$?"
|
||||
|
||||
[[ -z "${ATUIN_HISTORY_ID}" ]] && return
|
||||
|
||||
atuin history end $ATUIN_HISTORY_ID --exit $EXIT
|
||||
}
|
||||
|
||||
add-zsh-hook preexec _atuin_preexec
|
||||
add-zsh-hook precmd _atuin_precmd
|
||||
```
|
||||
|
||||
We're not replacing anything here, so your default shell history file will still
|
||||
be written to!
|
||||
|
||||
## Usage
|
||||
|
||||
### Import history
|
||||
|
||||
```
|
||||
atuin import auto # detect shell, then import
|
||||
atuin import zsh # specify shell
|
||||
```
|
||||
|
||||
### List history
|
||||
|
||||
```
|
||||
atuin history list
|
||||
```
|
||||
|
|
|
@ -112,7 +112,7 @@ impl ImportCmd {
|
|||
}
|
||||
}
|
||||
|
||||
ImportCmd::Zsh => Ok(()),
|
||||
ImportCmd::Zsh => self.import_zsh(db),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
use std::env;
|
||||
use std::path::PathBuf;
|
||||
|
||||
use directories::ProjectDirs;
|
||||
|
@ -84,5 +85,11 @@ impl Atuin {
|
|||
fn main() -> Result<()> {
|
||||
pretty_env_logger::init();
|
||||
|
||||
let session = env::var("ATUIN_SESSION");
|
||||
|
||||
if session.is_err() {
|
||||
panic!("Please follow the atuin setup! Missing session.")
|
||||
}
|
||||
|
||||
Atuin::from_args().run()
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue