Lock a Cell on the Side

Something for the wish list - I would love a feature to be able to lock a cell on, say, the left side of the screen, so I can more easily edit code throughout the notebook and see the changes without having to scroll back and fourth. Similar to the blockbuilder style. I find that when I design in Observable, I spend a lot of time scrolling up and down.

(Perhaps there’s a way I could write these notebooks differently that would make this easier, like having shorter code snippets, or grouping cells better, but I haven’t been able to figure something out yet that cuts down on the amount of scrolling.)

1 Like

A workaround for this is to open the same notebook in two different windows: one for editing and one to view the result. This takes advantage of the fact that each edit to an Observable notebook is immediately broadcasted to all open windows.

1 Like

Thanks for the workaround! Looks like this mostly works, except for modifying viewofs.

If what you want is to synchronize changes in input cells, you might look into wrapping your cells with synchronize from this notebook by @mbostock on the “Broadcast channel” API:


Let me also recommend opening (one or more) code-only windows using the .../safe URL. Then it will show all of the code expanded, and not try to render anything.


excellent idea!

You can also temporarily drag the cell you’re editing to be next to the cell that you’re viewing.

yes, but sometimes it’s a lot of dragging :slight_smile:

1 Like

I would also appreciate this feature since as-is I often have one cell that represents the result and many that I want to tweak, and if I could lock the main “output” cell to the top or side of the window, it would make for less repetitive scrolling.