Compare commits

...

22 Commits

Author SHA1 Message Date
Dianne Skoll
1cd6205cdd Make TkRemind work on dumb systems that use "poor-man's" bold and italic. 2025-10-23 12:08:02 -04:00
Dianne Skoll
6d9ccc1522 Make bold and italic work on stupid systems. 2025-10-23 11:49:58 -04:00
Dianne Skoll
0268020579 Bump version to 06.01.07 2025-10-23 11:23:10 -04:00
Dianne Skoll
5803d1dd7e Update changelog 2025-10-23 11:22:40 -04:00
Dianne Skoll
5dfce21af6 Add ?tkr=1 2025-10-23 11:18:37 -04:00
Dianne Skoll
8ddb956f9a Change cursor inside links 2025-10-22 23:36:58 -04:00
Dianne Skoll
32421815cd Make the version numbers in WHATSNEW match the ones in Remind. 2025-10-22 22:51:00 -04:00
Dianne Skoll
dbe3bc13fa Make links blue. 2025-10-22 16:48:05 -04:00
Dianne Skoll
c68c716585 Make URLs in man pages clickable. 2025-10-22 16:09:30 -04:00
Dianne Skoll
7a1a5abc0f Give the window an appropriate title. 2025-10-22 13:05:14 -04:00
Dianne Skoll
53a1318306 Tweak man pages to remove "4th Berkeley Distribution" 2025-10-22 12:59:23 -04:00
Dianne Skoll
78fecf28c4 More info 2025-10-22 12:40:20 -04:00
Dianne Skoll
6081d29b11 Reduce flicker. 2025-10-22 12:33:51 -04:00
Dianne Skoll
e0a5125ee0 Set focus to man page window so PgUp, etc work as expected. 2025-10-22 12:30:50 -04:00
Dianne Skoll
c3f790a99b Allow for browsing of other man pages in the "SEE ALSO" section. 2025-10-22 12:27:15 -04:00
Dianne Skoll
3eb507451e Nicely format the man page. 2025-10-22 11:33:20 -04:00
Dianne Skoll
e9e0368418 six => seven 2025-10-22 10:28:49 -04:00
Dianne Skoll
759ae1ab80 Add a "help" button that shows TkRemind's man page, positioned to a useful place. 2025-10-22 10:25:42 -04:00
Dianne Skoll
e8602824a0 Add helpful message. 2025-10-22 09:47:57 -04:00
Dianne Skoll
62301a88cc We don't use _chan any more. 2025-10-20 14:17:52 -04:00
Dianne Skoll
6b163092c7 Check spelling of Perl man pages too. 2025-10-20 13:55:33 -04:00
Dianne Skoll
f8ac99d22e Tighten up display 2025-10-20 13:43:04 -04:00
15 changed files with 398 additions and 162 deletions

18
configure vendored
View File

@@ -1,6 +1,6 @@
#! /bin/sh #! /bin/sh
# Guess values for system-dependent variables and create Makefiles. # Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.72 for remind 06.01.06. # Generated by GNU Autoconf 2.72 for remind 06.01.07.
# #
# #
# Copyright (C) 1992-1996, 1998-2017, 2020-2023 Free Software Foundation, # Copyright (C) 1992-1996, 1998-2017, 2020-2023 Free Software Foundation,
@@ -601,8 +601,8 @@ MAKEFLAGS=
# Identity of this package. # Identity of this package.
PACKAGE_NAME='remind' PACKAGE_NAME='remind'
PACKAGE_TARNAME='remind' PACKAGE_TARNAME='remind'
PACKAGE_VERSION='06.01.06' PACKAGE_VERSION='06.01.07'
PACKAGE_STRING='remind 06.01.06' PACKAGE_STRING='remind 06.01.07'
PACKAGE_BUGREPORT='' PACKAGE_BUGREPORT=''
PACKAGE_URL='https://dianne.skoll.ca/projects/remind/' PACKAGE_URL='https://dianne.skoll.ca/projects/remind/'
@@ -1258,7 +1258,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing. # Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh. # This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF cat <<_ACEOF
'configure' configures remind 06.01.06 to adapt to many kinds of systems. 'configure' configures remind 06.01.07 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]... Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1320,7 +1320,7 @@ fi
if test -n "$ac_init_help"; then if test -n "$ac_init_help"; then
case $ac_init_help in case $ac_init_help in
short | recursive ) echo "Configuration of remind 06.01.06:";; short | recursive ) echo "Configuration of remind 06.01.07:";;
esac esac
cat <<\_ACEOF cat <<\_ACEOF
@@ -1408,7 +1408,7 @@ fi
test -n "$ac_init_help" && exit $ac_status test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then if $ac_init_version; then
cat <<\_ACEOF cat <<\_ACEOF
remind configure 06.01.06 remind configure 06.01.07
generated by GNU Autoconf 2.72 generated by GNU Autoconf 2.72
Copyright (C) 2023 Free Software Foundation, Inc. Copyright (C) 2023 Free Software Foundation, Inc.
@@ -1871,7 +1871,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake. running configure, to aid debugging if configure makes a mistake.
It was created by remind $as_me 06.01.06, which was It was created by remind $as_me 06.01.07, which was
generated by GNU Autoconf 2.72. Invocation command line was generated by GNU Autoconf 2.72. Invocation command line was
$ $0$ac_configure_args_raw $ $0$ac_configure_args_raw
@@ -4895,7 +4895,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their # report actual input values of CONFIG_FILES etc. instead of their
# values after options handling. # values after options handling.
ac_log=" ac_log="
This file was extended by remind $as_me 06.01.06, which was This file was extended by remind $as_me 06.01.07, which was
generated by GNU Autoconf 2.72. Invocation command line was generated by GNU Autoconf 2.72. Invocation command line was
CONFIG_FILES = $CONFIG_FILES CONFIG_FILES = $CONFIG_FILES
@@ -4960,7 +4960,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config='$ac_cs_config_escaped' ac_cs_config='$ac_cs_config_escaped'
ac_cs_version="\\ ac_cs_version="\\
remind config.status 06.01.06 remind config.status 06.01.07
configured by $0, generated by GNU Autoconf 2.72, configured by $0, generated by GNU Autoconf 2.72,
with options \\"\$ac_cs_config\\" with options \\"\$ac_cs_config\\"

View File

@@ -1,6 +1,6 @@
dnl Process this file with autoconf to produce a configure script. dnl Process this file with autoconf to produce a configure script.
AC_INIT(remind, 06.01.06, , , https://dianne.skoll.ca/projects/remind/) AC_INIT(remind, 06.01.07, , , https://dianne.skoll.ca/projects/remind/)
AC_CONFIG_SRCDIR([src/queue.c]) AC_CONFIG_SRCDIR([src/queue.c])
cat <<'EOF' cat <<'EOF'

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
# Save variables and functions that we will mess with # Save variables and functions that we will mess with
PUSH-VARS InIsrael IncludeIsraeliHolidays Reform IncludeOmer IncludeOmerCal SunCal ostart yz PUSH-VARS InIsrael IncludeIsraeliHolidays Reform IncludeOmer IncludeOmerCal SunCal ostart yz
PUSH-FUNCS _chan _h2 _h2I _YZ _PastSat _BackTwoSat PUSH-FUNCS _h2 _h2I _YZ _PastSat _BackTwoSat
SET InIsrael value("InIsrael", 0) SET InIsrael value("InIsrael", 0)
SET IncludeIsraeliHolidays value("IncludeIsraeliHolidays", 1) SET IncludeIsraeliHolidays value("IncludeIsraeliHolidays", 1)

View File

@@ -1,5 +1,4 @@
.TH REM 1 "@RELEASE_DATE@" "User Commands" "VERSION @VERSION@" .TH REM 1 "@RELEASE_DATE@" "Remind" "VERSION @VERSION@"
.UC 4
.SH NAME .SH NAME
rem \- Invoke Remind with a default filename rem \- Invoke Remind with a default filename
.SH SYNOPSIS .SH SYNOPSIS

View File

@@ -1,5 +1,4 @@
.TH REM2PS 1 "@RELEASE_DATE@" "User Commands" "VERSION @VERSION@" .TH REM2PS 1 "@RELEASE_DATE@" "Remind" "VERSION @VERSION@"
.UC 4
.SH NAME .SH NAME
rem2ps \- draw a PostScript calendar from Remind output rem2ps \- draw a PostScript calendar from Remind output
.SH SYNOPSIS .SH SYNOPSIS

View File

@@ -1,5 +1,4 @@
.TH REMIND 1 "@RELEASE_DATE@" "User Commands" "VERSION @VERSION@" .TH REMIND 1 "@RELEASE_DATE@" "Remind" "VERSION @VERSION@"
.UC 4
.SH NAME .SH NAME
remind \- a sophisticated reminder service remind \- a sophisticated reminder service
.SH SYNOPSIS .SH SYNOPSIS

View File

@@ -1,5 +1,4 @@
.TH TKREMIND 1 "@RELEASE_DATE@" "User Commands" "VERSION @VERSION@" .TH TKREMIND 1 "@RELEASE_DATE@" "Remind" "VERSION @VERSION@"
.UC 4
.SH NAME .SH NAME
tkremind \- graphical front-end to Remind calendar program tkremind \- graphical front-end to Remind calendar program
.SH SYNOPSIS .SH SYNOPSIS
@@ -54,9 +53,10 @@ directory before starting \fBTkRemind\fR.
When you start \fBTkRemind\fR, it displays a calendar for the current When you start \fBTkRemind\fR, it displays a calendar for the current
month, with today's date highlighted. Reminders are filled into each month, with today's date highlighted. Reminders are filled into each
box on the calendar. If a box contains many reminders, you can scroll box on the calendar. If a box contains many reminders, you can scroll
it up and down by dragging mouse button 2 in the box. Note that there it up and down by dragging mouse button 2 in the box or by using the
is no specific indication of an over-full box; you'll just have to scroll wheel (if your mouse has one.) Note that there is no specific
notice that the box appears completely full. indication of an over-full box; you'll just have to notice that the
box appears completely full.
.SH NAVIGATING .SH NAVIGATING
To change to the previous or next month, click the \fB<\-\fR To change to the previous or next month, click the \fB<\-\fR
@@ -76,7 +76,7 @@ To add a reminder, click button 1 in any day number in the calendar.
The \fBAdd Reminder...\fR dialog will pop up, with values preselected for The \fBAdd Reminder...\fR dialog will pop up, with values preselected for
the day you clicked. the day you clicked.
The dialog has six basic groups of controls. The first three lines The dialog has seven basic groups of controls. The first three lines
select one of three types of reminders. Choose the type of reminder select one of three types of reminders. Choose the type of reminder
with the radio buttons, and choose the values of the days, months, and with the radio buttons, and choose the values of the days, months, and
years by selecting values from pull-down menus. The pull-down menus years by selecting values from pull-down menus. The pull-down menus

View File

@@ -5,7 +5,7 @@ use ExtUtils::MakeMaker;
sub manifypods { sub manifypods {
my ($self,%attribs) = @_; my ($self,%attribs) = @_;
my $result = $self->SUPER::manifypods(%attribs); my $result = $self->SUPER::manifypods(%attribs);
$result =~ s/^(POD2MAN_EXE\s*=\s*)(.+)$/$1$2 --center 'VERSION @VERSION@' --date '@RELEASE_DATE@'/m; $result =~ s/^(POD2MAN_EXE\s*=\s*)(.+)$/$1$2 --center 'VERSION @VERSION@' --date '@RELEASE_DATE@' --release Remind/m;
return $result; return $result;
} }
} }

View File

