July 4th, 2024

SCIM: Ncurses based, Vim-like spreadsheet

The "sc-im" project is an ncurses-based spreadsheet calculator with Vim-like features, supporting UNDO/REDO, 65,536 rows, and 702 columns. It offers various import/export options, customization features, scripting with LUA, and more. Installation guidelines, dependencies, and contribution details are available on the GitHub repository. Users can support the project through various means.

Read original articleLink Icon
SCIM: Ncurses based, Vim-like spreadsheet

The "sc-im" project is an ncurses-based spreadsheet calculator with Vim-like editing features. It supports UNDO/REDO, 65,536 rows, and 702 columns (expandable). Import/export options include CSV, TAB, XLSX, ODS, and Markdown. Additional features encompass key mappings, color customization, sorting, filtering, scripting with LUA, and more. The GitHub repository offers installation guidelines, dependencies, configuration details, and ways to contribute. Users can find screenshots, tutorials, and avenues to support the project through starring on GitHub, creating content, donations, or feedback. Detailed information is available on the [sc-im GitHub repository](https://github.com/andmarti1424/sc-im).

Link Icon 26 comments
By @kkukshtel - 5 months
For something similar but different, I highly recommend people check out Visidata:

https://www.visidata.org/

It's saved my ass on multiple occasions for data wrangling and munging and highly recommend people use it in their own toolkit.

By @djha-skin - 5 months
Where have you been all my life. This fills such a hole in the market -- a Vim-like terminal spreadsheet tool.

The terminal tools have gotten so much better in the last few years. There's a real Renaissance happening.

By @bbor - 5 months
This catches my eye every time, but for day-to-day work I always fall back to Google sheets. In light of that, this browser extension I found recently has been an absolute game changer: https://github.com/philc/sheetkeys

Because really, do you want all of vim in sheets, or just navigation (`i/h/j/k/gg/G/^u/^d`) and selection (`v/V`)? It has some other basic stuff, like `dd` and `o/O`, but otherwise conflicts with browser and Google functionality keep me away.

By @khimaros - 5 months
tried this out a while back and ultimately settled on visidata instead https://github.com/saulpw/visidata
By @pridkett - 5 months
This is great and probably a nice complement if I can get it working with my Visidata[0] workflow for data files.

If you’re looking just for spreadsheets, Travis Ormandy somehow managed to get Lotus 1-2-3 to run on Linux a few years ago[1]. It’s a neat comparison point.

[0] https://www.visidata.org/ [1] https://lock.cmpxchg8b.com/linux123.html

By @raingrove - 5 months
Pretty cool! It's kinda amusing that we've gone from TUI (VisiCalc/Lotus 1-2-3) to GUI (Excel), and back to TUI though.
By @k2enemy - 5 months
I gave sc-im a try years ago but quickly hit a showstopper for my needs. The built-in functions are very limited (for example no MEDIAN), but you can write your own external functions. However, external functions can only accept a single cell, and not a range of cells, as input. For me, operating on a range of cells is kind of the point of a spreadsheet. It seems that this hasn't been addressed yet.
By @asdefghyk - 5 months
This article made me recall a text based GUI? I used in commercial programming tool named "Vermont Views" previously named "Windows for Data" This was around about 1990 or earlier? . It was a tool that allowed relatively easy development of text based user interfaces Old Ad for it https://archive.org/details/byte-magazine-1992-01/page/n25/m... Google the words >> +"Windows for Data" Vermont Views << for lots other links ....
By @Joker_vD - 5 months
Is there an ed-like spreadsheet? I don't quite like looking at the data I am working with, it's a bit distracting, you see (pun intended).
By @eterps - 5 months
I really wanted to use this tool because I love Vim, but it just feels 'off' to me. I'm not sure why, though.

In a spreadsheet, I'm used to being able to move around with arrow keys and start typing immediately. Using SCIM, it feels like I'm constantly hitting a wall.

Despite that, I think the idea of a spreadsheet as a TUI is really great.

By @hello_computer - 5 months
I think this is mostly dead for a reason. TUI nostalgia is an itch for software people, but software people already have more powerful things--like SQL, Pandas, APL, etc... while spreadsheets are for people who don't want to scale those learning curves, and those people already have Excel.
By @mgerdts - 5 months
Back in the days before I found spreadsheets useful my boss was trying to get me excited about sc running on his HP workstation. That seems to be about the same time that one of the original authors was off working on something (Java) that would have more impact.

> sc-im is based on sc, whose original authors are James Gosling and Mark Weiser, and mods were later added by Chuck Martin.

By @sylware - 5 months
Quite cool.

Plain and simple C, etc. I would have liked a one compilation unit with proper preprocessor namespaces/name mangling, that to be picky.

By @purple-leafy - 5 months
That’s so cool that people are making projects like this, making money off it.

A far cry from the world of the GUI, but a welcome world

By @executesorder66 - 5 months
This is really cool, but I don't think this is very useful.

In my opinion: if you can use vim, you can probably code, or at least figure it out without too much trouble. If you can code, then you don't need a spreadsheet. You can just write a program to crunch the numbers, or produce a report etc.

Excel is so popular, because it is a way for non-coders to crunch a bunch of numbers in a relatively easy way. And the best way to get the answers that they are getting out of the spreadsheet is to write code. But because they can't code, they have to use a spreadsheet.

If there is a use case for spreadsheets that is not better served by some real code, I'm interested to hear what it is.

You could also make the "speed" argument (just a quick calculation) for spreadsheets, but in that case, I find something like a python REPL just as quick, and still better anyway.

By @qwertyuiop_ - 5 months
By @happysadpanda2 - 5 months
And then there is teapot, previously mentioned in relation to sc-im

https://news.ycombinator.com/item?id=29241136

By @agumonkey - 5 months
I've long been looking for such a thing. I don't want to fire panda, nor emacs org-table, just have a quick way to label, aggregate datatables.
By @pentaphobe - 5 months
Occasionally I find myself disliking projects simply because they overload existing acronyms..

But this is pretty cool

By @radarsat1 - 5 months
Are there any good emacs modes for spreadsheeting?
By @lkdfjlkdfjlg - 5 months
I think it looks gorgeous, but I'm skeptical that it's actually more efficient than just using excel.
By @29athrowaway - 5 months
Does it have more features than dBase IV, Quattro Pro?
By @conception - 5 months
Btw SCIM is the name of the standard for cross-domain identity management. https://en.m.wikipedia.org/wiki/System_for_Cross-domain_Iden...

Might affect searchability.

By @opengears - 5 months
This has been posted several times on HN, but besides being awesome, this project should be better funded. Please read the README on Github and sponsor it on patreon.