44 lines
958 B
C
44 lines
958 B
C
|
// Copyright 2023 QMK
|
||
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
||
|
|
||
|
#pragma once
|
||
|
|
||
|
#include <stdint.h>
|
||
|
#include "progmem.h"
|
||
|
|
||
|
/**
|
||
|
* \file
|
||
|
*
|
||
|
* \defgroup unicodemap Unicode Map
|
||
|
* \{
|
||
|
*/
|
||
|
|
||
|
extern const uint32_t unicode_map[] PROGMEM;
|
||
|
|
||
|
/**
|
||
|
* \brief Get the index into the `unicode_map` array for the given keycode, respecting shift state for pair keycodes.
|
||
|
*
|
||
|
* \param keycode The Unicode Map keycode to get the index of.
|
||
|
*
|
||
|
* \return An index into the `unicode_map` array.
|
||
|
*/
|
||
|
uint8_t unicodemap_index(uint16_t keycode);
|
||
|
|
||
|
/**
|
||
|
* \brief Get the code point for the given index in the `unicode_map` array.
|
||
|
*
|
||
|
* \param index The index into the `unicode_map` array.
|
||
|
*
|
||
|
* \return A Unicode code point value.
|
||
|
*/
|
||
|
uint32_t unicodemap_get_code_point(uint8_t index);
|
||
|
|
||
|
/**
|
||
|
* \brief Send the code point for the given index in the `unicode_map` array.
|
||
|
*
|
||
|
* \param index The index into the `unicode_map` array.
|
||
|
*/
|
||
|
void register_unicodemap(uint8_t index);
|
||
|
|
||
|
/** \} */
|