diff --git a/.gitignore b/.gitignore index cad4e29..a31fb39 100644 --- a/.gitignore +++ b/.gitignore @@ -17,3 +17,6 @@ Thumbs.db .\#* *.swp *.swo + +# Development notes +.dev-notes.md diff --git a/README.md b/README.md index 03b778b..68e0f5d 100644 --- a/README.md +++ b/README.md @@ -65,7 +65,9 @@ After installation, you might want to ensure the `stash` command is easily acces - If not, create a symbolic link: `ln -sf ~/.guix-profile/bin/stash ~/.local/bin/stash` 2. **Using Manual Installation**: + - Add an alias to your shell config: + ```sh # For Fish (in ~/.config/fish/config.fish): alias stash="guile -L /path/to/stash /path/to/stash/stash.scm" diff --git a/USER_GUIDE.md b/USER_GUIDE.md index 15aa9af..2e11271 100644 --- a/USER_GUIDE.md +++ b/USER_GUIDE.md @@ -1,6 +1,7 @@ # Stash User Guide ## Table of Contents + 1. [Installation](#installation) - [Using Guix](#using-guix) - [Manual Installation](#manual-installation) @@ -31,6 +32,7 @@ After installation, the `stash` executable will be available in your Guix profil If you're not using Guix, you can install Stash manually: 1. Install prerequisites: + ```sh # Debian/Ubuntu sudo apt-get install guile-3.0 @@ -43,6 +45,7 @@ If you're not using Guix, you can install Stash manually: ``` 2. Clone and set up the repository: + ```sh git clone https://github.com/yourusername/stash.git cd stash @@ -55,6 +58,7 @@ If you're not using Guix, you can install Stash manually: ### Fish Shell 1. Add to `~/.config/fish/config.fish`: + ```fish # Guix environment setup set -gx GUIX_PROFILE $HOME/.guix-profile @@ -70,6 +74,7 @@ If you're not using Guix, you can install Stash manually: ``` 2. Alternative method using symlink: + ```fish ln -sf ~/.guix-profile/bin/stash ~/.local/bin/stash ``` @@ -77,6 +82,7 @@ If you're not using Guix, you can install Stash manually: ### Bash Shell Add to `~/.bashrc`: + ```bash # Guix environment setup export GUIX_PROFILE="$HOME/.guix-profile" @@ -88,6 +94,7 @@ fi ### Zsh Shell Add to `~/.zshrc`: + ```zsh # Guix environment setup export GUIX_PROFILE="$HOME/.guix-profile" @@ -99,18 +106,21 @@ fi ## Basic Usage 1. Simple file stashing: + ```sh # Move a directory to backup location stash -s ~/Documents/notes -t ~/backup/notes ``` 2. Recursive stashing: + ```sh # Move entire config directory stash -s ~/.config -t ~/.dotfiles/config -r ``` 3. Interactive mode: + ```sh # Let stash prompt for target location stash -s ~/Pictures -i @@ -119,15 +129,18 @@ fi ## Advanced Features 1. **Ignore Patterns** + - Create `.stashignore` in source directory - Add patterns similar to `.gitignore` - ``` + + ```sh *.tmp .DS_Store node_modules/ ``` 2. **Recursive Mode** + - Use `-r` flag for entire directory trees - Preserves directory structure - Creates symlinks for all subdirectories @@ -170,4 +183,4 @@ fi - "auto-compilation enabled": Set GUILE_AUTO_COMPILE=0 For more information or to report issues, visit: -https://codeberg.org/glenneth/stash +