Skip to content

Commit 7ddc7d8

Browse files
committed
Add VARNAM_SYMBOLS_DIR env variable support
1 parent a72df80 commit 7ddc7d8

File tree

1 file changed

+26
-17
lines changed

1 file changed

+26
-17
lines changed

varnam.c

Lines changed: 26 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -217,14 +217,20 @@ static const char* symbolsFileSearchPath[] = {
217217
const char*
218218
varnam_find_symbols_file_directory()
219219
{
220-
char *tmp;
221-
strbuf *user_path;
222-
int i;
223-
224220
if (varnam_symbols_dir != NULL && is_directory(strbuf_to_s (varnam_symbols_dir))) {
225221
return strbuf_to_s(varnam_symbols_dir);
226222
}
227223

224+
char *env_symbols_dir = getenv("VARNAM_SYMBOLS_DIR");
225+
226+
if (env_symbols_dir != NULL) {
227+
return env_symbols_dir;
228+
}
229+
230+
char *tmp;
231+
strbuf *user_path;
232+
int i;
233+
228234
user_path = strbuf_init (20);
229235

230236
#if defined(WIN32) || defined(_WIN32) || defined(__WIN32)
@@ -304,6 +310,12 @@ make_directory (const char *dirName)
304310
static strbuf*
305311
find_learnings_file_path (const char *langCode)
306312
{
313+
char *env_symbols_dir = getenv("VARNAM_SUGGESTIONS_DIR");
314+
315+
if (env_symbols_dir != NULL) {
316+
return env_symbols_dir;
317+
}
318+
307319
char *tmp;
308320
strbuf *path;
309321

@@ -315,21 +327,18 @@ find_learnings_file_path (const char *langCode)
315327
strbuf_addf (path, "%s\\varnam\\suggestions\\", tmp);
316328
}
317329
#else
318-
tmp = getenv ("VARNAM_SUGGESTIONS_DIR");
330+
tmp = getenv ("XDG_DATA_HOME");
319331
if (tmp == NULL) {
320-
tmp = getenv ("XDG_DATA_HOME");
321-
if (tmp == NULL) {
322-
tmp = getenv ("HOME");
323-
if (tmp != NULL) {
324-
strbuf_addf (path, "%s/.local/share/varnam/suggestions/", tmp);
325-
}
326-
}
327-
else {
328-
strbuf_addf (path, "%s/varnam/suggestions/", tmp);
329-
}
332+
tmp = getenv ("HOME");
333+
if (tmp != NULL) {
334+
strbuf_addf (path, "%s/.local/share/varnam/suggestions/", tmp);
335+
}
336+
else {
337+
strbuf_addf (path, "%s/varnam/suggestions/", tmp);
338+
}
330339
}
331340
else {
332-
strbuf_addf (path, "%s/", tmp);
341+
strbuf_addf (path, "%s/varnam/suggestions/", tmp);
333342
}
334343
#endif
335344

@@ -347,7 +356,7 @@ find_learnings_file_path (const char *langCode)
347356
}
348357
}
349358
}
350-
359+
351360
strbuf_addf (path, "%s.vst.learnings", langCode);
352361
return path;
353362
}

0 commit comments

Comments
 (0)