1. Yad Calendar
This will display a calendar showing the current Day, Month and Year.
yad --calendar
It will also show the date selected so you can parse it to something else.
You can capture the date as a variable like this and parse to to another dialog:
#!/bin/sh
THEDATE=$(yad --calendar)
yad --text="You chose $THEDATE"
1.1. --day=DAY
Set the calendar day.
yad --calendar --day=20
sets the 20th day of the current month.
1.2. --month=MONTH
Set the calendar month.
yad --calendar --month=2
sets the month of the current year and day.
On some system this doesn’t work. We need to set the year to. |
yad --calendar --year=2021 --month=2
1.3. --year=YEAR
Set the calendar year
yad --calendar --year=2021
sets the month of the current year and day.
On some system this doesn’t work. We need to set the month to. |
If we use the following it works:
yad --calendar --year=2021 --month=2
1.4. --show-weeks
Show week numbers at the left side of calendar.
yad --calendar --show-weeks
1.5. --date-format=PATTERN
Set the format for the returned date.
By default it is %x
. See strftime for more details.
yad --calendar
will produce the following output of the current day month and year:
01/09/23
If we use following
yad --calendar --date-format=%d%m%y
the output will be: 090123
1.6. --details=FILENAME
Set the filename with dates details.
Read days description from FILENAME.
File with days details must be in following format:
<date> <description>
date
field is date in format, specified with --date-format
option. (Default is `%x')
description
is a string with date details, which may include Pango markup.
yad --calendar --details=yad-calendar.txt
01/10/2023 Remember to do something...
2. strftime
Description | |
---|---|
%a |
locale’s abbreviated weekday name (e.g., Sun) |
%A |
locale’s full weekday name (e.g., Sunday) |
%b |
locale’s abbreviated month name (e.g., Jan) |
%B |
locale’s full month name (e.g., January) |
%c |
locale’s date and time (e.g., Thu Mar 3 23:05:25 2005) |
%C |
century; like %Y, except omit last two digits (e.g., 20) |
%d |
day of month (e.g., 01) |
%D |
date; same as %m/%d/%y |
%e |
day of month, space padded; same as %_d |
%F |
full date; like %+4Y-%m-%d |
%g |
last two digits of year of ISO week number (see %G) |
%G |
year of ISO week number (see %V); normally useful only with %V |
%h |
same as %b |
%H |
hour (00..23) |
%I |
hour (01..12) |
%j |
day of year (001..366) |
%k |
hour, space padded ( 0..23); same as %_H |
%l |
hour, space padded ( 1..12); same as %_I |
%m |
month (01..12) |
%M |
minute (00..59) |
%n |
a newline |
%N |
nanoseconds (000000000..999999999) |
%p |
locale’s equivalent of either AM or PM; blank if not known |
%P |
like %p, but lower case |
%q |
quarter of year (1..4) |
%r |
locale’s 12-hour clock time (e.g., 11:11:04 PM) |
%R |
24-hour hour and minute; same as %H:%M |
%s |
seconds since the Epoch (1970-01-01 00:00 UTC) |
%S |
second (00..60) |
%t |
a tab |
%T |
time; same as %H:%M:%S |
%u |
day of week (1..7); 1 is Monday |
%U |
week number of year, with Sunday as first day of week (00..53) |
%V |
ISO week number, with Monday as first day of week (01..53) |
%w |
day of week (0..6); 0 is Sunday |
%W |
week number of year, with Monday as first day of week (00..53) |
%x |
locale’s date representation (e.g., 12/31/99) |
%X |
locale’s time representation (e.g., 23:13:48) |
%y |
last two digits of year (00..99) |
%Y |
year |
%z |
+hhmm numeric time zone (e.g., -0400) |
%:z |
+hh:mm numeric time zone (e.g., -04:00) |
%::z |
+hh:mm:ss numeric time zone (e.g., -04:00:00) |
%:::z |
numeric time zone with : to necessary precision (e.g., -04, +05:30) |
%Z |
alphabetic time zone abbreviation (e.g., EDT) |
%% |
a literal % |