Teleport.vim integrates with programs like z
and autojump
to provide the same
navigational magic inside Vim.
:pwd " ./projects/app-name
:Z dotf
:pwd " ~/dotfiles
If those programs don't sound familiar, here's the 30-second pitch:
There's a competing set of command line tools that do pretty much the same
thing. They alias cd
, remember your most common directories, and let you
jump ("teleport") to that directory by passing a substring. It'll filter the
directories by your search term and jump to the one which is most
frecent.
If you aren't using something like that, stop what you're doing, forget this
vim plugin, and just install the CLI tool. It's a massive productivity
boost. I recommend zoxide
.
Plug 'PsychoLlama/teleport.vim'
Plugin 'PsychoLlama/teleport.vim'
git clone https://github.com/PsychoLlama/teleport.vim ~/.vim/bundle/teleport.vim
teleport.vim
is compatible with several different implementations.
If you use the oh-my-zsh
framework, teleport.vim
will work out of the box. You're good to go 🚀
If not, you'll need to explicitly provide a path to your z installation. Add this to your vimrc:
let teleport#path = expand('~/path/to/z/z.sh')
Where ~/path/to/z/z.sh
is replaced with the actual file path.
There's also a lua-based implementation of z
. Configuration is nearly
identical. Just put this in your vimrc:
let teleport#path = expand('~/path/to/z.lua/z.lua')
Where ~/path/to/z.lua/z.lua
is the actual file path, wherever you installed
it.
Zoxide is automatically detected - you don't have to do anything.
In order to get the j
alias, you're probably sourcing an autojump file in
your bash/zsh/fish setup. Find that file and set it in your vimrc:
let teleport#path = expand('~/path/to/autojump.sh')
If you have more than one of these installed (why???) there's a chance
teleport.vim
could choose the wrong one. You can force it to use
a particular driver by setting teleport#driver
.
let teleport#driver = 'z' " rupa/z
let teleport#driver = 'z.lua' " skywind3000/z.lua
let teleport#driver = 'zoxide' " ajeetdsouza/zoxide
let teleport#driver = 'autojump' " wting/autojump
If you don't see your favorite program listed here, feel free to open a request!
In traditional vim fashion, the documentation is kept in a help page. After installing the plugin, run:
:help teleport.vim