1This is a much modified version of the public domain spread sheet sc, 2originally by James Gosling, and posted a number of years ago by Mark 3Weiser as vc. 4 5The current maintainer is Chuck Martin (nrocinu@myrealbox.com). I 6originally got involved with sc because I wanted a good text-based 7spreadsheet program, and nothing I could find seemed to suit my needs. 8After looking at several different programs, I settled on sc as the 9program with the most promise, especially since source code was available, 10which meant I could modify it to add the features I needed. Since it 11appeared that no one was maintaining it anymore, I decided to take up the 12cause myself, although I don't want to claim ownership of the program. I 13would like to thank those who have made their own contributions to making 14sc a better program. 15 16I apologize for taking so long to release this version. I've been wanting 17to do it for quite some time, but have been holding off until I could find 18the time to update the documentation properly, and other responsibilities 19have prevented me from doing that until recently. On the bright side, 20this version has been in use more extensively, and I believe it to be 21more stable and bug-free than any previous version. 22 23The CHANGES file lists the changes from 6.1 to 7.16. Although I've 24already added all of the "must have" features I needed, and then some, 25I'm willing to continue maintaining sc for as long as I'm able, and I'll 26certainly share any new features and bugfixes I come up with. If anyone 27else finds any bugs or would like to contribute patches, please send them 28to me. If they're useful and they work, I'll probably add them. I prefer 29to keep it simple, though, since that's what drew me to sc instead of some 30other "full-featured" spreadsheet in the first place. I like the Unix 31philosophy of making each program do one thing and do it well, and would 32rather leave all the fancy graphics and other features to other programs 33that are better suited for them. 34 35Many of the items in the TODO list were there before I took over maintaining 36sc, and although I won't be adding those features myself, I left them in 37the list in case someone else still wants to add them. I've added undo to 38the TODO list because I feel it is a much needed feature, but I won't make 39any promises as to when (or if) I will get to it. If anyone else would 40like to tackle it, feel free to do so. 41 42I've tried to avoid changing key bindings any more than necessary because 43it could be confusing to people who have been using sc for years if the 44keybindings suddenly change, but in version 7.13, I finally decided to 45change a few things for more compatibility with vi, so that it will be 46easier to move back and forth between the two programs. For example, 47the ^F and ^B keys now work like J and K (or PageDown/PageUp). Also, 48the " key is no longer used for entering centered labels, but for named 49delete buffers instead, as it does in vi. The \ key will take its place 50for entering centered labels. This will also make it easier to enter a 51so-called "wheel" for filling a cell with a character or string, since 52you'll begin such a string by pressing \ twice. Also, most keyboards have 53the "\" and "|" on the same key, which should make it easy to remember 54because | is already used for centering an existing string. I'm sure 55someone will let me know if this causes any problems. :) 56 57In version 7.16, I've added a few more changes in sc's key bindings. 58For one, the range commands now all begin with "r" instead of "/" because 59I intend to add a new search feature that will be more powerful than the 60goto command, and I want to use "/" for that feature. Also, "n" is now 61used to repeat the last search (the last goto, for now, but that will 62change when the new search feature is implemented). Since that conflicts 63with the former usage of "n", which was for the note commands, these 64commands now all begin with "*", and following a link to a note now 65requires that "*" be pressed twice in succession. 66 67I've started an announcement-only mailing list for those who would like 68to find out when new versions of sc are available. If anyone is interested 69in being added to this list, please let me know. This will not be an 70automated list. Everything will be done manually, and all names will be 71put in a "Bcc:" header, so there will be no danger of being added to 72someone's spam list. 73 74 75Problems with color: 76 77I'm no longer running ncurses 1.9.9g on any of my machines or machines 78I work with, since it seems to have bugs in the handling of color that 79I've been unable to find a work-around for, and upgrading to the latest 80version seems to eliminate them. If anyone else finds a way to work 81around these bugs, patches are welcome. 82 83If you have a problem getting highlighting to work when color is enabled, 84you may want to check the value of ncv in your terminfo file (this can 85be checked with the "tput ncv" command at the shell prompt). This value 86should be an even number in order for standout mode to work. If ncv is 87odd, try subtracting one and recompiling. See the man pages for tic and 88infocmp for how to do this. The linux terminfo file in some older versions 89of ncurses is known to have this problem, for example. I've also found the 90problem in some versions of the terminfo files for xterm and screen. 91 92 93Compiling the program: 94 95Before you compile, make sure to check the Makefile and uncomment the 96lines that pertain to your system and comment out the lines for Linux. 97If you run Linux, this step won't be necessary, since that's the default 98(since that's what I run). I haven't tried compiling or running sc on 99anything else, but I've used it on both Slackware 4.0 (with ncurses upgraded 100to version 5.2) and Slackware 7.1, so I hope I haven't broken anything for 101anyone else. If you get it to compile and run on something else, please 102let me know. If it doesn't work and you can fix it, please send me a patch. 103 104 105A couple of notes from the previous maintainer: 106 1071) If you have problems with lex.c, and don't care about arrow keys, define 108 SIMPLE (-DSIMPLE in the makefile). SIMPLE causes the arrow keys to not 109 be used. 110 1112) If you have problems with your yacc saying: too many terminals ...127... 112 find a different yacc: bison, Berkeley yacc, Pd yacc, etc. AT&T's Sys V 113 yacc has small, fixed sized tables. SCO will allow dynamic yacc tables 114 when given the correct flags. 115 116 117After you get it built, if you aren't familiar with sc, you might want 118to try "sc tutorial.sc" for a simple introduction to the basic commands. 119Most of the key bindings are patterned after the vi text editor, so if 120you're familiar with that program or its variants, you shouldn't have 121any problems learning sc. The tutorial is a bit out-of-date, and doesn't 122include any of the new features that have been added since I began 123maintaining sc. If anyone would like to rectify this situation, feel 124free. The same goes for the built-in help system (available by pressing 125`?'), although the feature list has grown quite a bit, and that may not be 126easy to do without some major changes to the way the help system works. 127 128If you've used sc before, you may want to check out the CHANGES file 129to see what's changed, and read the man page for more details. 130 131To print a quick reference card, type the command: 132 scqref | [your_printer_commmand] 133 134If you have the command 'file' that uses /etc/magic, and it isn't there 135already, you may want to add the following lines: 136 137# sc: file(1) magic for "sc" spreadsheet 138# 13938 string Spreadsheet sc spreadsheet file 140 141Psc formats ascii files for use in the spreadsheet. If you don't have 142getopts, there is a public domain version by Henry Spencer hidden away in 143the VMS_NOTES file. 144 145If you'd like to rename the program to something different, just change 146"name=sc" and "NAME=SC" to "name=myfavoritename" and "NAME=MYFAVORITENAME" 147and try "make myfavoritename". (Does anyone need or use this? If so, 148please let me know. Otherwise, I may remove that capability in a future 149version, since it seems to me that it reduces confusion if everyone 150refers to the program by the same name. (I've been told that there is a 151program called Sunshine Commander that used the same name, but I may still 152drop this, since the sc Spreadsheet Calculator is much more well known)). 153 154Similarly, you can make the documentation with "make myfavoritename.man". 155"make install" will make and install the code in EXDIR. The installation 156steps and documentation all key off of the name. The makefile even changes 157the name in the nroffable man page. If you don't have nroff, you will 158have to change sc.man yourself. 159 160Uninstalling the program is now very easy, if you should want to do this. 161Just do "make uninstall". 162 163 164Finding the latest version: 165 166You should be able to ftp the lastest version of sc from ibiblio.org 167The directory where you should be able to find the latest version is 168/pub/Linux/apps/financial/spreadsheet. If you can't find it, e-mail me. 169I know this is a Linux specific source, but it's the only place I know 170of. If anyone knows of a more O/S-neutral location, please let me know. 171 172 173Guarantee: 174 175Since some people are wary of using a program that has no guarantee, I've 176decided to provide the following guarantee: 177 178 It is a well-known fact that any non-trivial program has bugs. If 179 you haven't found them, you just haven't stumbled upon the proper 180 combinations of actions that will cause the bugs to manifest them- 181 selves. Since sc stands for "Spreadsheet Calculator", and since a 182 spreadsheet calculator is by definition a non-trivial program, sc is 183 guaranteed to have bugs. 184 185 186Chuck Martin 187nrocinu@myrealbox.com 188