camera-control :
{
    // movement
    'forward'               : { 'W' }
    'backward'              : { 'S' }
    'left'                  : { 'A' }
    'right'                 : { 'D' }
    'down'                  : { 'Q' }
    'up'                    : { 'E' }

    // drag left mouse button
    'span'                  : { 'space' }
    'zoom'                  : { 'Z' }
    'focus'                 : { 'X' }
    'rotate'                : { 'K' }
}

global :
{
    // command
    'cmd undo'              : { 'Z'        'ctrl' 'repeat' }
    'cmd redo'              : { 'Y'        'ctrl' 'repeat' }
    'cmd redo'              : { 'Z'        'ctrl' 'shift' 'repeat' }
    
    // project
    'new'                   : { 'P'        'ctrl' }
    'dup'                   : { 'P'        'ctrl' 'shift' }
    'open'                  : { 'O'        'ctrl' }
    'save'                  : { 'S'        'ctrl' }
    'saveas'                : { 'S'        'ctrl' 'shift' }
    
    'cmd console'           : { 'F1' } // activate console
    'set pt 2'              : { 'F2' } // switch between modeler and renderer
    'reset'                 : { 'F12' }
    
    // camera
    'cam focus'             : { '5' }
    'cam face'              : { '5'        'ctrl' }
    
    // screenshot
    'snap scene'            : { '6' } 
    'snap'                  : { '6'        'ctrl' }
    
    'cam save'              : { '7' } 
    'cam load'              : { '8' }
    
    'cam slot 0'            : { 'NUMPAD0' }
    'cam slot 1'            : { 'NUMPAD1' }
    'cam slot 2'            : { 'NUMPAD2' }
    'cam slot 3'            : { 'NUMPAD3' }
    'cam slot 4'            : { 'NUMPAD4' }
    'cam slot 5'            : { 'NUMPAD5' }
    'cam slot 6'            : { 'NUMPAD6' }
    'cam slot 7'            : { 'NUMPAD7' }
    'cam slot 8'            : { 'NUMPAD8' }
    'cam slot 9'            : { 'NUMPAD9' }
    
    // ui
    'ui inc -0.25'          : { 'MINUS'    'ctrl' 'repeat' }
    'ui inc +0.25'          : { 'PLUS'     'ctrl' 'repeat' }
}

world-editor :
{
    // stroke selection
    'sel inv'               : { 'I'        'ctrl' }
    'sel none'              : { 'D'        'ctrl' }
    'sel all'               : { 'A'        'ctrl' }
	'sel color'             : { 'C'               }
    'copy'                  : { 'C'        'ctrl' } 
    'paste insert'          : { 'V'        'ctrl' 'shift' }
	'paste'                 : { 'V'        'ctrl' }
    'cut'                   : { 'X'        'ctrl' }
   
    // stroke list
    'snew'                  : { 'N'        'ctrl' }
	'snew insert'           : { 'N'        'ctrl' 'shift' }
    'sdel'                  : { 'BACK' }
    'sdel'                  : { 'DELETE' }
	'sset s_pal'            : { 'P'      }

    // space
    'set xform_space global': { 'G' } 
    'set xform_space local' : { 'F' } 
    'set xform_space screen': { 'H' } 

    // move
    'move x -1'             : { 'LEFT'      'repeat' } 
    'move x +1'             : { 'RIGHT'     'repeat' } 
    'move y -1'             : { 'DOWN'      'repeat' } 
    'move y +1'             : { 'UP'        'repeat' } 
    'move z -1'             : { 'PAGEDOWN'  'repeat' }
    'move z +1'             : { 'PAGEUP'    'repeat' }

    // scale
	'set scale_constraint 0'  : { '1' }
    'set scale_constraint 1'  : { '2' }
	'set scale_constraint 2'  : { '4' }
    'set scale_constraint 3'  : { '3' }
	
	// rotate
    'rot z -90'             : { 'PLUS' } 
    'rot z +90'             : { 'MINUS' } 
    'rot x -90'             : { '9' }
    'rot x +90'             : { '0' } 

    // view
    'set rm_show gd 2'      : { 'U'        'ctrl' }
    'set rm_show mir 2'     : { 'M'        'ctrl' } 
    'set rm_show bo 2'      : { 'B'        'ctrl' } 
    'set rm_show wire 2'    : { 'W'        'ctrl' }
}

renderer :
{
    // material clipboard
    'mtl_reset'             : { 'R'        'ctrl' }
    'mtl_copy'              : { 'C'        'ctrl' }
    'mtl_paste'             : { 'V'        'ctrl' }

    // view
    'set pt_show edge 2'    : { 'E'        'ctrl' }
    'set pt_show grid 2'    : { 'G'        'ctrl' }
    'set pt_show gd 2'      : { 'U'        'ctrl' }
    'set pt_show sw 2'      : { 'W'        'ctrl' }
    'set pt_show bg_c 2'    : { 'B'        'ctrl' }
}