Add 3.27.3.0 QMD extensions and README

This commit is contained in:
√(noham)²
2026-07-01 17:45:23 +02:00
parent 17898d11af
commit e20ec7ae29
14 changed files with 283 additions and 13 deletions

1
.gitignore vendored
View File

@@ -3,3 +3,4 @@ qmldiff
hashchange
.DS_Store
DOC.md
.opencode/skills/qmd-port/SKILL.md

View File

@@ -0,0 +1,14 @@
AFFECT [[16664384747789373392]]
TRAVERSE [[3819512207256720568]] > [[7081645463424]]#[[14500576802168220354]] > [[254494525842443467]] > [[254501558939456351]]#[[16044303013921817534]]
LOCATE AFTER ALL
INSERT {
~&6503165774&~ {
~&6504315758&~: ~&12464413590283098527&~.~&233722187800420&~.~&8399929542203138183&~ + ~&"180910&~
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
~&6503823200&~.~&254543497768871654&~: 24
~&6014474628714890946&~: ~&6503165774&~.~&14019785292674113803&~
~&7081629735527&~.~&254522510204479688&~: ~&5971598&~.~&14019785292674113803&~
}
}
END TRAVERSE
END AFFECT

62
3.27.3.0/clock.qmd Normal file
View File

@@ -0,0 +1,62 @@
; credit for the original clock implementation: https://github.com/StarNumber12046/xovi-qmd-extensions/blob/main/clock.qmd
AFFECT /qml/device/view/navigator/Sidebar.qml
TRAVERSE DeviceKeyboardNavigationHandler > ColumnLayout#filterColumn
LOCATE BEFORE SidebarFilterItem#filterMyFiles
INSERT {
SidebarFilterItem {
id: clockSidebarItem
objectName: "clockSidebarObject"
title: Qt.formatDateTime(getCestTime(), set_Format_Date)
iconSource: "qrc:/ark/icons/system_clock"
active: false
enabled: true
/* 1000 = 1 second / 60000 = 1 minute */
property int set_Timer: 60000
property string set_Format_Date: "dd/MM hh:mm"
function getCestTime() {
return new Date();
}
Component.onCompleted: {
title = Qt.formatDateTime(getCestTime(), set_Format_Date);
}
onClicked: {
if (clockSidebarItem.set_Timer === 60000) {
clockSidebarItem.set_Timer = 1000;
clockSidebarItem.set_Format_Date = "dd/MM hh:mm:ss";
} else {
clockSidebarItem.set_Timer = 60000;
clockSidebarItem.set_Format_Date = "dd/MM hh:mm";
}
timer.interval = clockSidebarItem.set_Timer
clockSidebarItem.title = Qt.formatDateTime(clockSidebarItem.getCestTime(), clockSidebarItem.set_Format_Date);
}
/* Timer for update time */
Timer {
id: timer
interval: clockSidebarItem.set_Timer
repeat: true
running: true
onTriggered: {
clockSidebarItem.title = Qt.formatDateTime(clockSidebarItem.getCestTime(), clockSidebarItem.set_Format_Date);
}
}
Layout.preferredHeight: Values.navigatorSidebarItemHeight
Layout.preferredWidth: parent.width
navigationHandler: root
function activate() {
toggle();
}
}
}
END TRAVERSE
END AFFECT

View File

@@ -0,0 +1,11 @@
AFFECT [[3197972396468700595]]
TRAVERSE [[6502786168]]#[[10742505294233322867]]
TRAVERSE [[12395602925408354507]]#[[214642769434]]
REMOVE [[425121728314878811.16765000136167945189.7081261925573]]#[[3012293087768835154]]
END TRAVERSE
END TRAVERSE
END AFFECT
AFFECT [[3513522976947834303]]
REMOVE [[454089850271038938]]
END AFFECT

View File

