diff options
Diffstat (limited to 'src/lingot.c')
| -rw-r--r-- | src/lingot.c | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/src/lingot.c b/src/lingot.c index 4da9f53..cc8a303 100644 --- a/src/lingot.c +++ b/src/lingot.c @@ -39,16 +39,26 @@ char CONFIG_FILE_NAME[100]; int main(int argc, char *argv[]) { + char *homedir; +#ifdef __WIN32__ + homedir = getenv("APPDATA"); +#else + homedir = getenv("HOME"); +#endif #ifdef ENABLE_NLS +#ifdef __WIN32__ + bindtextdomain (GETTEXT_PACKAGE, "share/locale"); +#else bindtextdomain (GETTEXT_PACKAGE, LINGOT_LOCALEDIR); +#endif bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); textdomain (GETTEXT_PACKAGE); #endif // default config file. sprintf(CONFIG_FILE_NAME, "%s/" CONFIG_DIR_NAME DEFAULT_CONFIG_FILE_NAME, - getenv("HOME")); + homedir); // TODO: indicate complete config file path if ((argc > 3) || (argc == 2)) @@ -79,7 +89,7 @@ int main(int argc, char *argv[]) switch (c) { case 'c': - sprintf(CONFIG_FILE_NAME, "%s/%s%s.conf", getenv("HOME"), + sprintf(CONFIG_FILE_NAME, "%s/%s%s.conf", homedir, CONFIG_DIR_NAME, optarg); printf("using config file %s\n", CONFIG_FILE_NAME); break; @@ -109,9 +119,13 @@ int main(int argc, char *argv[]) { char config_dir[100]; - sprintf(config_dir, "%s/.lingot/", getenv("HOME")); + sprintf(config_dir, "%s/%s", homedir, CONFIG_DIR_NAME); printf("creating directory %s ...\n", config_dir); +#ifdef __WIN32__ + mkdir(config_dir); +#else mkdir(config_dir, 0777); // creo el directorio. +#endif printf("creating file %s ...\n", CONFIG_FILE_NAME); // new configuration with default values. |
