shortcuts: Don't require name for 'time' (i.e. talk or sleep) shortcuts

Change-Id: I5b0777c10527f6a49ac7305ca0ba1d4c269333fe
This commit is contained in:
Christian Soffke 2025-06-06 17:58:39 +02:00
parent 19dc2466c8
commit e9d0be5dfd
51 changed files with 242 additions and 221 deletions

View file

@ -2534,20 +2534,20 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Current Time"
</dest>
<voice>
*: none
rtc: "Current time:"
rtc: "Current time"
</voice>
</phrase>
<phrase>

View file

@ -9410,20 +9410,20 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Uneko denbora"
</dest>
<voice>
*: none
rtc: "Uneko denbora:"
rtc: "Uneko denbora"
</voice>
</phrase>
<phrase>

View file

@ -8689,16 +8689,16 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Часът е"
</dest>
<voice>
*: none

View file

@ -9404,20 +9404,20 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Hora actual"
</dest>
<voice>
*: none
rtc: "Hora actual:"
rtc: "Hora actual"
</voice>
</phrase>
<phrase>

View file

@ -3747,16 +3747,16 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "现在时间"
</dest>
<voice>
*: none

View file

@ -3835,20 +3835,20 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Current Time"
</dest>
<voice>
*: none
rtc: "Current time:"
rtc: "Current time"
</voice>
</phrase>
<phrase>

View file

@ -9427,20 +9427,20 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Aktuální čas"
</dest>
<voice>
*: none
rtc: "Aktuální čas:"
rtc: "Aktuální čas"
</voice>
</phrase>
<phrase>

View file

@ -3533,16 +3533,16 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Klokken er"
</dest>
<voice>
*: none

View file

@ -8670,16 +8670,16 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Uhrzeit"
</dest>
<voice>
*: none

View file

@ -3984,17 +3984,20 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: ""
*: none
rtc: "Current Time"
</source>
<dest>
*: ""
*: none
rtc: "Kellaaeg"
</dest>
<voice>
*: "Kellaaeg:"
*: none
rtc: "Kellaaeg"
</voice>
</phrase>
<phrase>

View file

@ -8616,16 +8616,16 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Current Time"
</dest>
<voice>
*: none

View file

@ -8785,16 +8785,16 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Current Time"
</dest>
<voice>
*: none

View file

@ -2321,16 +2321,16 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Hora actual"
</dest>
<voice>
*: none

View file

@ -4109,17 +4109,20 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: ""
*: none
rtc: "Current Time"
</source>
<dest>
*: ""
*: none
rtc: "Nuna Tempo"
</dest>
<voice>
*: "Nuna Tempo:"
*: none
rtc: "Nuna Tempo"
</voice>
</phrase>
<phrase>

View file

@ -4185,20 +4185,20 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Nykyinen aika"
</dest>
<voice>
*: none
rtc: "Nykyinen aika:"
rtc: "Nykyinen aika"
</voice>
</phrase>
<phrase>

View file

@ -8770,16 +8770,16 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Temps actuel"
</dest>
<voice>
*: none

View file

@ -2778,20 +2778,20 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Hora actual"
</dest>
<voice>
*: none
rtc: "Hora actual:"
rtc: "Hora actual"
</voice>
</phrase>
<phrase>

View file

@ -9322,20 +9322,20 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Τρέχουσα ώρα"
</dest>
<voice>
*: none
rtc: "Τρέχουσα ώρα:"
rtc: "Τρέχουσα ώρα"
</voice>
</phrase>
<phrase>

View file

@ -9443,20 +9443,20 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "זמן נוכחי"
</dest>
<voice>
*: none
rtc: "זמן נוכחי:"
rtc: "זמן נוכחי"
</voice>
</phrase>
<phrase>

View file

@ -9407,20 +9407,20 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Trenutno vrijeme"
</dest>
<voice>
*: none
rtc: "Trenutno vrijeme:"
rtc: "Trenutno vrijeme"
</voice>
</phrase>
<phrase>

View file

@ -3094,20 +3094,20 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Current Time"
</dest>
<voice>
*: none
rtc: "Current time:"
rtc: "Current time"
</voice>
</phrase>
<phrase>

View file

@ -8606,16 +8606,16 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "ora attuale"
</dest>
<voice>
*: none

View file

@ -8693,16 +8693,16 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "現在時刻"
</dest>
<voice>
*: none

View file

@ -8633,16 +8633,16 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "현재 시간"
</dest>
<voice>
*: none

View file

@ -8619,16 +8619,16 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Tekošais laiks"
</dest>
<voice>
*: none

View file

@ -9485,20 +9485,20 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Dabartinis laikas"
</dest>
<voice>
*: none
rtc: "Dabartinis laikas:"
rtc: "Dabartinis laikas"
</voice>
</phrase>
<phrase>

View file

@ -8921,20 +8921,20 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Current Time"
</dest>
<voice>
*: none
rtc: "Current time:"
rtc: "Current time"
</voice>
</phrase>
<phrase>

View file

@ -8013,16 +8013,16 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Timp curent"
</dest>
<voice>
*: none

View file

@ -3882,20 +3882,20 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "huidige tijd"
</dest>
<voice>
*: none
rtc: "huidige tijd:"
rtc: "huidige tijd"
</voice>
</phrase>
<phrase>

View file

@ -4150,12 +4150,12 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
@ -4163,6 +4163,7 @@
</dest>
<voice>
*: none
rtc: ""
</voice>
</phrase>
<phrase>

View file

@ -3521,20 +3521,20 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Gjeldende tid"
</dest>
<voice>
*: none
rtc: "Gjeldende tid:"
rtc: "Gjeldende tid"
</voice>
</phrase>
<phrase>

View file

@ -8612,16 +8612,16 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Aktualna godzina"
</dest>
<voice>
*: none

View file

@ -8688,16 +8688,16 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Tempo atual"
</dest>
<voice>
*: none

View file

@ -10479,20 +10479,20 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Tempo actual"
</dest>
<voice>
*: none
rtc: "Tempo actual:"
rtc: "Tempo actual"
</voice>
</phrase>
<phrase>

View file

@ -8013,16 +8013,16 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Timp curent"
</dest>
<voice>
*: none

View file

@ -3493,16 +3493,16 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Текущее время"
</dest>
<voice>
*: none

View file

@ -8604,16 +8604,16 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Aktuálny čas"
</dest>
<voice>
*: none

View file

@ -10282,20 +10282,20 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Current Time"
</dest>
<voice>
*: none
rtc: "Current time:"
rtc: "Current time"
</voice>
</phrase>
<phrase>

View file

@ -8775,16 +8775,16 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Тренутно време"
</dest>
<voice>
*: none

View file

@ -8694,16 +8694,16 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Klockan är"
</dest>
<voice>
*: none

View file

@ -9444,20 +9444,20 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Current Time"
</dest>
<voice>
*: none
rtc: "Current time:"
rtc: "Current time"
</voice>
</phrase>
<phrase>

View file

@ -9389,20 +9389,20 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Current Time"
</dest>
<voice>
*: none
rtc: "Current time:"
rtc: "Current time"
</voice>
</phrase>
<phrase>

View file

@ -4631,16 +4631,16 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Geçerli Zaman"
</dest>
<voice>
*: none

View file

@ -8686,16 +8686,16 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "Поточний час"
</dest>
<voice>
*: none

View file

@ -4179,20 +4179,20 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "huidigen tijd"
</dest>
<voice>
*: none
rtc: "huidigen tijd:"
rtc: "huidigen tijd"
</voice>
</phrase>
<phrase>

View file

@ -2439,17 +2439,20 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: ""
*: none
rtc: "Current Time"
</source>
<dest>
*: ""
*: none
rtc: ""
</dest>
<voice>
*: ""
*: none
rtc: ""
</voice>
</phrase>
<phrase>

View file

@ -9426,20 +9426,20 @@
</voice>
</phrase>
<phrase>
id: VOICE_CURRENT_TIME
desc: spoken only, for wall clock announce
id: LANG_CURRENT_TIME
desc: for wall clock announce
user: core
<source>
*: none
rtc: ""
rtc: "Current Time"
</source>
<dest>
*: none
rtc: ""
rtc: "eure do moumint"
</dest>
<voice>
*: none
rtc: "eure do moumint:"
rtc: "eure do moumint"
</voice>
</phrase>
<phrase>

View file

@ -240,7 +240,7 @@ static int info_speak_item(int selected_item, void * data)
#if CONFIG_RTC
case INFO_TIME:
talk_id(VOICE_CURRENT_TIME, false);
talk_id(LANG_CURRENT_TIME, false);
/* fallthrough */
case INFO_DATE:
tm = get_time();

View file

@ -1575,7 +1575,7 @@ void talk_timedate(void)
struct tm *tm = get_time();
if (!global_settings.talk_menu)
return;
talk_id(VOICE_CURRENT_TIME, false);
talk_id(LANG_CURRENT_TIME, false);
if (valid_time(tm))
{
talk_time(tm, true);

View file

@ -208,11 +208,6 @@ static bool verify_shortcut(struct shortcut* sc)
case SHORTCUT_SETTING:
return sc->setting != NULL;
case SHORTCUT_TIME:
#if CONFIG_RTC
if (sc->u.timedata.talktime)
return sc->name[0] != '\0';
#endif
return sc->name[0] != '\0' || sc->u.timedata.sleep_timeout < 0;
case SHORTCUT_DEBUGITEM:
case SHORTCUT_SEPARATOR:
case SHORTCUT_SHUTDOWN:
@ -504,7 +499,24 @@ static const char * shortcut_menu_get_name(int selected_item, void * data,
) /* String representation for toggling sleep timer */
return string_sleeptimer(buffer, buffer_len);
return sc->name;
if (sc->name[0])
return sc->name;
#if CONFIG_RTC
if (sc->u.timedata.talktime)
return P2STR(ID2P(LANG_CURRENT_TIME));
else
#endif
{
format_sleeptimer(sc->name, sizeof(sc->name),
sc->u.timedata.sleep_timeout, NULL);
snprintf(buffer, buffer_len, "%s (%s)",
P2STR(ID2P(LANG_SLEEP_TIMER)),
sc->name[0] ? sc->name : P2STR(ID2P(LANG_OFF)));
sc->name[0] = '\0';
return buffer;
}
}
else if ((sc->type == SHORTCUT_SHUTDOWN || sc->type == SHORTCUT_REBOOT) &&
sc->name[0] == '\0')

View file

@ -342,8 +342,7 @@ Available types are:
\item[time] \config{data} needs to be \opt{rtc}{either ``talk'' to talk the time, or }``sleep X''
where X can, optionally, be the number of minutes to run the sleep timer for (0 to disable).
If ``sleep'' is not followed by a number, the sleep timer can be stopped, if running,
or started using the default duration; \config{name} will be ignored in that case. Otherwise
\config{name} is required for this shortcut type.
or started using the default duration; \config{name} will be ignored in that case.
\item[shutdown] \config{data} is ignored; \config{name} can be used to display text
\item[reboot] \config{data} is ignored; \config{name} can be used to display text
\end{description}