Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
SES: Simple Emacs Spreadsheet (gnu.org)
99 points by yitchelle on Aug 15, 2015 | hide | past | favorite | 26 comments


I used SES when adding a matrix editor to gnu-apl-mode. When editing a matrix, it opens it as a SES document and when closing it it automatically updates the underlying variable.

You can see it in use here: https://www.youtube.com/watch?v=yP4A5CKITnM


These days one can use org-mode tables for quite a bit of spreadsheet stuff.


It might just be me, but i've found manipulating tables and formulae in Org to be nothing but pain. I probably don't understand enough how they work, though (i love and daily use many other Org features though). SES looks pretty fine to me, at first glance!


If you use the edit-formula mode (which you should, C-c ') you should have real-time highlighting of the affected cells of any expression you write.

I agree it's not so plain and cut like Excel, but it's not terrible either.

You can probably find more useful things (like turning coordinate grid on/off) in the Emacs manual too: https://www.gnu.org/software/emacs/manual/html_node/org/Edit...


Just for fun, I tried using ses-mode inside org-babel.

It didn't work for a new empty code-block, but if I pasted an existing ses-mode file into it, it did actually work.

So you can have your org-mode cake and eat it too with ses :)


This is exactly my experience as well. I more or less use org mode all the time for organizing tasks, preparing document drafts, etc. I really like the HTML and other format exports for getting quick drafts.


This looks interesting, but what I would like to see is good integration with org, org tables, and org babel.


Cool! Is there anything roughly equivalent for Vim? The closest I could find is vim-table-mode: https://github.com/dhruvasagar/vim-table-mode.


The closest approximation is probably gritting your teeth, installing evil-mode, and using Emacs.


I found myself searching for an easy to use command line spreadsheet recently after discovering none of the GUI options have a sane dark color scheme ability. This is not what I'm looking for (as I'm not an emacs person, and I think I'd prefer something more pico-esque for the kind of simple personal finance/BOM documents I work with), but I was surprised to find this is apparently a niche that has been abandoned since the 80's. Anyone know of something I overlooked?


Why class yourself as "not an Emacs person"? You can use this application without using the rest of Emacs. You'd have to learn something new, but you'd have to learn something new with any new spreadsheet application.



Do you mean something like "sc"?


Or its more active fork scim: https://github.com/andmarti1424/scim


Thank you! I have been using sc for years, but really, REALLY wished it had the option to undo. Glad to see it's been forked and that feature was added.


With source code commented in spanish and english.


I used sc for years. Instant results in a terminal, no rodent UI madness.


Thank you. CLI used to mean (almost) purely noninteractive programs run via interactive shell.


By CLI do you mean ncurses-esque "CLI"? Or something else?


"Immune to viruses in spreadsheet files."

I find this claim dubious.


Because?


Elsewhere in the manual it seems to imply that formulas can include arbitrary Emacs Lisp functions, which would make it quite easy to implement a virus as there appears to be no sandboxing. What it probably means is that viruses written for other spreadsheet implementations won't work on it.

Edit: never mind; I read further and it does do some sandboxing based on the same whitelisting principles as directory-local variable settings. Very clever.


Even still, pure interpreters are not immune to vulnerabilities. One buffer overflow or bad array lookup and you're hosed.


I must admit that I haven't heard of buffer overflows in emacs lisp.


Right. When all of the language's data structures are garbage collected and the language has no pointer types, buffer overflows become much rarer.

There are a few array-lookup operations like AREF, but they do bounds checking (at run time, when the check is easier to get right).


That's actually really freaking cool. I was hoping that the native file format would be just a simple csv/tsv or something, but no such luck. But there is an "export as tab separated" function.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: