Меню Рубрики

Programmer dvorak windows 10

Installing the Programmer Dvorak Keyboard Layout on Windows

These instructions are for a U.S. English version of Microsoft Windows XP. Instructions for other languages and versions of the operating systems will vary.

Adding Programmer Dvorak to the list of available layouts

Please remove previous versions before installing the new one. Installing the new version will not perform an upgrade if the older one is already present, and consequently you’ll end up with two (slightly different) versions of Programmer Dvorak!

Download and run the installer executable from this site.

Choose Yes to install the layout.

Note: You must be an administrator of the domain or the computer for this to succeed.

If you are installing on Windows Vista (or later), the User Account Control will ask for permissions to execute a program called «Windows host process (Rundll32)».

You can verify that this popup indeed belongs to the installer by clicking on the Details drop-down button at the lower left; the command line to be executed will look something like this:

C:\WINDOWS\system32\rundll32.exe setupapi.dll,InstallHinfSection DefaultInstall 128 C:\Users\JohnDoe\AppData\Local\Temp\IXP000.TMP\kbddvp.inf

The installer will then briefly show file copying progress. Upon successful installation, a message that it is complete will be shown. The layout may now be activated. If an error occurs, please consult the troubleshooting section.

Activate Programmer Dvorak


Windows 10

These instructions refer to Windows 10, version 2004, build 10.0.19041.264.

Click on the Start menu (Windows logo down in the left corner)

Click on the Settings menu option (image of a cogwheel)

Choose the Time & Language , action, which has a logo of a capital letter A with a clock behind it

Choose the Language option, which has the logo of a capital letter A

If «English (United States)» is not in the list of languages, click Add a language . If it is already there, skip this step.

  1. Choose «English (United Status)» from the lists
  2. Click Install

Choose «English (United States)» from the list of languages (it may be the only one)

Click the Options button that now appears

Click the Add a keyboard link

Select «Programmer Dvorak» from the list

If you only want to type Dvorak and not have to switch layouts, do these steps:

  1. Select the «US QWERTY» item in the list of keyboards
  2. Click the Remove button that appears

Close the settings window, by pressing the X widget in the upper right corner.

The layout is now activated!


Settings menu option.

Choose the Time & language action, which has a logo of a clock with a capital A below it, in the right pane of the Settings window.

Click on the Region & language item, in the menu on the left pane.

Click on your language, under the Languages header; three buttons will now appear underneath.

Click on the Options button, below your language.

Click on the Add a keyboard link, with a plus icon, under the Keyboards header.

Scroll down the list to select Programmer Dvorak .

Optionally: Click the previously default (QWERTY) layout.

Optionally: Click the Remove button that appeared, to remove the previous (QWERTY) layout.

Close the settings window, by pressing the X widget in the upper right corner.

In some builds the layout doesn’t appear in the switcher unless the same workaround as for Windows 8 has also been applied.

Windows 8 and 8.1

Windows 8 and 8.1 seem to have a problem with custom keyboards; they install fine but are not recognized by the user interface. You can use this work-around to activate Programmer Dvorak:

Follow the official procedure to add «English» as a language and activate «English (United States)» as the default layout.

Run these commands at the Command Prompt:

reg add «HKCU\Keyboard Layout\Substitutes» /v 00000409 /t REG_SZ /d 19360409 /f

reg add «HKCU\Keyboard Layout\Preload» /v 1 /t REG_SZ /d 00000409 /f

If you want to have one of the built-in layout enabled too, you should follow the above instructions first, and then add it afterwards.

Windows XP/Vista/7

Use either the Windows key or Ctrl+Esc to invoke the Start menu.

Navigate through the menu choices: Start | Settings | Control Panel | Regional and Language Options

Regional and Language Options dialog appears.

Select the tab Languages .

Press the button Details

Text Services and Input Languages dialog appears

Press the button Add. .

Add input language dialog appears

From the Keyboard Layout/IME dropdown combo select: Programmer Dvorak

Press OK in the Add input language dialog.

From the Default input language dropdown combo choose a combination with Programmer Dvorak, for instance English (United States) — Programmer Dvorak

You can select the previous layout, for instance US in the Installed Services treeview below the dropdown combo in the previous step and then click on the Remove button to make Programmer Dvorak your only keyboard layout.

