~/.jumpfm
and restart
JumpFm.
Table of Content

Jumping
Press j
to jump directly to your favorites folders.
No manual bookmarking is needed, JumpFm will learn where you want
to go.

Git Awareness
Files are displayed according to thier git status.

Plugins
Powerful plugin system based on NPM.

Filtering
Press f
to quickly find the files you are looking
for.

Flat Mode
Press r
and all directories are gone. Press it again
to bring them back.

Instant Gist
Press ctrl + g
to create instant gist from selected
files.
Before You Jump
Instant gists are public !!! don't gist your private ssh key or any other private information.
There are no confirmation dialogs in JumpFm, whenever you hit the
DEL
key a file is gone.
Key Bindings
The default keybindings can be configured by editing tde keybinding file. Not all keybindings are available in filter mode.
Default Bindings
Navigation
j | Open the jump dialog |
down / [ | Down |
page down / ctrl + [ | Page down |
up / ] | Up |
shift + up | up and select |
page up | page up |
shift + page up | page up and select |
home | go to start |
end | go to end |
enter | enter folder / open file |
backspace | up the directory tree |
ctrl + home | go to home directory |
ctrl + right | open directory in right panel |
ctrl + left | open directory in left panel |
alt + left | go to previous directory |
alt + right | go to next directory |
* Holding the shift key while navigating also triggers file selection.
Selection
space | Toggle selection |
ctrl + a | Select all |
esc | Clear selection |
File Operations
del | Delete selected files |
F4 | Edit file |
Shift + F4 | New File |
F7 | New Folder |
F2 | Rename File |
z | Zip selected files |
u | Unzip current file |
P | Copy full path of active panel |
p | Copy full path of current file to clipboard |
F5 | Copy selected files |
F6 | Move selected files |
Panels
tab | Switch panel |
s | Swap panels |
Filters
f | Enter filter mode |
l | Use selected files extension as a filter |
h | Toggle hidden mode |
r | Toggle flat mode |
Miscellaneous
ctrl + g | Create a public gist from selected files |
ctrl + = | Increase font size |
ctrl + - | Decrease font size |
ctrl + 0 | Reset font size |
Settings
All settings files are located under the ~/.jumpfm
directory. You can edit the settings files to make JumpFm your own. You can also safely delete the settings folder and restart JumpFm to restore the default settings.
Default Settings:
Key | Default Value | Description |
---|---|---|
timeFormat | HH:mm:ss | Set the time format (e.g. for the clock plugin) |
dateFormat | MM/DD/YYYY | Set the date format (e.g. for the clock plugin) |
flatModeMaxSize | 200 | Set the maximum number of files the flat mode can display |
historyMaxSize | 20 | Set the maximum history stack size |
jumpMaxDbSize | 300 | Set the maximum number of folders that JumpFm index for fast jumping |
jumpDbSaveInterval | 5 | Controls how often JumpFm update the jumps database |
weatherLocation | Haifa, IL | Default weather location |
editor | gedit | Default editor to edit files |
Plugins
Plugins control every aspect of JumpFm. You can enable/disable them, install new once and also write your own. They are located under ~/.jumpfm/plugins
and are managed with npm/yarn.
Builtin plugins:
Plugin | Enabled | Description | Safely Disable |
---|---|---|---|
jumpfm-version | true | Displays the current version of JumpFm. | yes |
jumpfm-clock | true | Displays the date and time. | yes |
jumpfm-weather | true | Displays local (need to set the weatherLocation value) weather
|
yes |
jumpfm-fs | true | List the files in the directory. | no |
jumpfm-key-nav | true | Enable keyboard shortcuts. | no |
jumpfm-file-ops | true | Enable file operations such as renaming, editing, etc... | no |
jumpfm-copy | true | Enable file copying. | no |
jumpfm-jump | true | Enable directory jumping. | yes (but why?) |
jumpfm-history | true | Enable history navigation. | yes (but why?) |
jumpfm-flat-mode | true | Enable flat mode. | yes |
jumpfm-zip | true | Enable zipping and unzipping files. | yes |
jumpfm-git-status | true | Enable git status awareness. Might cause some performance degradation when browsing large git repositories. | yes |
jumpfm-gist | true | Allow sharing files via public gists. If you decide to enable this plugin make sure you know what public means. | yes |
Feature Request
Please feel free to open an issue.
<plugins/>
Want to write your own plugin ? great, it is as easy as writing an npm package. Here is the source code of the jumpfm-clock plugin and here is the full API.
import { JumpFm } from 'jumpfm-api'
import * as moment from 'moment'
export const load = (jumpFm: JumpFm) => {
const update = () => {
const m = moment(Date.now())
jumpFm.statusBar.msg('clock')
.setType('info')
.setText(m.format(
jumpFm.settings.getStr('timeFormat', 'HH:mm:ss')
))
.setTooltip(m.format(
jumpFm.settings.getStr('dateFormat', 'MM/DD/YYYY ')
))
}
update()
setInterval(update, 1000)
}