@@ -251,7 +251,8 @@ if ($settings->{eps}) {
# Don't read from a terminal # Don't read from a terminal
if (-t STDIN) { ## no critic if (-t STDIN) { ## no critic
print STDERR "I can't read data from a terminal. Please run like this:\n"; print STDERR "I can't read data from a terminal. Please run like this:\n";
print STDERR " remind -pp [options] filename | $me [options] > out.pdf\n"; print STDERR " remind -pp [options] filename | $me [options] > out.pdf\n\n";
print STDERR "For help, run: $me --help\n";
exit(1); exit(1);
} }

View File

@@ -690,7 +690,7 @@ sub draw_day
$cr->restore(); $cr->restore();
} }
$so_far += $h + 2 * $settings->{border_size}; $so_far += $h + $settings->{border_size};
my $entry_height = 0; my $entry_height = 0;
my $done = 0; my $done = 0;
foreach my $entry (@{$self->{entries}->[$day]}) { foreach my $entry (@{$self->{entries}->[$day]}) {
@@ -819,7 +819,7 @@ sub draw_title
=head2 get_rgb($color) =head2 get_rgb($color)
Parses a 3- or 6-hex-digit color value and returs [red, green, blue]. If Parses a 3- or 6-hex-digit color value and returns [red, green, blue]. If
color could not be parsed, returns undef color could not be parsed, returns undef
=cut =cut

View File

@@ -753,6 +753,8 @@ proc CreateCalWindow { dayNames } {
balloon_add_help .b.queue "See the queue of pending reminders (debugging purposes only)" balloon_add_help .b.queue "See the queue of pending reminders (debugging purposes only)"
button .b.quit -text {Quit} -command {Quit} -bd 0 -foreground $Option(LabelColor) -background $Option(WinBackground) -highlightthickness 1 -highlightcolor $Option(LineColor) -highlightbackground $Option(WinBackground) button .b.quit -text {Quit} -command {Quit} -bd 0 -foreground $Option(LabelColor) -background $Option(WinBackground) -highlightthickness 1 -highlightcolor $Option(LineColor) -highlightbackground $Option(WinBackground)
balloon_add_help .b.quit "Quit TkRemind" balloon_add_help .b.quit "Quit TkRemind"
button .b.help -text {Help} -command [list ShowManPage tkremind 1 1] -bd 0 -foreground $Option(LabelColor) -background $Option(WinBackground) -highlightthickness 1 -highlightcolor $Option(LineColor) -highlightbackground $Option(WinBackground)
balloon_add_help .b.help "Show TkRemind manual"
label .b.status -text "" -width 25 -relief flat -bd 0 -foreground $Option(LabelColor) -background $Option(WinBackground) -highlightthickness 0 label .b.status -text "" -width 25 -relief flat -bd 0 -foreground $Option(LabelColor) -background $Option(WinBackground) -highlightthickness 0
bind .b.status <ButtonPress-1> [list ShowTodaysReminders 1 ""] bind .b.status <ButtonPress-1> [list ShowTodaysReminders 1 ""]
bind .b.status <ButtonPress-3> [list ShowTodaysReminders 1 ""] bind .b.status <ButtonPress-3> [list ShowTodaysReminders 1 ""]
@@ -761,7 +763,7 @@ proc CreateCalWindow { dayNames } {
balloon_add_help .b.nqueued "See the queue of pending reminders (debugging purposes only)" balloon_add_help .b.nqueued "See the queue of pending reminders (debugging purposes only)"
bind .b.nqueued <ButtonPress-1> [list DoQueue] bind .b.nqueued <ButtonPress-1> [list DoQueue]
bind .b.nqueued <ButtonPress-3> [list DoQueue] bind .b.nqueued <ButtonPress-3> [list DoQueue]
pack .b.prev .b.this .b.next .b.goto .b.print .b.options .b.queue .b.quit -side left -fill both -padx 1 pack .b.prev .b.this .b.next .b.goto .b.print .b.options .b.queue .b.quit .b.help -side left -fill both -padx 1
pack .b.status -side left -fill both -expand 1 -padx 1 pack .b.status -side left -fill both -expand 1 -padx 1
pack .b.nqueued -side left -fill both -padx 1 pack .b.nqueued -side left -fill both -padx 1
pack .b -side bottom -fill x -expand 0 -pady 1 pack .b -side bottom -fill x -expand 0 -pady 1
@@ -1046,6 +1048,7 @@ proc SaveOptions { w } {
.b.print configure -foreground $Option(LabelColor) -background $Option(WinBackground) .b.print configure -foreground $Option(LabelColor) -background $Option(WinBackground)
.b.queue configure -foreground $Option(LabelColor) -background $Option(WinBackground) .b.queue configure -foreground $Option(LabelColor) -background $Option(WinBackground)
.b.quit configure -foreground $Option(LabelColor) -background $Option(WinBackground) .b.quit configure -foreground $Option(LabelColor) -background $Option(WinBackground)
.b.help configure -foreground $Option(LabelColor) -background $Option(WinBackground)
.b.options configure -foreground $Option(LabelColor) -background $Option(WinBackground) .b.options configure -foreground $Option(LabelColor) -background $Option(WinBackground)
. configure -background $Option(LineColor) . configure -background $Option(LineColor)
.h configure -background $Option(LineColor) .h configure -background $Option(LineColor)
@@ -4876,6 +4879,205 @@ proc set_button_to_errors {} {
.b.queue configure -text {Errors...} -command {ShowErrors} -bg #FF5555 -fg black .b.queue configure -text {Errors...} -command {ShowErrors} -bg #FF5555 -fg black
} }
proc ShowManPage { cmd jump destroy } {
global Option env
set w ".man"
if { $destroy != 0 } {
catch { destroy $w }
set l [luminance $Option(WinBackground)]
if {$l < 20000} {
set link_color "#8888FF"
} else {
set link_color "#0000DD"
}
toplevel $w -background $Option(WinBackground)
text $w.t -width 84 -height 30 -wrap none -yscrollcommand "$w.sb set" -foreground $Option(TextColor) -background $Option(BackgroundColor) -font CalBoxFont
$w.t tag configure bold -font {-weight bold}
$w.t tag configure italic -font {-slant italic}
$w.t tag configure underline -underline 1
catch {
$w.t tag configure underline -underlinefg $link_color
}
scrollbar $w.sb -orient vertical -command "$w.t yview"
button $w.ok -text OK -command [list destroy $w] -foreground $Option(TextColor) -background $Option(BackgroundColor) -highlightthickness 1 -highlightcolor $Option(LineColor) -highlightbackground $Option(WinBackground)
grid $w.t -row 0 -column 0 -sticky nsew
grid $w.sb -row 0 -column 1 -sticky ns
grid $w.ok -row 1 -column 0 -stick w
grid columnconfigure $w 0 -weight 1
grid columnconfigure $w 1 -weight 0
grid rowconfigure $w 0 -weight 1
grid rowconfigure $w 1 -weight 0
$w.t tag configure man -foreground $link_color
$w.t tag configure url -foreground $link_color
# Not supported on old Tk versions
catch {
$w.t tag configure man -underlinefg $link_color
$w.t tag configure url -underlinefg $link_color
}
$w.t tag bind man <ButtonPress-1> [list NavigateToManPage $w.t]
$w.t tag bind man <Enter> [list ManEnter $w.t]
$w.t tag bind man <Leave> [list ManLeave $w.t]
$w.t tag bind man <Motion> [list ManMove $w.t]
$w.t tag bind url <ButtonPress-1> [list ManURL $w.t]
$w.t tag bind url <Enter> [list URLEnter $w.t]
$w.t tag bind url <Leave> [list URLLeave $w.t]
$w.t tag bind url <Motion> [list URLMove $w.t]
} else {
$w.t configure -state normal
$w.t delete 1.0 end
}
set env(COLUMNS) 80
set env(MANWIDTH) 80
set env(MAN_KEEP_FORMATTING) 1
set taglist {}
set seealso 0
if {[catch {
set fp [open "|man $cmd" "r+"]
while {[gets $fp line] >= 0} {
# Some systems render bold as "X bs X" and underline as "_ bs X"
# Convert them to our bold and italic indicators
set line [regsub -all {((_\b.)+)} $line "\033\[3m\\0\033\[23m" ]
set line [regsub -all {(_\b)} $line "" ]
set line [regsub -all {((.\b.)+)} $line "\033\[1m\\0\033\[22m" ]
set line [regsub -all {(.\b)} $line "" ]
if {$jump != 0} {
if {[regexp -- {THE.*CALENDAR.*WINDOW} $line]} {
$w.t yview moveto 1
}
}
if {[regexp -- {SEE.*ALSO} $line]} {
set seealso 1
} else {
if {$seealso != 0} {
set seealso 0
lappend taglist man
} else {
set idx [lsearch -exact $taglist "man"]
set taglist [lreplace $taglist $idx $idx]
}
}
set old_taglist $taglist
$w.t insert end " ";
set indexes [regexp -indices -inline -all -- {\e\[[0-9]+m} $line]
if {[llength $indexes] > 0} {
set out 0
foreach i $indexes {
set first [lindex $i 0]
set last [lindex $i 1]
set esc_seq [string range $line [expr $first+2] [expr $last-1]]
switch -- $esc_seq {
"0" {
set idx [lsearch -exact $taglist "bold"]
set taglist [lreplace $taglist $idx $idx]
set idx [lsearch -exact $taglist "italic"]
set taglist [lreplace $taglist $idx $idx]
}
"1" {
lappend taglist "bold"
}
"3" {
lappend taglist "italic"
}
"22" {
set idx [lsearch -exact $taglist "bold"]
set taglist [lreplace $taglist $idx $idx]
}
"23" {
set idx [lsearch -exact $taglist "italic"]
set taglist [lreplace $taglist $idx $idx]
}
}
if { $first > $out } {
ManAddLine $w.t [string range $line $out [expr $first-1]] $old_taglist
}
set old_taglist $taglist
set out [expr $last+1]
}
if {$out < [string length $line]} {
ManAddLine $w.t [string range $line $out end] $taglist
}
} else {
ManAddLine $w.t $line $taglist
}
$w.t insert end "\n";
}
close $fp
} err]} {
$w.t insert end "Could not display TkRemind manual page: $err"
}
$w.t configure -state disabled
if { $destroy } {
CenterWindow $w .
raise $w
}
wm title $w "$cmd Manual Page"
focus $w.t
}
proc ManAddLine { t text tags } {
if {[lsearch -exact $tags man] >= 0} {
$t insert end $text $tags
return
}
if {[regexp -nocase -- {(.*)(https?://[-.a-z0-9_/]+)(.*)} $text m first url last]} {
set t2 tags
lappend t2 url
$t insert end $first $tags
$t insert end $url $t2
$t insert end $last $tags
return
}
$t insert end $text $tags
}
proc URLEnter { t } {
catch {
$t configure -cursor arrow
set r [$t tag prevrange url current]
$t tag add underline [lindex $r 0] [lindex $r 1]
}
}
proc URLLeave { t } {
$t configure -cursor xterm
$t tag remove underline 1.0 end
}
proc URLMove { t } {
URLLeave $t
URLEnter $t
}
proc ManURL { t } {
catch {
set r [$t tag prevrange url current]
set url [$t get [lindex $r 0] [lindex $r 1]]
exec xdg-open "$url?tkr=1"
}
}
proc ManEnter { t } {
$t configure -cursor arrow
$t tag add underline [list current wordstart] [list current wordend]
}
proc ManLeave { t } {
$t configure -cursor xterm
$t tag remove underline 1.0 end
}
proc ManMove { t } {
ManLeave $t
ManEnter $t
}
proc NavigateToManPage { t } {
set text [$t get [list current wordstart] [list current wordend]]
if {[regexp -nocase -- {[a-z0-9_]+} $text man]} {
ShowManPage $man 0 0
}
}
proc ShowErrors {} { proc ShowErrors {} {
global RemindErrors Option global RemindErrors Option
set w ".errors" set w ".errors"
@@ -4921,4 +5123,9 @@ proc DoneShowingErrors {} {
destroy .errors destroy .errors
} }
proc luminance { color } {
set rgb [winfo rgb . $color]
return 0.299 * [lindex $rgb 0] + 0.587 * [lindex $rgb 1] + 0.114 * [lindex $rgb 2]
}
main main

View File

@@ -13,6 +13,7 @@
13ths 13ths
15am 15am
1GB 1GB
1p
1pm 1pm
20am 20am
20pm 20pm
@@ -22,6 +23,7 @@
2s 2s
30PM 30PM
34am 34am
3pm
3string34 3string34
45am 45am
45pm 45pm
@@ -510,6 +512,7 @@ datetime
datetimes datetimes
day1 day1
day2 day2
daymap
dayname dayname
daynames daynames
daynum daynum
@@ -591,6 +594,7 @@ gridline
gridlines gridlines
groff groff
gvim gvim
hashref
hasn hasn
hdate hdate
hebdate hebdate
@@ -736,6 +740,7 @@ num
ok ok
oktober oktober
ol ol
oldstyle
ons ons
ordx ordx
orthodoxeaster orthodoxeaster
@@ -785,6 +790,7 @@ rem2ps
rem2ps2 rem2ps2
remind's remind's
rescan rescan
rgb
rn rn
ro ro
romanian romanian
@@ -911,6 +917,7 @@ ubitux
ui ui
uid uid
unbuffered unbuffered
undef
undefine undefine
underlinefg underlinefg
uniq uniq
@@ -941,6 +948,8 @@ wkstart
wn wn
www www
x00 x00
x1
x2
xAB xAB
xdg xdg
xinitrc xinitrc
@@ -948,6 +957,8 @@ xless
xmessage xmessage
xsiz xsiz
xsiz1 xsiz1
y1
y2
year1 year1
year2 year2
yeardiff yeardiff

View File

@@ -662,6 +662,12 @@ for i in ../man/*.1 ; do
fi fi
done done
if test -d ../rem2pdf/blib ; then
PERLMANS=`find ../rem2pdf/blib -name '*.1p' -o -name '*.3pm'`
else
PERLMANS=""
fi
# If we have "spellintian", run it against man pages # If we have "spellintian", run it against man pages
cat <<'EOF' >> $OUT cat <<'EOF' >> $OUT
@@ -673,7 +679,7 @@ spellintian /dev/null < /dev/null > /dev/null 2>&1
if test $? = 0 ; then if test $? = 0 ; then
echo "Linting man pages" echo "Linting man pages"
# we grep out some false-positives from rem2ps # we grep out some false-positives from rem2ps
spellintian --picky ../man/*.1 2>&1 | grep -v -F 'MinX MinX (duplicate word)' | grep -v -F 'MinY MinY (duplicate word)' | grep -v -F 'show show (duplicate word)' >> $OUT 2>&1 spellintian --picky $PERLMANS ../man/*.1 2>&1 | grep -v -F 'MinX MinX (duplicate word)' | grep -v -F 'MinY MinY (duplicate word)' | grep -v -F 'show show (duplicate word)' >> $OUT 2>&1
fi fi
# If we have "hunspell", run it against man pages # If we have "hunspell", run it against man pages
@@ -688,14 +694,13 @@ HUNSPELL="hunspell -d en_US -l -p manpage-personal-dict"
$HUNSPELL /dev/null < /dev/null > /dev/null 2>&1 $HUNSPELL /dev/null < /dev/null > /dev/null 2>&1
if test $? = 0; then if test $? = 0; then
echo "Spell-checking man pages, WHATSNEW and README.md" echo "Spell-checking man pages, WHATSNEW and README.md"
cat ../man/*.1 | $HUNSPELL -n >> $OUT 2>&1 cat ../man/*.1 $PERLMANS | $HUNSPELL -n >> $OUT 2>&1
cat ../docs/WHATSNEW | $HUNSPELL >> $OUT 2>&1 cat ../docs/WHATSNEW | $HUNSPELL >> $OUT 2>&1
cat ../README.md | $HUNSPELL >> $OUT 2>&1 cat ../README.md | $HUNSPELL >> $OUT 2>&1
# If we have pod2man, check rem2pdf and rem2html man pages too # If we have pod2man, check rem2pdf and rem2html man pages too
pod2man < ../rem2html/rem2html.in > /dev/null 2>&1 pod2man < ../rem2html/rem2html.in > /dev/null 2>&1
if test $? = 0 ; then if test $? = 0 ; then
pod2man < ../rem2html/rem2html.in | $HUNSPELL -n >> $OUT 2>&1 pod2man < ../rem2html/rem2html.in | $HUNSPELL -n >> $OUT 2>&1
pod2man < ../rem2pdf/bin/rem2pdf.in | $HUNSPELL -n >> $OUT 2>&1
fi fi
fi fi

View File

@@ -1046,7 +1046,7 @@ set a057 value("a05"+"6")
"a05" + "6" => "a056" "a05" + "6" => "a056"
value("a056") => "SDFJHSDF KSJDFH KJSDFH KSJDFH" value("a056") => "SDFJHSDF KSJDFH KJSDFH KSJDFH"
set a058 version() set a058 version()
version() => "06.01.06" version() => "06.01.07"
set a059 wkday(today()) set a059 wkday(today())
today() => 1991-02-16 today() => 1991-02-16
wkday(1991-02-16) => "Saturday" wkday(1991-02-16) => "Saturday"
@@ -2609,7 +2609,7 @@ a056 "SDFJHSDF KSJDFH KJSDFH KSJDFH"
a007 "1991-02-16" a007 "1991-02-16"
a057 "SDFJHSDF KSJDFH KJSDFH KSJDFH" a057 "SDFJHSDF KSJDFH KJSDFH KSJDFH"
a008 "11:44" a008 "11:44"
a058 "06.01.06" a058 "06.01.07"
a059 "Saturday" a059 "Saturday"
a010 12 a010 12
a060 6 a060 6
@@ -5562,8 +5562,8 @@ REM SATISFY ""
REM SATISFY [version() > "01.00.00"] REM SATISFY [version() > "01.00.00"]
../tests/test.rem(1074): SATISFY: expression has no reference to trigdate() or $T... ../tests/test.rem(1074): SATISFY: expression has no reference to trigdate() or $T...
../tests/test.rem(1074): Trig = Saturday, 16 February, 1991 ../tests/test.rem(1074): Trig = Saturday, 16 February, 1991
version() => "06.01.06" version() => "06.01.07"
"06.01.06" > "01.00.00" => 1 "06.01.07" > "01.00.00" => 1
../tests/test.rem(1074): Trig(satisfied) = Saturday, 16 February, 1991 ../tests/test.rem(1074): Trig(satisfied) = Saturday, 16 February, 1991
REM SATISFY [max(x, max(x, 1, 2, 3), 4, 5, 6) * 5] REM SATISFY [max(x, max(x, 1, 2, 3), 4, 5, 6) * 5]
../tests/test.rem(1075): SATISFY: expression has no reference to trigdate() or $T... ../tests/test.rem(1075): SATISFY: expression has no reference to trigdate() or $T...
@@ -23707,7 +23707,7 @@ SECURITY: Won't read world-writable file or directory!
Error reading include_dir/ww: Can't open file Error reading include_dir/ww: Can't open file
SECURITY: Won't read world-writable file or directory! SECURITY: Won't read world-writable file or directory!
Error reading include_dir/ww: No files matching *.rem Error reading include_dir/ww: No files matching *.rem
06.01.06 06.01.07
Enabling test mode: This is meant for the acceptance test. Enabling test mode: This is meant for the acceptance test.
Do not use --test in production. Do not use --test in production.
In test mode, the system time is fixed at 2025-01-06@19:00 In test mode, the system time is fixed at 2025-01-06@19:00