aboutsummaryrefslogtreecommitdiffstats
path: root/src/shell (follow)
Commit message (Collapse)AuthorAge
* feat: add *Nushell* support (#788)Steven Xu2023-03-26
| | | | | | | | | * feat: add *Nushell* support * refactor: use `sh` to swap `STDOUT` and `STDERR` instead of using a temporary file * feat: include both keybindings, with the current REPL buffer passed to *Atuin*'s * feat: don't record commands run by keybindings
* fish: Fix `atuin init` for the fish shell (#699)Tobias Hunger2023-02-14
|
* Rework `atuin init` (#652)Jamie Quigley2022-12-24
| | | | | | | | | | | | | | * Rework `atuin init` This allows users to disable the CTRL-R and Up Arrow bindings, independently from one another * Document --disable-{ctrl-r,up-arrow} * Apply suggestions from code review Co-authored-by: Ellie Huxtable <ellie@elliehuxtable.com> Co-authored-by: Ellie Huxtable <ellie@elliehuxtable.com>
* Allow overriding filter and search modes from CLI (#635)Patrick Decat2022-12-18
| | | | | | | | | | | | | * Allow overriding filter and search modes from CLI arguments * Use session filter mode for bash up key binding * We precisely do not want to add quotes here so that all arguments are properly passed * Add --shell-up-key-binding hidden command argument and filter_mode_shell_up_key_binding configuration option to allow customizing the filter mode used when atuin is invoked from a shell up-key binding * Correct up binding for zsh Co-authored-by: Ellie Huxtable <ellie@elliehuxtable.com>
* Handle multiline commands in fish shell (#623)Patrick Jackson2022-11-19
|
* Respect fish shell's builtin private mode (#577)Patrick Jackson2022-10-21
|
* Fix compatability with fish vi key bindings (#541)Jacob Evan Shreve2022-10-07
| | | | | | | | | | | | | | | | | PR #420 addressed the existence of pagination in a fish prompt by trying to track when pagination was enabled and disabled. This introduced atuin-specific bindings for common keys: `\t`, `\e`, `\r`, and `\n` which exports a variable and informs the `_autiun_search` function to not show the TUI. Fish has a commandline function that will instead tell you whether pagination is enabled so the user doesn't need to keep track of that state. This PR uses this function, `commandline -P` to replace the prior TUI supression scheme. Removing these extra function calls allows us to remove the additional bindings which were breaking fish vi key bindings. Replacing the value for `bind -M insert \e` completely breaks vi mode by blocking the user from exiting insert mode. By removing these extra binds, this PR restores fish vi mode compatability.
* Clear RBUFFER when accepting output from atuin (#545)c-142022-09-25
| | | | | | | Since we pass $BUFFER to atuin search, retaining RBUFFER (the part of the buffer to the right of the cursor) probably doesn't make sense. The advantage of setting RBUFFER and LBUFFER separately instead of setting BUFFER is that the cursor is positioned after the end of LBUFFER instead of remaining where it was before atuin was called.
* hide errors for #516 (#518)Conrad Ludgate2022-09-01
|
* Fix atuin crashing on commands that start with -- (#509)Jamie Quigley2022-08-23
| | | | The use of `--` in the shell scripts prevents clap attempting to parse the command name as a flag, in the case that it starts with `--`.
* Enhancements to bash init script (#445)Sam Edwards2022-06-07
|
* Improve default fish keybindings (#420)Sam Lanning2022-05-20
| | | | | | | | | | binding on "up" can conflict with the default fish keybindings as when in tab-completion mode, you are supposed to be able to use arrow keys to navigate the grid of suggestions, however pressing "up" will open the tui instead. This attempts to work around it by tracking when the user is probably in a tab completion mode by setting a variable that we use to determine whether to open atuin or perform the default fish up action
* Don't pollute shell environment - remove 'id' variable (#408)Jakub Jirutka2022-05-16
|
* Update fish bindings. (#265)Patrick Jackson2022-02-15
|
* Restore bash 4.2 compatibility, only add hook once (#271)Sandro2022-02-15
|
* Add support for blesh (#267)Sandro2022-01-25
| | | | | | | * Fix intendation * Add support for blesh See https://github.com/akinomyoga/ble.sh/wiki/Manual-%C2%A71-Introduction#user-content-fn-blehook for more details
* remove unused environment var loading entire history into an env var (#242)Mat Jones2021-12-16
|
* Fish importing (#234)Conrad Ludgate2021-12-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * make a start on fish * fix * test * enable fish * fmt * update histpath set up fish init script * update readme * cover edge case * fmt * fix session variables Co-authored-by: PJ <me@panekj.dev> * respect NOBIND Co-authored-by: PJ <me@panekj.dev> * fix env var setting Co-authored-by: PJ <me@panekj.dev> * fix whitespace Co-authored-by: PJ <me@panekj.dev> * add fish to supported shells Co-authored-by: PJ <me@panekj.dev>
* run shellcheck (#97)Ian Smith2021-05-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * run shellcheck * Update .github/workflows/shellcheck.yml Co-authored-by: Conrad Ludgate <oon@conradludgate.com> * shellcheck fixes in which i am highly confident * shellcheck fixes in which I am less confident - not executing this is fine, right? * SC2155 In src/shell/atuin.bash line 1: export ATUIN_SESSION=$(atuin uuid) ^-----------^ SC2155: Declare and assign separately to avoid masking return values. * shellcheck doesn't support zsh, per https://github.com/koalaman/shellcheck/wiki/SC1071 * yaml fix * gotta checkout our code, too * yaml fix * action spelling * exclude .zsh * Shellcheck doesn't support zsh, per https://github.com/koalaman/shellcheck/wiki/SC1071, and the ignore: param in ludeeus/action-shellcheck only supports _directories_, not _files_. So instead, we manually add any error the shellcheck step finds in the file to the above line ... * comment all the ignores * Update src/shell/atuin.bash Co-authored-by: Ellie Huxtable <ellie@elliehuxtable.com> * new zsh plugin shellcheck errors * new zsh plugin shellcheck errors, pt 2 Co-authored-by: Conrad Ludgate <oon@conradludgate.com> Co-authored-by: Ellie Huxtable <ellie@elliehuxtable.com>
* Fix bash integration to set the session (#88)Ellie Huxtable2021-05-09
|
* Run shellcheck on bash file (#81)Yuvi Panda2021-05-09
| | | Ref #64
* Add ATUIN_NOBIND (#62)Ellie Huxtable2021-05-08
| | | | | | | | | | | * Add ATUIN_NOBIND * Update docs/key-binding.md `<kbd>`, what magic Co-authored-by: bl-ue <54780737+bl-ue@users.noreply.github.com> Co-authored-by: bl-ue <54780737+bl-ue@users.noreply.github.com>
* Support bash, resolves #3Ellie Huxtable2021-04-26
|
* Bugfixes, show time ago, perf improvementsEllie Huxtable2021-04-21
| | | | Also allow unique listing and more ergonomic cwd usage
* Switch to Warp + SQLx, use async, switch to Rust stable (#36)Ellie Huxtable2021-04-20
| | | | | * Switch to warp + sql, use async and stable rust * Update CI to use stable
* Add history sync, resolves #13 (#31)Ellie Huxtable2021-04-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add encryption * Add login and register command * Add count endpoint * Write initial sync push * Add single sync command Confirmed working for one client only * Automatically sync on a configurable frequency * Add key command, key arg to login * Only load session if it exists * Use sync and history timestamps for download * Bind other key code Seems like some systems have this code for up arrow? I'm not sure why, and it's not an easy one to google. * Simplify upload * Try and fix download sync loop * Change sync order to avoid uploading what we just downloaded * Multiline import fix * Fix time parsing * Fix importing history with no time * Add hostname to sync * Use hostname to filter sync * Fixes * Add binding * Stuff from yesterday * Set cursor modes * Make clippy happy * Bump version
* Add TUI, resolve #19, #17, #16 (#21)Ellie Huxtable2021-03-20
|
* BUFFER -> LBUFFEREllie Huxtable2021-02-16
|
* Add init command (#12)Ellie Huxtable2021-02-15
* Add init command This makes setting up the shell part of A'tuin much easier. Eval the output of "atuin init". * Update readme, add up binding