summaryrefslogtreecommitdiffhomepage
path: root/src/lingot.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lingot.c')
-rw-r--r--src/lingot.c20
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.