@@ -0,0 +1,68 @@
; credit for the original clock implementation: https://github.com/StarNumber12046/xovi-qmd-extensions/blob/main/quickSettingsClock.qmd
AFFECT [[12542166428983872557]]
IMPORT [[7082573613689.5972775.6504315758]] [[180922.180921]]
TRAVERSE [[7711468349764991]] > [[6502786168]] > [[8397788359424131273]] > [[14125623155555875541]]#[[233718721544006]]
LOCATE AFTER [[6502786168]] > [[425121728314878811.15389500557572665857]]#[[6026822765657717152]]
INSERT {
~&6502786168&~ {
~&7081629735527&~.~&17520348323745447649&~: ~&7082020628281&~.~&10286380502125731829&~
~&7081629735527&~.~&8399743405844438450&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233740248806464&~.~&7083363878252&~
~&7081629735527&~.~&499747351624466981&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233740248806464&~.~&7083363878252&~
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
~&14397210151462632996&~ {
~&5972374&~: quickSettingsClock
~&233721384511543&~ {
~&6504027668&~: ~&7083038346995&~.~&6504027668&~
~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
}
property ~&6503679477&~ showSeconds: ~&214625660372&~
property ~&7083178290016&~ minuteFormat: "dd/MM hh:mm"
property ~&7083178290016&~ secondFormat: "dd/MM hh:mm:ss"
property ~&197088788&~ minuteInterval: 60000
property ~&197088788&~ secondInterval: 1000
~&6504315758&~: ~&5971598&~.~&6460516198169535423&~( new ~&6502586279&~(), minuteFormat)
function updateClock() {
~&6504315758&~ = ~&5971598&~.~&6460516198169535423&~( new ~&6502586279&~(), showSeconds ? secondFormat : minuteFormat);
}
~&254480451320573660&~.~&495334332051582499&~: {
updateClock();
}
onShowSecondsChanged: {
quickSettingsClockTimer.~&233743006639214&~();
updateClock();
}
~&214604601930&~ {
~&5972374&~: quickSettingsClockTimer
~&7713147298280334&~: quickSettingsClock.showSeconds ? quickSettingsClock.secondInterval : quickSettingsClock.minuteInterval
~&7083121289162&~: ~&6504329801&~
~&233743626668842&~: ~&6504329801&~
~&495358363329399331&~: {
quickSettingsClock.updateClock();
}
}
~&254494525842443467&~ {
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
~&477346538929698200&~: ~&5971598&~.PointingHandCursor
~&254542236275632405&~: {
quickSettingsClock.showSeconds = !quickSettingsClock.showSeconds;
}
}
}
}
}
END TRAVERSE
END AFFECT

View File

@@ -0,0 +1,89 @@
; ported from 3.23.0.64
; In 3.22/3.23 the create buttons were emitted by a C++ Repeater (not QML).
; By 3.27 the firmware migrated to a QML Repeater backed by createWidgets model,
; so this QMD was rewritten: it keeps the Repeater (search, calendar, quick-sheet)
; and inserts the notebook, folder and quick-sheet buttons inline after it.
AFFECT [[13636194074538366841]]
TRAVERSE [[6502786168]]#[[6504254477]]
TRAVERSE [[254501108490678590]]#[[16596251247453125840]] > [[254501558939456351]]#[[6391657810197849963]]
LOCATE AFTER ALL
INSERT {
~&254501108490678590&~ {
~&7081629735527&~.~&8399470807760157065&~: ~&6504329801&~
~&7081629735527&~.~&16239278111605497701&~: 2
~&214622605608&~: ~&"214621299494&~
~&233748328658231&~: ~&6504254477&~.~&6504391364&~ === ~&"233737316206498&~ || ~&6504254477&~.~&6504391364&~ === ~&"7834776425552261693&~
}
~&254494525842443467&~ {
~&5972374&~: _notebookBtn
~&7081629735527&~.~&254522510204479688&~: ~&5971598&~.~&14019785274593562237&~
~&7081629735527&~.~&16239278111605497701&~: 64
~&7081629735527&~.~&8399470807760157065&~: ~&6504329801&~
~&7081629735527&~.~&8399743405844438450&~: 40
~&233748328658231&~: ~&6504254477&~.~&6504391364&~ === ~&"233737316206498&~ || ~&6504254477&~.~&6504391364&~ === ~&"7834776425552261693&~
~&14125623155555875541&~ {
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
~&233744706647566&~: 0
~&425121728314878811&~.~&6502767986&~ {
~&7081629735527&~.~&254522510204479688&~: ~&5971598&~.~&14019785274593562237&~
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
~&7083172477658&~: ~&"8609871731041592465&~
}
}
~&254542236275632405&~: {
~&197102514&~ ~&197093806&~ = ~&7083038346995&~.~&7083038346995&~.~&7083038346995&~.~&7083038346995&~;
~&197093806&~.~&11689254259907176254&~();
}
}
~&254494525842443467&~ {
~&5972374&~: _folderBtn
~&7081629735527&~.~&254522510204479688&~: ~&5971598&~.~&14019785274593562237&~
~&7081629735527&~.~&16239278111605497701&~: 64
~&7081629735527&~.~&8399470807760157065&~: ~&6504329801&~
~&7081629735527&~.~&8399743405844438450&~: 40
~&233748328658231&~: ~&6504254477&~.~&6504391364&~ === ~&"233737316206498&~
~&14125623155555875541&~ {
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
~&233744706647566&~: 0
~&425121728314878811&~.~&6502767986&~ {
~&7081629735527&~.~&254522510204479688&~: ~&5971598&~.~&14019785274593562237&~
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
~&7083172477658&~: ~&"1888152859110688812&~
}
}
~&254542236275632405&~: {
~&197102514&~ ~&197093806&~ = ~&7083038346995&~.~&7083038346995&~.~&7083038346995&~.~&7083038346995&~;
~&197093806&~.~&1343967321191992457&~(~&"477188259920763378&~);
}
}
~&254494525842443467&~ {
~&5972374&~: _quickSheetBtn
~&7081629735527&~.~&254522510204479688&~: ~&5971598&~.~&14019785274593562237&~
~&7081629735527&~.~&16239278111605497701&~: 64
~&7081629735527&~.~&8399470807760157065&~: ~&6504329801&~
~&7081629735527&~.~&8399743405844438450&~: 40
~&7081629735527&~.~&499747351624466981&~: 40
~&233748328658231&~: ~&6504254477&~.~&6504391364&~ !== ~&"214642862219&~
~&14125623155555875541&~ {
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
~&233744706647566&~: 0
~&425121728314878811&~.~&6502767986&~ {
~&7081629735527&~.~&254522510204479688&~: ~&5971598&~.~&14019785274593562237&~
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
~&7083172477658&~: ~&"5726907772531472741&~
}
}
~&254542236275632405&~: {
~&197102514&~ doc = ~&2918312801265623842&~.~&498775298796480658&~();
~&5972376&~ (doc && doc.~&6504337259&~ === 1) {
~&197102514&~ ~&197093806&~ = ~&7083038346995&~.~&7083038346995&~.~&7083038346995&~.~&7083038346995&~;
~&197093806&~.~&2766288418351025740&~.~&6504147419&~(~&"80852525132738217&~, {
~&8399386052748489877&~: doc.~&5972374&~,
~&6504167078&~: doc.~&254543134818768527&~ - 1
});
}
}
}
}
END TRAVERSE
END AFFECT