If you opted to remove the current layout, then you’ll be warned that it will not be removed until you log out or reboot because it is currently in use. Just confirm this with OK .

Hold Ctrl down and press Tab to go to the Advanced tab in the Regional and Language Options dialog

Check the box under Default user account settings if you want to make the layout the default on the logon screen and in any subsequently created accounts.

You must be an administrator to do this.

Press OK in the Regional and Language Options dialog to conclude the selection process.

Remove the Programmer Dvorak layout from your system altogether

You should first use the installation instruction to change the layout to something else (you are familiar with), for instance regular Dvorak.

Windows 10

Use either the Windows key or Ctrl+Esc to invoke the Start menu.

Choose the Settings menu option.

Choose the System action, which has a logo of laptop computer, in the right pane of the Settings window.

Click on the Apps & features item, in the menu on the left pane.

Scroll down to the Programmer Dvorak item in the list in the right pane.

Click on the Programmer Dvorak item; one button appears underneath.

Click the Uninstall button, below the program item.

Click the Uninstall button that appears in the verification prompt.

Click Yes to allow the app Rundll32 to make modifications to the system.

Close the settings window by pressing the X widget in the upper right corner.

Windows 8 and 8.1


Windows XP/Vista/7

Use either the Windows key or Ctrl+Esc to invoke the Start menu.

Navigate through the menu choices: Start | Settings | Control Panel | Add or Remove Programs

The Add or Remove Programs window appears.

Use the Down arrow key to scroll down to locate the entry for Programmer Dvorak .

Use the Tab key to focus on the Change/Remove button to the right of the entry.

Use Space bar or Return to start removal.

Use Alt+F4 to close the window when removal has completed.

Troubleshooting

If you get the dreaded «Installation Failed» message, you may consult the files %systemroot%\setupapi.log (on XP or earlier) or %systemroot%\inf\setupapi.app.log (on Vista or later) for any clues.

If the launcher fails, then you can attempt to extract the files from the package into the current directory and perform a manual installation. The procedure to do so by commands to be pasted into the Command Prompt accessory is given below.

These instructions must be executed in an elevated Command Prompt. This can be done by pressing Shift+F10 when having Command Prompt highlighted under the Accessories menu and then from the menu that appear selecting Run as. and then Administrator in the next dialog (Windows XP) or Run as Administrator (Windows Vista/7). On Windows Vista/7 you can also do this by typing cmd in the Search Bar and then press Ctrl+Shift+Enter.

Источник

Programmer Dvorak Keyboard Layout


Introduction

As a computer professional, you’ve probably done some typing over the years. A lot of typing. And your hands don’t always love you for it. If you are concerned about catching the carpal tunnel syndrome, you should be looking into Dvorak keyboards. They have been designed to minimize the finger movement for the most common phrases you type. And when your finger move less, they get less strain too.

Dvorak keyboards are mostly known for their ability to speed up typing. Along with this comes the usual crowd of naysayers that state that it hasn’t been proved that Dvorak actually is faster that Qwerty. However, no-one has ever produced evidence that it is slower either. And they’re really missing the point, too. It isn’t about being faster, it is about being easier . Dvorak keyboards are easier because they have been designed so that the most common phrases are located nearer the base position of your fingers.

I guess that speed and learning time is important if you are a corporation that have to pay to train typists, but I don’t emphasize those factors. In my case, the slowest component is still the one sitting in front of the keyboard.

Why creating a new layout?

An ANSI Dvorak layout already exists, and your operating system probably comes with this installed. However, this layout has some serious problems when writing source code. The characters are in traditional Dvorak layout all right, but the symbols are put in the same hopeless locations as in the Qwerty layout!

Programmer Dvorak is a «sub»-layout which makes it easier to write source code in C, C#, Java, Pascal, Lisp, CSS, XML and alikes. It was generated through reflection of the most common constructs in these languages and the rules set forward by the August Dvorak in his research, then verified by scanning through thousands of source code lines ensuring that a good fit was found. The result can be seen below.

I have used the Dvorak layout as a starting point, since most programming languages use English words. Also, English is often the lingua franca for comments and documentation. None of the letter keys has been moved from the original, making it suitable for typing English prose as well.

