diff --git a/src/custom.h b/src/custom.h index b62fe518..2b800a01 100644 --- a/src/custom.h +++ b/src/custom.h @@ -220,6 +220,9 @@ #define PSBEGIN "# rem2ps begin" #define PSEND "# rem2ps end" +#define PSBEGIN2 "# rem2ps2 begin" +#define PSEND2 "# rem2ps2 end" + #ifdef BROKEN_PUTC #define Putc SafePutc #define PutChar SafePutChar diff --git a/src/custom.h.in b/src/custom.h.in index b62fe518..2b800a01 100644 --- a/src/custom.h.in +++ b/src/custom.h.in @@ -220,6 +220,9 @@ #define PSBEGIN "# rem2ps begin" #define PSEND "# rem2ps end" +#define PSBEGIN2 "# rem2ps2 begin" +#define PSEND2 "# rem2ps2 end" + #ifdef BROKEN_PUTC #define Putc SafePutc #define PutChar SafePutChar diff --git a/src/init.c b/src/init.c index 91bb3623..14677898 100644 --- a/src/init.c +++ b/src/init.c @@ -400,9 +400,14 @@ void InitRemind(int argc, char const *argv[]) case 'p': case 'P': DoSimpleCalendar = 1; - PsCal = 1; - if (*arg == 'a' || *arg == 'A') { - DoSimpleCalDelta = 1; + PsCal = PSCAL_LEVEL1; + while (*arg == 'a' || *arg == 'A' || + *arg == 'p' || *arg == 'P') { + if (*arg == 'a' || *arg == 'A') { + DoSimpleCalDelta = 1; + } else if (*arg == 'p' || *arg == 'P') { + PsCal = PSCAL_LEVEL2; + } arg++; } PARSENUM(CalMonths, arg); diff --git a/src/types.h b/src/types.h index 76a0af7c..3560b2d3 100644 --- a/src/types.h +++ b/src/types.h @@ -216,3 +216,7 @@ typedef struct { /* Flags for FROM / SCANFROM */ #define SCANFROM_TYPE 0 #define FROM_TYPE 1 + +/* PS Calendar levels */ +#define PSCAL_LEVEL1 1 +#define PSCAL_LEVEL2 2