summaryrefslogtreecommitdiff
path: root/src/config.c
blob: 0acd88a1f0c6db887ead3ad985d0c0f1fbfd5e76 (plain)
    1 /**
    2  * Dailyjournal is an easy tool to log daily activities
    3  * Copyright (C) 2022  Aaron Ball <nullspoon@oper.io>
    4  *
    5  * This program is free software: you can redistribute it and/or modify
    6  * it under the terms of the GNU General Public License as published by
    7  * the Free Software Foundation, either version 3 of the License, or
    8  * (at your option) any later version.
    9  *
   10  * This program is distributed in the hope that it will be useful,
   11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
   12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   13  * GNU General Public License for more details.
   14  *
   15  * You should have received a copy of the GNU General Public License
   16  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
   17  */
   18 #include "config.h"
   19 
   20 void config_init(struct config* c) {
   21   char* extp = NULL;
   22 
   23   // Set default paths first
   24   sprintf(c->journaldir, "%s/%s", getenv("HOME"), "Documents/Journal");
   25   sprintf(c->templatepath, "%s/.template.md", c->journaldir);
   26 
   27   // Set default values, allowing override
   28   env_if_set(c->journaldir, "DAILYJOURNAL_DIR");
   29   env_if_set(c->templatepath, "DAILYJOURNAL_TEMPLATE");
   30 
   31   extp = strrchr(c->templatepath, '.');
   32   if(!extp)
   33     strcpy(c->extension, DEFAULT_EXTENSION);
   34   else
   35     strcpy(c->extension, extp);
   36 }

Generated by cgit