How do I start to use Programmer Dvorak on my computer?

You can download a driver from this site. When you install these packages, Programmer Dvorak will not be made your primary keyboard. You can read the instructions for activating on Windows, on Linux, or on macOS.

To rebuild the Windows driver, you will need the Windows DDK from Microsoft (really just kbd.h and a compiler). The X.org driver consists of a text file, so the source may be used as a driver for unsupported distributions.

How much computer resources does this program need?

This is not yet another crapware program with an integrated Explorer search bar like the ones you can too easily find on download sites. Rather, it integrates into the operating system’s way of handling keyboard layouts and uses no additional CPU or memory. The disk cost is negligable.

Any tips for learning the layout?

Back in the days, I used the program «Mavis Beacon Teaches Typing». Version 5 had support for Dvorak, but it has unfortunately been dropped from recent versions. However, Juerd Waalboer’s Dvorak keyboard training site is a free online tutorial which teaches you the layout by typing regular words. I agree with the author that this is probably the best way to learn the layout. If you want a program that can be installed locally, the open source programs GNU Typist and KTouch both include lessons for Dvorak, although they follow a more traditional approach.

If you are somewhat self-trained on the keyboard, chances are that you are not using proper touch-typing. I highly recommend that you start doing it «by the book» when learning a new layout, and also that you get a more ergonomic keyboard, such as the Perixx Periboard-507II which is even available in a European version.

Personally, I retained the ability to type Qwerty using the old fingering on a regular keyboard and type Dvorak with a touch technique on an ergonomic keyboard. Since they were sufficiently different, there was no cognitive conflict. You don’t necessarily forget your mother tongue when learning a new language, although both need some practice to not disappear into oblivion! Lately, my Qwerty typing has become slower since I haven’t used it in quite a while.

Royal Galaxy has preprinted stickers you can put on your keyboard. I use these myself. An alternative is to print out the Keytronic-sized images below on adhesive paper (such as Avery 5265 (U.S. Letter) or L7167 (A4)) but in my opinion this isn’t worth the hassle compared to the stickers.

Keys that are typed with Ctrl+Alt/AltGr are either on the right or in the center of they stickers in the images, depending on whether the right side is used by a shift state of an alternative layout.

Where are the numbers?

Note that the numbers are placed in an odd-even sequence, as in the original Dvorak layout. Since symbols are used much more in code than numbers (you aren’t hardcoding those constants are you?), they are also in a shift position. The French keyboard layout which also has extra characters to take into considerations does this too. Most keyboards provide the numerical keypad for entry of longer numbers such as phone numbers or SSNs. On laptops those are even amongst the main keys, accessible by a hardware Fn modifier! However, in this layout the numbers are affected by the CAPS LOCK, in order to type in series such as hexadecimal numbers, since you would seldom use it to enter a list of symbols anyway.

On the numpad, the digits are increasing downwards to the right, as is common on phones instead of the upwards to the right which is the standard for calculators. I haven’t found any good references to studies that show that it is more effective, only it being mentioned briefly in the NY Times obituary of John Karlin and on a question site. However, practically everyone has a cell-phone or uses an ATM, whereas calculators are becoming rarer and rarer. Also, it is (a lot) easier to change the keyboard layout than reprogramming your local ATM.

Traditionally, the cursor and digit keys were in shift positions since neither have a natural capital as the alphabetic characters have. However since the introduction of the enhanced keyboard in 1986, there has been an additional set of «gray» cursor keys to the left of the numpad. Even on laptops were the space is tight, there are still separate cursor keys.

I have therefore decoupled the Shift and NumLock into two independent modifiers, «Swiss-German» style (SGNum), and made the numeric keypad more friendly to hexa-decimal digits by having the letters A — F available as the shift version of the regular letters. Similar to the numbers, they are increasing downwards to the right. This puts D , E and F which tends to occur more often since they are also decorators on floating point numbers in programming languages, on the home row.

Although capital letters are more customary (probably since the decimal digits are fullsize too), I have chosen small letters to bring more visual contrast to the extra six digits. In addition, I have added some symbols that are commonly used in spreadsheets, so that many formulas can now be added using the numeric keypad alone.

