Quick-start tutorial

This is a quick-start tutorial to help new users get up and running in &dactyl.appName;. It is not intended as a full reference explaining all features.

If you've started using &dactyl.appName; from scratch (i.e., without any customization), you should be looking at this help page in a relatively bare-looking window. The menubar, navigation bar, and bookmark bars are hidden. In case you missed the notice in the intro, you can regain these by issuing the command

mTB

where represents pressing the or key. If you're a veteran Vim user, this should look familiar.

However, in this author's opinion, the best way to get familiar with &dactyl.appName; is to leave these disabled for now. (The above action can be reversed with ) You can have a look at the guioptions help entry for more information on this.

&dactyl.appName;'s modal interface

&dactyl.appName;'s power, like Vim's, comes from its modal interface. Keys have different meanings depending on which mode the browser is in. &dactyl.appName; has several modes, but the 2 most important are Normal mode and Command Line mode (see modes for the full picture).

When &dactyl.appName; starts, it is in Normal mode by default. This is probably where you will spend the majority of your time.

The other core mode of &dactyl.appName;, Command Line mode, can be entered from Normal mode by typing a : (colon). You will frequently see &dactyl.appName; commands start with a :, indicating that what follows is a command.

To return to Normal mode from Command Line mode, type . Pressing will also return you to Normal mode from most other &dactyl.appName; modes.

Getting help

Vim is a great editor but it's not much of a web browser. So even seasoned Vim users will probably have to look at &dactyl.appName;'s documentation sooner or later. Most of the documentation for &dactyl.appName;'s features are easily found using the :help command. For example, you can find help on the :help command by typing

:help :help

Similarly, help on configurable options is available with :help 'option_name'. (Note the single quotes around the option name as in Vim.) Information on all available options is, predictably, :help options.

And you can find out about the gt and gT mapping with

:help gt :help gT

Finally, in addition to the help system itself, :listcommands, :listkeys and :listoptions are useful quick-reference commands.

Mouseless

— or how I learned to stop worrying and love the 80+ buttons I already have.

The efficiency of &dactyl.appName;, as with the legendary editor it was inspired by, relies on the user being able to keep his fingers on the keyboard where they can do the most good. While there are some areas where the mouse is clearly superior at, such as GUI design or some games, &dactyl.appName; acts on the assumption that a web browser doesn't have to be one of those.

Here are some areas where the mouse is typically considered indisposable, and how &dactyl.appName; challenges this preconception.

Scrolling

Scrolling the browser window is done with simple keystrokes:

j/k
scroll window down/up by one line, respectively
h/l
scroll window left/right
/
scroll down/up by one page
/
scroll down/up by 1/2 page

Your standard buttons (///) will also work as expected.

History and tabs

History navigation (e.g., Back, Forward) is done similarly to scrolling.

H/L
move back/forward in the current tab's history
/
move back/forward in the current tab's jump list

Move between tabs using these keystrokes which may also be familiar to tabbing Vimmers:

gt/
go to the next tab
gT/
go to the previous tab
g0/g$
go to the first/last tab
d
close the active tab (delete the buffer)

To open a web page in a new tab, use :tabopen url. To open a URL in the current tab, use :open. The Normal mode mappings t and o, respectively, map to these commands, so the following pairs of sequences are equivalent:

:open my.webmail.com omy.webmail.com :tabopen google.com tgoogle.com

Some hints about surfing…

So now you can navigate around in &dactyl.appName;. But wait… how do you open a page or tab linked in a web page? How do you click on all those links without your tailed friend?

The answer is hints. Activating hints displays a number next to every link (or other element, depending on the mode) &dactyl.appName; can find. To act on the element (e.g., follow or save a link), simply type the number corresponding to the hint.

For text links, there's an additional shortcut; you can type some text contained in the link and &dactyl.appName; will search all the links it can find and only hint the matching links, further narrowing down the list. If the text you type uniquely identifies any given link, &dactyl.appName; will follow that link immediately without any further user input.

Whichever way you choose to indicate your target link, once &dactyl.appName; has highlighted the link you want, simply hit to open it.

To activate Hints mode, press either f or F. The lower-case f will open the resulting link in the current tab, while the upper-case F will open it in a new tab.

Extended hint modes, started by ; or g;, provide a richer way to interact with various elements, not limited to following links.

To test it, try this link: &dactyl.appName; Homepage. Activate Hints mode with f or F to highlight all currently visible links. Then start typing the text of the link. The link should be uniquely identified soon, and &dactyl.appName; will open it. Once you're done, remember to use H (History Back) or d (Delete Buffer) to return here, depending on which key you used to activate Hints mode.

Saving for posterity—pentadactylrc

Once you get &dactyl.appName; set up with your desired options, maps, and commands, you'll probably want them to be available the next time you open &dactyl.appName;. Continuing the Vim theme, this is done with a pentadactylrc file.

To save your current settings and allow them to be loaded automatically next time you start &dactyl.appName;, issue the :mkp command.

This will create the file $HOME/.pentadactylrc containing your settings. It is a simple text file, just like a vimrc file and can be easily edited to suit your preferences.

Find the exit nearest you

&dactyl.appName; supports all of Vim's classic methods of exiting.

:xall
quit and save the current browsing session for next time; the default
:exit
quit without saving the session
ZZ
Normal mode mapping equivalent to :xall
ZQ
Normal mode mapping equivalent to :exit

Where did &dactyl.host; go?

You might feel pretty disoriented now. Don't worry. This is still &dactyl.host; underneath. Here are some ways &dactyl.appName; allows &dactyl.host; to shine through (see the :help for these commands and mappings for more information on how to make the best use of them):

:dialog
To access some of &dactyl.host;'s many dialog windows, you can use the :dialog command. See :help :dialog.
:bmarks
&dactyl.appName; provides a new interface to bookmarks, but they're still your standard &dactyl.host; bookmarks under the hood. :bmark will add a new bookmark, while :bmarks will list the bookmarks currently defined.
:history
It's exactly what it sounds like. This command will display a colorized, scrollable and clickable list of the locations in &dactyl.appName;'s history.
:emenu
Access the &dactyl.host; menus through the &dactyl.appName; command line.

Feel free to explore at this point. If you get hopelessly lost, just type :help and click the Quick-start tutorial link to return here.

Get me out of here!

If you've given it a fair shot and determined that &dactyl.appName; is not for you after all, you might want to disable it.

The &dactyl.appName; way to do this is with the command :addons, which displays a list of all installed extensions. You can use hints or mouse to click on Off or Del to disable or remove &dactyl.appName;, respectively.

Alternatively, you can do this the old-fashioned way: re-enable the menubar, as above, with m, and select Add-ons from the Tools menu. You can also use :dialog addons to get to the interface.

I'm interested… but lost!

&dactyl.appName; has an energetic and growing user base. If you've run into a problem that you can't seem to solve with &dactyl.appName;, or if you think you might have found a bug, please let us know! There is support available on the mailing list (mirrored on Gmane) or in the #pentadactyl IRC channel on OFTC. See also contact.

If you have any feature requests or (even better) offers to help, we'd love to hear from you as well. Developers work on &dactyl.appName; whenever possible, but we are neither infinite nor omnipotent; please bear with us. If you can't wait for us to get around to it, rest assured patches are welcome! See the developer page for more information.