• You are not logged in.

Extend Extra Extreme!

  • Started by DreymaR
  • 47 Replies:
  • Reputation: 210
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,343
EXTROVERTLY
    EXTOLLING THE
        EXTRAORDINARILY
    EXTRICATING
EXTEND!

    Extend-ANSI-NoMod-Linux_96d.png?raw=1
    Extend! Green, navigation; blue, mousing; orange, multimedia; gray, system/misc. For more info, read on!


(Or: Extend is really really neat – and I'll tell you why now.)

Extend_KeyLogo.png?raw=1

... Why?
stevep99 said:

Living without Extend at this point would seem like some kind of perverse hell imposed as punishment for terrible crimes committed in numerous past lives.

As described in my Big Bag topics (for Linux/XKB, Windows/PKL and USB-2-USB/TMK devices), the Extend mappings are wonderful and in my opinion at least as useful as Colemak itself. Also, they're much easier to start using as you don't have to learn much to get started and can grow gradually into full mastery without any loss of efficiency – even ingrained QWERTY die-hards could get used to a little Extend on the side unless they're completely backwards. You start up using the arrow keys in the home position and/or multimedia keys, and before you know it you'll be jumping around selecting whole words at a time and doing more and more advanced stuff.

Another advantage of using Extend is that all these shortcut tricks are available on other computers too, albeit in more awkward geometries as you have to reach for arrow and PgUp/Dn etc keys without the power of Extend. Extend may not be as powerful as specialized navigation software like Vimperator/Pentadactyl or MouselessBrowsing, but it's generic, usable in all apps/modes and always ready, and for me at least it comes with my layout which I have to install anyway so it's "already there" without having to manage any extra software. I actually think that even the mighty Vim benefits from it (as its keys are OmniMode and no remappings are needed)!

I've been dabbling, learning and experimenting since 2008 to become an Adept of Extending, if I may call myself that. So I'd like to share some tricks here, to make everyone see how much better your computing experience can become with this mouse relieving wonder – along with some other shortcuts I've picked up along the way.

Many of the tricks described here work under both Windows and Linux, as they often use the same shortcuts. Some are Windows specific though, and some are specific for some browsers (I mostly use Firefox but there are usually plugins and/or similar tricks available for other browsers). Macs often have different tacks and I haven't used one of those in a while so I can't really enlighten you much there – but the principles are the same so I guess Mac users could learn to love the Extend mode as much as I do. Up until recently there weren't any Extend mappings for Macs, but fortunately user mkborregaard has remedied that. Yay!


Extend_KeyLogo.png?raw=1

... What?

Oh, sorry. Maybe you don't know or remember exactly what Extend is? If you do, you may skip to the next part now. For those reading on, Extend is like the Fn layer that some laptops have to get the NumPad and maybe some other keys. Some compact "hacker" keyboards such as the Happy Hacking Keyboard also sport Fn layers that give easy access to arrows, F# keys and other keys that are missing from the reduced-size keyboard.

    HHKBPro2_EliteKbds.png?raw=1
    The legacy of Extend: The Happy Hacking Keyboard's Fn layer for navigation, media and F# keys.

Instead of an extra hardware "Fn" key, the Extend mappings can use any key really as their modifier, but usually it's CapsLock that gets the honor although some prefer using a thumb. I wanted a far better layout than the one above, so I and others on the Colemak forums came up with one around 2008. It was later expanded and implemented in PortableKeyboardLayout (PKL) by its creator Farkas Máté who also to my knowledge came up with the name 'Extend' for this wonder. PKL has since gone and evolved into the EPiKaL EPKL. My EPKL Extend layout is quite similar to the original one, but I've worked more on it adding mousing and multimedia and fiddling with some key placements.

This, then, is the result. First, as a color-coded layout image with text labels:
    Extend-ISO-NoMod-Win_96d-Labels.png?raw=1
    My Extend mappings. Green, navigation; blue, mousing; orange, multimedia; gray, system/misc.
    World/ISO board. Windows/PKL mappings with MouseWheel R/L keys.
    [FYI: The first image of this topic shows US/ANSI board with Linux mappings.]

Then the same image using symbols as found in EPKL help images etc. Shifted F# keys have extra multimedia functions:

Spoiler:

    Extend-ISO-NoMod-Win_96d.png?raw=1

If you wish to print out a labeled Extend reference image you can use an image editor on this high-res one:

Spoiler:

    Extend-DIY_192d-Labels.png?raw=1
    My Extend mappings. Green, navigation; blue, mousing; orange, multimedia; gray, system/misc.
    DIY 1624×728px version. Piece together what you want using an image editor.

Also, here's the main Extend layer shown as a text table from the symbols file for Linux/XKB:

Spoiler:
+------+------+------+------+------+------+------+------+------+------+------+------+------+
|Esc + |F1 <> |F2 << |F3 >> |F4 <> |F5 <> |F6 << |F7 >> |F8 <> |F9 <> |F10<> |F11<> |F12<> |
|      | Pause| Rew  | Fwd  | Eject| Refr | Bri- | Bri+ | Sleep| WWW  | Mail | App1 | App2 |
| Caps | Play | Prev | Next | Stop | Mute | Vol- | Vol+ | Media| Home | Srch | File | Calc |
+======+======+======+======+======+======+======+======+======+======+======+======+======+
|` €€€ |1     |2     |3     |4     |5     |6     |7     |8     |9     |0     |-     |=     |
| Cust | F1   | F2   | F3   | F4   | F5   | F6   | F7   | F8   | F9   | F10  | F11  | F12  |
+------+------+------+------+------+------+------+------+------+------+------+------+------+
|Tab   |Q €€€ |W *** |F <<> |P <>> |G *** |J ### |L ### |U ### |Y ### |; €€€ |[ €€€ |] €€€ |
|      | Esc  | *WhUp| BrBck| BrFwd| *MUp | PgUp | Home | Up   | End  | Del  | Esc  | Ins  |
+------+------+------+------+------+------+------+------+------+------+------+------+------+
|Caps+ |A +++ |R *** |S +++ |T +++ |D *** |H ### |N ### |E ### |I ### |O €€€ |' €€€ |\ ><> |
| ++++ | Alt  | *WhDn| Shift| Ctrl | *MDn | PgDn | Left | Down | Right| Back | Menu | BrFav|
+------+------+------+------+------+------+------+------+------+------+------+------+------+
|_ *** |Z €€€ |X === |C === |V === |B *** |K *** |M *** |, *** |. *** |/ €€€ |Spc € |Entr€ |
| *MOn | Undo | Cut  | Copy | Paste| *Bt1 | *Bt2 | *Bt3 | *MLe | *MRi | Multi| Enter| PrtSc|
+------+------+------+------+------+------+------+------+------+------+------+-------------+
  Legend: # Movement; + Modifiers; = GUI edit; * Mouse; <> MultiMedia; € Various commands.

    My Extend mappings for XKB/Linux; the Windows/PKL ones are nearly identical save for the VK_102 and Slash keys.

Note the home position modifier keys: These make it easy to hit powerful shortcut combinations! Alt+F4 is now accessible from the home position as Ext-A+4. Select Previous Word (Ctrl+Shift+Left) becomes Ext-S+T+N, etc etc. Letter shortcuts like Ctrl+Q don't work but some have alternatives like Alt+F4 that do. Also, there's no Win (GUI) key because it proved hard to implement and many Win-key shortcuts use letters. But the point of Extend isn't to replace those shortcuts – it's to bring the arrows and other out-of-the-way keys close to your home position to make you faster and stronger!

Some useful shortcuts like Ctrl+A (Select All), Ctrl+S (Save), Ctrl+W (Close – Ctrl+F4 unfortunately doesn't work everywhere) and Ctrl+(Shift+)T (Re-/Open Tab) are quite easy to reach with one hand, even though it means twisting your wrist to reach the Ctrl key. Unless you use them a lot, they don't need to be on Extend mappings. If you feel that you do need any of these in Extend, you could always map them to the Tilde key and/or one of the Escapes (or a right hand key like Ins, Menu, Favorites, Break, Mouse buttons, the Slash key – anything you feel you don't need of course).

A better solution for one-shot commands and mappings is on tap layers. Instead of chording – that is, holding down modifiers while pressing other keys – I use for instance tap-Extend then a key for Ctrl or Win key combinations I need often. See the "When?" section below.

The Extend mappings are mostly positional so they'll work with any layout – even if some keys like A and ZXCVB might be easier to remember using Colemak or QWERTY. If you use Curl(DH), Angle and/or Wide ergo mods the Extend mappings should move accordingly to match the transposed home positions of the ZXVCB and right-hand keys. Other than that, I wouldn't move around the Extend mappings to suit different underlying layouts as they mostly go by key position rather than letter.


    Extend-ISO-AWide-Linux_96d.png?dl=1
    My Extend mappings, Linux version. Green, navigation; blue, mousing; orange, multimedia; gray, system/misc.
    World/ISO board with (Curl)AngleWide ergo mod (CAW – shifted ZXCV_ and right-hand keys).


On an interesting side note, the Ultimate Hacking Keyboard (UHK) has a "Mod" layer that seems to have borrowed quite a few mappings from my page, including the nav block that I designed in 2007/2008. Can it be coincidential? They have almost the right idea but it's still not nearly as good as a proper Extend: They missed the oh so important home row modifiers – we'll get back to those in a minute! – put the fairly useless Insert key where the very useful Back key should've been and left several good positions open. Nice try but no Extend. ^_^

Here's the Mod layer of the UHK so you can see what I mean:


Extend_KeyLogo.png?raw=1

... When?

As described in an interesting article by Xah Lee, chording isn't always the best answer. To produce single results like a special symbol or a single command, "tap-dance" key sequences are generally better. A good example is the Compose method from Linux that can be trigged by any desired key combination, or by a "leader key" such as a Compose or dead key. The Alt key in Windows lets you access menu items by tapping a letter sequence such as {Alt,f,t} to open a new tab, which is brilliant and can be easily learned by looking at the menus the first times.

Even a "tap-dance" of several key strokes is preferable to chording for many one-shot needs. Holding down keys is more tiring than tapping out a sequence, and the more contorted a chord gets the worse it will be.

Sequences provide for near endless complexity, but chord layers like Extend let you do many similar operations without trigging them separately each time. So for navigation/editing like selecting the previous word then moving it to the end of the paragraph or for number entry chord layers are perfect.

I've made some one-shot Extend layers (see below) that return to the main layer after releasing one key; these are good for "power strings" that typically are entered once, and approach the sequence concept. They could just as well have been implemented with tap-dances instead. The best is using a mix of chords and sequences!


Extend_KeyLogo.png?raw=1

... How?

Head over to the appropriate Big Bag topic (Linux/XKB, Windows/PKL, USB-2-USB or mkborregaard's Mac topic) for resources and instructions on how to use this. In the standard setup, the CapsLock key becomes a "switch" modifier like the Shift key, that you hold down for the Extend mappings. One might also have "latch" (press and release modifier, then press key) or "lock" (like CapsLock) modifiers; for the main Extend layer I don't think that'll be so useful though. Using Linux, if you set two modifiers with the 'level5_switch_lock' behaviour, they'll actually work as a switch alone but a lock if pressed together! The Mac implementation has a separate ExtendLock key.

Much of Extend's power is immediately obvious. Shortcuts you've been using easily and intuitively translate to their Extend counterparts. One of the advantages of Extend, as mentioned, is the transparent correspondence between Extend and non-Extend shortcuts. But there are very useful tricks that even I didn't know until quite recently. Having the necessary keys more available creates new possibilities for awesomeness, and so using Extend over time will be a pleasantly surprising journey if you're anything like me.

I've made a topic that highlights some favorite Extend tricks, so feel free to have a look there! For a more thorough overview, I'll go through some shortcut categories below and explain how Extend can help you excel in them.

Prestidigitatus – let the magic begin! ;-)


MULTIMEDIA KEYS

All the keys marked in orange on the Extend images above are multimedia keyboard keys. They work pretty much as expected, though in most Linux distros you may have to assign some of them manually. There are different keys on Ext-Shift since you don't usually shift multimedia keys – but in Windows/PKL those unfortunately cannot be implemented (yet).

I looked to Apple keyboards and various others, but settled on my own layout which seems very logical to me:
F1–F4: Play/Pause, Previous, Next, Stop.
F5–F8: Mute, Volume-, Volume+, Media Player.
F9–F12: Browser Home, Search, App1 (File Manager†), App2 (Calculator†) .
F/P: Back/Forward (like the browser/explorer buttons).
Apostrophe: Favorites.
ZXCV: Undo/Cut/Copy/Paste (there are special "GUI" versions triggered by multimedia keys, but they don't always work so I used Ctrl+ZXCV).
†: These are the default settings; you can configure what apps are defined as App1 and App2. (Using Windows, it takes registry editing.)

Using Linux/XKB (or in the Extend2 layer; not yet implemented for Windows/PKL...):
Shift+F1–F4: Pause, Back, Forward, Eject.
Shift+F5–F8: Reload (though plain F5 does the same?), Brightness-, Brightness+, Sleep (doesn't always work).
Shift+F9–F12: Browser, Mail, App3 (if defined), App4 (if defined).
Shift+Apostrophe: My Computer (whatever that's for?).

The App keys are worth mentioning: Besides volume controls, the File Manager and Calculator keys are the F# key ones I use the most. I could've hit Win and typed 'calc' too of course, but Ext-F12 is faster.


GENERAL SHORTCUTS

+===================+================+=================================+
| Shortcut          | Extend-...     | Effect                          |
+===================+================+=================================+
| Ctrl+(Sh+)Z       | (S+)Z          | Undo(Redo)                      |
| Ctrl+X/C/V        | X/C/V          | Cut/Copy/Paste                  |
| (Ctrl+)Enter, Esc | (T+)Spc, Q [   | Activate (Send mail...), Cancel |
| (Sh/Alt+)PrintScr | (S/A+)Enter    | Screenshot (Area/Window)        |
| (Sh+)F1           | (S+)1          | (Context) Help                  |
| (Sh+)F3           | (S+)3          | Find Next(Prev)                 |
| F4 or (Alt+)↓     | 4 or (A+)E     | Display drop-down list items    |
| Ctrl+WhUp/WhDn    | T+W/R          | Zoom In/Out                     |
| Mouse ←↑↓→, Btn1  | ,GD. then B    | Set focus using mouse pointer   |
+-------------------+----------------+---------------------------------+

Undo/Cut/Copy/Paste are fairly obvious. They need to be on the Extend layer to avoid interruption and wrist gymnastics while editing. I tried using the multimedia key "GUI" versions of them, but those are sometimes poorly implemented so now it's the actual Ctrl+letter mappings as they seem to always work well.

Mousing with keys isn't all that powerful unless you spend more keys on it and get fancy. This is mostly for getting the pointer out of reading's way and sometimes the button is nice for regainining window focus. The right mouse button, as usual, brings up a context menu but I usually use the Menu[Ext-'] key for that as it shows the menu where it's relevant instead of at the mouse pointer position. The mouse wheel keys are very useful, as they scroll windows and with Ctrl zoom in/out using the left hand only. Pretty much a must for quality browsing.


TEXT EDITING

+-------------------+----------------+---------------------------------+
| Ctrl+(Sh+)X/C/V   | (S+)X/C/V      | (Line) Cut/Copy/Paste           |
| (Sh+)Enter        | (S+)Spc        | Insert (Soft) Linebreak         |
| Ctrl+(Sh+)←/→     | T+(S+)N/I      | GoTo/Select  Word ←/→           |
| (Ctrl+)(Sh+)↑/↓   | (T+)(S+)U/E    | Go/Sel Line(Paragraph) ↑/↓      |
| (Ctrl/Sh+)Home/End| (T+)(S+)L/Y    | Go/Sel Line(Doc) Start/End      |
| (Sh+)PgUp/PgDn    | (S+)J/H        | Go/Sel Page Up/Down             |
| (Ctrl+)Back/Del   | (T+)O/;        | Delete (Word) ←/→               |
+-------------------+----------------+---------------------------------+

Easily moving or selecting to the beginning/end of words, lines, paragraphs or documents quickly becomes addicting. This is an excellent place to start your journey!
Ctrl+Back[Ext-T+O]: Delete Previous Word is an action I often use instead of deleting single letters back to an error. Not only is retyping a word more pleasant than repeatedly hitting the Back key with your pinky, but I think that by retyping the word correctly you train yourself to do it right, thus increasing accuracy over time!
• When I notice a mistyped word too late, I'll often jump words to where it is, select and rewrite the wrong word and then press End to go back to the end of the line.


WINDOW MANAGEMENT

+-------------------+----------------+---------------------------------+
| Alt+(Sh+)Esc      | A+(S+)Q/[      | Next(Prev) Window/App           |
| Ctrl+(Sh+)Esc     | T+(S+)Q/[      | Start Menu (Task Manager)       |
| Ctrl+PgUp/Dn      | T+J/H          | Next/Prev Tab                   |
| Alt+F2 <...>      | A+2 <...>      | Run App <...>           {Linux} |
| [Alt/Ctrl]+F4     | [A/T]+4        | Close App/Tab (or Window)       |
| F5                | 5              | Refresh                         |
| (Sh+)(Alt+)F6     | (S+)(A+)6      | Switch Pane/Element (Subwindow) |
| Alt+F8 ←↑↓→ Enter | A+8 NUEI Spc   | Resize Window           {GNOME} |
| F10 or Alt        | 0 or A         | Focus on App Menu (or Tips)     |
| Sh+F10            | S+0 or ' (M)   | Context Menu; (R-Click)         |
| F11               | -              | Fullscreen On/Off               |
| F12               | =              | Sometimes 'Save As...'          |
+-------------------+----------------+---------------------------------+
| (Ctrl/Alt+Sh+)Tab | Next/Prev Item/Tab/App (Ext: All but Alt work)   |
| Space             | Toggle state of buttons/items in dialogues etc   |
| Alt+Space         | Popup window menu (then press letter or 2*Esc)   |
|                   |   - Restore/Move/Size/miNimize/maXimize/Close    |
|                   |   - (Cmd window: Edit.../Defaults/Properties)    |
|                   |   - Then Ext Arrows/Enter to resize/move window  |
| Win+T             | Open Windows Taskbar (Ext: Ctrl+Esc, F6)         |
|                   |   - Then Ext ←↑↓→ to navigate open apps          |
|                   |   - Then (Ctrl+/Sh+)Enter to open (admin/new)    |
|                   |   - Or the Menu key or Sh+F10 for the app's menu |
| Win+(Sh+)↑/↓      | Max/Reduce (Vertical) Window Size        {Win7+} |
| Win+(Sh+)←/→      | Send Window to ←/→ Halfscreen (Monitor)  {Win7+} |
+-------------------+----------------+---------------------------------+

Oh boy, is this nice. Easier access to the F# keys with modifiers makes combos easy.
Ctrl+Esc[Ext-T+Q] brings up the Start Menu, and with Shift[Ext-S] the Task Manager; keep in mind that you can navigate these as described above.
Ctrl+Esc,→,Enter[Ext-TQ,Ext-I,Ext-Spc]: Shutdown. Just a tip.
(Shift+)F10[Ext-(S+)0]: (Context) Menu. For menu focus you can also tap Alt[Ext-A]; Escape releases the focus as usual. Context Menu works on many things.

Dialogue windows like settings panels, save/load windows and alerts should all be keyboard compatible. Often you can use Alt+Letter combinations, but in addition:
• The Tab key is not remapped by Extend so it still switches between elements/items/panes.
• Extend (Shift+)Ctrl[Ext-(S+)T]+Tab works, so you can switch tabs with it – or use Ctrl+PageUp/Down[Ext-T+J/H] (which may work a little differently).
Alt+Tab: Cycle open apps is easily reached without Extend – or use Alt+(Shift+)Esc[Ext-A+(S+)Q]: Cycle open apps without dialog.
Arrows[Ext-UNEI] also help with navigation.
Space (without Extend) toggles the state of buttons/items.
Enter[Ext-Spc] activates the selected item, like clicking on it with the mouse.
Escape[Ext-LeftBracket/Q] cancels as usual.

Alt+Space {in Windows}: Popup Window Menu for the active window. Then, press a letter for a command (or Esc to go back).
Restore, Close, Minimize and Maximize work directly.
• (Command-line windows also have Edit..., Defaults and Properties.)
• The Move and (re-)Size commands work well with the Extend arrows! Use ←↑↓→ to move/resize, then Enter to accept or (2×)Esc to go back.
• To reSize a window, start by pressing the direction of the edge you want to change (diagonals work). After that, ←↑↓→ will move that edge/corner.
• If you want to resize two opposing sides of a window, you have to do it in two Size operations (or one Move and one Size operation).

Win+T[Ext-TQ,Ext-6] {in Windows}: Taskbar focus. This lets you navigate and manipulate the open apps on the taskbar.
Arrows moves between apps (↑↓ move into and out of app groups), and Enter activates the selected app.
(Ctrl+)Shift+Enter[Ext-(T+)S+Spc] opens a new instance of the app, if applicable; with Ctrl it opens with Administrator privileges.
Menu[Ext-'] or Shift+F10[Ext-S+0] opens a context menu for the selected app. These are worth checking out as they show frequent files and some tasks.
Alt+(Shift+)Esc[Ext-A+(S+)Q] switches between active apps on the taskbar, but doesn't open the bar like Win+T does.

Win+(Shift+)Arrows {in Windows 7+}: Move/Resize Window to screen. Maximizing the window to the left/right half screen, maxing it vertically and moving it between monitors are modern window management operations that deserve a mention. You can use Extend Shift and Arrows with the Win key.


BROWSING

+-------------------+----------------+---------------------------------+
| Alt+←/→           | A+N/I (or F/P) | Browse Back/Forward             |
| (Sh+)Enter        | (S+)Spc        | Open link (in new window)       |
| (Sh+)Ctrl+Enter   | (S+)T+Spc      | Open in new tab (switch focus)  |
| Alt+Enter         | A+Spc          | Open address in new tab         |
| [Ctrl/+Sh+]Enter  | [T/+S+]Spc     | Complete URL, with com/net/org  |
| [Alt|Ctrl]+Home   | [A or T]+L     | Go to Browser Home Page         |
| Ctrl+(Sh+)PgUp/Dn | T+(S+)J/H      | Switch(Move) Tab                |
| (Ctrl/Sh+)F5      | (T/S+)5        | (Hard) Refresh                  |
| F6                | 6              | Go to address bar and back      |
| F7                | 7              | Caret Browsing On/Off           |
+-------------------+----------------+---------------------------------+
| / or '            | QuickFind text or links on page        {Firefox} |
|                   |   - Ext (Sh+)F3 and Tab as necessary to navigate |
|                   |   - Then Ext (Ctrl+)(Sh+)Enter to open links     |
|                   |   - Very nice! Addons exist for most browsers.   |
| Ctrl+(Sh+)T       | (Re-)Open Tab (Ext: No true replacement!?)       |
|                   |   - Ext: F6 → enter address/search → Alt+Enter   |
| Ctrl+[K/E]        | Browser search field (Ext: Use F6 then Tab)      |
|   (Ctrl+)↑/↓      |   - Ext: Then Browse search history (engines)    |
| ?                 | In address bar: Search with default engine       |
| Ctrl+[+/-/0]      | Zoom In/Out/Reset (Ext: Use Ctrl+MouseWheel)     |
+-------------------+--------------------------------------------------+

Another clear winner that I use all the time. There are good browser navigation programs and some will certainly prefer to go all the way and use Vimperator/Pentadactyl or similar, but to me Extend browsing feels very nice now. I just got used to the Firefox QuickFind feature which made the experience pretty much complete.

This does depend somewhat on which browser you're using. Opera has good keyboard browsing built-in I hear, while Internet Explorer cannot do some things. I mostly use Firefox. Chrome does much of the same, but the QuickFind feature of Firefox is what makes me able to browse around without extra software/plugins. Fortunately there are QuickFind plugins for most browsers if you're interested.

Back/Forward[Ext-F/P] are very obviously useful "multimedia/browser" keys! They work for more than web pages, by the way.
MouseWheel Scroll Up/Down[Ext-W/R] is something I use all the time. Often Up/Down[Ext-U/E] do the same, but not always. With Ctrl, these keys Zoom In/Out.
Ctrl+PageUp/Down[Ext-T+J/H]: Next/Previous Tab is ever so useful. With Shift, you move the tab to a new position instead.
F5[Ext-5]: Refresh page is often useful. With Ctrl or Shift, it ignores cached content which is necessary if you keep getting an old version of a page.
F6[Ext-6]: Go to Address bar (or back). Instead of opening a new tab with Ctrl+T I'll usually hit this and enter an URL or '?' and a search term. Then...
Alt+Enter[Ext-A+Spc]: Open address in new tab.
F7[Ext-7] {In Firefox?}: Caret Browsing is somewhat useful for selecting/copying text from pages, but not so much for navigating them. For that, QuickFind is superior. Unfortunately there's no easy way of seeing whether it's active so I keep the warning dialogue to tell when I'm entering Caret mode.

/ or ' {In Firefox or using browser plugin}: QuickFind. This is simply delightful!
• Hitting the Slash key alone lets you find text on a page very quickly. It pretty much obviates the need for the more cumbersome Ctrl+F.
• But the true power lies in Apostrophe: Search link text only. Now you don't need the mouse to select links anymore! Just find some text that's fairly unique for any given link (including most page buttons!), hit apostrophe and part of the text, and you're on your way.
• If you get multiple hits, type in more of the text or, failing that, navigate the hits with (Shift+)F3[Ext-(S+)3].
(Ctrl+)(Shift+)Enter[Ext-(T+)(S+)Spc] opens the link. With Ctrl, it opens in a new tab and Ctrl+Shift moves the focus there. (Use Shift only for a new window.)
• If you wish, Shift+F10[Ext-S+0] opens up a link Context Menu for anything from opening to bookmarking and beyond.


FILE EXPLORING

+-------------------+----------------+---------------------------------+
| ←/→               | N/I            | Expand/Collapse Item (or move)  |
| Alt+←/→/↑         | A+N/I/U(F/P/O) | Go Back/Forward/Up              |
| (Ctrl+)↑/↓ etc    | (T+)U/E/L/Y... | Select(Focus) ↑/↓/↑↑/↓↓         |
| Alt+Enter         | A+Spc          | Item Properties                 |
| (Shift+)Del       | (S+);          | Delete Item (directly)          |
| F2                | 2              | Rename Item                     |
| F4                | 4              | Explorer Address bar            |
+-------------------+----------------+---------------------------------+

Learning to navigate the file tree with arrows and more is a frequently useful skill.
F2[Ext-2]: Rename is something I use a lot. I can rename several files so quickly that I don't have to open Ant Renamer unless there are many of them.
Alt+Enter[Ext-A+Spc]: Properties Window is very handy. Remember that the usual dialogue keys work for tab/item switching etc.
Ctrl+Up/Down: "Focus" Up/Down (or Ctrl+Home/End/PageUp/PageDown... for bigger steps) is a bit weird: It doesn't move the selection like clicking or movement without Ctrl does.
• A trick for getting focus on the file/folder pane (other than using Alt+Tab or F6 up to several times) is to go Back-Forward[Ext-F,Ext-P] or Up then In[Ext-A+U,Ext-Spc].


WINDOWS REMOTE DESKTOP CONNECTION

This is kinda specific, but I noticed that the Windows tool for remoting (Windows Pro or similar required) is practically made for Extend. I won't go into specifics, but:
• Shortcuts with Alt: Insert, Delete, Home, PageUp/Down.
• Shortcuts with Ctrl+Alt: End, Left/Right, Break.


APPENDIX: MORE EXTEND – LAYER IT ON

My Extend ideally has four layers – I don't see the need for more but let me know if you do. The Extend2 layer holds a NumPad with some useful symbols easily available and the navigation/editing block moved to the left hand:

    Extend-ISO-NoMod-Ext2_96d.png?raw=1
    Extend NumPad mappings. Green, navigation; purple, NumPad; sepia, symbols; gray, system/misc.

Here's Extend2 shown as a text table from the symbols file for Linux/XKB:

Spoiler:
 Extend2: KeyPad overlay with nav block to the left (lv7-8):
 +------+------+------+------+------+------+------+------+------+------+------+------+------+
 |` €€€ |1     |2     |3     |4 £   |5 €   |6     |7     |8     |9     |0     |-     |=     |
 | Cust |  !   |  @   |  #   |  $   |  %   |  ^   | KP_7 | KP_8 | KP_9 | KP_* | KP_- | KP_= |
 +------+------+------+------+------+------+------+------+------+------+------+------+------+
 |Tab   |Q ### |W ### |F ### |P €€€ |G €€€ |J ### |L     |U     |Y     |;     |[ {   |] }   |
 |      | Home | Up   | End  | Del  | Esc  | PgUp | KP_4 | KP_5 | KP_6 | KP_+ |  (   |  )   |
 +------+------+------+------+------+------+------+------+------+------+------+------+------+
 |Caps+ |A ### |R ### |S ### |T €€€ |D     |H ### |N     |E     |I     |O     |' "   |\ |   |
 | ++++ | Left | Down | Right| Back | K_Lck| PgDn | KP_1 | KP_2 | KP_3 | K_Ent|  '   |  \   |
 +------+------+------+------+------+------+------+------+------+------+------+------+------+
 |_ *** |Z €€€ |X === |C === |V === |B *** |K ;   |M     |,     |.     |/     |Spc   |Entr  |
 | *MOn | Undo | Cut  | Copy | Paste| *Bt1 |  ,   | KP_0 | KP_0 | KP_. | KP_/ | Spc  | K_Ent|
 +------+------+------+------+------+------+------+------+------+------+------+------+------+

This is implemented in my Big Bag solutions for Windows(PKL), USB-2-USB(TMK) and Linux(XKB). In the former two you can configure a modifier or two that will modify which Extend layer gets activated by the Extend key; holding down the Extend key alone will maintain that layer.

With Linux/XKB it's still a bit hard to access Ext2 as it requires Caps+AltGr (Right Alt) to be held down. There's even a "secret" layer for xkb using Caps+Shift+AltGr (it has some more arrow symbols and stuff), but that's ridiculous so I'll have to construct a better modifier! At the moment, I believe that for instance Alt+Caps (then hold down either Alt or Caps – not necessarily both) and similarly with AltGr and even Alt+AltGr, would be ideal.

On Windows/EPKL, I have string templates including a set of kaomoji text faces in the Extend3 layer! L is for Lenny. ( ͡° ͜ʖ ͡°)

    Extend3-ISO-Angle_Cpt.png?dl=1
    My kaomoji Extend3 layer, mnemonically arranged for Colemak ISO-Angle.

In EPKL, all four layers are available using combinations of the two specified modifiers (by default RAlt and RShift) with Extend. The Ext3/Ext4 layers are set to be one-shot string layers, so if you press RShift+RAlt+Ext, then hold down Ext and press a home row letter you'll release a "powerstring" then fall back to Ext1 for normal editing. Also, since the Ext1/Ext2 layers are positional they are marked as "hard" layers: They don't change with letter positions and would look the same on Colemak as on, say, Dvorak – but they are affected by ergo mods like AngleWide. The kaomoji layer in Ext3 is "soft" though, since the strings are mnemonically linked to different letters:

    Extend3-ISO-CAWide_Cpt.png?dl=1
    My kaomoji Extend layer, mnemonically arranged for Colemak-CAW. Note how both the Curl(DH) and AWide mods move mappings.

Press RShift+Caps for Extend3, then Caps+D to start a Robot Dance Party in your text!  ♪~└[∵┌]└[・▥・]┘[┐∵]┘~♪

Other ideas for Extend layers include more boilerplate text for coding, hotkey combinations for different programs, a better navigation/mousing layer etc etc. As mentioned above, releasing single strings or commands may just as well be implemented as dead key layers so it's up to the user's tastes.

EPKL pro tip: The Autohotkey format lets you mix literal strings with keys. You can for instance write a set of html brackets then position the cursor between them, all in one Extend entry with the * prefix.


The ...

Extend_KeyLogo.png?raw=1

So there you have it, voila and prestidigitatus! I hope you will learn to enjoy Extending as much as I have, and find it liberating and empowering. Best of luck on your journeys!

~ DreymaR


PKL_Extend.png?raw=1


SOME RELEVANT LINKS ABOUT SHORTCUTS
Wikipedia – Table of keyboard shortcuts
Microsoft Support – Keyboard Shortcuts in Windows
Computer Hope – Shortcuts ABC


EXTENDING QUOTE

Princess Irulan ("Dune") said:

"In this time, the most precious substance in the Universe is the spice Melange. The spice extends life. The spice expands consciousness. The spice is vital to space travel. The Spacing Guild and its navigators, who the spice has mutated over four thousand years, use the orange spice gas which gives them the ability to fold space. That is, travel to any part of the Universe without moving."

It would seem that Frank Herbert is referring to Extend in this passage?! Fortunately, it took us substantially less than four thousand years and no messing with consciousness-expanding substances as we solved it in software! ;-)

