From 2b3b91d1f615af0a6c8b47e41383a6d3af87060d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9s?= Date: Fri, 3 Feb 2023 14:00:46 -0300 Subject: work on issue 778 --- src/conf.c | 2 +- src/doc | 2 +- src/file.c | 4 ++-- src/gram.y | 7 +++++++ src/help.c | 2 +- 5 files changed, 12 insertions(+), 5 deletions(-) diff --git a/src/conf.c b/src/conf.c index 046ef8e..74a83b0 100644 --- a/src/conf.c +++ b/src/conf.c @@ -63,7 +63,7 @@ const char default_config[] = "external_functions=0\n" "exec_lua=1\n" "xlsx_readformulas=0\n" - "import_delimited_as_text=0\n" + "import_delimited_to_text=0\n" "ignore_hidden=0\n" "quit_afterload=0\n" "quiet=0\n" diff --git a/src/doc b/src/doc index 070c30a..0325d6a 100755 --- a/src/doc +++ b/src/doc @@ -414,7 +414,7 @@ Commands for handling cell content: file (.md, mkd, .markdown), an xlsx or xls file. If loading a csv, tab or tsv file and - 'import_delimited_as_text' configuration variable is set + 'import_delimited_to_text' configuration variable is set Sc-im will import numbers as text. If loading an xlsx file and 'xlsx_readformulas' is set, Sc-im diff --git a/src/file.c b/src/file.c index ae07ada..f08be9d 100644 --- a/src/file.c +++ b/src/file.c @@ -1164,7 +1164,7 @@ int import_csv(char * fname, char d) { } // number import - if (strlen(token) && isnumeric(token) && ! get_conf_int("import_delimited_as_text") + if (strlen(token) && isnumeric(token) && ! get_conf_int("import_delimited_to_text") ) { //wide char swprintf(line_interp, BUFFERSIZE, L"let %s%d=%s", coltoa(c), r, token); @@ -1336,7 +1336,7 @@ int import_markdown(char * fname) { char * st = str_replace(token, "\"", "''"); //replace double quotes inside string // number import - if (isnumeric(st) && strlen(st) && ! atoi(get_conf_value("import_delimited_as_text"))) { + if (isnumeric(st) && strlen(st) && ! atoi(get_conf_value("import_delimited_to_text"))) { //wide char swprintf(line_interp, BUFFERSIZE, L"let %s%d=%s", coltoa(c), rownr, st); diff --git a/src/gram.y b/src/gram.y index 606181c..3d38471 100755 --- a/src/gram.y +++ b/src/gram.y @@ -289,6 +289,7 @@ token S_YANKCOL %token K_COPY_TO_CLIPBOARD_DELIMITED_TAB %token K_NOCOPY_TO_CLIPBOARD_DELIMITED_TAB %token K_DEFAULT_OPEN_FILE_UNDER_CURSOR_CMD +%token K_IMPORT_DELIMITED_TO_TEXT %token K_IGNORECASE %token K_NOIGNORECASE %token K_TM_GMTOFF @@ -1678,6 +1679,12 @@ setitem : scxfree(s); } + | K_IMPORT_DELIMITED_TO_TEXT { parse_str(user_conf_d, "import_delimited_to_text=1", TRUE); } + + | K_IMPORT_DELIMITED_TO_TEXT '=' NUMBER + { if ($3 == 0) parse_str(user_conf_d, "import_delimited_to_text=0", TRUE); + else parse_str(user_conf_d, "import_delimited_to_text=1", TRUE); } + | K_COPY_TO_CLIPBOARD_DELIMITED_TAB { parse_str(user_conf_d, "copy_to_clipboard_delimited_tab=1", TRUE); } | K_COPY_TO_CLIPBOARD_DELIMITED_TAB '=' NUMBER diff --git a/src/help.c b/src/help.c index 7c1634d..6cb6b54 100644 --- a/src/help.c +++ b/src/help.c @@ -575,7 +575,7 @@ void show_usage_and_quit(){ \n --external_functions Set variable 'external_functions'\ \n --half_page_scroll Set variable 'half_page_scroll'\ \n --ignorecase Set variable 'ignorecase'\ -\n --import_delimited_as_text Import text as\ +\n --import_delimited_to_text Import text as\ \n --newline_action={j or l} Set variable 'newline_action'\ \n --nocurses Run interactive but without ncurses interface.\ \n --numeric Set variable 'numeric'\ -- cgit v1.2.3