<commit_before>Konsole-Kursor
==============

A patch for KDE Konsole to draw arbitrary cursor shapes.<commit_msg>Updated description.<commit_after>Konsole-Kursor
==============

A patch for KDE Konsole to facilitate the drawing of arbitrary cursor shapes.

This project provides two alternative ways of achieving this: a static patch and a dynamic patch.

Static patch
=

This will add an extra "Custom (static)" option to the cursor selection combobox in the profile settings dialogue. When this option is selected, the painting code will call a method in a separate source file. This file is where the user will add their custom drawing code using QPainter.

This approach introduces the least overhead (if any at all assuming the function is inlined) however, any changes to the painting code will require konsole to be recompiled.

Dynamic patch
=
This will add an extra "Custom (dynamic)" option to the cursor selection combobox in the profile settings dialogue. When this option is selected, the painting code will read in a script file and interpret the contents. The first language to be supported will be Lua. Konsole's QPainter object will be exposed to the scripting interface like it is with the static patch so the same painting logic will work for both approaches. 

This approach introduces considerable overhead but it also means that konsole does not need to be recompiled or even restarted when the painting code is changed. This is ideal for experimenting with  ideals before committing a final design to the static approach.

No releases yet as this is a work in progress. 
{'fraction_non_alphanumeric': 0.04265997490589712, 'fraction_numerical': 0.0, 'mean_word_length': 4.7168458781362, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '390984', 'n_tokens_mistral': 363, 'n_tokens_neox': 346, 'n_words': 246}