Last edited by DreymaR (27-Jan-2021 13:13:04)

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Reputation: 0
  • Registered: 17-Nov-2014
  • Posts: 102

Good post Dreymar. I might have to give it a shot.

Offline
  • 0
  • Reputation: 117
  • From: UK
  • Registered: 14-Apr-2014
  • Posts: 975

Suggestion: how about making browser back / forward on Q / F? Then, combining with the scroll up and down on W and R, this gives quite a nice keyboard-only browsing experience by holding Extend with pinky and easily reaching QWFR do to all the navigating around. I have been using this for a while and quite like it.
It does mean Esc needs to be put elsewhere though - I have put it on backtick.

Follow up question: is it possible to have it so that you can hold down Ext-W / Ext-R and have it continue to scroll. For some reason key repeat is not enabled for me (using the xkb version).

Last edited by stevep99 (20-May-2015 16:21:56)

Using Colemak-DH with Seniply.

Offline
  • 0
  • Reputation: 210
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,343

It's an interesting proposal, at least visually! But Esc on the Tilde key isn't good enough, as discussed in the Mac thread. The natural place would be on P, but one problem with this position is that Ctrl+Shift+Esc (Task Manager) becomes nearly impossible as Ext-TSP. I can do Ext-TSQ fairly well (I don't use that particular shortcut that often though).

Also, I do in fact think that FP/WR is more comfortable for prolonged browsing than QF/WR as the latter position has a more twisted wrist (ulnar deviation).

There's some problem with the repeat in xkb and I haven't quite figured it out. I'm wondering if it is in fact my fault or not. Maybe I've just stumbled upon an OS bug! Are you on Ubuntu, by any chance?

Last edited by DreymaR (20-May-2015 22:39:50)

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Reputation: 0
  • From: Hungary
  • Registered: 20-May-2015
  • Posts: 4

Amazing collection DreymaR!
I am on Ubuntu, so if you describe what to check (understandable for a rookie) then I can test it.

A noob question, which I hoped will be answered in "...What?" section: how to use the extend layer? Should you press and hold the modifier (like shift or Fn) or you change to that layout using a key (or combination), press the button(s) you wanted and change layout back with a key (like CAPS LOCK)?

Offline
  • 0
  • Reputation: 210
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,343

Hi, Macsek!

• So, it's not clear how to use this? That's covered in the XKB and PKL topics (my sig, and they're mentioned in the topic – but maybe not clearly enough?)
• How to use: Yes, the Extend modifier is like an Fn button. Maybe that needs to be said even more clearly? It's also possible to use it as a lock or latch if desirable, but I don't think that's necessary.

I'll try to flesh out the How... part a little. Thanks for the feedback and praise. :-)

Last edited by DreymaR (23-May-2015 09:25:09)

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Reputation: 0
  • From: Hungary
  • Registered: 20-May-2015
  • Posts: 4

Thanks for the friendly reaction, DreymaR.
You use and live colemak layouts in the last 7 years. I am reading the forum in the last 7 days and only changed the qwerty to colemak for cc 5 minutes yet. (to test whether it is working).
You write well thought and nicely edited posts, probably it is just me who did not get the modifiers use. Or I am just the first who asked it :) I am sure colemakers do not need to ask it.

OFF TOPIC
I have a feeling that I will also change to colemak soon, I just collect the background knowledge to select good layouts to learn.
I need an English layout, that is clear. Probably a version of Colemak [eD].
I need something to write Hungarian and I would like to have it dead-key free.
I still need information as even your last two Colemak [eD} layouts have letters in different rows than the other.
ON TOPIC

Offline
  • 0
  • Reputation: 210
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,343

It's important to listen to newcomers, as they see things with fresh eyes. After 8(!) years one takes some things for granted. :-) And where one user has a question, he/she is never alone in my experience.

As for the Hungarian/English and [eD] Colemak discussions, I'd prefer if we can take those in the appropriate topics. Follow my Big Bag topic's links to the locale and [eD] topics if you want to know more and discuss them.

For learning a layout, I hear you can't quite beat Tarmak! ;-) You have to make a choice whether to learn a Curl mod or not these days – maybe that's what you meant by 'letters in different rows'?

Last edited by DreymaR (25-May-2015 07:46:18)

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Reputation: 2
  • Registered: 25-Oct-2013
  • Posts: 136

DreymaR, do you have any tricks for headless (meaning: no X server) Linux ?

Sometimes your X is broken. Do you define "terminal" keys in loadkeys or something like that?  Thanks.

Offline
  • 0
  • Reputation: 210
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,343

You mean, Extend tricks? No, not at all, sorry. I've only used and made XKB stuff for Linux. Some other users were looking into the tty possibilities; I don't remember where that is now though.

Last edited by DreymaR (10-Jul-2015 22:42:44)

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Reputation: 0
  • Registered: 12-Sep-2015
  • Posts: 9

Sorry for necroing the thread but I'm very curious if there is a dedicated software in which You can draw such a beautiful keychart? I'm asking because I've changed Yours layout a bit and I would like to adjust PKL help image for it.

Offline
  • 0
  • Reputation: 210
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,343

Uh, this is a live thread. It's just taken a nap. No need to cast spells at it! ;-)

I use InkScape for my keyboard images but they're in standard SVG format so other programs should work too. Thank you for the praise! I've put a lot of work into those images.

I'm working on a version of PKL which will separate the help image background from the letter/symbol layer, but it's not quite ready yet and it's been slow going of late. Meanwhile, yes I could share my file with you as long as you promise to live by the Creative Commons licence. :-)

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Reputation: 0
  • Registered: 12-Sep-2015
  • Posts: 9

Hereby I promise to live (and die) by the Creative Commons license :) If You willing to share I will be grateful - I would like to prepare adjusted state0 & state1 layout for PKL and maybe modified version of Yours extended layout. I want to map CTRL+S badly :)

