* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
+#include <string.h>
#include <ncurses.h>
#include "util.h"
mvwprintw(win, row-line, 0, "%04d-%02d-%02d",
next.year, next.month+1, next.day+1);
mvwprintw(win, row-line, 13, "%s, %s %d",
- day_to_string(wday), month_to_string(next.month), next.day);
+ day_to_string(wday), month_to_string(next.month), next.day+1);
wattroff(win, A_BOLD);
row++;
}
/* Print event info */
event_line(win, event, row++-line, 4, COLS-4,
SHOW_DETAILS | SHOW_ACTIVE);
- if (event->name && event->desc)
- mvwprintw(win, row++-line, 14, "%s", event->desc);
+ if (event->name && event->desc) {
+ int n = MIN(COLS-14, strcspn(event->desc, "\n"));
+ mvwprintw(win, row++-line, 14, "%.*s", n, event->desc);
+ }
cur = next;
count += 1;
case 'U': scroll = -LINES; break;
case 'j': move = 1; break;
case 'k': move = -1; break;
- case '\012': // enter
- view_edit(EDIT_EVENT);
- return 1;
+ case 'e': view_edit(EDIT_EVENT); return 1;
+ case '\012': view_edit(EDIT_EVENT); return 1; // enter
}
line = CLAMP(line+scroll, 0, rows-1);
for (int i=0; i<move && EVENT && EVENT->next; i++)