A mnemonic terminal url opener. Also a personal minimal terminal bookmark manager.
If you live mostly in the terminal and want quick access to some of your most frequently visited websites, this little tool can help you achieve that.
An example scenario:
- I often visit
https://crates.io
. - I often search for a crate on crates.io.
To do so in the terminal, I run once gogo add cr https://crates.io
.
This allows me to do:
$ gogo cr
opening: "https://crates.io"
Some websites support /search?q={query}
, for those you can also do:
$ gogo search cr serde
opening: "https://crates.io/search?q=serde"
- Install rust (tested with 1.46+).
- Export
GOGODB_PATH
env var to something like:/path/to/gogo.sqlite
. - Supply a browser executable with
gogo set_browser /path/to/browser
.
PS: For MacOS browser, try this (Firefox as an example):
$ gogo set_browser /Applications/Firefox.app/Contents/MacOS/firefox-bin
$ cargo install gogo
gogo ls
will print an ascii table:
$ gogo ls
+-----------+--------------------+
| key | val |
+-----------+--------------------+
| cr | https://crates.io |
+-----------+--------------------+
gogo check
will print the url for mnemonic:
$ gogo check cr
value: "https://crates.io"
-
gogo import /path/to/exported_csv
andgogo export
work as expected and output a CSV file. -
If you switch systems, just satisfy the requirements and copy over your
gogo.sqlite
db to your new machine.
The help is self documenting:
$ gogo --help
A mnemonic url opener
Usage: gogo [mnemonic] [COMMAND]
Commands:
open Open url using mnemonic
set_browser Allow setting preferred browser
rm Remove mnemonic
check Check mnemonic
import Import CSV
ls List mnemonic url mapping
get_browser Get currently configured browser
export Export database to CSV
search Construct /search?q= query for known mnemonic
add Add url mnemonic mapping
help Print this message or the help of the given subcommand(s)
Arguments:
[mnemonic] The mnemonic to open
Options:
-h, --help Print help information
-V, --version Print version information
All subcommands have their own help sections, for example:
$ gogo add --help
Add url mnemonic mapping
Usage: gogo add <name> <val>
Arguments:
<name> url name
<val> url value
Options:
-h, --help Print help information