|
|
#1 |
|
Guru
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 985
Karma: 1044682
Join Date: Sep 2017
Location: Buenos Aires, Argentina
Device: moon+ reader, kindle paperwhite
|
Help Getting a Plugin to Work
Theme Switcher Plugin for Calibre
This interface plugin allows you to apply custom visual themes in Calibre using palette files (*.calibre-palette) and stylesheets (*.qss). Its goal is to offer a modular and reproducible way to change the look of the graphical interface, including background colors, text, buttons, and scroll bars. 🔧 What does it do? Adds an icon to the Calibre toolbar to access the theme switcher. Automatically detects .calibre-palette files located in ~/.config/calibre/themes/. Allows you to select and apply a theme from a popup window. Applies the color palette using Qt's QPalette. Apply additional visual styles (such as scroll bars) using .qss files from the plugin's resources/ folder. Supports multiple themes: dark, light, custom, and any others added manually. 📁 Structure Requirements Themes must be in ~/.config/calibre/themes/ with an INI file and a .calibre-palette extension. The .qss styles must be in resources/ within the plugin, with names like scrollbar-dark.qss, scrollbar-light.qss, etc. The plugin icon must be in images/icon.png. But the icon doesn't appear in the toolbar. If someone could review it to make it functional, I'd be happy to share the credits. Last edited by dunhill; 09-14-2025 at 06:19 PM. |
|
|
|
|
|
#2 |
|
null operator (he/him)
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 22,280
Karma: 30317806
Join Date: Mar 2012
Location: Sydney Australia
Device: none
|
Moderator Notice
@dunhill Asking for help in developing a plugin is not the intended purpose of the Plugin ideas thread. This is where it belongs… Developer's Corner ![]() BR |
|
|
|
|
|
#3 |
|
Guru
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 929
Karma: 3501168
Join Date: Jan 2017
Location: Poland
Device: Various
|
Misc issues.
The text file name is very important and must be unique READ: Code:
plugin-import-name-theme_switcher.txt This is just a suggestion, because you can write your own icon handling and add it to the plugin. |
|
|
|
|
|
#4 | |
|
Guru
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 985
Karma: 1044682
Join Date: Sep 2017
Location: Buenos Aires, Argentina
Device: moon+ reader, kindle paperwhite
|
Quote:
Sorry, I thought the thread your ideas were correct, but you always learn, it won't happen again. Last edited by dunhill; 09-15-2025 at 01:49 PM. |
|
|
|
|
|
|
#5 | |
|
Guru
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 985
Karma: 1044682
Join Date: Sep 2017
Location: Buenos Aires, Argentina
Device: moon+ reader, kindle paperwhite
|
Quote:
|
|
|
|
|
|
|
#6 |
|
Guru
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 985
Karma: 1044682
Join Date: Sep 2017
Location: Buenos Aires, Argentina
Device: moon+ reader, kindle paperwhite
|
It seems to me that I have to study this file src/calibre/gui2/tweak_book/editor/themes.py which I suppose is the one that chooses the color settings or calibre-palette files so that it takes effect when selecting the file from the plugin interface.
So far the files appear in the interface but selecting them has no effect. Last edited by dunhill; 09-28-2025 at 02:38 PM. |
|
|
|
|
|
#7 |
|
Member
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 20
Karma: 39844
Join Date: Jan 2026
Device: Samsung Galaxy Tab S10 Lite
|
Hi, are you still making this plugin?
|
|
|
|
|
|
#8 |
|
Guru
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 985
Karma: 1044682
Join Date: Sep 2017
Location: Buenos Aires, Argentina
Device: moon+ reader, kindle paperwhite
|
|
|
|
|
|
|
#9 |
|
Member
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 20
Karma: 39844
Join Date: Jan 2026
Device: Samsung Galaxy Tab S10 Lite
|
|
|
|
|
|
|
#10 |
|
want to learn what I want
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 1,870
Karma: 7945227
Join Date: Sep 2020
Device: none
|
attached version is working!
|
|
|
|
|
|
#11 |
|
Member
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 20
Karma: 39844
Join Date: Jan 2026
Device: Samsung Galaxy Tab S10 Lite
|
|
|
|
|
|
|
#12 |
|
Guru
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 985
Karma: 1044682
Join Date: Sep 2017
Location: Buenos Aires, Argentina
Device: moon+ reader, kindle paperwhite
|
Thanks, friend! If you want, we can put it in the plugins threads. Let me know what I missed. I'm going to prepare the translation support, which it already has but doesn't have the files, and in the init section under authoring I'll put this: `author = 'Dunhill & Comfy.n'`. Does that agree?
Last edited by dunhill; Yesterday at 07:07 PM. |
|
|
|
|
|
#13 | |
|
want to learn what I want
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 1,870
Karma: 7945227
Join Date: Sep 2020
Device: none
|
Quote:
Here is an improved version that can switch instantly across palette files, supports importing from zip files (recursively), and skips duplicates. |
|
|
|
|
|
|
#14 |
|
Guru
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 985
Karma: 1044682
Join Date: Sep 2017
Location: Buenos Aires, Argentina
Device: moon+ reader, kindle paperwhite
|
Okay, I'll review the file you sent me. I've been working on the translation and replacing "themes" with "palettes" to standardize the usage of the plugin. It will be posted in the plugins threads soon. Thank you for your help.
|
|
|
|
![]() |
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| FootnoteLinker plugin won't work on Sigil 2.42. | md029 | Sigil | 5 | 05-20-2025 06:45 PM |
| Plugin code example don't work | un_pogaz | Plugins | 3 | 03-03-2020 01:25 PM |
| How does the KOReader Evernote plugin work? | maximus83 | KOReader | 3 | 01-27-2019 04:27 PM |
| DRM removal plugin doesn't work | joro | Conversion | 1 | 01-12-2019 10:54 PM |
| my first plugin did not work | yang738 | Development | 5 | 07-24-2014 11:43 PM |