# BScintillaEdit
The `BScintillaEdit` is a simple text edit control derived from a `QScrollArea` that embeds a `ScintillaBaseEdit` from [Scintilla](https://www.scintilla.org/).
The Python bindings are made with [shiboken](https://doc.qt.io/qtforpython-6/shiboken6/index.html).
## PyPI
The package can be installed from [PyPI](https://pypi.org/project/bscintillaedit/):
```bash
pip install bscintillaedit
```
## Usage
```python
from PySide6.QtWidgets import QApplication
from bscintillaedit import BScintillaEdit
SAMPLE_TEXT = """
Lorem ipsum odor amet, consectetuer adipiscing elit.
Dui enim odio natoque libero accumsan mus maecenas himenaeos.
Sapien est turpis maecenas diam turpis ultrices tempus.
"""
def run() -> None:
"""Start application."""
app = QApplication()
window = BScintillaEdit()
window.setLineEndVisible(True)
window.setLineNumbersVisible(True)
window.setLineWrapped(True)
window.setText(SAMPLE_TEXT)
window.resize(300, 300)
window.show()
app.exec()
if __name__ == "__main__":
run()
```
![sample_app](https://gitlab.com/iborco-pyside/bscintillaedit/-/raw/master/docs/python_sample.png?ref_type=heads)
## License
This project uses:
* the code from the [Scintilla](https://www.scintilla.org/) project as a submodule installed in `src/core_lib/scintilla`
* all the code under `src/core_lib/scintilla` is covered by the [scintilla license](https://www.scintilla.org/License.txt), a [Historical Permission Notice and Disclaimer](https://en.wikipedia.org/wiki/Historical_Permission_Notice_and_Disclaimer) type of license
* the extra [Qt 5 Compatibility Module](https://doc.qt.io/qt-6/qtcore5-index.html)
* because the [PySide6](https://pypi.org/project/PySide6/) package doesn't include this module, the `Qt6Core5Compat` shared library is deployed within the *wheel*
* the *Qt 5 Compatibility Module* is available under these [licenses](https://doc.qt.io/qt-6/qtcore5-index.html#licenses-and-attributions):
* commercial licenses from [The Qt Company](http://www.qt.io/about-us/),
* the [GNU Lesser General Public License, version 3](http://www.gnu.org/licenses/lgpl-3.0.html), or
* the [GNU General Public License, version 2](http://www.gnu.org/licenses/gpl-2.0.html)
All the other code from this project is licensed under the [MIT License](https://gitlab.com/iborco-pyside/bscintillaedit/-/blob/master/LICENSE.md).
This software is <ins>**not related**</ins> to the [QScintilla](https://www.riverbankcomputing.com/software/qscintilla/) or [PyQt](https://www.riverbankcomputing.com/software/pyqt/) projects.
Raw data
{
"_id": null,
"home_page": null,
"name": "bscintillaedit",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.12",
"maintainer_email": null,
"keywords": "c++, cmake, cpp, cxx, example, pyside6, python, scikit-build-core, scintilla, shiboken, shiboken6",
"author": null,
"author_email": "Ioan C\u0103lin <iborco@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/f7/70/a45645add9dcd65221bbdfc14687b0e148c3365b5f95e9d4b92043c9d4f4/bscintillaedit-0.0.4.tar.gz",
"platform": null,
"description": "# BScintillaEdit\n\nThe `BScintillaEdit` is a simple text edit control derived from a `QScrollArea` that embeds a `ScintillaBaseEdit` from [Scintilla](https://www.scintilla.org/).\n\nThe Python bindings are made with [shiboken](https://doc.qt.io/qtforpython-6/shiboken6/index.html).\n\n## PyPI\n\nThe package can be installed from [PyPI](https://pypi.org/project/bscintillaedit/):\n\n```bash\npip install bscintillaedit\n```\n\n## Usage\n\n```python\nfrom PySide6.QtWidgets import QApplication\n\nfrom bscintillaedit import BScintillaEdit\n\nSAMPLE_TEXT = \"\"\"\nLorem ipsum odor amet, consectetuer adipiscing elit.\n\nDui enim odio natoque libero accumsan mus maecenas himenaeos.\n\nSapien est turpis maecenas diam turpis ultrices tempus.\n\"\"\"\n\n\ndef run() -> None:\n \"\"\"Start application.\"\"\"\n app = QApplication()\n window = BScintillaEdit()\n window.setLineEndVisible(True)\n window.setLineNumbersVisible(True)\n window.setLineWrapped(True)\n window.setText(SAMPLE_TEXT)\n window.resize(300, 300)\n window.show()\n app.exec()\n\n\nif __name__ == \"__main__\":\n run()\n```\n\n![sample_app](https://gitlab.com/iborco-pyside/bscintillaedit/-/raw/master/docs/python_sample.png?ref_type=heads)\n\n## License\n\nThis project uses:\n\n* the code from the [Scintilla](https://www.scintilla.org/) project as a submodule installed in `src/core_lib/scintilla`\n * all the code under `src/core_lib/scintilla` is covered by the [scintilla license](https://www.scintilla.org/License.txt), a [Historical Permission Notice and Disclaimer](https://en.wikipedia.org/wiki/Historical_Permission_Notice_and_Disclaimer) type of license\n* the extra [Qt 5 Compatibility Module](https://doc.qt.io/qt-6/qtcore5-index.html)\n * because the [PySide6](https://pypi.org/project/PySide6/) package doesn't include this module, the `Qt6Core5Compat` shared library is deployed within the *wheel*\n * the *Qt 5 Compatibility Module* is available under these [licenses](https://doc.qt.io/qt-6/qtcore5-index.html#licenses-and-attributions):\n * commercial licenses from [The Qt Company](http://www.qt.io/about-us/),\n * the [GNU Lesser General Public License, version 3](http://www.gnu.org/licenses/lgpl-3.0.html), or\n * the [GNU General Public License, version 2](http://www.gnu.org/licenses/gpl-2.0.html)\n\nAll the other code from this project is licensed under the [MIT License](https://gitlab.com/iborco-pyside/bscintillaedit/-/blob/master/LICENSE.md).\n\nThis software is <ins>**not related**</ins> to the [QScintilla](https://www.riverbankcomputing.com/software/qscintilla/) or [PyQt](https://www.riverbankcomputing.com/software/pyqt/) projects.\n",
"bugtrack_url": null,
"license": "MIT License, Scintilla License, GNU Library or Lesser General Public License, Other/Proprietary License",
"summary": null,
"version": "0.0.4",
"project_urls": {
"Homepage": "https://iborco-pyside.gitlab.io/bscintillaedit",
"Issues": "https://gitlab.com/iborco-pyside/bscintillaedit/-/issues",
"Repository": "https://gitlab.com/iborco-pyside/bscintillaedit"
},
"split_keywords": [
"c++",
" cmake",
" cpp",
" cxx",
" example",
" pyside6",
" python",
" scikit-build-core",
" scintilla",
" shiboken",
" shiboken6"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "6bcf311ce2d38b87870263132e236951e3feee8c94f6b6243b09d3325002c789",
"md5": "d8bcd395f284bb12de14856a32b24298",
"sha256": "98f714d7bfb8855d1b13b2a7e51b9b8677c0d0f4e496640ddb32f1dbaffa5147"
},
"downloads": -1,
"filename": "bscintillaedit-0.0.4-cp312-cp312-win_amd64.whl",
"has_sig": false,
"md5_digest": "d8bcd395f284bb12de14856a32b24298",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.12",
"size": 955299,
"upload_time": "2024-12-21T13:42:36",
"upload_time_iso_8601": "2024-12-21T13:42:36.367832Z",
"url": "https://files.pythonhosted.org/packages/6b/cf/311ce2d38b87870263132e236951e3feee8c94f6b6243b09d3325002c789/bscintillaedit-0.0.4-cp312-cp312-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "f770a45645add9dcd65221bbdfc14687b0e148c3365b5f95e9d4b92043c9d4f4",
"md5": "034f3c2ef4f1127e1161167a2790a407",
"sha256": "6f8648f93a8f09eda785733633d0f59f452fe91b9b43fa6b67e50807bd4f43f1"
},
"downloads": -1,
"filename": "bscintillaedit-0.0.4.tar.gz",
"has_sig": false,
"md5_digest": "034f3c2ef4f1127e1161167a2790a407",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.12",
"size": 1794669,
"upload_time": "2024-12-21T13:42:42",
"upload_time_iso_8601": "2024-12-21T13:42:42.875625Z",
"url": "https://files.pythonhosted.org/packages/f7/70/a45645add9dcd65221bbdfc14687b0e148c3365b5f95e9d4b92043c9d4f4/bscintillaedit-0.0.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-21 13:42:42",
"github": false,
"gitlab": true,
"bitbucket": false,
"codeberg": false,
"gitlab_user": "iborco-pyside",
"gitlab_project": "bscintillaedit",
"lcname": "bscintillaedit"
}