17 releases (10 stable)
1.4.0 | Oct 2, 2024 |
---|---|
1.3.0 | May 14, 2024 |
1.2.3 | Feb 28, 2024 |
1.2.0 | Aug 2, 2023 |
0.4.0 | Jul 12, 2023 |
#255 in Development tools
18KB
330 lines
wspick
terminal workspace picker
If you hate typing out all your long project paths in the terminal just to cd there or open them in an editor, this is for you.
❯ wspick
? select project:
> test1
test2
project
[new project]
[new dir]
[edit]
[↑↓ to move, enter to select, type to filter]
❯ wspick
? select project: tes
> test1
test2
[↑↓ to move, enter to select, type to filter]
Installation
cargo install wspick
or just download a binary from the releases section
Usage
Calling wspick opens a selector with projects that can be opened in a configured editor.
New projects can be added by selecting new project
and specifing path and name or by selecting edit
and editing the config directly.
With new dir
you can add a path and wspick will show all directories in that path as project.
wspick
? select project
> [new project]
[new dir]
[edit]
[↑↓ to move, enter to select, type to filter]
Parameters
-p
print the selected path instead of opening it. Useful for usage in scripts.
CD to projects
To use it on linux to cd to projects create the following alias:
alias cdws='cd $(wspick -p)'
Config
On first start a new configfile wspick.toml
is generated and stored in an appropriate location. On linux this is ~/.config/wspick
dirs = []
open_cmd = ""
editor = "/usr/bin/helix"
sort = true
exclude_proj_dirs = true
[paths]
exercism-rust = "/home/manuel/programming/exercism/rust"
dirs
: list of directories. All subdirectories will be shown as projectsopen_cmd
: command that is executed on selection. Empty means printing the selected patheditor
: editor used when you select editsort
: sort prjects alphabeticallypaths
: list of project names and pathsexclude_proj_dirs
: exclude directories containing any already defined project from the autogenerated list
Dependencies
~7–17MB
~235K SLoC