All Versions
Latest Version
Avg Release Cycle
98 days
Latest Release
632 days ago

Changelog History
Page 1

  • v0.30.1 Changes

    January 31, 2020

    🛠 A small bugfix release fixing the jump --version output that was lagging a version behind. As a nice twist, we're offering an official Windows build now! 🙀

  • v0.30.0 Changes

    January 30, 2020

    🍱 Welcome 0.30.0 in your lives. 🙌 Here's what changed:

    XDG Config

    Jump now stores its config in XDG compatible way. The search algorithm tries the directories in order:

    • $JUMP_HOME (if given)
    • $HOME/.jump (if already exists)
    • $XDG_CONFIG_HOME/jump (preferred for new installs)

    👍 We're moving towards XDG, but for existing installs or non-XDG supported systems, the ~/.jump dir will be used.


    0️⃣ Jump is opinionated and we would recommend you to stick to the sweet hand-tuned defaults we have provided after years of research, however, we provide a few options that may be useful to hand tune yourself:

    0️⃣ --space (values: slash (default), ignore)

    0️⃣ The calls j parent child and j parent/child are equivalent by default because spaces are treated as OS separators (/ in Unix). You can choose to ignore spaces in searches by setting the spaces option to ignore:

    jump settings --space=ignore

    0️⃣ --preserve (values: false (default), true)

    🚚 By default, landing in a directory that is no longer available on disk will cause jump to remove that directory from its database. If a jump lands in unmounted drive, the changing of the directory will timeout. This is why this is turned off (false) by default.

    jump settings --preserve=true


    0️⃣ Reset jump settings to their default values.

    jump settings --reset


    When you j miss and you land in the wrong directory, jump can let you go to the lesser scored entries of the miss term if you call j without arguments. Starting with 0.30.0 every time you call j it will deflate the score of the miss term which can let jump learn not to go to that bad directory over time.

  • v0.23.0 Changes

    April 08, 2019

    Hello, fellow jumpers!

    🛠 We got our first major issue fixed by a contributor! 🥳 Thanks to @mafredri in #36, we have a fixed import for z aged score files.

    🚀 Other than that, we have introduced jump top term which shows the directories and their scores for a specific term and optimized jump clean. We're also delivering Linux ARM binaries in the release notes! 💪

  • v0.22.0 Changes

    November 22, 2018

    🍱 Ahoy, 👋

    🚀 This release comes with a few minor changes:

    🚅 The exact match mechanism is now triggered only on search terms of 5 or more characters. This is so we don't end up in common development project directories like app, lib, src, test, main, java and so on. If you have a project called application, for example, j app will no longer end up in a common rails_project/app directory. I'm not telling you to use Rails (you should), but it's just an example! 😅

    You can use * or ** in a search term to match arbitrary deep nested directories. For example, you can now implement autojump's jc like:

    bash & zsh

    jc() { j "$(basename $PWD)/\*\*/[email protected]"}


    function jc j "(basename $PWD)/\*\*/$argv"end
  • v0.21.0 Changes

    September 07, 2018

    🚀 You'd usually expect one of those witty release notes here, alas, this release is an exception! This release is straight to the point!

    Have you ever wondered whether jump is like autojump or z? If you used autojump or z and used jump you'd already know it is! (But, that fuzzy matching is just SO MUCH BETTER 😉). And if you used them, you can now try jump without sacrificing your datafile! 🎉

    jump import

    You can import your datafile from autojump or z with:

    $ jump import

    This will try z first then autojump, so you can even combine all the entries from both tools.

    The command is safe to run on pre-existing jump database, because if an entry exist in jump already, it won't be imported and it's score will remain unchanged. You can be explicit and choose to import autojump or z with:

    $ jump import autojump $ jump import z

    Happy jumping!

  • v0.20.0 Changes

    July 21, 2018

    🚀 For variety of reasons jump may not always find the directory you want, but don't worry you can make it stick! 📌 This release is all about those pins, baby! 📍

    A pin forces an input to always go to a specific location. If you want j r to always go to /Users/genadi/development/rails, you can do:

    $ cd /Users/genadi/development/rails $ jump pin r $ cd$ j r # Skips the scoring and goes straight to the pinned directory.$ pwd/Users/genadi/development/rails

    🔔 Notice the jump command instead of the j shell function helper. j will always treat its input as searched terms. It may apply some heuristics to the way the input looks, but it will never accept arguments or switches. Here is where the jump command comes in. It is bundled with lot's of helpers to make your j life easier. The pins are one of them.

    • 🚚 jump pin has been revamped and supports spaces in its input. This means that the support for explicit directory is removed from the command-line options.
    • 🚚 jump unpin is a new command that lets you remove a pin.
    • jump pins is a new command that lists the current pins.

    📌 Happy pinning, y'all!

  • v0.19.0 Changes

    April 26, 2018

    🍱 They grow so fast, don't they? One day they jump around directories, then next they give you proper autocompletion when you press that tab button. 😭

    🍱 Yes, my dear friends, jump has a proper autocompletion support now! Please do test it in your environment and hit me up with issues if that precious autocompletion does not behave as you want it to. Happy jump-day, yall! 🕺

  • v0.18.0 Changes

    January 08, 2018

    The last release was 9 months ago, so I say it's about time to give brand new new life to jump! This release comes with lots of internal reworkings, but the gist of it is:

    🚚 A new command! jump forget removes a directory from the internal database. You can use it to "unlearn" those habits.

    🌐 Deep search can be initiated with spaces, as well as slashes. Meaning that j soc/web is the same as j soc web. Maybe you find the spaces easier to type and less cryptic than the separators? Please shout at us @gsamokovarov if you have strong opinions.

    Atomic database file write operations, which prevent the current known corruption problems.

    👍 Revamped man page with man j support. Oh yes!

    🆕 New testing suite powered by

    Happy new year folks! 🎆 Thank you for using jump. 🙇‍♂️

  • v0.13.0 Changes

    April 13, 2017

    🍱 Heya 👋,

    🍱 Happy 13th of April everyone! I don't know about your part of the 🌏, but in mine (🌍), we're getting closer to the Prom time. Ain't nothing better than young people and their anxiousness! They're either scared shitless of what the fuck is next after school? The ever growing excitement of leaving your parent's house? Or staying in there until your 30's? Maybe you like it, though! Ain't nothing better than mum's cooking, right?

    Anyway, the Prom time comes with endless parties and a lot of public counting yelling exercises. It goes like this: (PLEASE YELL WITH ME, THIS IS HOW YOU DO IT!)

    1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13...

    👀 Twelve? Where did twelve go? You see: 0.10.0, 0.11.0, 0.13.0. That's right, I do denounce 12. 0.12.0 to be more specific. It doesn't exist anymore. It's a wasted year, anyway! YOU ARE WELCOME, 🌍!

    Jump, reinventing Number theory since 0.13.0. Cause fundamentally changing how Math works wasn't enough for us (it's just me, really), we (me) made jump easier to use with case-sensitive search terms.

    Back in the ol' 0.11.0 and below days, you needed both lower and upper cased letters in a term to trigger a case-sensitive search. Not anymore, though! Just a capital letter is enough to trigger that fancy search now. Both lines below will land you in the very same place in 0.13.0.

    (Of course, that's /Users/genadi/Development/fusion/FusionAuthor2, if you are that curious.)

    $ j F2 $ j FA2

    👍 A press to the shift is a press to the shift. If you made the effort the press it, it better means something, right

  • v0.11.0 Changes

    March 16, 2017

    🍱 👋

    🍱 Have you ever j bweb only to end up in the wrong project? Bummer, right? Well, when our matching fails, you can now (manually) fix it! You can use a 📌, when you need to.

    📌 jump pin bweb will force j bweb to always go to the current directory.
    📌 jump pin bweb /directory/path will force j bweb to always go to /directory/path

    🚀 This release also fixes a regression in the deep jump search. What is deep jump search and why it isn't that well advertized you may ask? Very good question!

    Deep Jump

    Jump normalizes all search terms to the base names of the scored directories, because absolute paths are long and short terms can fuzzy match them easily.

    Given the following filesystem structure:

    |-- artwork
    |-- interview
    +-- website
    +-- website
 ensure a match of /Users/foo/Development/chaos/website, you can do:

    $ j ch/web
    $ pwd

    👍 Nice, eh? No more guessing. The search is normalized only on the last two parts of the target path. This will ensure a better match, because of the shorter path to fuzzy match on. You can even add many separators, if this will help your search:

    $ j dev/ch/web
    $ pwd

    The term above will match the last three directories of the path, yielding /Users/foo/Development/chaos/website.

    🍱 You are welcome, 🌍. Much ❤️ from Southeastern Europe!