Offline
  • 0
  • Reputation: 0
  • Registered: 11-Sep-2015
  • Posts: 23

What does Extend + S do? It's symbol is that of the shift key, but the functionality seems to be a bit different than that of the shift key.

Last edited by IQubic (17-Sep-2015 05:52:07)
Offline
  • 0
  • Reputation: 210
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,343

Nope, that's the normal Shift. In what ways is it different? Keep in mind that it'll only be working on other Extend keys and not letters.

Example: Ext+Spc is Enter, Ext+S+Spc is Shift+Enter (soft linebreak).

Saturnin: You want a Save shortcut? Yes, I can relate to that. What I'd do for that though is use the Tilde key! It's kind of left flexible for customization purposes. Save is something you want not too far off but not all the time, so that position is perfect I feel.

Last edited by DreymaR (17-Sep-2015 09:47:44)

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Reputation: 0
  • Registered: 11-Sep-2015
  • Posts: 23

Actually, it works like a caps lock, affecting both letters and numbers equally. Also, activating it while caps is on makes everything lowercase
How do I turn this function off? Seems to me the only way is to turn caps lock on then back off.

Last edited by IQubic (18-Sep-2015 05:12:51)
Offline
  • 0
  • Reputation: 210
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,343

It should be the normal Shift, so something must be odd here. Are you on Windows PKL or Linux? And does your physical Shift key behave differently?

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Reputation: 0
  • Registered: 11-Sep-2015
  • Posts: 23

