diff options
author | Ellie Huxtable <ellie@elliehuxtable.com> | 2024-01-16 18:27:47 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-01-16 18:27:47 +0000 |
commit | ed33f63cce994cbe439f442ea9d4dc8f5771ba10 (patch) | |
tree | 1786834ed703f8ebdaec75b009158fbd31bc55d1 | |
parent | 6bff8c8e1ad3a230f3cd8f5d7078ed2af3f43463 (diff) |
docs: remove old docusaurus (#1581)
38 files changed, 0 insertions, 22647 deletions
diff --git a/docs/README.md b/docs/README.md deleted file mode 100644 index aaba2fa1..00000000 --- a/docs/README.md +++ /dev/null @@ -1,41 +0,0 @@ -# Website - -This website is built using [Docusaurus 2](https://docusaurus.io/), a modern static website generator. - -### Installation - -``` -$ yarn -``` - -### Local Development - -``` -$ yarn start -``` - -This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server. - -### Build - -``` -$ yarn build -``` - -This command generates static content into the `build` directory and can be served using any static contents hosting service. - -### Deployment - -Using SSH: - -``` -$ USE_SSH=true yarn deploy -``` - -Not using SSH: - -``` -$ GIT_USER=<Your GitHub username> yarn deploy -``` - -If you are using GitHub pages for hosting, this command is a convenient way to build the website and push to the `gh-pages` branch. diff --git a/docs/babel.config.js b/docs/babel.config.js deleted file mode 100644 index e00595da..00000000 --- a/docs/babel.config.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - presets: [require.resolve('@docusaurus/core/lib/babel/preset')], -}; diff --git a/docs/docs/advanced-install.md b/docs/docs/advanced-install.md deleted file mode 100644 index 447d7857..00000000 --- a/docs/docs/advanced-install.md +++ /dev/null @@ -1,185 +0,0 @@ ---- -title: Advanced Install ---- -Generally, we recommend using our install script. It ensures you use the most -up-to-date Atuin, and that your shell plugin is correctly setup. It will prefer -the system package manager wherever necessary! - -However, I totally understand if you'd rather do things yourself and not run a -script from the internet. If so, follow on! - -## Install Atuin - -Atuin is in a number of package repositories! Please choose whichever works best for you. - -### With cargo - -It's best to use [rustup](https://rustup.rs/) to get setup with a Rust -toolchain, then you can run: - -``` -cargo install atuin -``` - -And then follow [the shell setup](#shell-plugin) - -### Homebrew - -``` -brew install atuin -``` - -And then follow [the shell setup](#shell-plugin) - -### MacPorts - -Atuin is also available in [MacPorts](https://ports.macports.org/port/atuin/) - -``` -sudo port install atuin -``` - -And then follow [the shell setup](#shell-plugin) - -### Nix - -This repository is a flake, and can be installed using `nix profile`: - -``` -nix profile install "github:atuinsh/atuin" -``` - -Atuin is also available in [nixpkgs](https://github.com/NixOS/nixpkgs): - -``` -nix-env -f '<nixpkgs>' -iA atuin -``` - -And then follow [the shell setup](#shell-plugin) -### Pacman - -Atuin is available in the Arch Linux [extra repository](https://archlinux.org/packages/extra/x86_64/atuin/): - -``` -pacman -S atuin -``` - -And then follow [the shell setup](#shell-plugin) - -### Xbps - -Atuin is available in the Void Linux [repository](https://github.com/void-linux/void-packages/tree/master/srcpkgs/atuin): - -``` -sudo xbps-install atuin -``` - -And then follow [the shell setup](#shell-plugin) - -### Termux - -Atuin is available in the Termux package repository: - -``` -pkg install atuin -``` - -And then follow [the shell setup](#shell-plugin) - -### From source - -Note: Atuin builds on the latest stable version of Rust, and we make no -promises regarding older versions. We recommend using rustup. - -``` -git clone https://github.com/atuinsh/atuin.git -cd atuin/atuin -cargo install --path . -``` - -## Shell plugin - -Once the binary is installed, the shell plugin requires installing. If you use -the install script, this should all be done for you! After installing, remember to restart your shell. - -### zsh - -``` -echo 'eval "$(atuin init zsh)"' >> ~/.zshrc -``` - -#### Zinit - -```sh -zinit load atuinsh/atuin -``` - -#### Antigen - -```sh -antigen bundle atuinsh/atuin@main -``` - -### bash - -#### [ble.sh](https://github.com/akinomyoga/ble.sh) - -Atuin works best in bash when using [ble.sh](https://github.com/akinomyoga/ble.sh). - -With ble.sh installed, just add atuin to your .bashrc - -```bash -echo 'eval "$(atuin init bash)"' >> ~/.bashrc -``` - -#### [bash-preexec](https://github.com/rcaloras/bash-preexec) - -[Bash-preexec](https://github.com/rcaloras/bash-preexec) can also be used, but you may experience some minor problems with the recorded duration and exit status of some commands. - -To use bash-preexec, download and initialize it - -```bash -curl https://raw.githubusercontent.com/rcaloras/bash-preexec/master/bash-preexec.sh -o ~/.bash-preexec.sh -echo '[[ -f ~/.bash-preexec.sh ]] && source ~/.bash-preexec.sh' >> ~/.bashrc -``` - -Then setup Atuin - -```bash -echo 'eval "$(atuin init bash)"' >> ~/.bashrc -``` - -**PLEASE NOTE** - -bash-preexec currently has an issue where it will stop honoring `ignorespace`. While Atuin will ignore commands prefixed with whitespace, they may still end up in your bash history. Please check your configuration! All other shells do not have this issue. - -### fish - -Add - -``` -atuin init fish | source -``` - -to your `is-interactive` block in your `~/.config/fish/config.fish` file - -### Fig - -Install `atuin` shell plugin in zsh, bash, or fish with [Fig](https://fig.io) in one click. - -<a href="https://fig.io/plugins/other/atuin" target="_blank"><img src="https://fig.io/badges/install-with-fig.svg" /></a> - -### Nushell - -Run in *Nushell*: - -``` -mkdir ~/.local/share/atuin/ -atuin init nu | save ~/.local/share/atuin/init.nu -``` - -Add to `config.nu`: - -``` -source ~/.local/share/atuin/init.nu -``` diff --git a/docs/docs/commands/commands.md b/docs/docs/commands/commands.md deleted file mode 100644 index 0c7d0af7..00000000 --- a/docs/docs/commands/commands.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -title: Commands ---- - -- [`atuin import`](../../docs/commands/import): Import shell history from file -- [`atuin history list`](../../docs/commands/list): List all items in history -- [`atuin search`](../../docs/commands/search): Interactive history search -- [`atuin server`](../../docs/commands/server): Start an atuin server -- [`atuin gen-completions`](../../docs/commands/shell-completions): Generate shell completions -- [`atuin stats`](../../docs/commands/stats): Calculate statistics for your history -- [`atuin sync`](../../docs/commands/sync): Sync with the configured server - diff --git a/docs/docs/commands/import.md b/docs/docs/commands/import.md deleted file mode 100644 index f20cc8e6..00000000 --- a/docs/docs/commands/import.md +++ /dev/null @@ -1,34 +0,0 @@ ---- -title: Import History -sidebar_position: 2 ---- - -# `atuin import` - -Atuin can import your history from your "old" history file - -`atuin import auto` will attempt to figure out your shell (via \$SHELL) and run -the correct importer - -Unfortunately these older files do not store as much information as Atuin does, -so not all features are available with imported data. - -# zsh - -``` -atuin import zsh -``` - -If you've set HISTFILE, this should be picked up! If not, try - -``` -HISTFILE=/path/to/history/file atuin import zsh -``` - -This supports both the simple and extended format - -# bash - -``` -atuin import bash -``` diff --git a/docs/docs/commands/list.md b/docs/docs/commands/list.md deleted file mode 100644 index cd41f690..00000000 --- a/docs/docs/commands/list.md +++ /dev/null @@ -1,33 +0,0 @@ ---- -title: Listing History ---- - -# `atuin history list` - - -| Arg | Description | -|------------------|-------------------------------------------------------------------------------| -| `--cwd`/`-c` | The directory to list history for (default: all dirs) | -| `--session`/`-s` | Enable listing history for the current session only (default: false) | -| `--human` | Use human-readable formatting for the timestamp and duration (default: false) | -| `--cmd-only` | Show only the text of the command (default: false) | -| `--reverse` | Reverse the order of the output (default: false) | -| `--format` | Specify the formatting of a command (see below) | -| `--print0` | Terminate the output with a null, for better multiline support | - - -## Format - -Customize the output of `history list` - -Example - -``` -atuin history list --format "{time} - {duration} - {command}" -``` - -Supported variables - -``` -{command}, {directory}, {duration}, {user}, {host} and {time} -``` diff --git a/docs/docs/commands/search.md b/docs/docs/commands/search.md deleted file mode 100644 index 91f6f744..00000000 --- a/docs/docs/commands/search.md +++ /dev/null @@ -1,70 +0,0 @@ ---- -title: Searching History ---- - -# `atuin search` - - -Atuin search supports wildcards, with either the `*` or `%` character. By -default, a prefix search is performed (ie, all queries are automatically -appended with a wildcard). - -| Arg | Description | -| -------------------- | ----------------------------------------------------------------------------- | -| `--cwd`/`-c` | The directory to list history for (default: all dirs) | -| `--exclude-cwd` | Do not include commands that ran in this directory (default: none) | -| `--exit`/`-e` | Filter by exit code (default: none) | -| `--exclude-exit` | Do not include commands that exited with this value (default: none) | -| `--before` | Only include commands ran before this time(default: none) | -| `--after` | Only include commands ran after this time(default: none) | -| `--interactive`/`-i` | Open the interactive search UI (default: false) | -| `--human` | Use human-readable formatting for the timestamp and duration (default: false) | -| `--limit` | Limit the number of results (default: none) | -| `--offset` | Offset from the start of the results (default: none) | -| `--delete` | Delete history matching this query | -| `--delete-it-all` | Delete all shell history | -| `--reverse` | Reverse order of search results, oldest first | -| `--format`/`-f` | Available variables: {command}, {directory}, {duration}, {user}, {host}, {time}, {exit} and {relativetime}. Example: --format "{time} - [{duration}] - {directory}$\t{command}" | -| `--inline-height` | Set the maximum number of lines Atuin's interface should take up | -| `--help`/`-h` | Print help | - -## `atuin search -i` - -Atuin's interactive search TUI allows you to fuzzy search through your history. - -![compact](https://user-images.githubusercontent.com/1710904/161623659-4fec047f-ea4b-471c-9581-861d2eb701a9.png) - -You can replay the `nth` command with `alt + #` where `#` is the line number of the command you would like to replay. - -Note: This is not yet supported on macOS. - -## Examples - -``` -# Open the interactive search TUI -atuin search -i - -# Open the interactive search TUI preloaded with a query -atuin search -i atuin - -# Search for all commands, beginning with cargo, that exited successfully -atuin search --exit 0 cargo - -# Search for all commands, that failed, from the current dir, and were ran before April 1st 2021 -atuin search --exclude-exit 0 --before 01/04/2021 --cwd . - -# Search for all commands, beginning with cargo, that exited successfully, and were ran after yesterday at 3pm -atuin search --exit 0 --after "yesterday 3pm" cargo - -# Delete all commands, beginning with cargo, that exited successfully, and were ran after yesterday at 3pm -atuin search --delete --exit 0 --after "yesterday 3pm" cargo - -# Search for a command beginning with cargo, return exactly one result. -atuin search --limit 1 cargo - -# Search for a single result for a command beginning with cargo, skipping (offsetting) one result -atuin search --offset 1 --limit 1 cargo - -# Find the oldest cargo command -atuin search --limit 1 --reverse cargo -``` diff --git a/docs/docs/commands/server.md b/docs/docs/commands/server.md deleted file mode 100644 index 73e73014..00000000 --- a/docs/docs/commands/server.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -title: Server ---- - -# `atuin server` - -Atuin allows you to run your own sync server, in case you don't want to use the -one I host :) - -There's currently only one subcommand, `atuin server start` which will start the -Atuin http sync server - -See the [self hosting docs](/docs/self-hosting) for more - diff --git a/docs/docs/commands/shell-completions.md b/docs/docs/commands/shell-completions.md deleted file mode 100644 index b93b098a..00000000 --- a/docs/docs/commands/shell-completions.md +++ /dev/null @@ -1,19 +0,0 @@ -# `atuin gen-completions` - -[Shell completions](https://en.wikipedia.org/wiki/Command-line_completion) for Atuin can be generated by specifying the output directory and desired shell via `gen-completions` subcommand. - -``` -$ atuin gen-completions --shell bash --out-dir $HOME - -Shell completion for BASH is generated in "/home/user" -``` - -Possible values for the `--shell` argument are the following: - -- `bash` -- `fish` -- `zsh` -- `powershell` -- `elvish` - -Also, see the [supported shells](https://atuin.sh/docs/#supported-shells). diff --git a/docs/docs/commands/stats.md b/docs/docs/commands/stats.md deleted file mode 100644 index 258729da..00000000 --- a/docs/docs/commands/stats.md +++ /dev/null @@ -1,50 +0,0 @@ -# `atuin stats` - -Atuin can also calculate stats based on your history - this is currently a -little basic, but more features to come. - -## 1-day stats - -You provide the starting point, and Atuin computes the stats for 24h from that point. -Date parsing is provided by `interim`, which supports different formats -for full or relative dates. Certain formats rely on the dialect option in your -[configuration](../../docs/config/config.md#dialect) to differentiate day from month. -Refer to [the module's documentation](https://docs.rs/interim/0.1.0/interim/#supported-formats) for more details on the supported date formats. - -``` -$ atuin stats last friday - -+---------------------+------------+ -| Statistic | Value | -+---------------------+------------+ -| Most used command | git status | -+---------------------+------------+ -| Commands ran | 450 | -+---------------------+------------+ -| Unique commands ran | 213 | -+---------------------+------------+ - -# A few more examples: -$ atuin stats 2018-04-01 -$ atuin stats April 1 -$ atuin stats 01/04/22 -$ atuin stats last thursday 3pm # between last thursday 3:00pm and the following friday 3:00pm -``` - -## Full history stats - -``` -$ atuin stats -# or -$ atuin stats all - -+---------------------+-------+ -| Statistic | Value | -+---------------------+-------+ -| Most used command | ls | -+---------------------+-------+ -| Commands ran | 8190 | -+---------------------+-------+ -| Unique commands ran | 2996 | -+---------------------+-------+ -``` diff --git a/docs/docs/commands/sync.md b/docs/docs/commands/sync.md deleted file mode 100644 index 21d41337..00000000 --- a/docs/docs/commands/sync.md +++ /dev/null @@ -1,77 +0,0 @@ -# `atuin sync` - -Atuin can back up your history to a server, and use this to ensure multiple -machines have the same shell history. This is all encrypted end-to-end, so the -server operator can _never_ see your data! - -Anyone can host a server (try `atuin server start`, more docs to follow), but I -host one at https://api.atuin.sh. This is the default server address, which can -be changed in the [config](/docs/config/config.md#sync_address). Again, I _cannot_ see your data, and -do not want to. - -## Sync frequency - -Syncing will happen automatically, unless configured otherwise. The sync -frequency is configurable in [config](/docs/config/config.md#sync_frequency) - -## Sync - -You can manually trigger a sync with `atuin sync` - -## Register - -Register for a sync account with - -``` -atuin register -u <USERNAME> -e <EMAIL> -p <PASSWORD> -``` - -If you don't want to have your password be included in shell history, you can omit -the password flag and you will be prompted to provide it through stdin. - -Usernames must be unique and only contain alphanumerics or hyphens, -and emails shall only be used for important notifications (security breaches, changes to service, etc). - -Upon success, you are also logged in :) Syncing should happen automatically from -here! - -## Delete - -You can delete your sync account with - -``` -atuin account delete -``` - -This will remove your account and all synchronized history from the server. Local data will not be touched! - -## Key - -As all your data is encrypted, Atuin generates a key for you. It's stored in the -Atuin data directory (`~/.local/share/atuin` on Linux). - -You can also get this with - -``` -atuin key -``` - -Never share this with anyone! - -## Login - -If you want to log in to a new machine, you will require your encryption key -(`atuin key`). - -``` -atuin login -u <USERNAME> -p <PASSWORD> -k <KEY> -``` - -If you don't want to have your password be included in shell history, you can omit -the password flag and you will be prompted to provide it through stdin. - -## Logout - -``` -atuin logout -``` diff --git a/docs/docs/config/config.md b/docs/docs/config/config.md deleted file mode 100644 index 1e81230b..00000000 --- a/docs/docs/config/config.md +++ /dev/null @@ -1,354 +0,0 @@ -# Config - -Atuin maintains two configuration files, stored in `~/.config/atuin/`. We store -data in `~/.local/share/atuin` (unless overridden by XDG\_\*). - -You can also change the path to the configuration directory by setting -`ATUIN_CONFIG_DIR`. For example - -``` -export ATUIN_CONFIG_DIR = /home/ellie/.atuin -``` - -## Client config - -``` -~/.config/atuin/config.toml -``` - -The client runs on a user's machine, and unless you're running a server, this -is what you care about. - -See [config.toml](../../../atuin-client/config.toml) for an example - -### `db_path` - -The path to the Atuin SQlite database. Defaults to -`~/.local/share/atuin/history.db`. - -``` -db_path = "~/.history.db" -``` - -### `key_path` - -The path to the Atuin encryption key. Defaults to -`~/.local/share/atuin/key`. - -``` -key = "~/.atuin-key" -``` - -### `session_path` - -The path to the Atuin server session file. Defaults to -`~/.local/share/atuin/session`. This is essentially just an API token - -``` -key = "~/.atuin-session" -``` - -### `dialect` - -This configures how the [stats](../commands/stats.md) command parses dates. It has two -possible values - -``` -dialect = "uk" -``` - -or - -``` -dialect = "us" -``` - -and defaults to "us". - -### `auto_sync` - -Configures whether or not to automatically sync, when logged in. Defaults to -true - -``` -auto_sync = true/false -``` - -### `update_check` - -Configures whether or not to automatically check for updates. Defaults to -true. - -``` -update_check = true/false -``` - -### `sync_address` - -The address of the server to sync with! Defaults to `https://api.atuin.sh`. - -``` -sync_address = "https://api.atuin.sh" -``` - -### `sync_frequency` - -How often to automatically sync with the server. This can be given in a -"human-readable" format. For example, `10s`, `20m`, `1h`, etc. Defaults to `1h`. - -If set to `0`, Atuin will sync after every command. Some servers may potentially -rate limit, which won't cause any issues. - -``` -sync_frequency = "1h" -``` - -### `search_mode` - -Which search mode to use. Atuin supports "prefix", "fulltext", "fuzzy", and -"skim" search modes. - -Prefix mode searches for "query\*"; fulltext mode searches for "\*query\*"; -"fuzzy" applies the [fuzzy search syntax](#fuzzy-search-syntax); -"skim" applies the [skim search syntax](https://github.com/lotabout/skim#search-syntax). - -Defaults to "fuzzy". - -#### `fuzzy` search syntax - -The "fuzzy" search syntax is based on the -[fzf search syntax](https://github.com/junegunn/fzf#search-syntax). - -| Token | Match type | Description | -|-----------|----------------------------|--------------------------------------| -| `sbtrkt` | fuzzy-match | Items that match `sbtrkt` | -| `'wild` | exact-match (quoted) | Items that include `wild` | -| `^music` | prefix-exact-match | Items that start with `music` | -| `.mp3$` | suffix-exact-match | Items that end with `.mp3` | -| `!fire` | inverse-exact-match | Items that do not include `fire` | -| `!^music` | inverse-prefix-exact-match | Items that do not start with `music` | -| `!.mp3$` | inverse-suffix-exact-match | Items that do not end with `.mp3` | - -A single bar character term acts as an OR operator. For example, the following -query matches entries that start with `core` and end with either `go`, `rb`, -or `py`. - -``` -^core go$ | rb$ | py$ -``` - -### `filter_mode` - -The default filter to use when searching - -| Column1 | Column2 | -|------------------|--------------------------------------------------------------| -| global (default) | Search history from all hosts, all sessions, all directories | -| host | Search history just from this host | -| session | Search history just from the current session | -| directory | Search history just from the current directory | - -Filter modes can still be toggled via ctrl-r - -``` -filter_mode = "host" -``` - -### `search_mode_shell_up_key_binding` - -The default searchmode to use when searching and being invoked from a shell up-key binding. - -Accepts exactly the same options as `search_mode` above - -``` -search_mode_shell_up_key_binding = "fuzzy" -``` - -Defaults to the value specified for sea |