Keymap: adding my personal userspace to QMK master (#3605)
* Adding my personal planck keymap * Adding readme.md to my keymap * Create my userspace add users/ishtob/ * Moved macros off keymap macros now exsists in my userspace, moved them off keyboard specific keymaps * Create my userspace add users/ishtob/ * rebase from main QMK repo
This commit is contained in:
		
							parent
							
								
									feb5e4aaeb
								
							
						
					
					
						commit
						fd0bd29a0a
					
				
					 10 changed files with 349 additions and 206 deletions
				
			
		
							
								
								
									
										87
									
								
								users/ishtob/readme.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										87
									
								
								users/ishtob/readme.md
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,87 @@ | |||
| # Ishtob's userspace | ||||
| 
 | ||||
| under developement | ||||
| 
 | ||||
| # Secret Macros | ||||
| 
 | ||||
| This section is a modified version of what @drashna did in his userspace: https://github.com/qmk/qmk_firmware/tree/master/users/drashna#secret-macros | ||||
| 
 | ||||
| `macros_private.c` will be used if it exsists in the userspace folder during compiling. | ||||
| 
 | ||||
| To get started, put the following in rules.mk. this will have the compiler include the macros_private.c file if it exsists. | ||||
| ``` | ||||
| SRC += ishtob.c | ||||
| ifneq ($(wildcard $(USER_PATH)/macros_private.c),"") | ||||
|   SRC += macros_private.c | ||||
| endif | ||||
| ifeq ($(strip $(NO_SECRETS)), yes) | ||||
|     OPT_DEFS += -DNO_SECRETS | ||||
| endif | ||||
| ``` | ||||
| 
 | ||||
| Remember that all macro keycode has to be present in the header file (ishtob.h) to prevent error during compile. | ||||
| 
 | ||||
| Next, you setup macros_private.c, ensure the keycodes are defined in ishtob.h (or your keymap.h). | ||||
| Here is an example of my macros with the sensitive login information removed: | ||||
| ``` | ||||
| #include "ishtob.h" //replace this with your userspace or keymap | ||||
| #include "quantum.h" | ||||
| 
 | ||||
| #pragma message "secret macros included" //debug line to let me know this file is included in the compile | ||||
| 
 | ||||
| //this str is for the monthly password rotation per my workplace's security policy | ||||
| char my_str[5] = "stuff"; | ||||
| 
 | ||||
| bool process_record_secrets(uint16_t keycode, keyrecord_t *record) { | ||||
|   if (record->event.pressed) { | ||||
|     switch(keycode) { | ||||
|       //my login macros | ||||
|       case P_CITRIX: | ||||
|           SEND_STRING("username"SS_TAP(X_TAB)"something"); | ||||
|           send_string(my_str); | ||||
|           return false; | ||||
|       case P_MPASS: | ||||
|           SEND_STRING("something"); | ||||
|           send_string(my_str); | ||||
|           return false; | ||||
|       case P_META: | ||||
|           SEND_STRING("metausername"); | ||||
|           return false; | ||||
|       //my work macros for the meta application | ||||
|       case O_RTQ6H: | ||||
|           SEND_STRING(SS_TAP(X_TAB)"0300"SS_TAP(X_TAB)SS_TAP(X_DOWN)SS_TAP(X_TAB)"0900"SS_TAP(X_TAB)SS_TAP(X_DOWN)SS_TAP(X_TAB)"1500"SS_TAP(X_TAB)SS_TAP(X_DOWN)SS_TAP(X_TAB)"2100"SS_TAP(X_TAB)SS_LALT("o")); | ||||
|           return false; | ||||
|       case O_AUTODC: | ||||
|           SEND_STRING(SS_LALT("v")SS_TAP(X_TAB)SS_TAP(X_TAB)SS_TAP(X_TAB)SS_TAP(X_TAB)SS_TAP(X_TAB)SS_TAP(X_TAB)SS_TAP(X_TAB)SS_TAP(X_TAB)SS_TAP(X_TAB)"T"SS_TAP(X_TAB)"N"SS_LALT("s")); | ||||
|           return false; | ||||
|       case O_DAYRN: | ||||
|           SEND_STRING(SS_TAP(X_TAB)SS_TAP(X_TAB)SS_TAP(X_TAB)SS_TAP(X_TAB)SS_TAP(X_TAB)"1"SS_LALT("s")); | ||||
|           return false; | ||||
|       //Ops macros | ||||
|       case M_EMAIL: | ||||
|           SEND_STRING("privatemail@email.com"); | ||||
|           return false;        | ||||
|       case M_EMAIL2: | ||||
|           SEND_STRING("workemail@work.com"); | ||||
|           return false; | ||||
|      } | ||||
|    } | ||||
|   return true; | ||||
| }  | ||||
| ``` | ||||
| 
 | ||||
| 
 | ||||
| Finally, add the following to .git/info/exclude to prevent private macros from being committed to git. | ||||
| ``` | ||||
| # git ls-files --others --exclude-from=.git/info/exclude | ||||
| # Lines that start with '#' are comments. | ||||
| # For a project mostly in C, the following would be a good set of | ||||
| # exclude patterns (uncomment them if you want to use them): | ||||
| # *.[oa] | ||||
| # *~ | ||||
| /users/ishtob/macros_private.c | ||||
| ``` | ||||
| 
 | ||||
| # Special mentions | ||||
| 
 | ||||
| special thanks to @drashna for helping me through quite a bit of these codes. | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 ishtob
						ishtob