First, I use PKL on Windows.
Secondly, my regular shift key functions the same, but the shifting actually stops when the key I depressed.

Offline
  • 0
  • Reputation: 0
  • Registered: 12-Sep-2015
  • Posts: 9

Yesterday I've noticed that some of the mappings on Extend keyboard do not work - alt, shift, ctrl, mouse wheel and mouse movements. I've started PKL in Windows with administrator privileges and the problem were gone. So maybe thats the issue here?

Offline
  • 0
  • Reputation: 210
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,343

Oh, that's interesting. Yes, PKL was developed well before Windows 7 and it's still working perfectly for me which is impressive – but there are still some strange things happening.

One thing of note is that some install dialogues and other "serious stuff" may block any keyboard hooks for security, so PKL will be ignored and you'll type with the plain system layout.

This thing about running as admin hasn't reached my ears yet. I haven't selected Run As Administrator on PKL myself. But it isn't unlikely. ;-)

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Reputation: 0
  • Registered: 17-Nov-2014
  • Posts: 102

I am beginning finally to dabble in your Extend layer, DreymaR. I love it so far! It is far more useful than I thought it would be. Two quick thoughts:

1. What is the utility of the mouse functions? Are these very useful? So far it seems slow and awkward to control the mouse via the keyboard. Is this something that gets easier with time and/or is there some specific thing that this is used for? If not, I may dabble further into changing these keys to another function.

2. Part of what kept me from jumping into Extend earlier was not understanding what everything did. For example, your diagram is filled with symbols that I did not understand. This made extend intimidating to try and did not convey the benefits. Now that I have gotten the hang of it, all the buttons seem well placed and are extremely useful. Nonetheless, a diagram with words instead of symbols might be helpful and encouraging to new users (I actually printed your diagram and wrote the words in for what the symbols mean as I figured each out). You might also consider a section above that discusses the usefulness of each category of functions.

Keep up the good work!

Offline
  • 0
  • Reputation: 210
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,343

1. The mouse functions are on fairly hard-to-reach keys and can't control a mouse with flair. Their utility is mainly in letting me click at the mouse position sometimes, and getting the pointer out of the way while I'm reading. This is discussed in the first post of this topic.

2. This topic is an attempt to remedy the paucity of information. I couldn't really write anything more thorough than this without killing my readers, I fear. For a word diagram, that's in the first post of this topic. It had to be abbreviated. A section that discusses the usefulness of each category is also in that post, isn't it?

Last edited by DreymaR (04-Nov-2015 12:58:21)

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Reputation: 0
  • Registered: 17-Nov-2014
  • Posts: 102

Well, it appears that I am an idiot. I had been looking at mkborregaard's Mac version of Extend post (which is excellent, btw), but does not contain much of the above information. I totally missed the majority of the first post because I presumed it was installation instructions and not a discussion of Extend itself.

Good work.

Offline
  • 0
  • Reputation: 0
  • Registered: 12-Oct-2015
  • Posts: 26

Cool. I am getting a new keyboart. I might implement this into the firmware itself.

Offline
  • 0
  • Reputation: 210
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,343

Depending on the firmware, you might be able to make the mousing keys more powerful that way.

Me and a friend had a go at a Corsair K70 RGB with the LED lights and reprogrammable layers. So far, we've made color coding for my FingerShui fingering aid, with the WideAngle mod. Next up will be a full Extend implementation with colored keys to match! Great fun!

Last edited by DreymaR (05-Nov-2015 09:29:48)

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0