goto
is a lightweight terminal tool that simplifies directory navigation.
- Quickly navigate directories with fuzzy search.
- Customise behaviour with configuration options.
- Compatible with Bash and Zsh shells.
Coming soon!
git clone https://github.com/gabrielg2020/goto.git
cd goto
go build -o goto ./cmd/
mv goto /usr/local/bin/
Please make sure that these are installed.
Run the provided setup script to automate this setup:
./setup.sh
Add the following function to your .bashrc
or .zshrc
:
goto() {
dir=$(/usr/local/bin/goto "$@")
if [ -d "$dir" ]; then
echo "Changing directory to: $dir"
cd "$dir"
else
echo "No directory selected or invalid directory: $dir"
fi
}
Note
Coming soon!
goto --help
goto <pattern>
goto src
Option | Description |
---|---|
-d |
Specify maximum search depth. |
-h |
Display help message. |
<pattern> |
Fuzzy search pattern for directories. |
goto
uses a configuration file located at ~/.goto_config.yaml
. This file is optional and allows you to customise the tool's behaviour.
maxDepth: 3
excludeDirs:
- node_modules
- .git
- .vscode
Option | Description | Default |
---|---|---|
maxDepth |
Maximum search depth. | 5 |
excludeDirs |
Directories to be excluded from the search. | ".git", "node_modules" |
We welcome contributions! Please look at CONTRIBUTING.md to learn how to contribute.
The Developers Guide explains some key ideas and decisions, future consideration and extra knowledge of this project.
Coming Soon!
The MIT Licence (MIT)
Copyright (c) 2023 - 2024 Gabriel Guimaraes. All Rights Reserved.