* 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
		
			
				
	
	
		
			70 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			70 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/*
 | 
						|
Based on userspace written by @drashna 2017
 | 
						|
Copyright 2018 Hsian Chang  <ishtob@gmail.com> @ishtob
 | 
						|
 | 
						|
This program is free software: you can redistribute it and/or modify
 | 
						|
it under the terms of the GNU General Public License as published by
 | 
						|
the Free Software Foundation, either version 2 of the License, or
 | 
						|
(at your option) any later version.
 | 
						|
This program is distributed in the hope that it will be useful,
 | 
						|
but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
						|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
						|
GNU General Public License for more details.
 | 
						|
You should have received a copy of the GNU General Public License
 | 
						|
along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
						|
*/
 | 
						|
 | 
						|
#include "ishtob.h"
 | 
						|
#include "action.h"
 | 
						|
#include "action_layer.h"
 | 
						|
// #include "dynamic_macro.h"
 | 
						|
#ifdef AUDIO_ENABLE
 | 
						|
  #include "audio.h"
 | 
						|
#endif
 | 
						|
 | 
						|
 | 
						|
// Add reconfigurable functions here, for keymap customization
 | 
						|
// This allows for a global, userspace functions, and continued
 | 
						|
// customization of the keymap.  Use _keymap instead of _user
 | 
						|
// functions in the keymaps
 | 
						|
__attribute__ ((weak))
 | 
						|
void matrix_init_keymap(void) {}
 | 
						|
 | 
						|
__attribute__ ((weak))
 | 
						|
void matrix_scan_keymap(void) {}
 | 
						|
 | 
						|
__attribute__ ((weak))
 | 
						|
bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
 | 
						|
  return true;
 | 
						|
}
 | 
						|
 | 
						|
__attribute__ ((weak))
 | 
						|
bool process_record_secrets(uint16_t keycode, keyrecord_t *record) {
 | 
						|
  return true;
 | 
						|
}
 | 
						|
 | 
						|
// Call user matrix init, then call the keymap's init function
 | 
						|
void matrix_init_user(void) {
 | 
						|
  matrix_init_keymap();
 | 
						|
}
 | 
						|
 | 
						|
// No global matrix scan code, so just run keymap's matix
 | 
						|
// scan function
 | 
						|
void matrix_scan_user(void) {
 | 
						|
  matrix_scan_keymap();
 | 
						|
}
 | 
						|
 | 
						|
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
 | 
						|
    switch (keycode) {
 | 
						|
    case DFU:
 | 
						|
      if (record->event.pressed) {
 | 
						|
        clear_keyboard();
 | 
						|
        reset_keyboard();
 | 
						|
      }
 | 
						|
      return false;
 | 
						|
      break;      
 | 
						|
    }
 | 
						|
  return process_record_keymap(keycode, record) && process_record_secrets(keycode, record);
 | 
						|
}
 | 
						|
 |