A little Python command line utility to make rsync
easier to use.
rsync
is great, but I always find myself struggling to remember folder paths, and even when I remember there's an high chance I'll mistype them. Moreover: most of the time I use the same 2-3 routines repeatedly, so it cries for automation. Finally I wanted to learn how prompt_toolkit
works, so here we are. Hope it helps!
- Uses
prompt_toolkit
to suggests source and target folders while typing (with fuzzy autocompletion) - Stores folders paths in a database, updating the suggestions over time
- Stores the history of
rsync
commands so that repeating the last one is few click away - Can be initialized with a set of source-target paths
- Easily add controls for specific
rsync
parameters with multiple choice prompts (dryrun only for the moment) - Wrap around password prompt (tested)
- Toolbar with keyboard shortcuts suggestions (tested, still not functional)
- Show history
- Dry run should directy lead to not-dryrun without repeting procedure ✔️
- Radio button breaks PromptSession app. Avoid it.✔️
- Keyboard shortcuts
- Shortcut for history mode (Ctrl-H) ✔️
- Go back to previous step and modify (Ctrl-Z)
- substitute with Tab navigation ✔️
- History mode: query history for full routines
- Display nicely: check how to do it with
prompt_toolkit
- Display nicely: check how to do it with
- Default CLI arguments to use it as vanilla Rsync
- storing in db
- Configuration file and configuration routines
- absolute path of db
- Remove
mnt
as root folder - Reverse mode or merged mode: instead of separate source and target paths suggestions get their union set
- update while typing or reload everything?
- Tree exploration for new folders
- Check completers>filesystem
- Change prompt colors