| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 | <!doctype html><html>  <head>    <meta charset="utf-8">    <title>CodeMirror: Visible tabs demo</title>    <link rel="stylesheet" href="../lib/codemirror.css">    <script src="../lib/codemirror.js"></script>    <script src="../mode/clike/clike.js"></script>    <link rel="stylesheet" href="../doc/docs.css">    <style type="text/css">      .CodeMirror {border-top: 1px solid #eee; border-bottom: 1px solid #eee;}      .cm-tab {         background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAMCAYAAAAkuj5RAAAAAXNSR0IArs4c6QAAAGFJREFUSMft1LsRQFAQheHPowAKoACx3IgEKtaEHujDjORSgWTH/ZOdnZOcM/sgk/kFFWY0qV8foQwS4MKBCS3qR6ixBJvElOobYAtivseIE120FaowJPN75GMu8j/LfMwNjh4HUpwg4LUAAAAASUVORK5CYII=);         background-position: right;         background-repeat: no-repeat;      }    </style>  </head>  <body>    <h1>CodeMirror: Visible tabs demo</h1>    <form><textarea id="code" name="code">#include "syscalls.h"/* getchar:  simple buffered version */int getchar(void){	static char buf[BUFSIZ];	static char *bufp = buf;	static int n = 0;	if (n == 0) {  /* buffer is empty */		n = read(0, buf, sizeof buf);		bufp = buf;	}	return (--n >= 0) ? (unsigned char) *bufp++ : EOF;}</textarea></form><p>Tabs inside the editor are spans with theclass <code>cm-tab</code>, and can be styled.</p>    <script>      var editor = CodeMirror.fromTextArea(document.getElementById("code"), {        lineNumbers: true,        tabSize: 4,        indentUnit: 4,        indentWithTabs: true,        mode: "text/x-csrc"      });    </script>  </body></html>
 |