sce (simple-console-editor) es un editor de texto plano para consola creado en 2008 por el desarrollador conocido como volution y mantenido desde entonces con mejoras menores. Está escrito en Python, funciona con Python 3.6+ y también con 2.7, y su código ocupa apenas unas 3.500 líneas, sin más dependencias que el intérprete de Python y la biblioteca curses.
El programa se distribuye como un archivo ejecutable autónomo gracias al formato zipapp de Python. Cada archivo de la página de releases es realmente un archivo .zip que contiene los fuentes byte-code compilados y optimizados (*.pyo), con un shebang preparado para ejecutarse directamente como un binario. Es fundamental que la versión de Python del usuario coincida con la del archivo descargado, ya que los .pyo no son compatibles entre versiones principales; en caso contrario se obtienen errores confusos.
sce se puede invocar de tres formas: abriendo un archivo existente, abriendo un buffer vacío o integrándose en pipelines (stdin y stdout), lo que lo hace útil como filtro editable. Su filosofía es deliberadamente espartana: no tiene resaltado de sintaxis, ni complementos, ni modos al estilo Emacs ni Vim. Aun así, incorpora un paginador tipo navegador con búsqueda por expresión regular y anclas resaltadas que funcionan como enlaces seleccionables, parecido a un navegador web en modo texto.
En su uso diario el usuario lo ha empleado para editar código fuente (de C a Go, Python, Scheme o Erlang), scripting, configuración, HTML/CSS/JS, LaTeX, CommonMark, JSON o XML, en prácticamente cualquier sistema POSIX (Linux, macOS, FreeBSD, OpenBSD e incluso Android mediante Termux). El repositorio incluye la lista completa de comandos (exit, save, open, clear, gs, gr, gl, replace, store, load, pipe, sys i/o, copy, cut, yank, paste) y de atajos de teclado (Ctrl+S para guardar, Ctrl+X para salir, Ctrl+R para introducir comandos, Ctrl+G para repetir búsquedas, Ctrl+V/Ctrl+Z para saltar entre marcadores, entre otros).
