jump

command module
v0.0.0-...-9e25725 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 21, 2019 License: GPL-3.0 Imports: 1 Imported by: 0

README

CircleCI Documentation codecov

This project implements a simple shell command jumper similar to autojump or fasd. My version is just called jump, because the good names were already taken. I wrote this for my own personal use, to work around defects I found in both of those projects. This implementation is probably faster than the alternatives (it's written in Go and uses a binary database format), but it has fewer features and I doubt the performance difference is noticeable anyway. I think jump is less likely to silently corrupt your jump database than autojump, but as always the principle of caveat emptor applies.

Features:

  • Small and fast, written in Go
  • Binary database format (proven to be 666% faster than text databases)
  • Incorporates access recency in search rankings
  • Compatibility with autojump shell commands (j, jc, jo, and jco)

Installation

If you use Bash and want to try out my code, you can set it up like this:

# Install the jump command
$ go get -u github.com/eklitzke/jump

# Source jump.sh in your .bashrc
$ curl -sL https://raw.githubusercontent.com/eklitzke/jump/master/jump.sh -o ~/.jump.sh
$ echo '. ~/.jump.sh' >> ~/.bashrc

To check that everything is set up correctly, launch a new Bash shell (e.g. by creating a new terminal window) and check that typing j help as a command produces output like this:

# Check that jump.sh is sourced properly by your shell.
$ j help
Usage:
  j QUERY     jump to directory matching QUERY
  jc QUERY    jump to subdirectory matching QUERY
  jo QUERY    open the file matching QUERY
  jco QUERY   open the subdirectory file matching QUERY

Usage

Use the j command to jump places. For example, if you run a lot of commands in a directory named ~/foo/bar, running the shell command j bar should jump to the ~/foo/bar directory.

For more advanced commands run jump help:

$ jump help
Jump is a shell autojumper

Usage:
  jump [command]

Available Commands:
  dump        Dump database contents as plaintext
  help        Help about any command
  import      Import an autojump database
  prune       Automatically prune old or invalid database entries
  remove      Remove a database entry
  search      Search the database for matches
  update      Update database weights

Flags:
  -c, --config string      config file (default "/home/evan/.config/jump/jump.yml")
  -D, --database string    database file (default "/home/evan/.local/share/jump/db.gob")
  -d, --debug              enable debug mode
  -h, --help               help for jump
      --log-caller         include caller info in log messages
  -l, --log-level string   the log level (default "info")
      --time-matching      enable time matching in searches (default true)

Use "jump [command] --help" for more information about a command.

Issues With PROMPT_COMMAND

The jump.sh shell code makes use of PROMPT_COMMAND in order to maintain the jump database. That means that blindly overwriting PROMPT_COMMAND elsewhere in your Bash profile will cause jump to stop working. If you want to set your own PROMPT_COMMAND all you need to do is make sure you append to the variable rather than overwriting it (you can look at jump.sh itself for an example of how to do this correctly).

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL