Skip to main content

A python library to display different keyboards

Project description

keyboardlayout

A python library to display different keyboards. The keyboard layouts are created with pygame sprites. PRs with additional layouts or graphics backends are welcome.

If you need to show your users a graphic that shows a specific keyboard layout or a portion of a keyboard, this is the library for you.

Features:

  • qwerty + azerty included
  • dynamically generate a pygame sprite group showing a keyboard
  • customize the keyboard with sizes, colors, key margin, padding, font, location, etc
  • update a specific key with update_key

Documentation

https://spacether.github.io/keyboardlayout/

Examples

qwerty with colors

qwerty colored

qwerty

qwerty

azerty laptop

azerty_laptop

Installation

Make sure that you are using Python3

pip install keyboardlayout

Samples

Usage

import keyboardlayout as kl
import pygame

layout_name = 'qwerty'
pygame.init()

key_size = 60
grey = pygame.Color('grey')
keyboard_info = kl.KeyboardInfo(
    position=(0, 0),
    padding=2,
    color=~grey
)
key_info = kl.KeyInfo(
    margin=10,
    color=grey,
    txt_color=~grey,  # invert grey
    txt_font=pygame.font.SysFont('Arial', key_size//4),
    txt_padding=(key_size//6, key_size//10)
)
letter_key_size = (key_size, key_size),  # width, height
keyboard_layout = kl.KeyboardLayout(
    layout_name,
    keyboard_info,
    letter_key_size,
    key_info
)

screen = pygame.display.set_mode(
    (keyboard_layout.rect.width, keyboard_layout.rect.height))
screen.fill(pygame.Color('black'))

keyboard_layout.draw(screen)
pygame.display.update()

running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            pygame.display.quit()
            running = False

pygame.quit()

Local Installation

# make and activate virtual env
python3 -m venv venv
source venv/bin/activate

# if you want to edit the program and have the library use your edits
make develop

# to install separately in your virtual environment
make install

Test

make test

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

keyboardlayout-1.0.0.tar.gz (8.6 kB view hashes)

Uploaded Source

Built Distribution

keyboardlayout-1.0.0-py3-none-any.whl (8.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page