- Created CONFIG_HIERARCHY.md to explain configuration file hierarchy and settings placement. - Added FLASH_HANDEDNESS.md detailing the flashing process for split keyboard handedness using Liatris controllers. - Introduced LIATRIS_QUICK_START.txt as a quick reference for handedness setup and flashing steps. - Included LICENSE file for GNU General Public License v2. - Added Makefile for building QMK firmware with user-specific configurations. - Updated README.md with instructions for configuring and building QMK userspace. - Created build_all.sh script to automate the building of regular and handedness initialization firmware. - Added qmk.json to define userspace version and build targets.
		
			
				
	
	
		
			67 lines
		
	
	
	
		
			2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			67 lines
		
	
	
	
		
			2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/* Copyright 2020 Christopher Courtney, aka Drashna Jael're  (@drashna) <drashna@live.com>
 | 
						|
 *
 | 
						|
 * 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/>.
 | 
						|
 */
 | 
						|
 | 
						|
#pragma once
 | 
						|
#include QMK_KEYBOARD_H
 | 
						|
 | 
						|
#include "version.h"
 | 
						|
#include "eeprom.h"
 | 
						|
#include "wrappers.h"
 | 
						|
#include "process_records.h"
 | 
						|
#include "keymap_danish.h"
 | 
						|
 | 
						|
/* Define layer names */
 | 
						|
enum userspace_layers {
 | 
						|
    _NORTO= 0,
 | 
						|
    _QWERTY,
 | 
						|
    _NORTNAVIGATION,
 | 
						|
    _SYMFKEYS
 | 
						|
};
 | 
						|
 | 
						|
void          press_super_alt_tab(bool shift);
 | 
						|
void          matrix_init_keymap(void);
 | 
						|
void          shutdown_keymap(void);
 | 
						|
void          suspend_power_down_keymap(void);
 | 
						|
void          suspend_wakeup_init_keymap(void);
 | 
						|
void          matrix_scan_keymap(void);
 | 
						|
layer_state_t layer_state_set_keymap(layer_state_t state);
 | 
						|
layer_state_t default_layer_state_set_keymap(layer_state_t state);
 | 
						|
void          led_set_keymap(uint8_t usb_led);
 | 
						|
void          eeconfig_init_keymap(void);
 | 
						|
bool          hasAllBitsInMask(uint8_t value, uint8_t mask);
 | 
						|
 | 
						|
// clang-format off
 | 
						|
typedef union {
 | 
						|
    uint32_t raw;
 | 
						|
    struct {
 | 
						|
        bool    rgb_layer_change        :1;
 | 
						|
        bool    rgb_base_layer_override :1;
 | 
						|
        bool    rgb_matrix_idle_anim    :1;
 | 
						|
        uint8_t mode;
 | 
						|
        uint8_t hue;
 | 
						|
        uint8_t sat;
 | 
						|
        uint8_t val;
 | 
						|
        uint8_t speed;
 | 
						|
        uint8_t caps_lock_hue;
 | 
						|
    };
 | 
						|
} userspace_config_t;
 | 
						|
// clang-format on
 | 
						|
 | 
						|
extern userspace_config_t userspace_config;
 | 
						|
 | 
						|
#if defined(COMBO_ENABLE)
 | 
						|
#    include "combos.h"
 | 
						|
#endif
 |