]> matita.cs.unibo.it Git - helm.git/commitdiff
Added some rules in the "Left Drop" section.
authorPaolo Marinelli <paolo.marinelli@unibo.it>
Thu, 27 Mar 2003 18:40:55 +0000 (18:40 +0000)
committerPaolo Marinelli <paolo.marinelli@unibo.it>
Thu, 27 Mar 2003 18:40:55 +0000 (18:40 +0000)
helm/DEVEL/mathml_editor/doc/spec.tex

index 1c20a15649461cb4dc93cbc07df799c1e7f3ebe8..80ce0dd6b5146985a5dc1880653a451dcfc3a9ae 100644 (file)
@@ -27,6 +27,7 @@
 \newcommand{\ROW}{\texttt{row}}
 \newcommand{\SLDROP}{\blacktriangleleft}
 \newcommand{\NLDROP}{\vartriangleleft}
+\newcommand{\RGROUP}{\vartriangleleft_{rg}}
 
 \begin{document}
 
@@ -416,12 +417,18 @@ cursor with \ONODE{}, append $\tadvance$ after the \ONODE{} node
   % <g id="id1"><g id="id2">...<g id="idn"><cursor/></g>...</g></g> is equivalent to:
   % <cursor/>
 
-  % there is an optional sequence of groups with id, all of which having one and only one child. The last
-  % child of this sequence (or the root, if the sequence is empty) is a group with id, has as first element a
-  % token and has as second and last element an eventually empty sequence of groups with id, all of which having
-  %one and only one child. The last element of this sequence has the cursor as its child.
-  \item{\verb+(g[@id][^#$]/++\verb+)?g[@id][^(i|n|o|s|c[ ])#$]/(g[@id][^#$]/++\verb+)?cursor+}\\
-  replace the whole fragment with the cursor.
+  \item{\verb+<g|p>[(i|n|o|s|c[ ])#]/(g[@id][^#$]/++\verb+)?cursor+}\\
+  remove the cursor (and eventually the sequence of \G{} nodes with attribute \texttt{id}) and replace the token with the $\RGROUP$.
+
+  \item{\verb+<g|p>[g#]/(g[@id][^#$]/++\verb+)?cursor+}\\
+  remove the cursor (and eventually the sequence of \G{} nodes with attribute \texttt{id}) and append $\NLDG$ to the \G{} node preceding the cursor
+
+  %% there is an optional sequence of groups with id, all of which having one and only one child. The last
+  %% child of this sequence (or the root, if the sequence is empty) is a group with id, has as first element a
+  %% token and has as second and last element an eventually empty sequence of groups with id, all of which having
+  %%one and only one child. The last element of this sequence has the cursor as its child.
+  %\item{\verb+(g[@id][^#$]/++\verb+)?g[@id][^(i|n|o|s|c[ ])#$]/(g[@id][^#$]/++\verb+)?cursor+}\\
+  %replace the whole fragment with the cursor.
 
   % the cursor is a macro's child. There is an eventually empty sequence of delimiters, which precedes the
   % cursor. Before this sequence, there is a p node. This p node has as its last child a token
@@ -636,6 +643,22 @@ cursor with \ONODE{}, append $\tadvance$ after the \ONODE{} node
 
 \begin{description}
 
+  %********************* epsilon rules concerning the rgreplace_father ********************
+
+  \item{\verb+(g[@id][^#$]/++\verb+)+$\RGROUP$}\\
+  replace the whole fragment with the cursor.
+
+  \item{\verb+*[!@id]/+$\RGROUP$}\\
+  replace the $\RGROUP$ with the cursor.
+
+  \item{\verb+g[@id][*#]/+$\RGROUP$}\\
+  replace the $\RGROUP$ with the cursor
+
+  \item{\verb+g[@id][#*]/+$\RGROUP$}\\
+  replace the $\RGROUP$ with the cursor.
+  % maybe it's not the correct action
+
+
 
   %********************************************* \NLDROP has a preceding node *********************************************