Fix mod stuck of MODS_KEY when leaving layer #62
- Add action_util.c and remove action_oneshot.c - Add oneshot_mods for MODS_ONESHOT - Add weak_mods for MODS_KEY and MACRO - weak_mods is cleared when layer switching
This commit is contained in:
		
							parent
							
								
									cb434cfebc
								
							
						
					
					
						commit
						d52d554360
					
				
					 12 changed files with 330 additions and 323 deletions
				
			
		| 
						 | 
				
			
			@ -227,7 +227,7 @@ You can define these actions on *'A'* key and *'left shift'* modifier with:
 | 
			
		|||
    ACTION_KEY(KC_A)
 | 
			
		||||
    ACTION_KEY(KC_LSFT)
 | 
			
		||||
 | 
			
		||||
#### 2.1.2 Key with modifiers
 | 
			
		||||
#### 2.1.2 Modified key
 | 
			
		||||
This action is comprised of strokes of modifiers and a key. `Macro` action is needed if you want more complex key strokes.
 | 
			
		||||
 | 
			
		||||
Say you want to assign a key to `Shift + 1` to get charactor *'!'* or `Alt + Tab` to switch application windows.
 | 
			
		||||
| 
						 | 
				
			
			@ -244,7 +244,7 @@ Registers multiple modifiers with pressing a key. To specify multiple modifiers
 | 
			
		|||
 | 
			
		||||
    ACTION_MODS(MOD_ALT | MOD_LSFT)
 | 
			
		||||
 | 
			
		||||
#### 2.1.3 Modifier with tap key
 | 
			
		||||
#### 2.1.3 Modifier with Tap key([Dual role][dual_role])
 | 
			
		||||
Works as a modifier key while holding, but registers a key on tap(press and release quickly).
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -497,7 +497,7 @@ Number of taps can be configured with `TAPPING_TOGGLE` in `config.h`, `5` by def
 | 
			
		|||
Tapping is to press and release a key quickly. Tapping speed is determined with setting of `TAPPING_TERM`, which can be defined in `config.h`, 200ms by default.
 | 
			
		||||
 | 
			
		||||
### 4.1 Tap Key
 | 
			
		||||
This is a feature to assign normal key action and modifier including layer switching to just same one physical key. This is a kind of [Dual role modifier][dual_role]. It works as modifier when holding the key but registers normal key when tapping.
 | 
			
		||||
This is a feature to assign normal key action and modifier including layer switching to just same one physical key. This is a kind of [Dual role key][dual_role]. It works as modifier when holding the key but registers normal key when tapping.
 | 
			
		||||
 | 
			
		||||
Modifier with tap key:
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -507,7 +507,7 @@ Layer switching with tap key:
 | 
			
		|||
 | 
			
		||||
    ACTION_LAYER_TAP_KEY(2, KC_SCLN)
 | 
			
		||||
 | 
			
		||||
[dual_role]: http://en.wikipedia.org/wiki/Modifier_key#Dual-role_modifier_keys
 | 
			
		||||
[dual_role]: http://en.wikipedia.org/wiki/Modifier_key#Dual-role_keys
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### 4.2 Tap Toggle
 | 
			
		||||
| 
						 | 
				
			
			@ -571,5 +571,5 @@ Top layer has higher precedence than lower layers.
 | 
			
		|||
is to press and release a key quickly.
 | 
			
		||||
### Fn key
 | 
			
		||||
is key which executes a special action like layer switching, mouse key, macro or etc.
 | 
			
		||||
### dual role modifier
 | 
			
		||||
<http://en.wikipedia.org/wiki/Modifier_key#Dual-role_modifier_keys>
 | 
			
		||||
### dual role key
 | 
			
		||||
<http://en.wikipedia.org/wiki/Modifier_key#Dual-role_keys>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue