|  | @@ -8,24 +8,32 @@
 | 
	
		
			
				|  |  |              @sft          @nav            @sym
 | 
	
		
			
				|  |  |  )
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +;; Timing variables for tap-hold effects.
 | 
	
		
			
				|  |  | +(defvar
 | 
	
		
			
				|  |  | +  ;; The key must be pressed twice in 200ms to enable repetitions.
 | 
	
		
			
				|  |  | +  tap_timeout 200
 | 
	
		
			
				|  |  | +  ;; The key must be held 300ms to become a layer shift.
 | 
	
		
			
				|  |  | +  long_hold_timeout 300
 | 
	
		
			
				|  |  | +  ;; Slightly higher value for tapying keys, to prevent unexpected hold effect.
 | 
	
		
			
				|  |  | +  long_hold_timeout 300
 | 
	
		
			
				|  |  | +)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  (defalias
 | 
	
		
			
				|  |  |    ;; Main mod-tap: Nav layer when held, Space when tapped.
 | 
	
		
			
				|  |  | -  ;; The space key must be held long enough (300ms) to become a layer shift.
 | 
	
		
			
				|  |  | -  nav (tap-hold 200 300 spc (layer-while-held navigation))
 | 
	
		
			
				|  |  | +  nav (tap-hold $tap_timeout $long_hold_timeout spc (layer-while-held navigation))
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    ;; Space-cadet thumb keys: Shift/BackSpace, AltGr/Enter.
 | 
	
		
			
				|  |  |    ;; Acts as a modifier by default, or as BackSpace/Enter when tapped separately.
 | 
	
		
			
				|  |  | -  sft (tap-hold-press 200 200 bspc lsft)
 | 
	
		
			
				|  |  | -  sym (tap-hold-press 200 200 ret (layer-while-held symbols))
 | 
	
		
			
				|  |  | +  sft (tap-hold-press $tap_timeout $hold_timeout bspc lsft)
 | 
	
		
			
				|  |  | +  sym (tap-hold-press $tap_timeout $hold_timeout ret (layer-while-held symbols))
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    ;; Home-row mods
 | 
	
		
			
				|  |  | -  ;; Must be held long enough (300ms) to become a modifier.
 | 
	
		
			
				|  |  | -  ss (tap-hold 200 300 s lmet)
 | 
	
		
			
				|  |  | -  dd (tap-hold 200 300 d lalt)
 | 
	
		
			
				|  |  | -  ff (tap-hold 200 300 f lctl)
 | 
	
		
			
				|  |  | -  jj (tap-hold 200 300 j rctl)
 | 
	
		
			
				|  |  | -  kk (tap-hold 200 300 k lalt)
 | 
	
		
			
				|  |  | -  ll (tap-hold 200 300 l rmet)
 | 
	
		
			
				|  |  | +  ss (tap-hold $tap_timeout $long_hold_timeout s lmet)
 | 
	
		
			
				|  |  | +  dd (tap-hold $tap_timeout $long_hold_timeout d lctl)
 | 
	
		
			
				|  |  | +  ff (tap-hold $tap_timeout $long_hold_timeout f lalt)
 | 
	
		
			
				|  |  | +  jj (tap-hold $tap_timeout $long_hold_timeout j lalt)
 | 
	
		
			
				|  |  | +  kk (tap-hold $tap_timeout $long_hold_timeout k rctl)
 | 
	
		
			
				|  |  | +  ll (tap-hold $tap_timeout $long_hold_timeout l rmet)
 | 
	
		
			
				|  |  |  )
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  ;; vim: set ft=lisp
 |