View File

@@ -20,41 +20,66 @@ Beta releases are not tested nor supported.
## Extensions
### Version 3.27.3.0
#### `batteryPercentage.qmd`
- Shows the battery percentage next to the battery icon in the main view header.
<img src="images/batteryPercentage.png" width="400">
#### `clock.qmd`
- Adds a live clock to the library sidebar; tap the entry to toggle seconds display.
<img src="images/clock_1.png" width="400">
<img src="images/clock_2.png" width="400">
Note: You have to set the right timezone on the tablet (you can use [reManager](https://github.com/rmitchellscott/reManager) to set it)
#### `convertToText_remover.qmd`
- Removes the `Convert to text` option from selection menus and the toolbar (ported from 3.23.0.64).
<img src="images/convertToText_remover.png" width="400">
#### `uncompressDock.qmd`
- Replaces the widget-based create menu with dedicated buttons for notebook, folder, and quick sheet creation.
- **Rewritten** for the new `HomeScreen.CreateMenu` — the old `Navigator.CreateMenu` is no longer used in 3.27.
- Note: Notebook and Folder use Navigator methods; Quicksheet uses `LibraryController` (experimental).
<img src="images/uncompressDock.png" width="400">
#### `quickSettingsClock.qmd`
- Injects a tappable clock into the Quick Settings header; tap to toggle between minute and second precision.
<img src="images/quickSettingsClock.png" width="400">
### `tagButton.qmd` & `favoriteButton.qmd`
- Those tweaks have been implemented by the reMarkable team in the latest update, so they are no longer needed :)
### Version 3.23.0.64
#### `clock.qmd`
- Adds a live clock to the library sidebar; tap the entry to toggle seconds display.
![Sidebar clock showing minutes](images/clock_1.png)
![Sidebar clock showing seconds](images/clock_2.png)
Note: You can add a timezone by editing the `clock.qmd` file and changing the timezone string in the line:
```
~&197102514&~ utc = now.getTime() + (now.getTimezoneOffset() * 60000);
```
#### `quickSettingsClock.qmd`
- Injects a tappable clock into the Quick Settings header; tap to toggle between minute and second precision.
![Quick settings clock](images/quickSettingsClock.png)
Note: You can add a timezone by editing the `quickSettingsClock.qmd`, see above for details.
#### `forceSync.qmd`
- Adds a cloud button in Quick Settings that forces a library sync when tapped (need further testing to confirm it works as intended).
![Force sync button in quick settings](images/forceSync.png)
<img src="images/forceSync.png" width="400">
#### `favoriteButton.qmd`
- Restores a `Favorite` action in the document list header for faster pinning.
![Favorite button in action bar](images/favoriteButton.png)
<img src="images/favoriteButton.png" width="400">
#### `tagButton.qmd`
- Puts a `Tag` action next to other list controls to open the tag editor directly.
![Tag button in action bar](images/tagButton.png)
<img src="images/tagButton.png" width="400">
#### `convertToText_remover.qmd`
- Removes the `Convert to text` option from selection menus and the toolbar.
![Convert to text removed from menu](images/convertToText_remover.png)
#### `uncompressDock.qmd`
- Replaces the condensed `More` menu in the new document dock with dedicated buttons for notebook, folder, and quick sheet creation.
![Expanded create menu buttons](images/uncompressDock.png)
<img src="images/uncompressDock_old.png" width="400">
#### `hideDocumentClose.qmd`
- Hides the close button in the document toolbar to prevent accidental exits.

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 188 KiB

After

Width:  |  Height:  |  Size: 89 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB