[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Dvorak



For those who want to type fast on an Apollo, try using
a Dvorak keyboard. Here how to make your node into one.

program dvorak;

{ ANSI Alternate Standard Keyboard.

  Make DN400's all most look like ASK.
 
  This program creates a file that is to be loaded into the
  display manager with the cmdf DM command.

  The top row is:

                                     ^  left and right bracket

  !  @  #  $  %  &  *  (  ) nil [  +  ~
  1  2  3  4  5  6  7  8  9  0  ]  =  `
  
  The rest is standard

  "  <  >  P  Y  F  G  C  R  L  ?  |
  '  ,  .  p  y  f  g  c  r  l  /  \

  A  O  E  U  I  D  H  T  N  S  _
  a  o  e  u  i  d  h  t  n  s  -

  :  Q  J  K  X  B  M  W  V  Z
  ;  q  j  k  x  b  m  w  v  z

  ------------------------------------

  Correct top row should be:  (Note ^)
  !  @  #  $  %  ^  &  *  (  )  [  +  ~
  1  2  3  4  5  6  7  8  9  0  ]  =  `

}

  const number = 13;

  type index = 1..number;

  var qwerty, dvorak: packed array [index] of char;

  procedure write_kd(n: index);
    var i: index;
  begin
    for i := 1 to n do
      writeln ('kd ''', qwerty [i], ''' es ''@@@', dvorak [i], ''' ke')
  end;

  procedure write_ctrl_kd(n: index);
    var i: index;
  begin
  {   ctrl chars not mapped. You like or no?  }
  end;

begin
  
  qwerty := '_\|';
  dvorak := '^{}';
  write_kd(3);
{ --------------------------- }
  qwerty := '-~';
  dvorak := ']=';
  write_kd(2);

  qwerty := '"=^';
  dvorak := '@[+';
  write_kd(3);
  writeln('kd ''@'''' es ''@@@*'' ke');
  writeln('kd ''@@'' es ''@@@~'' ke');
{ --------------------------- }
  qwerty :=  'qwertyuiop{}';
  dvorak := ''',.pyfgcrl?|';
  write_kd(12);

  qwerty := 'QWERTYUIOP[]';
  dvorak := '"<>PYFGCRL/\';
  write_kd(12);

  qwerty := 'RTYUIOP';
  dvorak := 'PYFGCRL';
  write_ctrl_kd(7);
{ --------------------------- }
  qwerty := 'asdfghjkl;:';
  dvorak := 'aoeuidhtns-';
  write_kd(11);

  qwerty := 'ASDFGHJKL+*';
  dvorak := 'AOEUIDHTNS_';
  write_kd(11);

  qwerty := 'ASDFGHJKL+';
  dvorak := 'AOEUIDHTNS';
  write_ctrl_kd(10);
{ --------------------------- }
  qwerty := 'zxcvbnm,./';
  dvorak := ';qjkxbmwvz';
  write_kd(10);

  qwerty := 'ZXCVBNM<>?';
  dvorak := ':QJKXBMWVZ';
  write_kd(10);

  qwerty := 'XCVBNM,./';
  dvorak := 'QJKXBMWVZ';
  write_ctrl_kd(9);

end.