Streamlit keyboard shortcuts for your buttons.
Project description
Streamlit Shortcuts
Streamlit Shortcuts allows you to easily add keyboard shortcuts to your Streamlit buttons.
Installation
pip install streamlit-shortcuts
Example
⭐ NEW! thanks to @quantum-ernest
import streamlit as st
from streamlit_shortcuts import button
def delete_callback():
st.write("DELETED!")
streamlit_shortcuts.button("delete", on_click=delete_callback, shortcut,="Ctrl+Shift+X")
🥱 Old
import streamlit as st
from streamlit_shortcuts import add_keyboard_shortcuts
def delete_callback():
st.write("DELETED!")
st.button("delete", on_click=delete_callback)
add_keyboard_shortcuts({
'Ctrl+Shift+X': 'delete',
})
The 'Ctrl+Shift+X' combination will trigger "Another Button".
Keys
- Modifiers: 'Control', 'Shift', 'Alt', 'Meta' ('Cmd' on Mac or 'Win' on Windows, thanks to @toolittlecakes)
- Common Keys: 'Enter', 'Escape', 'Space'
- Arrow Keys: 'ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown'
Examples of Key Combinations:
- 'Control+Enter'
- 'Shift+ArrowUp'
- 'Alt+Space'
For a complete list of key values, refer to: https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key/Key_Values
Contributing
Contributions are welcome! If you have suggestions for improvements or bug fixes, please feel free to make a pull request or open an issue.
Contributors
@toolittlecakes - Added 'Meta' modifier @quantum-ernest - Improved usage ergonomics
Credits
Solution seen on: https://github.com/streamlit/streamlit/issues/1291
https://gist.github.com/brunomsantiago/e0ab366fc0dbc092c1a5946b30caa9a0
@brunomsantiago
@TomJohnH
And wrapped for comfier usage.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for streamlit-shortcuts-0.1.2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 495f9b57aeb5f88054fd5cec7f34871ba0d2f9286dc7451707c518e4231e1d85 |
|
MD5 | aa9a7b804014ad497d9df439745bd010 |
|
BLAKE2b-256 | d3d298c2f57e73239c28adea074e0ad983b4fe9fbc90975fc427df4656333657 |
Hashes for streamlit_shortcuts-0.1.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1e80b85fef343ed3e0c3ade88c3e5f8cabc899016c3295d7a8f99b32926d8fe2 |
|
MD5 | 4d92cae975cbf02d79a0d44644519181 |
|
BLAKE2b-256 | 4d0d1cc516ec9e17fbb96f8ed981ae046becd5b94916a249153931590b4c5c1a |