Some people still like to use the cursor keys on the numpad; the gray keys just being cumbersome since they introduce a greater distance on the keyboard. It is admittedly somewhat harder to toggle between data entry and navigating, since the numpad must be «unlocked» instead of just releasing the modifier. However, I think that the benefits overshadows the costs since one tends to type several keys in each mode before switching between them.

Unfortunately, Windows handle the numpad by doing a hard-coded translation of arrow keys to digits if NumLock is on, thus making it impossible to reassign the digits without also switching up and down(!). This has been worked around by assigning the keys directly to the digits, disabling the cursor keys on the numpad altogether, making NumLock even less usable than Scroll Lock and forcing the «gray» cursor keys to be used instead. I am looking for ways to reenable the cursor keys, but so far it looks grim. If you are entering numbers in a spreadsheet, you should consider using Tab and Enter to move left and down, respectively. On Linux/X.org, the cursor keys still work as intended.

Be also aware that the functionality of pressing Alt+ASCII code to generate a character is hard-coded to the scancodes of the keys, so they follow the old layout of the numpad.

While we’re at it, I can also recommend using a left-handed mouse, as it is easier to reach, not having to move the hand over the numpad as well. If you are right-handed, it also gives the benefits of writing hand-notes while using the mouse!

Why aren’t the brackets on the same finger?

The parenthesis «(» and «)» are on the left and right index finger, respectively. But the brackets «[» and «]» are on the little finger and the ring finger. The reason is that the right bracket «]» is very often followed by either a plus «+» or a minus «-«. If it had been on the little finger, these moves would be very awkward. Conversely, if the left bracket had been on the ring finger, it would split up the braces «<" and ">» which commonly occur in pairs. Note also that with the current placement, the pair of empty brackets are typed from the outside finger and inwards.

What about other languages than English?

Other languages (such as French, Spanish and German for instance) not so well. Not only do they have extra letters that must be shoe-horned onto the keyboard (taking precious space) but they also have different character frequency characteristics than English, meaning that other letters should be at the prominent places. I have included dead keys and even some accented characters so that you can type a foreign word now and then, but to get the same gain for a different language an entirely new analysis should be performed.

For instance, if you hold down Ctrl and Alt (AltGr on Linux) when typing the apostrof (‘) then you’ll get the acute dead key. The next vowel you type will be accented using the acute accent. Same goes for the backquote and the caret.

Due to the number of combinations, I don’t think it is feasible to cram all kind of accents into modifier combinations and still have a layout that would be convenient for daily use. However, most European languages with a Latin script are accessible through compose combinations instead (see below).

What is the square symbol in the lower left corner?

European-style keyboards have an extra key, for a total of 102/105 instead of 101/104, to accomodate the need for more symbols. This key is located in the lower left corner and is usually less-than/greater-than. Programmer Dvorak does not use this extra key in itself in order to be usable on all keyboards, but on Windows it acts like a Compose key, allowing you to type an accented character using Compose and then two other letters. For instance Compose+’+e gives é. This is the same behaviour as the Ctrl key has in Microsoft Word and Messenger.

If you have a keyboard with 102/105 keys, you is probably because you are currently located in a country where accented characters are used, so you may want to be able to enter them, even if you use a main layout designed for 101/104 keys. As a bonus, it is close to the other modifiers and where the original Compose key used to be.

On Linux, you can use the compose:102 option to activate this behaviour, even for other keymaps!

At first glance, it seems more cumbersome to type three keys sequentially to get an accented character (using Compose) than two with a modifier (holding AltGr and then another to effect a dead key, followed by a letter). However, typing a key while simultaneously holding down a modifier can take up to three times as long due to hands getting out of position, so it may be that typing a Compose sequence is actually faster. It can take some time to get used to it if you come from a layout that uses AltGr, though.

Additional features

If you press Ctrl-Alt-G or Ctrl-Alt-M, the layout will invoke greek or math mode, respectively. The next character will then be from the selected alphabet. This can be handy if you need to write a quick equation in an e-mail or instant message. Only available in Windows, though.

What have changed in the revision?

After a decade of use, I have made some slight changes to the layout. The numpad is changed for the reason listed above. Diaeresis and acute accent are now dead keys and are moved left on the keyboard, whereas backquote and caret have been given their keys on the right side instead. This change was done since the latter keys are more used in programming contexts and also because I wanted to free up a key so that the layout would be suitable for 104-keys keyboards.

Originally, I created the layout for a European-style keyboard since I intended it for my personal use, and that was what I had. It seemed a waste not to use all the keys. I have found that I don’t use the accented keys enough to have them as their own keys instead of a more general Compose key. Additionally, more keyboards can now be used for using the layout.

With the introduction of the Compose key, I have removed the AltGr key. The right Alt key is now just a regular Alt, like the left one. On Windows, the same functionality can be achieved by pressing Ctrl+Alt, and on Linux one can add it back with the lv3:ralt_switch option. I wanted to be able to use accelerators from the left side of the keyboard (such as Alt+F4) without stretching my fingers.

I could have assigned the otherwise useless Application key as the mode switcher, but I use it as the host key for virtual machines. (SysRq seems to be unavailable for that purpose as it is used to break into the kernel debugger). Alas, some new laptop models don’t even have an Application key.

The documentation gives hints that the layout identifiers for a locale should all be in sequence. Ideally, this should be done at the time of installation so that no existing layouts created later that yours are overwritten, but it would require a more sophisticated installer.

On Vista, I ran out of luck and the classic Programmer Dvorak layout now clashes with the layout called «US English Table for IBM Arabic 238_L». The original entry can be restored with this Registry script if the installed overwrote it. Note that you should switch to another familiar layout before doing this! The new version fixes this problem by choosing an identifier with a lot less chance of conflict.

Installation scripts for Linux have been greatly improved. They can either be run directly from the command-line, or called from within an installer package. I won’t be making packages for any specific distributions though, due to the number of variations and changing popularity amongst them.

What about making further changes to the layout?

I am always open to feedback about how the layout work, and open to good ideas. Keep in mind that a keyboard is a very constrained space and that any change necessarily will be a trade-off, though. Since training to use a layout proficiently takes a lot of work, I am also very reluctant to change the layout.

You can however roll your own variant to suit whatever desires, but you can not call the resulting keyboard layout «Programmer Dvorak», even when prefixed by an adjective . This is to ensure that the brand always designates the official layout specified here. Other than that the license is very liberal. The license covers both the ATM-style and the calculator-style layout of the numpad.

If you create a derivative work, then please put in a proper copyright notice. Also note that you should change the name and IDs in the code so that there is not a conflict with the original.

I won’t host keyboard layouts that I haven’t written myself, but if anyone creates an implementation of the Programmer Dvorak variant, I can link to it.

What about different keyboard types?

Programmer Dvorak is constructed to be used on a run-of-the-mill keyboard, having seven keys in the number row on the left side. I am aware of curved keyboards that have a symmetric layout of six keys on each side of the number row.

The reason for this decision is as follows: Each finger has a curve of least effort when stretching, and this curve is considered to be more or less straight ahead; you can try this yourself with your own hand. Thus, each key should be assigned to the finger that can reach it with the least curved line from its home position. The left index finger, which has Dvorak key U (QWERTY key F ) as its base, is the one that has the least curved line to the Programmer Dvorak key = (QWERTY key 6 ).

