Sixel graphics: pure-Python decoder extracts ESC P...ESC \ sequences from the output stream, renders RGBA pixels, and encodes as PNG for inline display in the notebook. No external dependencies (no PIL, no Ghostscript). INPUT support: when gwbasic prints "? " (INPUT prompt), the kernel uses the Jupyter stdin protocol (raw_input) to request input from the user and feeds the response back to the subprocess. Pygments lexer (basic_lexer.py): GW-BASIC syntax highlighting with line numbers, keywords, builtins, string/number literals, and comments. Registered as a Pygments entry point and referenced in kernel language_info. Test suite expanded from 10 to 14 tests (Sixel decode, PNG encode, inline graphics integration, lexer tokenization).
28 lines
778 B
Python
28 lines
778 B
Python
from setuptools import setup, find_packages
|
|
|
|
setup(
|
|
name='gwbasickernel',
|
|
version='0.1.0',
|
|
description='Jupyter kernel for GW-BASIC 2026',
|
|
author='Eremey Valetov',
|
|
url='https://github.com/evvaletov/gw-basic-2026',
|
|
packages=find_packages(),
|
|
install_requires=['jupyter_client', 'ipykernel'],
|
|
entry_points={
|
|
'console_scripts': [
|
|
'gwbasickernel-install = gwbasickernel.install:main',
|
|
],
|
|
'pygments.lexers': [
|
|
'gwbasic = gwbasickernel.basic_lexer:GWBasicLexer',
|
|
],
|
|
},
|
|
package_data={
|
|
'gwbasickernel': ['kernel.json'],
|
|
},
|
|
classifiers=[
|
|
'Framework :: Jupyter',
|
|
'License :: OSI Approved :: MIT License',
|
|
'Programming Language :: Python :: 3',
|
|
],
|
|
)
|