I am done

This commit is contained in:
2024-10-30 22:14:35 +01:00
parent 720dc28c09
commit 40e2a747cf
36901 changed files with 5011519 additions and 0 deletions

View File

@ -0,0 +1 @@
pip

View File

@ -0,0 +1,53 @@
# LICENSE
## pyreadline3 copyright and licensing notes
Unless indicated otherwise, files in this project are covered by a BSD-type
license, included below.
Individual authors are the holders of the copyright for their code and are
listed in each file.
Some files may be licensed under different conditions. Ultimately each file
indicates clearly the conditions under which its author/authors have
decided to publish the code.
## pyreadline3 license
pyreadline3 is released under a BSD-type license.
Copyright (c) 2020 Bassem Girgis <brgirgis@gmail.com>.
Copyright (c) 2006-2020 J<>rgen Stenarson <jorgen.stenarson@bostream.nu>.
Copyright (c) 2003-2006 Gary Bishop
Copyright (c) 2003-2006 Jack Trainor
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
a. Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
b. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
c. Neither the name of the copyright holders nor the names of any
contributors to this software may be used to endorse or promote products
derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
DAMAGE.

View File

@ -0,0 +1,109 @@
Metadata-Version: 2.1
Name: pyreadline3
Version: 3.5.4
Summary: A python implementation of GNU readline.
Author-email: Bassem Girgis <brgirgis@gmail.com>, Jorgen Stenarson <jorgen.stenarson@kroywen.se>, Gary Bishop <unknwon@unknown.com>, Jack Trainor <unknwon@unknown.com>
Maintainer-email: Bassem Girgis <brgirgis@gmail.com>
License: BSD
Project-URL: Homepage, https://github.com/pyreadline3/pyreadline3
Project-URL: Documentation, https://github.com/pyreadline3/pyreadline3
Project-URL: Repository, https://github.com/pyreadline3/pyreadline3.git
Project-URL: Issues, https://github.com/pyreadline3/pyreadline3/issues
Project-URL: Changelog, https://github.com/pyreadline3/pyreadline3/blob/master/doc/ChangeLog
Keywords: readline,pyreadline,pyreadline3
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Console
Classifier: Operating System :: Microsoft :: Windows
Classifier: License :: OSI Approved :: BSD License
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE.md
Provides-Extra: dev
Requires-Dist: build ; extra == 'dev'
Requires-Dist: flake8 ; extra == 'dev'
Requires-Dist: mypy ; extra == 'dev'
Requires-Dist: pytest ; extra == 'dev'
Requires-Dist: twine ; extra == 'dev'
# pyreadline3
[![PyPi Badge](https://img.shields.io/pypi/v/pyreadline3)](https://pypi.org/project/pyreadline3/)
![Publish](https://github.com/pyreadline3/pyreadline3/workflows/Publish/badge.svg)
![Test](https://github.com/pyreadline3/pyreadline3/workflows/Test/badge.svg)
[![Downloads](https://static.pepy.tech/personalized-badge/pyreadline3?period=week&units=international_system&left_color=black&right_color=orange&left_text=Last%20Week)](https://pepy.tech/project/pyreadline3)
[![Downloads](https://static.pepy.tech/personalized-badge/pyreadline3?period=month&units=international_system&left_color=black&right_color=orange&left_text=Month)](https://pepy.tech/project/pyreadline3)
[![Downloads](https://static.pepy.tech/personalized-badge/pyreadline3?period=total&units=international_system&left_color=black&right_color=orange&left_text=Total)](https://pepy.tech/project/pyreadline3)
The `pyreadline3` package is based on the stale package `pyreadline` located
[here](https://github.com/pyreadline/pyreadline).
The original `pyreadline` package is a Python implementation of GNU `readline`
functionality.
It is based on the `ctypes` based UNC `readline` package by Gary Bishop.
It is not complete.
It has been tested for use with Windows 10.
Version 3.4+ of pyreadline3 runs on Python 3.8+.
`pyreadline3` is available on PyPI and can be installed with
pip install pyreadline3
## Features
- keyboard text selection and copy/paste
- Shift-arrowkeys for text selection
- Control-c can be used for copy activate with allow_ctrl_c(True) in config file
- Double tapping ctrl-c will raise a KeyboardInterrupt, use ctrl_c_tap_time_interval(x)
- where x is your preferred tap time window, default 0.3 s.
- paste pastes first line of content on clipboard.
- ipython_paste, pastes tab-separated data as list of lists or numpy array if all data is numeric
- paste_mulitline_code pastes multi line code, removing any empty lines.
The latest development version is always available at the project git
[repository](https://github.com/pyreadline3/pyreadline3)
## Development
To clone the library for development:
git clone git@github.com:pyreadline3/pyreadline3.git
or
git clone https://github.com/pyreadline3/pyreadline3.git
### Build The Virtual Environment
The current earliest Python version supported is `3.8`. You need to be able to create a virtual environment at this version to make sure any changes you make is combatible.
If you are using `conda`:
conda create --prefix=.venv python=3.8 --yes
If you are using `venv`, make sure you have the right base package:
>> python --version
Python 3.8.x
Once you verify your base Python, you can then create a virtual environment using:
virtualenv -p py3.8 .venv
### Setup
Once you have created your virtual environment and made sure it is active in your current command line:
pip install -e .[dev]
This should all the dependencies you need for developing into the library and also allow you to run the unit tests:
pytest
### Debugging
WIP

View File

@ -0,0 +1,93 @@
__pycache__/readline.cpython-312.pyc,,
pyreadline3-3.5.4.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
pyreadline3-3.5.4.dist-info/LICENSE.md,sha256=j8TY3mG0BTMCOxbmRSjRM3Gi6caGd9957V6TulcEcb0,2250
pyreadline3-3.5.4.dist-info/METADATA,sha256=nQOXJa_U-sDQlnFW8Z9Cru_tmCVVQC1HeyVd7PIJACs,4653
pyreadline3-3.5.4.dist-info/RECORD,,
pyreadline3-3.5.4.dist-info/WHEEL,sha256=GV9aMThwP_4oNCtvEC2ec3qUYutgWeAzklro_0m4WJQ,91
pyreadline3-3.5.4.dist-info/top_level.txt,sha256=jFAZcAVg1WzdsUjogYZvyqSMaBAN38sqUZemcaDxF9E,21
pyreadline3/__init__.py,sha256=Pyu6nWoyEUUQKG-mol6rpiC1LhaDWDr8Metw0QJ0ws0,1031
pyreadline3/__pycache__/__init__.cpython-312.pyc,,
pyreadline3/__pycache__/error.cpython-312.pyc,,
pyreadline3/__pycache__/get_doc.cpython-312.pyc,,
pyreadline3/__pycache__/py3k_compat.cpython-312.pyc,,
pyreadline3/__pycache__/rlmain.cpython-312.pyc,,
pyreadline3/__pycache__/unicode_helper.cpython-312.pyc,,
pyreadline3/clipboard/__init__.py,sha256=ONeTJdTckSx0utxQbcZ8f6U7q6Jt6UE4mN_5FbBZMJ0,667
pyreadline3/clipboard/__pycache__/__init__.cpython-312.pyc,,
pyreadline3/clipboard/__pycache__/api.cpython-312.pyc,,
pyreadline3/clipboard/__pycache__/get_clipboard_text_and_convert.cpython-312.pyc,,
pyreadline3/clipboard/__pycache__/ironpython_clipboard.cpython-312.pyc,,
pyreadline3/clipboard/__pycache__/no_clipboard.cpython-312.pyc,,
pyreadline3/clipboard/__pycache__/obsolete.cpython-312.pyc,,
pyreadline3/clipboard/__pycache__/win32_clipboard.cpython-312.pyc,,
pyreadline3/clipboard/api.py,sha256=MzBOvDLexVnMsejY5NrcH3zbDMUquo0FCMDI9aPNIpw,1000
pyreadline3/clipboard/get_clipboard_text_and_convert.py,sha256=UTdwFipxtAU6VySyg-FTHG3ay0Rd6vyGzlVZv_PIGNk,1839
pyreadline3/clipboard/ironpython_clipboard.py,sha256=sYs8Ms8ElTOYFbOevag8HooXRfUp1dMREf5o0K6AMvw,893
pyreadline3/clipboard/no_clipboard.py,sha256=o_jJjf8L182Hwwh9Xvq7Ux2WzSP7hLpMkwhcU2WUTcI,694
pyreadline3/clipboard/obsolete.py,sha256=MyyGoYDi6K7asnjNqp_NCp9kdluDoYkzVUKfED1MSCk,954
pyreadline3/clipboard/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
pyreadline3/clipboard/win32_clipboard.py,sha256=BzpOCMZFgLVdy1i_F0Bv0Pmc-_FOkuv5ckYCVNq-gpU,4592
pyreadline3/configuration/__pycache__/startup.cpython-312.pyc,,
pyreadline3/configuration/pyreadlineconfig.ini,sha256=FSps2a6pWneXPsPlr4aCnQFkixMRogT36H-fGYwWKV4,3922
pyreadline3/configuration/startup.py,sha256=03fj2vhTtpIbquQOAU_NL4hpNdFh9dmvShoCkt3PWOQ,1098
pyreadline3/console/__init__.py,sha256=1SwEGWL1DEWRUfRSQ1ifgtGLu8VNqfkoTJYGW2Kzelc,496
pyreadline3/console/__pycache__/__init__.cpython-312.pyc,,
pyreadline3/console/__pycache__/ansi.cpython-312.pyc,,
pyreadline3/console/__pycache__/console.cpython-312.pyc,,
pyreadline3/console/__pycache__/console_attributes.cpython-312.pyc,,
pyreadline3/console/__pycache__/consolebase.cpython-312.pyc,,
pyreadline3/console/__pycache__/event.cpython-312.pyc,,
pyreadline3/console/__pycache__/ironpython_console.cpython-312.pyc,,
pyreadline3/console/ansi.py,sha256=F3G_sO718SVZ10JFr786GCUD7pkRWKyyHB9j8Ehp-cU,8435
pyreadline3/console/console.py,sha256=4enAQ2IwURQobCCthVDKZCtvlTKiNtwS07QY7WT16XU,30430
pyreadline3/console/console_attributes.py,sha256=Zeze7tKKCHVhDmwaS77eNmsM8F5moT7FEZBnRVsTS2k,463
pyreadline3/console/consolebase.py,sha256=CATd1PAh0sfPriCZUF5oTD246IKfdyxq3hjQ_Un5cjI,1563
pyreadline3/console/event.py,sha256=WoRNeZCLvzh5yoTdckqzbSLOoCZHhzKiW4U83uOHWUI,1273
pyreadline3/console/ironpython_console.py,sha256=bX3TlEuabL-sptjTHVwAmEdeytG7xKsW_hcPM0fgUYo,14151
pyreadline3/error.py,sha256=ahY4Szbx9rPf-ho3uwYsHD0OAzTw7ySrcYDpydD3tDA,569
pyreadline3/get_doc.py,sha256=D5J3VY3N2c9ORsMxd3pWJN8Y9hqAAQiUDzhxF8Rt11A,530
pyreadline3/keysyms/__init__.py,sha256=UL3Yc3r27-JiPZAXjqzXM1ec6DLxV3WqDDKuwJ1CcOw,440
pyreadline3/keysyms/__pycache__/__init__.cpython-312.pyc,,
pyreadline3/keysyms/__pycache__/common.cpython-312.pyc,,
pyreadline3/keysyms/__pycache__/ironpython_keysyms.cpython-312.pyc,,
pyreadline3/keysyms/__pycache__/keysyms.cpython-312.pyc,,
pyreadline3/keysyms/__pycache__/winconstants.cpython-312.pyc,,
pyreadline3/keysyms/common.py,sha256=9W6h-jLR6UJm_2ddM-SrGnItb7R_WoWy5rTSM-SxtQw,5258
pyreadline3/keysyms/ironpython_keysyms.py,sha256=EqL5k-GvEamytGHvISz-HEMuru1h6xouk2catoVM-cs,6131
pyreadline3/keysyms/keysyms.py,sha256=-V_ajYWr-_qH0zp_XqaV_MZkyKSJFWH8IiuRVKzHzJU,3991
pyreadline3/keysyms/winconstants.py,sha256=TQQXFeMjQcETmFl4rjjfPOfqI34xy1CO406kGVTjkko,3049
pyreadline3/lineeditor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
pyreadline3/lineeditor/__pycache__/__init__.cpython-312.pyc,,
pyreadline3/lineeditor/__pycache__/history.cpython-312.pyc,,
pyreadline3/lineeditor/__pycache__/lineobj.cpython-312.pyc,,
pyreadline3/lineeditor/__pycache__/wordmatcher.cpython-312.pyc,,
pyreadline3/lineeditor/history.py,sha256=DfsYUG9p3pG77vaMqKhKX2Qpw3ZCUwPDiBHR73AmGKY,11021
pyreadline3/lineeditor/lineobj.py,sha256=UPndJGbs-BMVo4FbgGenp_gqNDDKP3S8embUfIrxNu4,25458
pyreadline3/lineeditor/wordmatcher.py,sha256=CXzpmroARRc3H2wX-lZBAzD-Gnswtnn_THYfj0sTQZE,3653
pyreadline3/logger/__init__.py,sha256=c07U4Ov5JksvfGubZ79juELGv3TZY9jeYP_dKbryKjo,769
pyreadline3/logger/__pycache__/__init__.cpython-312.pyc,,
pyreadline3/logger/__pycache__/control.cpython-312.pyc,,
pyreadline3/logger/__pycache__/log.cpython-312.pyc,,
pyreadline3/logger/__pycache__/logger.cpython-312.pyc,,
pyreadline3/logger/__pycache__/null_handler.cpython-312.pyc,,
pyreadline3/logger/__pycache__/socket_stream.cpython-312.pyc,,
pyreadline3/logger/control.py,sha256=wQl9H7mT8nMitd-q-GlkSlsg3wQBJwwOAAR-osXMvIs,1970
pyreadline3/logger/log.py,sha256=sXVvhvb_LtLuv7FoP9sYyJHyEU0rNYZPxCI0DgH0bxY,637
pyreadline3/logger/logger.py,sha256=5w6fn46sXM8rzB0JSSIYFydEWctTaX1vFBeBm6fRNCM,745
pyreadline3/logger/null_handler.py,sha256=Usqu3O5k9vqMWIV6ErTn_HAhHzpaDMlyhYud8O7AGxQ,607
pyreadline3/logger/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
pyreadline3/logger/socket_stream.py,sha256=0TsCvT6xCmKj0LTduV7y2FQKxPqqw6TgusJlZJ96DyU,1048
pyreadline3/modes/__init__.py,sha256=BM7vslXGTj6-AeMMuMN1QTVQKzbUtcX0GmGSRXyK1Q4,204
pyreadline3/modes/__pycache__/__init__.cpython-312.pyc,,
pyreadline3/modes/__pycache__/basemode.cpython-312.pyc,,
pyreadline3/modes/__pycache__/emacs.cpython-312.pyc,,
pyreadline3/modes/__pycache__/notemacs.cpython-312.pyc,,
pyreadline3/modes/__pycache__/vi.cpython-312.pyc,,
pyreadline3/modes/basemode.py,sha256=5CQoOtMKBFq6i5_G-jqVFV31Vrp-3YL62sjjy7LYD0E,22256
pyreadline3/modes/emacs.py,sha256=dmfouhGBcrzpxHK8-o0OBsL6BDCwczdkuHvo0FX-Ejg,30599
pyreadline3/modes/notemacs.py,sha256=TJ-nhAoS7i2yL5YbBB4V1GKR2xBWRAuRs405eamArLc,25617
pyreadline3/modes/vi.py,sha256=OkDT1jdpY9qniVAFy2NiPN-krd0H7DI2I0w4i-KU0H4,41671
pyreadline3/py3k_compat.py,sha256=W_R5kyM27e8ZWaqNe5NLm-NaiKeoI9WFpTuYTvpk-YQ,680
pyreadline3/rlmain.py,sha256=2K6I5FxiZd2Rv4OedWtDquY6gObeXhXhFQQrMwu6SDM,22551
pyreadline3/unicode_helper.py,sha256=RHXvPH41R98uR3iWDAJzsSZMqEYLKyMb-9FdhwJWgBw,1816
readline.py,sha256=Q861FGqmettjKhPsZo7lAt891RXd0dEDAtkDapeUUi4,2667

View File

@ -0,0 +1,5 @@
Wheel-Version: 1.0
Generator: setuptools (75.1.0)
Root-Is-Purelib: true
Tag: py3-none-any

View File

@ -0,0 +1,2 @@
pyreadline3
readline