Some will notice that there is a diagonal line KUP> (QWERTY VFR4 ) and then claim that the left index finger should move along that. But those diagonal lines appear because the keys in a column (for instance KUP( ) are slightly offset, for a historical reason: since each key corresponds to a type hammer on a mechanical keyboard, and those must be adjacent and not on top of each-other, it is easier to construct put the keys in a zig-zag pattern. There is no inherit ergonomical quality in keeping it like that.

Kinesis keyboards unfortunately rocade the entire upper row one key. This may not matter much if the layout is numbers in ANSI order, but it causes the wrong finger assignment in the Programmer Dvorak layout. A Registry script to reorder the scancodes (see app. A on p. 16) into the right position (such that it is ‘6’ and not ‘5’ that is above the ‘T’ in the right-most key on the left side of the upper row) is needed.

The Maltron just moves the left-most key, and should not be a problem.

What about other systems?

Unfortunately, I don’t plan to create drivers for any other than the major operating environments (Windows, Linux and macOS) due to time constraints. In particular, retired systems like Windows 9x, OS/2 and Mac OS (version 9 or earlier) will not be supported.

Not for the mobile blockbusters, Android and iOS?

A handheld unit with touch-screen is typically meant to be operated using one or two fingers , whereas the Dvorak layout is specifically designed to be operated using both hands, heavily relying on hand and finger alternation. Therefore, I reckon that it will actually be less efficient with these input methods.

If you have used a cell phone with a T9-capable keypad, then I think that MessagEase is the best successor on a smart-phone. It follows some of the same principles as the Dvorak layout — most frequent characters are easiest accessible, trying to minimize hand movement — and it doesn’t even need a dictionary!

That being said, with the advent of tablets, hooking these units up to a Bluetooth keyboard such as the Logitech Fold-up makes it possible to even do some productive work while on the road, so I’ve started the work to make layout drivers for them too.

How do I get in touch with you?

Send an email to programmer . dvorak @ gmail . com. Please don’t use this email address for any other purposes than direct communication, i.e. do not use it or any other you found on this site as «author identification» of the software. Use the URL of this page instead.

What tools did you use to build the Windows layout?

One of:


    Visual Studio 2013 Community Edition Update 4
  • DDK for Windows Server 2003 SP1, for building on Windows XP 32-bits
  • Microsoft Visual C++ Compiler for Python 2.7, for building on Windows 7 64-bits

WindowsXP-KB838079-SupportTools-ENU.exe /C /T:%TEMP%

The .iso images can be opened with a tool such as ImDisk.

What tools did you use to build the macOS layout?

You must be signed in to the Mac Dev Center with a (free) Apple ID to access these downloads (but note that you do not need to be a Mac Developer Program member).

Downloads

Binaries:
kbddvp-1_2_7-i386.exe (72 KiB) Windows 2K/XP/2k3/Vista/7/8/8.1/10, both 32- and 64-bit (updated: 2015-02-02)
MD5sum: b283500d70cdfcbea6aaa06a736dbdee
kbddvp-1_2_7.zap (1 KiB) Windows Zero Administration Package (for deploying through Active Directory group policies)
ProgrammerDvorak-1_2_11.pkg.zip (12 KiB) macOS 10.2–10.14 (updated: 2019-10-28 ◊ —>)
MD5sum: 336e8b3013e38368e36dc57a89bb241c
Sources:
kbddvp-1_2_7-src-winnt.cab (18 KiB) WinNT/Win2K/WinXP/Win2k3/Vista/7/8/8.1/10
ProgrammerDvorak-1_2_11.src.zip (9 KiB) macOS 10.2–10.14
kbddvp-1_2_1-src-linux.tgz (4 KiB) X.org (gzip-compressed tar)
Images:
dvp1.png (6 KiB) Primary layout
dvp1-numpad.png (6 KiB) Numpad layout
dvp1-numpad-atm.png (6 KiB) Numpad layout without cursor keys
dvp2.png (5 KiB) Secondary layout
us1.png (11 KiB) U.S. as primary layout
us2.png (5 KiB) U.S. as secondary layout
no1.png (11 KiB) Norwegian as primary layout
no2.png (5 KiB) Norwegian as secondary layout

The images are transparent so that you can combine a primary and a secondary layout by putting them on top of eachother.

Other interesting and related links

  • Developer’s Dvorak. I find the idea of using comma as a dead key facinating. Using AltGr to get an integrated numpad (akin to the Fn modifier on laptops) is probably a good idea, too.
  • Multilingual/programmer keyboard layout. Using semi-colon instead of making all the accent keys dead, is nifty.
  • Hexadecimal Numpad. Blog where a reader suggests to use the numpad for typing hexadecimal characters. Also contains links which partially explains the mess that numpad handling currently is.
  • SGCaps NumPad. Enabling a numpad amongst the letter keys by redefining the behaviour of CapsLock. (Colemak is perhaps the third most used keyboard layout after Qwerty and Dvorak. Without having looked very hard, I haven’t found any statistical evidence that it is significantly better than Dvorak).
  • Neo keyboard layout. It keeps the symbols closer to the home row by making more shift modifiers available.
  • Bépo keyboard layout. This layout also has the symbols in non-shifted position.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Program repair windows 7
  • Program files windows переменная
  • Program data папка windows 7 как найти
  • Progman exe windows 7
  • Profilelist в реестре windows 7