[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gzz-commits] gzz/doc/pegboard/chug_shear_twirl--benja peg.rst
From: |
Benja Fallenstein |
Subject: |
[Gzz-commits] gzz/doc/pegboard/chug_shear_twirl--benja peg.rst |
Date: |
Fri, 08 Nov 2002 13:34:28 -0500 |
CVSROOT: /cvsroot/gzz
Module name: gzz
Changes by: Benja Fallenstein <address@hidden> 02/11/08 13:34:28
Modified files:
doc/pegboard/chug_shear_twirl--benja: peg.rst
Log message:
Define Twirl, add issue: which keybindings should be used?
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/doc/pegboard/chug_shear_twirl--benja/peg.rst.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
Patches:
Index: gzz/doc/pegboard/chug_shear_twirl--benja/peg.rst
diff -u gzz/doc/pegboard/chug_shear_twirl--benja/peg.rst:1.2
gzz/doc/pegboard/chug_shear_twirl--benja/peg.rst:1.3
--- gzz/doc/pegboard/chug_shear_twirl--benja/peg.rst:1.2 Wed Nov 6
06:38:45 2002
+++ gzz/doc/pegboard/chug_shear_twirl--benja/peg.rst Fri Nov 8 13:34:28 2002
@@ -4,8 +4,8 @@
:Author: Benja Fallenstein
:Date-Created: 2002-11-03
-:Date: $Date: 2002/11/06 11:38:45 $
-:Revision: $Revision: 1.2 $
+:Date: $Date: 2002/11/08 18:34:28 $
+:Revision: $Revision: 1.3 $
:Status: Incomplete
@@ -14,6 +14,17 @@
gives (hopefully) unambiguous specifications for them and
assigns them key bindings.
+As usual, these will be optional at first; they will be activated
+by calling Gzz.py with ``--chug-shear-twirl``.
+
+
+Issues
+======
+
+- What should the key bindings be? Ctrl-C for chug could be nice,
+ and Ctrl-T for twirl could also work, but Ctrl-S is already
+ taken for saving. (Ctrl-H?)
+
Chug
====
@@ -136,5 +147,49 @@
|
E
+XXX
+
+
+
+Twirl
+=====
+
+Twirl rotates a set of connections into another dimension.
+For example, with ``A`` and ``B`` marked, 'Twirl Right Down'
+works as follows::
+
+
+ Before After
+ ------ -----
+
+ A - B - C - D A
+ |
+ B
+ |
+ C - D
+
+
+I.e., the *rightward* connections of ``A`` and ``B`` are made
+into *downward* connections. Twirl does not move the cursor.
+
+Twirl operates on two dimensions D1 and D2, which may be equal.
+It also operates on two directions d1 and d2 (each posward
+or negward). If D1 = D2 and d1 = d2, Twirl is a no-op.
+
+The specification of Twirl on a set of cells (S) is:
+
+ - Let C be the set of connections on D1, in direction d1.
+ Each of the connections is a pair (negside, posside).
+ - Unmake all connections in C, along D1.
+ - If d1 != d2, reverse all pairs in C (exchange the first
+ and second element).
+ - Make all connections in C, this time along D2.
+
+The following precondition must be satisfied (otherwise,
+nothing is done, and an apology is rendered):
+
+ - If a cell in S has a connection on D1 in direction d1,
+ it has no connection on D2 in direction d2.
+- Benja
\ No newline at end of file