/* $calcurse: vars.c,v 1.6 2007/12/30 16:27:59 culot Exp $ */ /* * Calcurse - text-based organizer * Copyright (c) 2004-2006 Frederic Culot * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. * * Send your feedback or comments to : calcurse@culot.org * Calcurse home page : http://culot.org/calcurse * */ #include #include "i18n.h" #include "calendar.h" #include "custom.h" #include "wins.h" #include "vars.h" /* * variables to store window size */ int col = 0, row = 0; /* variable to tell if the terminal supports color */ bool colorize = false; /* * variables to store calendar names */ int days[12] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; char *monthnames[12] = { N_("January"), N_("February"), N_("March"), N_("April"), N_("May"), N_("June"), N_("July"), N_("August"), N_("September"), N_("October"), N_("November"), N_("December") }; char *daynames[8] = { N_("Sun"), N_("Mon"), N_("Tue"), N_("Wed"), N_("Thu"), N_("Fri"), N_("Sat"), N_("Sun") }; /* * variables to store data path names, which are initialized in * io_init() */ char path_dir[] = ""; char path_todo[] = ""; char path_apts[] = ""; char path_conf[] = ""; char path_notes[] = ""; /* Variable to handle pads. */ struct pad_s *apad; /* Variable to store notify-bar settings. */ struct nbar_s *nbar; /* * Variables init */ void vars_init(conf_t *conf) { char *PATH_VI = "/usr/bin/vi"; char *PATH_LESS = "/usr/bin/less"; char *ed, *pg; /* Variables for user configuration */ conf->confirm_quit = true; conf->confirm_delete = true; conf->auto_save = true; conf->skip_system_dialogs = false; conf->skip_progress_bar = false; /* Default external editor and pager */ ed = getenv("VISUAL"); if (ed == NULL || ed[0] == '\0') ed = getenv("EDITOR"); if (ed == NULL || ed[0] == '\0') ed = PATH_VI; conf->editor = ed; pg = getenv("PAGER"); if (pg == NULL || pg[0] == '\0') pg = PATH_LESS; conf->pager = pg; wins_set_layout(1); calendar_set_first_day_of_week(MONDAY); /* Pad structure to scroll text inside the appointment panel */ apad = (struct pad_s *) malloc(sizeof(struct pad_s)); apad->length = 1; apad->first_onscreen = 0; /* Attribute definitions for color and non-color terminals */ custom_init_attr(); /* Start at the current date */ calendar_init_slctd_day(); }