Directly connected LED Matrix support.
This adds support for LEDs that are directly connected to the MCU, either in a matrix or to single pins.
This commit is contained in:
parent
a5a31a5fc0
commit
f8896d8b92
21 changed files with 478 additions and 81 deletions
|
@ -96,7 +96,6 @@ def format_ansi(text):
|
|||
class ANSIFormatter(logging.Formatter):
|
||||
"""A log formatter that inserts ANSI color.
|
||||
"""
|
||||
|
||||
def format(self, record):
|
||||
msg = super(ANSIFormatter, self).format(record)
|
||||
return format_ansi(msg)
|
||||
|
@ -105,7 +104,6 @@ class ANSIFormatter(logging.Formatter):
|
|||
class ANSIEmojiLoglevelFormatter(ANSIFormatter):
|
||||
"""A log formatter that makes the loglevel an emoji on UTF capable terminals.
|
||||
"""
|
||||
|
||||
def format(self, record):
|
||||
if UNICODE_SUPPORT:
|
||||
record.levelname = EMOJI_LOGLEVELS[record.levelname].format(**ansi_colors)
|
||||
|
@ -115,7 +113,6 @@ class ANSIEmojiLoglevelFormatter(ANSIFormatter):
|
|||
class ANSIStrippingFormatter(ANSIFormatter):
|
||||
"""A log formatter that strips ANSI.
|
||||
"""
|
||||
|
||||
def format(self, record):
|
||||
msg = super(ANSIStrippingFormatter, self).format(record)
|
||||
return ansi_escape.sub('', msg)
|
||||
|
@ -127,7 +124,6 @@ class Configuration(object):
|
|||
This class never raises IndexError, instead it will return None if a
|
||||
section or option does not yet exist.
|
||||
"""
|
||||
|
||||
def __contains__(self, key):
|
||||
return self._config.__contains__(key)
|
||||
|
||||
|
@ -216,7 +212,6 @@ def handle_store_boolean(self, *args, **kwargs):
|
|||
class SubparserWrapper(object):
|
||||
"""Wrap subparsers so we can populate the normal and the shadow parser.
|
||||
"""
|
||||
|
||||
def __init__(self, cli, submodule, subparser):
|
||||
self.cli = cli
|
||||
self.submodule = submodule
|
||||
|
@ -249,7 +244,6 @@ class SubparserWrapper(object):
|
|||
class MILC(object):
|
||||
"""MILC - An Opinionated Batteries Included Framework
|
||||
"""
|
||||
|
||||
def __init__(self):
|
||||
"""Initialize the MILC object.
|
||||
"""
|
||||
|
@ -620,7 +614,6 @@ class MILC(object):
|
|||
def subcommand(self, description, **kwargs):
|
||||
"""Decorator to register a subcommand.
|
||||
"""
|
||||
|
||||
def subcommand_function(handler):
|
||||
return self.add_subcommand(handler, description, **kwargs)
|
||||
|
||||
|
|
|
@ -6,6 +6,7 @@ import glob
|
|||
|
||||
from milc import cli
|
||||
|
||||
|
||||
@cli.subcommand("List the keyboards currently defined within QMK")
|
||||
def list_keyboards(cli):
|
||||
"""List the keyboards currently defined within QMK
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
class NoSuchKeyboardError(Exception):
|
||||
"""Raised when we can't find a keyboard/keymap directory.
|
||||
"""
|
||||
|
||||
def __init__(self, message):
|
||||
self.message = message
|
||||
|
|
|
@ -3,7 +3,6 @@ class AttrDict(dict):
|
|||
|
||||
This should only be used to mock objects for unit testing. Please do not use this outside of qmk.tests.
|
||||
"""
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
super(AttrDict, self).__init__(*args, **kwargs)
|
||||
self.__dict__ = self
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue