sagemathinc / cocalc

CoCalc: Collaborative Calculation in the Cloud
https://CoCalc.com
Other
1.16k stars 216 forks source link

For files with a special editor, have a toggle to text editor mode #577

Open timothyclemansinsea opened 8 years ago

timothyclemansinsea commented 8 years ago

There are times where I want to edit a file in raw mode without using say nano, vim or emacs in the terminal. This would be particularly helpful when I want to edit a file while developing an editor for that file's extension.

haraldschilly commented 8 years ago

this sounds a bit like debugging? maybe this is a first real case for using url parameters, e.g. ?_editor=plain to force using the plaintext editor in a newly opened tab and the _ is delibereately placed there to mark this as some special internal usage (assuming that in the future there could be non-internal use for parameters)

timothyclemansinsea commented 8 years ago

+1 to the _ being for special internal use

williamstein commented 8 years ago

Also, how do the other editors, e.g., sublime and atom and so on, handle this in their UI? It's a standard UI problem.

haraldschilly commented 8 years ago

I'm not aware that text editors like atom and sublime have a special rendering mode. For which files would this be, markdown?

Despite that, the issue reminds me of those WYSIWYG HTML editors. They either have a tab somewhere to switch between html view or the graphical view, or a on/off toggle button. Changes are then always reflected in the other view when switching back.

Despite that, it sounds more like a feature for developers than for average users. In particular, I don't think that anyone would want to see the raw code of e.g. the chat or sagews, or even start to get hands dirty with it.

Those editors where direct, low-level text editing occurs, has a two panel view anyways and hence that's not applicable.

williamstein commented 8 years ago

I'm not aware that text editors like atom and sublime have a special rendering mode.

They definitely set syntax highlighting, auto-indent, etc., to be file-type aware. It's the same idea. In emacs there is some lisp command, and you can make a keyboard shortcut to do change the mode...

I think the 2-panel aspect isn't central to this problem.