1<?xml version="1.0" encoding="utf-8"?> 2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 3"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 4<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> 5<head> 6<title>bled : a dvorak-oriented fork of the retro editor</title> 7<!-- 2014-02-08 Sat 07:39 --> 8<meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> 9<meta name="generator" content="Org-mode" /> 10<meta name="author" content="michal wallace" /> 11<link rel="stylesheet" type="text/css" href="/etc/style.css">
12<script type="text/javascript"> 13/* 14@licstart The following is the entire license notice for the 15JavaScript code in this tag. 16 17Copyright (C) 2012-2013 Free Software Foundation, Inc. 18 19The JavaScript code in this tag is free software: you can 20redistribute it and/or modify it under the terms of the GNU 21General Public License (GNU GPL) as published by the Free Software 22Foundation, either version 3 of the License, or (at your option) 23any later version. The code is distributed WITHOUT ANY WARRANTY; 24without even the implied warranty of MERCHANTABILITY or FITNESS 25FOR A PARTICULAR PURPOSE. See the GNU GPL for more details. 26 27As additional permission under GNU GPL version 3 section 7, you 28may distribute non-source (e.g., minimized or compacted) forms of 29that code without the copy of the GNU GPL normally required by 30section 4, provided you include this license notice and a URL 31through which recipients can access the Corresponding Source. 32 33 34@licend The above is the entire license notice 35for the JavaScript code in this tag. 36*/ 37<!--/*--><![CDATA[/*><!--*/ 38 function CodeHighlightOn(elem, id) 39 { 40 var target = document.getElementById(id); 41 if(null != target) { 42 elem.cacheClassElem = elem.className; 43 elem.cacheClassTarget = target.className; 44 target.className = "code-highlighted"; 45 elem.className = "code-highlighted"; 46 } 47 } 48 function CodeHighlightOff(elem, id) 49 { 50 var target = document.getElementById(id); 51 if(elem.cacheClassElem) 52 elem.className = elem.cacheClassElem; 53 if(elem.cacheClassTarget) 54 target.className = elem.cacheClassTarget; 55 } 56/*]]>*///--> 57</script>
57 58</head> 59<body> 60<div id="content"> 61<h1 class="title">bled : a dvorak-oriented fork of the retro editor</h1> 62<div id="table-of-contents"> 63<h2>Table of Contents</h2> 64<div id="text-table-of-contents"> 65<ul> 66<li><a href="#sec-1">1. keymap</a></li> 67<li><a href="#sec-2">2. implementation</a> 68<ul> 69<li><a href="#sec-2-1">2.1. variables, etc.</a></li> 70<li><a href="#sec-2-2">2.2. check boundaries</a></li> 71<li><a href="#sec-2-3">2.3. display a block</a></li> 72<li><a href="#sec-2-4">2.4. input processing</a></li> 73<li><a href="#sec-2-5">2.5. various support bits</a></li> 74</ul> 75</li> 76<li><a href="#sec-3">3. public interface</a></li> 77<li><a href="#sec-4">4. keymap</a></li> 78<li><a href="#sec-5">5. OUTPUT bled.rx</a></li> 79<li><a href="#sec-6">6. <code>[0/0]</code> issues list</a> 80<ul> 81<li><a href="#sec-6-1">6.1. <span class="todo TODO">TODO</span> note the TAB→ ESC change in main retro docs..</a></li> 82</ul> 83</li> 84</ul> 85</div> 86</div> 87 88<div id="outline-container-sec-1" class="outline-2"> 89<h2 id="sec-1"><span class="section-number-2">1</span> keymap</h2> 90<div class="outline-text-2" id="text-1"> 91<table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides"> 92 93 94<colgroup> 95<col class="left" /> 96 97<col class="left" /> 98</colgroup> 99<thead> 100<tr> 101<th scope="col" class="left">Key</th> 102<th scope="col" class="left">Action</th> 103</tr> 104</thead> 105<tbody> 106<tr> 107<td class="left">c</td> 108<td class="left">Move cursor up</td> 109</tr> 110 111<tr> 112<td class="left">h</td> 113<td class="left">Move cursor left</td> 114</tr> 115 116<tr> 117<td class="left">t</td> 118<td class="left">Move cursor down</td> 119</tr> 120 121<tr> 122<td class="left">r</td> 123<td class="left">Move cursor right</td> 124</tr> 125 126<tr> 127<td class="left">e</td> 128<td class="left">Evaluate current block</td> 129</tr> 130 131<tr> 132<td class="left">E</td> 133<td class="left">Evaluate all blocks</td> 134</tr> 135 136<tr> 137<td class="left">m</td> 138<td class="left">Move cursor to start of next line</td> 139</tr> 140 141<tr> 142<td class="left">C</td> 143<td class="left">Move cursor to top line of block</td> 144</tr> 145 146<tr> 147<td class="left">H</td> 148<td class="left">Move cursor to start of current line</td> 149</tr> 150 151<tr> 152<td class="left">T</td> 153<td class="left">Move cursor to last line of block</td> 154</tr> 155 156<tr> 157<td class="left">S</td> 158<td class="left">Move cursor to end of current line</td> 159</tr> 160 161<tr> 162<td class="left">M</td> 163<td class="left">Center cursor on current line</td> 164</tr> 165 166<tr> 167<td class="left">z</td> 168<td class="left">Exit RxE</td> 169</tr> 170 171<tr> 172<td class="left">Esc</td> 173<td class="left">Switch between edit and command mode</td> 174</tr> 175 176<tr> 177<td class="left">{</td> 178<td class="left">Load "blocks"</td> 179</tr> 180 181<tr> 182<td class="left">}</td> 183<td class="left">Save "blocks"</td> 184</tr> 185 186<tr> 187<td class="left">[</td> 188<td class="left">Switch to previous block</td> 189</tr> 190 191<tr> 192<td class="left">]</td> 193<td class="left">Switch to next block</td> 194</tr> 195</tbody> 196</table> 197</div> 198</div> 199<div id="outline-container-sec-2" class="outline-2"> 200<h2 id="sec-2"><span class="section-number-2">2</span> implementation</h2> 201<div class="outline-text-2" id="text-2"> 202</div><div id="outline-container-sec-2-1" class="outline-3"> 203<h3 id="sec-2-1"><span class="section-number-3">2.1</span> variables, etc.</h3> 204<div class="outline-text-3" id="text-2-1"> 205<div class="org-src-container"> 206 207<pre class="src src-retro" id="private"><span style="color: #c63; font-weight: bold;">:</span> 2/ <span style="color: #32cd32;">1</span> <span style="color: #00ffff;">>></span> <span style="color: #c63; font-weight: bold;">;</span> 208<span style="color: #32cd32;">64</span> <span style="color: #c63; font-weight: bold;">constant</span> cols 209<span style="color: #32cd32;">16</span> <span style="color: #c63; font-weight: bold;">constant</span> rows 210cols rows <span style="color: #00ffff;">*</span> <span style="color: #c63; font-weight: bold;">constant</span> blksz 211 212<span style="color: #c63; font-weight: bold;">variables|</span> buffer count <span style="color: #c63; font-weight: bold;">|</span> 213<span style="color: #c63; font-weight: bold;">:</span> restore <span style="color: #66f;">( - )</span> &getc <span style="color: #c63; font-weight: bold;">:devector</span> ok <span style="color: #c63; font-weight: bold;">;</span> 214<span style="color: #c63; font-weight: bold;">:</span>
214 get <span style="color: #66f;">( -c )</span> @buffer <span style="color: #00ffff;">@</span> <span style="color: #c63; font-weight: bold;">;</span> 215<span style="color: #c63; font-weight: bold;">:</span> <span style="color: #ffd700; font-weight: bold;">next</span> <span style="color: #66f;">( -c )</span> @count <span style="color: #00ffff;">[</span> count <span style="color: #00ffff;">--</span> get buffer <span style="color: #00ffff;">++</span> <span style="color: #00ffff;">]</span> <span style="color: #00ffff;">[</span> <span style="color: #32cd32;">32</span> restore <span style="color: #00ffff;">]</span> <span style="color: #ffd700; font-weight: bold;">if</span> <span style="color: #c63; font-weight: bold;">;</span> 216<span style="color: #c63; font-weight: bold;">:</span> replace <span style="color: #66f;">( - )</span> &next &getc <span style="color: #c63; font-weight: bold;">:is</span> <span style="color: #c63; font-weight: bold;">;</span> 217<span style="color: #c63; font-weight: bold;">:</span> <span style="color: #c63; font-weight: bold;">eval</span> <span style="color: #66f;">( an- )</span> !count !buffer replace <span style="color: #c63; font-weight: bold;">;</span> 218 219<span style="color: #c63; font-weight: bold;">variables|</span> #blocks offset blk line column mode active <span style="color: #c63; font-weight: bold;">|</span> 220<span style="color: #c63; font-weight: bold;">:</span> toBlock blksz <span style="color: #00ffff;">*</span> @offset <span style="color: #00ffff;">+</span> <span style="color: #c63; font-weight: bold;">;</span> 221<span style="color: #c63; font-weight: bold;">:</span> thisBlock @blk toBlock <span style="color: #c63; font-weight: bold;">;</span> 222<span style="color: #c63; font-weight: bold;">:</span> toLine cols <span style="color: #00ffff;">*</span> thisBlock <span style="color: #00ffff;">+</span> <span style="color: #c63; font-weight: bold;">;</span> 223</pre> 224</div> 225</div> 226</div> 227<div id="outline-container-sec-2-2" class="outline-3"> 228<h3 id="sec-2-2"><span class="section-number-3">2.2</span> check boundaries</h3> 229<div class="outline-text-3" id="text-2-2"> 230<div class="org-src-container"> 231 232<pre class="src src-retro" id="private"><span style="color: #66f;">( check boundaries ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ )</span> 233<span style="color: #c63; font-weight: bold;">:</span> top <span style="color: #66f;">( - )</span> <span style="color: #32cd32;">0</span> !line <span style="color: #c63; font-weight: bold;">;</span> 234<span style="color: #c63; font-weight: bold;">:</span> bot <span style="color: #66f;">( - )</span> rows <span style="color: #00ffff;">1-</span> !line <span style="color: #c63; font-weight: bold;">;</span> 235<span style="color: #c63; font-weight: bold;">:</span> beg <span style="color: #66f;">( - )</span> <span style="color: #32cd32;">0</span> !column <span style="color: #c63; font-weight: bold;">;</span> 236<span style="color: #c63; font-weight: bold;">:</span> end <span style="color: #66f;">( - )</span> cols <span style="color: #00ffff;">1-</span> !column <span style="color: #c63; font-weight: bold;">;</span> 237<span style="color: #c63; font-weight: bold;">:</span> mid <span style="color: #66f;">( - )</span> rows 2/ !column <span style="color: #c63; font-weight: bold;">;</span> 238<span style="color: #c63; font-weight: bold;">:</span> 1st <span style="color: #66f;">( - )</span> <span style="color: #32cd32;">0</span> !blk <span style="color: #c63; font-weight: bold;">;</span> 239<span style="color: #c63; font-weight: bold;">:</span> bounds <span style="color: #66f;">( - )</span> 240 @column <span style="color: #32cd32;">-1</span> <span style="color: #00ffff;">=</span> <span style="color: #00ffff;">[</span> end line <span style="color: #00ffff;">--</span> <span style="color: #00ffff;">]</span> <span style="color: #ffd700; font-weight: bold;">ifTrue</span> 241 @column cols <span style="color: #00ffff;">=</span> <span style="color: #00ffff;">[</span> beg line <span style="color: #00ffff;">++</span> <span style="color: #00ffff;">]</span> <span style="color: #ffd700; font-weight: bold;">ifTrue</span> 242 @line <span style="color: #32cd32;">-1</span> <span style="color: #00ffff;">=</span> <span style="color: #00ffff;">[</span> top blk <span style="color: #00ffff;">--</span> <span style="color: #00ffff;">]</span> <span style="color: #ffd700; font-weight: bold;">ifTrue</span> 243 @line rows <span style="color: #00ffff;">=</span> <span style="color: #00ffff;">[</span> bot blk <span style="color: #00ffff;">++</span> <span style="color: #00ffff;">]</span> <span style="color: #ffd700; font-weight: bold;">ifTrue</span> 244 @blk <span style="color: #32cd32;">-1</span> <span style="color: #00ffff;">=</span> <span style="color: #00ffff;">[</span>
244 1st <span style="color: #00ffff;">]</span> <span style="color: #ffd700; font-weight: bold;">ifTrue</span> 245 @blk @#blocks <span style="color: #00ffff;">>=</span> <span style="color: #00ffff;">[</span> blk <span style="color: #00ffff;">--</span> <span style="color: #00ffff;">]</span> <span style="color: #ffd700; font-weight: bold;">ifTrue</span> <span style="color: #c63; font-weight: bold;">;</span> 246</pre> 247</div> 248</div> 249</div> 250<div id="outline-container-sec-2-3" class="outline-3"> 251<h3 id="sec-2-3"><span class="section-number-3">2.3</span> display a block</h3> 252<div class="outline-text-3" id="text-2-3"> 253<div class="org-src-container"> 254 255<pre class="src src-retro" id="private"><span style="color: #66f;">( display a block ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ )</span> 256<span style="color: #c63; font-weight: bold;">:</span> ds/rows rows <span style="color: #00ffff;">[</span> <span style="color: #00ffff;">dup</span> cols <span style="color: #00ffff;">[</span> <span style="color: #00ffff;">@</span> putc <span style="color: #00ffff;">]</span> ^types'BUFFER <span style="color: #00ffff;">each@</span> cols <span style="color: #00ffff;">+</span> cr <span style="color: #00ffff;">]</span> <span style="color: #ffd700; font-weight: bold;">times</span> <span style="color: #c63; font-weight: bold;">;</span> 257<span style="color: #c63; font-weight: bold;">:</span> mode? @mode <span style="color: #00ffff;">[</span> <span style="color: #00ff00;">"INS"</span> <span style="color: #00ffff;">]</span> <span style="color: #00ffff;">[</span> <span style="color: #00ff00;">"CMD"</span> <span style="color: #00ffff;">]</span> <span style="color: #ffd700; font-weight: bold;">if</span> <span style="color: #c63; font-weight: bold;">;</span> 258<span style="color: #c63; font-weight: bold;">:</span> .block @column @line @blk mode? <span style="color: #00ff00;">"(%s) #%d - %d:%d "</span> puts <span style="color: #c63; font-weight: bold;">;</span> 259<span style="color: #c63; font-weight: bold;">:</span> bar cols <span style="color: #00ffff;">[</span> '- putc <span style="color: #00ffff;">]</span> <span style="color: #ffd700; font-weight: bold;">times</span> cr <span style="color: #c63; font-weight: bold;">;</span> 260<span style="color: #c63; font-weight: bold;">:</span> vb @blk toBlock ds/rows <span style="color: #00ffff;">drop</span> bar .block <span style="color: #c63; font-weight: bold;">;</span> <span style="color: #66f;">( visualize block ? )</span> 261<span style="color: #c63; font-weight: bold;">:</span> (v) <span style="color: #66f;">( - )</span> clear vb <span style="color: #c63; font-weight: bold;">;</span> 262<span style="color: #c63; font-weight: bold;">:</span> pos <span style="color: #66f;">( -cl )</span> @column @line <span style="color: #c63; font-weight: bold;">;</span> 263<span style="color: #c63; font-weight: bold;">:</span>
263 get <span style="color: #66f;">( cl-a )</span> toLine <span style="color: #00ffff;">+</span> <span style="color: #c63; font-weight: bold;">;</span> 264<span style="color: #c63; font-weight: bold;">:</span> va <span style="color: #66f;">( a-va )</span> <span style="color: #00ffff;">dup</span> <span style="color: #00ffff;">@</span> <span style="color: #00ffff;">swap</span> <span style="color: #c63; font-weight: bold;">;</span> 265<span style="color: #c63; font-weight: bold;">:</span> c! <span style="color: #66f;">( a- )</span> '* <span style="color: #00ffff;">swap</span> <span style="color: #00ffff;">!</span> <span style="color: #c63; font-weight: bold;">;</span> 266<span style="color: #c63; font-weight: bold;">:</span> show <span style="color: #66f;">( va- )</span> <span style="color: #00ffff;">dup</span> c! (v) <span style="color: #00ffff;">!</span> <span style="color: #c63; font-weight: bold;">;</span> 267<span style="color: #c63; font-weight: bold;">:</span> display <span style="color: #66f;">( - )</span> bounds pos get va show <span style="color: #c63; font-weight: bold;">;</span> 268</pre> 269</div> 270</div> 271</div> 272<div id="outline-container-sec-2-4" class="outline-3"> 273<h3 id="sec-2-4"><span class="section-number-3">2.4</span> input processing</h3> 274<div class="outline-text-3" id="text-2-4"> 275<div class="org-src-container"> 276 277<pre class="src src-retro" id="private"><span style="color: #66f;">( input processing ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ )</span> 278 279<span style="color: #32cd32;">27</span> <span style="color: #c63; font-weight: bold;">constant</span> Esc 280 281<span style="color: #c63; font-weight: bold;">:</span> advance? <span style="color: #66f;">( - )</span> line <span style="color: #00ffff;">++</span> @line rows <span style="color: #00ffff;">>=</span> <span style="color: #00ffff;">[</span> <span style="color: #32cd32;">0</span> !line blk <span style="color: #00ffff;">++</span> <span style="color: #00ffff;">]</span> <span style="color: #ffd700; font-weight: bold;">ifTrue</span> <span style="color: #32cd32;">0</span> !column <span style="color: #c63; font-weight: bold;">;</span> 282<span style="color: #c63; font-weight: bold;">:</span> del <span style="color: #66f;">( - )</span> 283 @column <span style="color: #00ffff;">dup</span> 284 <span style="color: #00ffff;">[</span> <span style="color: #00ffff;">dup</span> cols <span style="color: #00ffff;">=</span> 285 <span style="color: #00ffff;">[</span> <span style="color: #00ffff;">drop</span> !column display <span style="color: #32cd32;">0</span> <span style="color: #00ffff;">]</span> 286 <span style="color: #00ffff;">[</span> <span style="color: #32cd32;">32</span> <span style="color: #00ffff;">over</span> @line get <span style="color: #00ffff;">!</span> <span style="color: #00ffff;">1+</span> <span style="color: #32cd32;">-1</span> <span style="color: #00ffff;">]</span> <span style="color: #ffd700; font-weight: bold;">if</span> 287 <span style="color: #00ffff;">]</span> <span style="color: #ffd700; font-weight: bold;">while</span> <span style="color: #c63; font-weight: bold;">;</span> 288<span style="color: #c63; font-weight: bold;">:</span> remap <span style="color: #66f;">( c-c )</span> 289 <span style="color: #00ffff;">dup</span> <span style="color: #32cd32;">9</span> <span style="color: #00ffff;">=</span> <span style="color: #00ffff;">[</span> <span style="color: #00ffff;">drop</span> Esc <span style="color: #00ffff;">]</span> <span style="color: #ffd700; font-weight: bold;">ifTrue</span> 290 <span style="color: #00ffff;">dup</span> <span style="color: #32cd32;">13</span> <span style="color: #00ffff;">=</span> <span style="color: #00ffff;">[</span> <span style="color: #00ffff;">drop</span> <span style="color: #32cd32;">0</span> <span style="color: #00ffff;">]</span> <span style="color: #ffd700; font-weight: bold;">ifTrue</span> 291 <span style="color: #00ffff;">dup</span> <span style="color: #32cd32;">10</span> <span style="color: #00ffff;">=</span> <span style="color: #00ffff;">[</span> <span style="color: #00ffff;">drop</span> <span style="color: #32cd32;">0</span> advance? display <span style="color: #00ffff;">]</span> <span style="color: #ffd700; font-weight: bold;">ifTrue</span> <span style="color: #c63; font-weight: bold;">;</span> 292<span style="color: #c63; font-weight: bold;">:</span> input <span style="color: #66f;">( - )</span> 293 <span style="color: #ffd700; font-weight: bold;">repeat</span> 294 display 295 @mode <span style="color: #ffd700; font-weight: bold;">0;</span> <span style="color: #00ffff;">drop</span> 296 getc <span style="color: #ffd700; font-weight: bold;">0;</span> 297 <span style="color: #00ffff;">dup</span> Esc <span style="color: #00ffff;"><></span> <span style="color: #ffd700; font-weight: bold;">0;</span> <span style="color: #00ffff;">drop</span> 298 <span style="color: #00ffff;">dup</span> <span style="color: #32cd32;">8</span> <span style="color: #00ffff;">=</span> <span style="color: #00ffff;">[</span> <span style="color: #00ffff;">drop</span> column <span style="color: #00ffff;">--</span> display <span style="color: #00ffff;">]</span> <span style="color: #00ffff;">[</span> pos get <span style="color: #00ffff;">!</span> column <span style="color: #00ffff;">++</span> <span style="color: #00ffff;">]</span> <span style="color: #ffd700; font-weight: bold;">if</span> 299 <span style="color: #ffd700; font-weight: bold;">again</span> <span style="color: #c63; font-weight: bold;">;</span> 300<span style="color: #c63; font-weight: bold;">:</span> rxe.in <span style="color: #66f;">( -c )</span> mode <span style="color: #00ffff;">on</span> remapping <span style="color: #00ffff;">[</span> remapping <span style="color: #00ffff;">off</span> input <span style="color: #00ffff;">]</span> preserve mode <span style="color: #00ffff;">off</span> <span style="color: #c63; font-weight: bold;">;</span> 301<span style="color: #c63; font-weight: bold;">:</span> match <span style="color: #66f;">( c- )</span> <span style="color: #00ff00;">
301"$$_"</span> <span style="color: #00ffff;">dup</span> <span style="color: #00ffff;">[</span> <span style="color: #32cd32;">2</span> <span style="color: #00ffff;">+</span> <span style="color: #00ffff;">!</span> <span style="color: #00ffff;">]</span> <span style="color: #00ffff;">dip</span> <span style="color: #c63; font-weight: bold;">find</span> <span style="color: #00ffff;">[</span> @d->xt <span style="color: #c63; font-weight: bold;">do</span> <span style="color: #00ffff;">]</span> &drop <span style="color: #ffd700; font-weight: bold;">if</span> <span style="color: #c63; font-weight: bold;">;</span> 302<span style="color: #c63; font-weight: bold;">:</span> edit? <span style="color: #66f;">( c-c )</span> <span style="color: #00ffff;">dup</span> Esc <span style="color: #00ffff;">=</span> <span style="color: #00ffff;">[</span> rxe.in <span style="color: #00ffff;">drop</span> <span style="color: #00ffff;">]</span> <span style="color: #ffd700; font-weight: bold;">ifTrue</span> <span style="color: #c63; font-weight: bold;">;</span> 303</pre> 304</div> 305</div> 306</div> 307<div id="outline-container-sec-2-5" class="outline-3"> 308<h3 id="sec-2-5"><span class="section-number-3">2.5</span> various support bits</h3> 309<div class="outline-text-3" id="text-2-5"> 310<div class="org-src-container"> 311 312<pre class="src src-retro" id="private"><span style="color: #66f;">( various support bits ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ )</span> 313<span style="color: #c63; font-weight: bold;">:</span> new <span style="color: #66f;">( - )</span> @offset <span style="color: #32cd32;">32</span> blksz @#blocks <span style="color: #00ffff;">*</span> <span style="color: #00ffff;">fill</span> <span style="color: #c63; font-weight: bold;">;</span> 314<span style="color: #c63; font-weight: bold;">:</span> e <span style="color: #66f;">( - )</span> thisBlock blksz <span style="color: #c63; font-weight: bold;">eval</span> <span style="color: #c63; font-weight: bold;">;</span> 315<span style="color: #c63; font-weight: bold;">:</span> ea <span style="color: #66f;">( - )</span> @offset @#blocks blksz <span style="color: #00ffff;">*</span> <span style="color: #c63; font-weight: bold;">eval</span> <span style="color: #c63; font-weight: bold;">;</span> 316<span style="color: #c63; font-weight: bold;">:</span> run <span style="color: #66f;">( - )</span> 317 active <span style="color: #00ffff;">on</span> &remap &remapKeys <span style="color: #c63; font-weight: bold;">:is</span> clear 318 <span style="color: #00ffff;">[</span> display getc edit? match @active <span style="color: #00ffff;">]</span> <span style="color: #ffd700; font-weight: bold;">while</span> &remapKeys <span style="color: #c63; font-weight: bold;">:devector</span> <span style="color: #c63; font-weight: bold;">;</span> 319<span style="color: #c63; font-weight: bold;">:</span> min-wh <span style="color: #66f;">( -nn )</span> rows <span style="color: #32cd32;">2</span> <span style="color: #00ffff;">+</span> cols <span style="color: #c63; font-weight: bold;">;</span> 320</pre> 321</div> 322</div> 323</div> 324</div> 325<div id="outline-container-sec-3" class="outline-2"> 326<h2 id="sec-3"><span class="section-number-2">3</span> public interface</h2> 327<div class="outline-text-2" id="text-3"> 328<div class="org-src-container"> 329 330<pre class="src src-retro" id="public"><span style="color: #c63; font-weight: bold;">:</span> setBlocks <span style="color: #66f;">( n- )</span> !#blocks <span style="color: #00ffff;">here</span> blksz @#blocks <span style="color: #00ffff;">*</span> <span style="color: #00ffff;">allot</span> !offset new <span style="color: #c63; font-weight: bold;">;</span> 331<span style="color: #c63; font-weight: bold;">:</span> edit <span style="color: #66f;">( - )</span> 332 min-wh <span style="color: #00ffff;">push</span> <span style="color: #00ffff;">push</span> @ch <span style="color: #00ffff;">pop</span> <span style="color: #00ffff;">>=</span> @cw <span style="color: #00ffff;">pop</span> <span style="color: #00ffff;">>=</span> <span style="color: #00ffff;">and</span> 333 &run <span style="color: #00ffff;">[</span> min-wh <span style="color: #00ffff;">swap</span> <span style="color: #00ff00;">"requires an "</span> puts putn <span style="color: #00ff00;">"x"</span> puts putn
334 <span style="color: #00ff00;">"or greater display, sorry!\n"</span> puts <span style="color: #00ffff;">]</span> <span style="color: #ffd700; font-weight: bold;">if</span> <span style="color: #c63; font-weight: bold;">;</span> 335</pre> 336</div> 337</div> 338</div> 339<div id="outline-container-sec-4" class="outline-2"> 340<h2 id="sec-4"><span class="section-number-2">4</span> keymap</h2> 341<div class="outline-text-2" id="text-4"> 342<div class="org-src-container"> 343 344<pre class="src src-retro" id="public"><span style="color: #66f;">( dvorak keymap )</span> 345<span style="color: #c63; font-weight: bold;">:</span> $$c line <span style="color: #00ffff;">--</span> <span style="color: #c63; font-weight: bold;">;</span> <span style="color: #c63; font-weight: bold;">:</span> $$C top <span style="color: #c63; font-weight: bold;">;</span> 346<span style="color: #c63; font-weight: bold;">:</span> $$h column <span style="color: #00ffff;">--</span> <span style="color: #c63; font-weight: bold;">;</span> <span style="color: #c63; font-weight: bold;">:</span> $$H beg <span style="color: #c63; font-weight: bold;">;</span> 347<span style="color: #c63; font-weight: bold;">:</span> $$t line <span style="color: #00ffff;">++</span> <span style="color: #c63; font-weight: bold;">;</span> <span style="color: #c63; font-weight: bold;">:</span> $$T bot <span style="color: #c63; font-weight: bold;">;</span> 348<span style="color: #c63; font-weight: bold;">:</span> $$n column <span style="color: #00ffff;">++</span> <span style="color: #c63; font-weight: bold;">;</span> <span style="color: #c63; font-weight: bold;">:</span> $$N end <span style="color: #c63; font-weight: bold;">;</span> 349<span style="color: #c63; font-weight: bold;">:</span> $$m $$t beg <span style="color: #c63; font-weight: bold;">;</span> <span style="color: #c63; font-weight: bold;">:</span> $$M mid <span style="color: #c63; font-weight: bold;">;</span> 350<span style="color: #c63; font-weight: bold;">:</span> $$d del <span style="color: #c63; font-weight: bold;">;</span> 351<span style="color: #c63; font-weight: bold;">:</span> $$[ blk <span style="color: #00ffff;">--</span> <span style="color: #c63; font-weight: bold;">;</span> <span style="color: #c63; font-weight: bold;">:</span> $$] blk <span style="color: #00ffff;">++</span> <span style="color: #c63; font-weight: bold;">;</span> 352<span style="color: #c63; font-weight: bold;">:</span> $${ @offset <span style="color: #00ff00;">"blocks"</span> ^files'slurp <span style="color: #00ffff;">drop</span> <span style="color: #c63; font-weight: bold;">;</span> 353<span style="color: #c63; font-weight: bold;">:</span> $$} @offset @#blocks @blksz <span style="color: #00ffff;">*</span> <span style="color: #00ff00;">"blocks"</span> ^files'spew <span style="color: #00ffff;">drop</span> <span style="color: #c63; font-weight: bold;">;</span> 354<span style="color: #c63; font-weight: bold;">:</span> $$e active <span style="color: #00ffff;">off</span> e <span style="color: #c63; font-weight: bold;">;</span> 355<span style="color: #c63; font-weight: bold;">:</span> $$E active <span style="color: #00ffff;">off</span> ea <span style="color: #c63; font-weight: bold;">;</span> 356<span style="color: #c63; font-weight: bold;">:</span> $$z active <span style="color: #00ffff;">off</span> <span style="color: #c63; font-weight: bold;">;</span> 357</pre> 358</div> 359</div> 360</div> 361<div id="outline-container-sec-5" class="outline-2"> 362<h2 id="sec-5"><span class="section-number-2">5</span> OUTPUT bled.rx</h2> 363<div class="outline-text-2" id="text-5"> 364<div class="org-src-container"> 365 366<pre class="src src-retro"><span style="color: #c63; font-weight: bold;">needs</span> <span style="color: #ff6347;">files'</span> 367<span style="color: #c63; font-weight: bold;">chain:</span> <span style="color: #ff6347;">editor'</span> 368<span style="color: #c63; font-weight: bold;">{{</span> 369 <<private>> 370<span style="color: #c63; font-weight: bold;">---reveal---</span> 371 <<public>> 372<span style="color: #c63; font-weight: bold;">}}</span> 373 <span style="color: #32cd32;">128</span> setBlocks 374<span style="color: #c63; font-weight: bold;">;chain</span> 375 376<span style="color: #c63; font-weight: bold;">global</span> 377<span style="color: #c63; font-weight: bold;">with</span> <span style="color: #ff6347;">editor'</span> 378</pre> 379</div> 380</div> 381</div> 382<div id="outline-container-sec-6" class="outline-2"> 383<h2 id="sec-6"><span class="section-number-2">6</span> <code>[0/0]</code> issues list</h2> 384<div class="outline-text-2" id="text-6"> 385</div><div id="outline-container-sec-6-1" class="outline-3"> 386<h3 id="sec-6-1"><span class="section-number-3">6.1</span> <span class="todo TODO">TODO</span> note the TAB→ ESC change in main retro docs..</h3> 387</div> 388</div> 389</div> 390</body> 391</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.