1v0.8.2 2 3Changes 4------- 5 6+ Improved yank and undo alloc'ing. Malloc as much we need from start in a long batch and avoid small mallocs. 7 8+ Changed the way lua scripts are referenced in formulas. Now they are input as any other string formula, 9 like this: \"@lua("script_name.lua", 1) 10 being 1 if the reference should be added to the depgraph or not, making it evaluated just once or 11 every time the depgraph is evaluated. 12 NOTE that if set to 0 and the cell is referenced by another cell, it will be executed nonetheless. 13 14+ Added new exec_lua configuration variable. 15 16+ Rows now can have height higher than one LINE. See fj and fk in normal mode or :formatrow in command mode. 17 18+ Wrap cell content. new autowrap config value. works when nooverlap and notruncate are set. 19 20+ Open URL or file specified on cell (PR 401) 21 22+ Import mkd files 23 24+ Multiple frozen rows/columns (fr / fc in normal mode) 25 26Added mapping_timeout configuration variable with a default value of 1500ms (used to be a fixed value of 800ms). 27Added mouse support in insert and command mode. The selection of a cell gets copied to inputbar. 28Added command_timeout configuration variable. 29handle hidden rows/cols in undo/redo of ir/ic/dr/dc 30Added backwards search with '?' 31Restore \\* from old SC. \\{char} fills the cell with n occurrences of {char} to complete its width 32Store frozen rows and cols when saving file 33Added :formatcol command (handling its undo as well) 34Added :formatrow command (handling its undo as well) 35Added undo of freeze row and col 36Handle \n in cell input, and with autowrap 37Handle undoing changes in row height produced by string input 38 39Changed input bar from window to pad: permits entering string longer than COLS. 40 41@count counts cells with strings as well, and not just with numbers. 42 43Handle entering a label after :datefmt for datetime value edition. 44 45New dracula / papercolor themes. 46 47+ Added EvalRange() so that the graph is not evaluated entirely all the time. 48 Replaced 'EvalAll' with 'EvalRange'. 49 Removed unneeded parameters on EvalJustVertex" 50 Added eval_order in EvalRange and rebuild_graph. 51 52Added @evaluate / @sevaluate functions 53 54Handle @nval dependencies. 55Handle @mycol/@myrow calls during startup when no EvalJustOneVertex is yet called 56 57Added @getent (FR issue #451) 58 59+ The saving format for :w command would be according to current file format. #493 60modified savefile() of file.c to check current file format before saving a file. 61Keep consistent with other format such as csv and save the file with the same format as current file. 62 63Added HELP_HIGHLIGHT definition color for help page. 64 65Renamed GRID_PAIR to GRID_EVEN in color.c. 66 67UNDO of :fsum is handled by let. 68 69calc_offscr_rows/cols rewriten and renamed to calc_mobile_rows/cols 70 71 72Fixes 73----- 74Fix old sc bug - issue #371 75Fix when saving sc files of cells that has some string expressions - issue #541 76Fix leak in nval. 77Fix Issue #372. 78Free lua memory at exit. 79Fix when saving marks in file after importing xlsx file and saving it in sc format. 80EXPR and NUMBER colors were overloaded by STRING color #546 81Fix markdown export when empty col was added left to data 82Fix in :showrows command. 83:fsum added to command mode commands. It was missing. 84Added :showcols command that was missing. 85Handled issue #429 86handled issue #374 87Ignore SIGWINCH outside ncurses. 88triggers: Avoid segfault when not being able to load module. Issue #325 89 90-- 91Thanks to all that helped and created PR. 92Thanks to all who support and use this program. 93 94Andrés Martinelli 95andmarti1424 96 97 98 99 100*********** 101v0.8.1 102Released April 1st 2021 103 104New features 105------------ 106Braille support 107Added latex export - issue #394 108Added mappings for command mode 109Work on issues #225 and #247: support mapping of ñ and other special chars 110Basic ODS file import 111Paste to a range of selected cells - (actually added on v0.8 - issue 438 - PR 445) 112Added txtdelim | for csv files import - issue 409 113Added macros to --version (show version) 114Support higher versions of lua. 115Handle ESC key in mappings. related to issue #492. 116Added freeze to visual mode - issue #459 117 118Changes 119-------- 120Recognise SPACE in mappings rather than simple ' ' 121Visual change: Moved cmd multiplier to the left of mode 122Changed default headings colors 123many improvements to the config facility and usage - PR 519 124improved sort for 65k rows 125 126Fixes 127----- 128Fix issues on CIRCULAR REFERENCES: #473 #201 #475 #321. these were as hard. 129Fix issue 417 and added a date type in xlsx import. 130Fix Engformat overlap text y número. Mostraba * (actually fixed on v0.8) 131Fix column header display - overflow with column width 2 and column with two letters - PR 517 132Fix isnumeric test to recognise floats: affects copy/paste - PR 450 133Fix issue setting conf variables like nonumeric 134Fix when showing empty text - 944844505d7cdb7d3d392a5c1d2b3ffde40a1fff 135Fix issue #227 - this was hard. used to segfault and keep wrong reference after deleting row that is last in range of expr. ex. @avg(B1:B4) and deleting row 4 136Fix issue #433: large memory use with multiple linked cells. 137Fix issue #287 - valueize didnt update depgraph 138Solved issue #399. 'g' command of NORMAL_MODE changed to 'gt'" 139Fixed vmaps in get_mappings function. 140Fixed bug on 'error' in gram.y - comment on issue #482 141Fix issue #457: cursor position could add empty rows or columns when exporting csv files 142Fix issue #288: ^ misbehaving when having fixed rows 143Fix in mouse clicks 144Fix possible memory leak in add freeze 145XLSX: Free memory leak when looking for specified sheet. 146XLSX: Avoid segfault when using shared formulas. issue #218. 147 148*********** 149v0.8.0 150Released March 17th 2021 151 152 153New features 154------------ 155+New motions in edit mode: df cf F dF cF d0 d$ c0 c$ t T dt dT ct cT ^ g_ d^ dg_ c^ cg_ 156+Simple mouse support. Can handle selection of single cells and scroll. 157+Added markdown export. 158+Add custom colors with RGB definitions. 159+Add support for italic attribute to be appled to cells. 160+Added digraphs. 161+Added EXECUTE command. 162+Added --export_csv --export_tab --export_txt parameters. 163+New input_bar_bottom config variable. 164+New underline_grid config variable. 165+Added filename in status bar (filename_with_mode config variable). 166+Added option to truncate cells. 167+Added xlsx sheet parameter. 168+New @fact function. 169 170Other 171----- 172+modified config and history file locations 173+renamed winch to sig_winch. 174+current fg and bg colors are kept if they are not specified in :cellcolor. 175+OpenBSD support (mostly wordexp() workaround) 176+Correct lua api function names in doc 177+always generate backup file when opening file 178+renamed scim to sc-im in Makefile 179+Document trigger return value convention 180 181Issues fixed 182------------ 183fix bug when deleting an ent that for instance has a @sum()... it used to remove its vertex and THE ENTS LINKED to THEM! 184fix error messages when using "scim --version" and color definitions are intented to be applied from .scimrc. 185fix in waiting for valid command to complete after pressing ESC key. 186fix in parse_str so a word with white space can be stored in dictionary value 187fix when setting default_paste_from_clipboard_cmd 188Don't clobber startup message w/ err opening file 189Allow for lua scripts in local .sc directory #259 190Send informational messages to stderr rather than the output when used in non-interactive mode #263 191fixed cell_negative color #271 192fixed locked cells when saving #261 193fixed DEL key in insert mode #272 194fix when resizing column #266 195"Autobackup - case insensitive QER options when backup exists" 196fixed segfault when fcopy'ing with no selection while on first column 197Call write triggers on value clear 198Use sc_info to report trigger exit code 199fixed #277 200Grow table up to MAXROWS exactly 201Remove redundant if clause (God only knows where that was). 202 203fix in getVertex that prevented rebuild_graph to work properly. 204fix annoying bug because of not resetting inputline_pos to 0 when confirming a command in COMMAND_MODE 205fix in let and slet. existing vertexs should not be removed. 206 207added "eval_visited" in vertex struct for not to collide with current "visited", since: 208 EvalAll uses EvalBottomUp 209 EvalBottomUp uses EvalJustOneVertex 210 EvalJustOneVertex uses eval 211 eval uses GraphAddEdge 212 GraphAddEdge uses GraphIsReachable 213 GraphIsReachable uses visited 214 and EvalBottomUp also uses uses visited! 215Also changed markAllVerticesNotVisited and All_vertexs_of_edges_visited functions. 216 217Some other issues fixed: #228, #234, #239, #240, #244, #246, #260, #295, #308 218.. and many other fixes and improvements! 219 220*********** 221v0.7.0 222*Added 'copy to clipboard' feature: now content of a range can be copied to clipboard using the :ccopy command. 223*Added 'paste from clipboard' feature with :cpaste command. 224*Added :subtotal 225*Added autobackup feature 226*Added :plot command with the following types of chart: line, scatter, bar and pie. 227*Added :plotedit command 228*New "version" argument. --version can be passed to scim executable file as argv. This will show Sc-im version number 229and the different features enabled at compile time. 230*Change when moving in command mode and insert mode history: 231if inputline is not empty, up and down keys now recall older commands from history, 232but taking whose commands that beginning matches the current inputline content. 233*Changed default options for numeric, newline_action, numeric_decimal, numeric_zero. 234*Doxygen support 235*exit_app: only free histories if in ncurses ui. this fix a segfault when quitting. 236*replaced :i command. Now xlsx, xls, csv, tsv and tab files shall be imported with the :load command. 237*Ignore case when handing special keys in a map 238*Handle mappings with double quotes 239*Handle SIGTSTP and SIGCONT signals. #213 240*fix in csv import: little fix when importing csv files that had commas between quotes. sc-im used to ignore those comma during import process. 241*fix in auto numeric when using insert mode history. 242*Fix when saving cellcolors. #187 243*fix in nmap. #178 244*fix in sorting when no range is selected. #180 245*fix when displaying help page. #188 246*fix in @slen with wide chars. #196 247*fix when resizing terminal. #199 248*fix calculation when using @pi. #209 249*fix when numeric=0 and try to use 0 command. #212 250*fix : not initialize colors if working in interactive mode. #220 251*fix when :color is intended to be used without having set enough parameters. #219 252*fix when editing cells with string expressions. #197 253 254*********** 255v0.6.0 256*Added new freeze feature (including new :freeze and :unfreeze commands). 257*Scripting support with LUA. Also with triggers and c dynamic linked modules. 258*Added new :trigger and :untrigger commands. 259*Insert mode history 260*Added xlsx file export 261*Added new :unformat command 262*Added new ignorecase configuration variable for string searches. 263*Double quotes can now be entered in SCIM backquoting them. 264*Change in exponential and unary - priority: Exponentials bind higher than unary -. 265*Change in how data coming from pipeline or redirection is processed. 266*let and slet functions now handle undo/redo. 267so that if you set a content with let or slet over script, you can also undo it. 268*Group cols and rows when saving hidden columns and rows to file 269*Added :wq command. 270*Added SHIFT command in parser. 271*sk and sh shift commands now saves in undo struct cells that depends on the range shifted. 272*Keep default background or fg color of terminal 273*Handle ESC key in EDIT and INSERT modes. Now it goes back to previous mode, instead of always returning to NORMAL MODE. 274*UI isolation. Added dumb ui example. 275*undo / redo are now ignored by the dot command. 276*Fix in :sort command when a range is selected and not specified within the command. 277*Fix in goto command. Removed unneeded free that made SCIM crash, and another crash when no result was found in search. 278*Fix in '!' command. Did not work properly when using a white space after the '!'. 279*Fix when saving cellcolors, locked cells and pad ranges in sc files. Sometimes colors and locked ranges did not get saved (most right column). 280*Fix in history. Last element typed could get written twice in history. 281*Fix crash with 'c' command after dc, dr, or shift command affecting cell A0. 282*Now scim print columns to latest col in COLS, maximizing the grid view. 283*Fixed crash because of syntax error when entering ". as text value. This also happened in sc. 284*Fix when entering a number and then a centered text in the same cell. This also happened in sc. Text appeared a column to the right and aligned left. 285*Fixed setfunc when saving sc file. 286*Fix in deleterow 287*Fix in shift functions 288*Fix a memory leak in undo.c 289*Fix/mods in undo/redo 290*Fix in csv import 291*Cleaned deletecol 292*Fix in csv import: maxcol was not updated correctly during import. 293*Fix when saving csv files with :w. before it saved a csv file with sc format. 294 295*********** 296v0.5.0 297*new @frow / @fcol functions. 298*Added :file special command. 299*:cellcolor command now can take a range as an argument. 300*Added gg command and HOME, END, PAGEUP and PAGEDOWN keys handling in help screen. 301*CSV load/import time improvements (noticeable in large files). 302*Fix error when ordering a range that had empty cells. 303*Fix in csv import (isnumeric function). 304*Fix when circular reference occurs: 305 Before it put @ERR in expression. 306 Now it preserves the var that makes the circular reference in the formula, 307 but keeps the "ERROR" label in the ent. 308 ERR errors propagate to other ents. 309*Changes when an ent referenced by other ents is removed: 310 Before, @ERR was set whereever the reference to a removed ent exists. 311 Now, if an ent is removed because of: 312 1. a dr dc sh sk command, 313 is_deleted flag is set on those ents. 314 eval return 0 for those cases, and CELLREF is put in e->op. 315 2. 'x' command, flag is_deleted is not set. 316 eval return 0 for those cases as well. 317 REF and ERR errors propagate to other ENDS. 318 Another change: Now when deleting a cell, if they are referenced by others, vertex is not removed. 319 (is_deleted ents shall always go to freeents to be reused..) 320*Added check for not to copy duplicate ents in copy_to_undostruct. 321*Removed split function. 322*Removed unnecesary lookat in screen.c that made unneeded mallocs. 323*With "debug" configuration parameter set, now SC-IM quits after SIGINT. 324 325*Fix bug that prevented cells with "ERROR" get saved to file and loaded later on. 326*Fix BackSpace issue with some GNU/Linux distros. 327*Fix bug that create duplicates in commandline history, if the command recently typed was the latest used as well. 328*Fix bug that avoid processing $HOME/.scimrc after loading a file via commandline. 329*Fix bug with 'Pc' and 'c' commands of normal mode, not doing autocalc after paste. 330*Fix in possible buffer overflow in main.c. 331*Some fixes in xml files import. 332*Various fixes to avoid warnings during build. 333 334*********** 335v0.4.0 336* Fix memory leak in functions that use seval. ex.: dosval docat. this used to happen also in SC ! 337* Chain cells with equations into a new graph structure 338* Change how cell expressions are evaluated 339* New function to rebuilt graph 340* Added free() call in GOTO in gram.y 341* Added free() call in SORT in gram.y 342* Added rebuild_graph, print_graph, undo and redo to gram.y 343* Added function to remove elements in dep_graph. (specific vertex and linked edges) 344* Fix in shift functions 345* Handle circular reference with new Eval structure 346* Fix in shift functions. refs in enodes now update correctly 347* Undo correctly (keeping references) actions that impact in cells on which other cells depends on 348* New :sum special command 349* New overlap configuration parameter. 350 If overlap is set to true, the cell content that exceedes column width continues to show in the following column. 351* Fix a bug that prevented some info messages to be shown during loading 352* Fix a bug when repaiting a cell that has a wide char size over than one. 353* Changes in readfile function to fix issue that sometimes appeared 354 when working with scripting, that made null output of interpreter 355* Changes in sc_info sc_error and sc_debug functions.. 356* Changed sc_error sc_info and sc_debug functions to MACROS. 357* Added new "debug" configuration parameter 358* White background support 359* Fix when undoing :sums that made no sums.. 360* :w command now adds '.sc' extension if none is specified 361* Fix some #include's 362* Fix :load command 363* Expand filenames using wordexp 364* Restored old SC fill function 365* Fix in seval calls 366* New :fcopy special command 367* Added UNDO and LOCK check to fcopy special command. Added fcopy to gram.y 368* sum special command renamed to fsum 369* csv import now use isnumeric function 370* change in '#' command 371* new @replace string function 372* Change in lex to handle WORD 373* Fix in yyerror function 374* :set command improvement 375* Added set to gram.y 376* doc improvement 377* Fix when opening files with slash 378 379*********** 380v0.3.0 381* FIX when importing large CSV files 382* SC-IM now supports wide chars, enabling the use of different alphabets. 383 The following alphabets are supported: 384 English, Spanish, French, Italian, German, Portuguese, Russian, Ukrainian, Greek, Turkish, Czech, Japanese, Chinese 385* Modification in padding of cells and how they are saved in files. 386* UNDO / REDO improvements. Now the following actions are supported: 387 Change in format of a column as a result of the 'f' command 388 Change in format of a column as a result of auto_jus 389 Change format of columns as a result of ic dc 390 391*********** 392v0.2.2 393* Added plain text export. 394* Added padding between cells. 395* Added 256 color support and "redefine_color" special command. 396* Added "aa" command in normal mode to act as autojus special command. 397* Added "gl" for going to last position in normal mode. 398* Added SC-IM man page. 399* Added "refresh" special command to refresh UI. 400* Big fix in how extended ascii are chars shown. 401* Big changes in functions used for showing cell content. 402* Fix in autonumeric mode. 403* Fix bug when typing real long string (issue #32). 404* Fix when using QUIT command with external scripts. 405* "cellcolor" command now checks if a locked cell exists prior to change format. 406* Locked cells are stored after any other command when saving a file. 407* Saving sc file: cellcolor and lock commands now are stored by rows when saving a sc file. 408* "Pv" command now do not paste cellcolors. 409* Translated source code comments to English. 410* Various fixes when using SC-IM without UI (--nocurses). 411* Help documentation now can be loaded without making install SC-IM. 412* MAXROWS now can be defined in Makefile. 413