Dvorak keymap in single user mode

Robert Downes nullentropy at lineone.net
Thu Jan 1 20:08:10 PST 2004


Robert Downes wrote:

> I use the US Dvorak keyboard layout, and I find it very difficult to 
> type in single user mode (when installing world, for example), because 
> single user mode uses the QWERTY keyboard layout, and does not seem to 
> pay any attention to kbdmap (I think that's the command name - the one 
> with the interactive keymap chooser).
>
> Someone suggested that it's possible to compile the Dvorak layout into 
> my kernel, but how is this done, and is there an easier way of 
> changing keyboard layout in single user mode?
>

Okay, made some progress here.

Finally noticed that kbdmap says, quite clearly,

*BUGS* <http://www.freebsd.org/cgi/man.cgi?query=kbdmap&sektion=1&apropos=0&manpath=FreeBSD+5.1-RELEASE+and+Ports#end>
     The *kbdmap* and *vidfont* utilities work only on a (virtual) console and not
     with X11.

The single user mode is not a virtual console, as virtual consoles are 
not permitted to run during single user mode.

However, the command-line (non-interactive) equivalent is kbdcontrol, 
and it seems to suffer no such limitation.

So, once in single user mode, type

    mount -a

to make sure that /usr is mounted (needed because it contains the 
keymaps), and then type

    df

to check that the filesystems are mounted. (Actually, you may not need 
all of them.)

If /usr is now showing up, type

    kbdcontrol -l us.dvorak

and you will be reunited with the (cough... superior... cough) Dvorak 
keyboard layout.

This can be done with any of the available layout files in

    /usr/share/syscons/keymaps

However, never happy with a simple option, I wonder if there's an easy 
(read lazy) option... is it possible to automate this process, so that 
this command is run by default? (Or is that inadvisable because it 
requires /usr to be available, and /usr should not necessarily be 
available in single user mode everytime?)
-- 

Bob



More information about the freebsd-questions mailing list