{"id":21726341,"url":"https://github.com/nanvenomous/where-to","last_synced_at":"2025-04-12T23:09:25.214Z","repository":{"id":45188747,"uuid":"513397115","full_name":"nanvenomous/where-to","owner":"nanvenomous","description":"Jump from one place to another on your OS with the help of command completion and a simple config file.","archived":false,"fork":false,"pushed_at":"2022-12-29T22:03:11.000Z","size":10217,"stargazers_count":18,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"mainline","last_synced_at":"2025-04-12T23:09:17.876Z","etag":null,"topics":["bash","command-line","go","golang","navigation","productivity","shell","system-programming","zsh"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nanvenomous.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-07-13T05:52:07.000Z","updated_at":"2023-05-12T17:08:43.000Z","dependencies_parsed_at":"2023-01-31T10:00:50.145Z","dependency_job_id":null,"html_url":"https://github.com/nanvenomous/where-to","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nanvenomous%2Fwhere-to","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nanvenomous%2Fwhere-to/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nanvenomous%2Fwhere-to/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nanvenomous%2Fwhere-to/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nanvenomous","download_url":"https://codeload.github.com/nanvenomous/where-to/tar.gz/refs/heads/mainline","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248643004,"owners_count":21138355,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bash","command-line","go","golang","navigation","productivity","shell","system-programming","zsh"],"created_at":"2024-11-26T03:24:37.267Z","updated_at":"2025-04-12T23:09:25.188Z","avatar_url":"https://github.com/nanvenomous.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"![gopher portal](./.rsrc/gopher.png)\n# where-to\n\nI'm here, I'm there ;)\n\n### `to` command jumps from one place to another on your OS with the help of command completion and a simple config file.\n![demo](./.rsrc/where-to.gif)\n\n### `dn` \u0026 `up` commands navigate up or down a directory with a post hook to clear and list the contents.\n![up and down](./.rsrc/up_and_down.gif)\n\n### `t` command justs clears and lists the current directory vertically.\n![new ls](./.rsrc/new_ls_t.gif)\n\n# Dependencies\n\nBy default, where-to uses the `ls` to show directories.\n\nYou can install [exa](https://github.com/ogham/exa) or [tree](https://gist.github.com/fscm/9eee2784f101f21515d66321180aef0f) for a better experience.\n\n# Installation\n\n### 1. binaries\n\nYou can grab a precompiled binary from the [releases page](https://github.com/nanvenomous/where-to/releases/)\n\nThen run the following for the liunx binary for example:\n```\ntar -xf linux.tar.xz\ncd ./bin/linux\nsudo mv ./* /usr/local/bin/\n```\n\nIf you prefer to install from source (this requires you to [install go](https://go.dev/doc/install))\n```\ngit clone https://github.com/nanvenomous/where-to.git\ncd where-to\nmake\nsudo make install\n```\n### 2. completions\n\nYou will need to run the completion command for your given shell\n\nNote: check which shell you are running with `echo \"${SHELL}\"`\n\nThen run **only one** of the following\n```\nsudo make zsh-completions\nsudo make bash-completions\n```\n### 3. You need to add the plugin to your shell\n\nAdd the following line to your shell file (i.e. `.bashrc` or `.zshrc`):\n```\neval \"$(where-to init)\"\n```\n\n### 4. Configuration (i.e. adding places to go)\n\nYou can always edit `~/.config/where-to.yaml` manually\n\nbut I recommend to use the convenience functions\n\nhere's an example where I add an alias for `~/.config/nvim` so I can edit my neovim config file:\n\n![convenience functions](./.rsrc/convenience-functions.gif)\n\nThe config file maps an alias to a directory on your machine so you can run:\n\n\u003e to [alias]\n\nand you will be navigated to the corresponding directory\n\n### Shell compatibility\n\nPull requests welcome!\n- [x] zsh\n- [x] bash\n- [ ] fish\n- [ ] xonsh\n\n# Motivation\nThis project is heavily inspired by [zoxide](https://github.com/ajeetdsouza/zoxide)\n\nHowever, `where-to` has a more declarative approach \u0026 focuses on autocompletion rather than fuzzy-finding\n\nfor example, if you don't know where you want to go try running\n\u003e to \\t\n\n(that's to\\\u003cspace\\\u003e\\\u003ctab\\\u003e)\n\n![autocomplete example](./.rsrc/where-to-autocomplete-example.png)\n\nand find your way from there!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnanvenomous%2Fwhere-to","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnanvenomous%2Fwhere-to","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnanvenomous%2Fwhere-to/lists"}