2 releases

0.1.1 Sep 29, 2023
0.1.0 Sep 29, 2023

#1221 in Development tools

MIT license

8KB
107 lines

bmk (bookmark-path manager)

bmk is a cli tool for managing directory paths. It allows you to bookmark frequently used paths, remove them when no longer needed, and quickly navigate to your saved locations. If you feel adventurous you can commit the config as a dot file.

This is a personal tool. You are free to use and that's it.

Prerequisites

Since I don't provide binaries, you need to have Rust installed in your system in order to build this tool.

Building

Manually

  • Build the project cargo build --release
  • Move the binary to usr/local/bin

Cargo

or just do cargo install bmk in this case, though, make sure that ~/.cargo/bin/ is in your PATH variable

Usage

  • bmk add adds the current path to the list of bookmarks
  • bmk list lists the saved paths
  • bmk remove removes the current path from the list
  • cd $(bmk go 1) goes to the first index
  • paths are stored in a dot file ~/.config/.bookmark-paths

Just a brief explanation why you still need to use the cd command. The obvious part is that what bmk go 1 actually does is it prints the path in the console. the $() captures the stdout of the execution into a local variable, which then allows cd to act upon.

cd is a part of the shell's core functionality, which means that when you execute cd within a process, it affects the current directory of that specific process. Once you exit the process, your working directory reverts to the state of the shell where you originally started.

:) enjoy

Dependencies

~1–12MB
~77K SLoC