annotate demo/outer.ur @ 2142:3288e3c9948b
Fix XML indentation in Emacs mode
The return value of MATCH-STRING is a string. At least on Emacs 25,
the comparisons between string and character with EQUAL could never
succeed, and so the cases for matching braces were never triggered.
GET-TEXT-PROPERTY may return a list rather than an atom (for example,
on long lines with whitespace-mode turned on), and this broke the
heuristic of looking for the tag face in previous text.
author |
Julian Squires <julian@cipht.net> |
date |
Mon, 04 May 2015 14:35:07 -0400 |
parents |
87a7702d681d |
children |
|
rev |
line source |
adamc@777
|
1 table t : { Id : int, B : string }
|
adamc@777
|
2 PRIMARY KEY Id
|
adamc@777
|
3
|
adamc@777
|
4 table u : { Id : int, Link : int, C : string, D : option float }
|
adamc@777
|
5 PRIMARY KEY Id,
|
adamc@777
|
6 CONSTRAINT Link FOREIGN KEY Link REFERENCES t(Id)
|
adamc@777
|
7
|
adamc@777
|
8 fun main () =
|
adamc@777
|
9 xml <- queryX (SELECT t.Id, t.B, u.Id, u.C, u.D
|
adamc@777
|
10 FROM t LEFT JOIN u ON t.Id = u.Link)
|
adamc@777
|
11 (fn r => <xml><tr>
|
adamc@777
|
12 <td>{[r.T.Id]}</td>
|
adamc@777
|
13 <td>{[r.T.B]}</td>
|
adamc@777
|
14 <td>{[r.U.Id]}</td>
|
adamc@777
|
15 <td>{[r.U.C]}</td>
|
adamc@777
|
16 <td>{[r.U.D]}</td>
|
adamc@777
|
17 </tr></xml>);
|
adamc@777
|
18 return <xml><body>
|
adamc@777
|
19 <table>{xml}</table>
|
adamc@777
|
20
|
adamc@777
|
21 <form>Insert into t: <textbox{#Id} size={5}/> <textbox{#B} size={5}/>
|
adamc@777
|
22 <submit action={addT}/></form>
|
adamc@777
|
23 <form>
|
adamc@777
|
24 Insert into u: <textbox{#Id} size={5}/> <textbox{#Link} size={5}/> <textbox{#C} size={5}/>
|
adamc@777
|
25 <textbox{#D} size={5}/> <submit action={addU}/>
|
adamc@777
|
26 </form>
|
adamc@777
|
27 </body></xml>
|
adamc@777
|
28
|
adamc@777
|
29 and addT r =
|
adamc@777
|
30 dml (INSERT INTO t (Id, B) VALUES ({[readError r.Id]}, {[r.B]}));
|
adamc@777
|
31 main ()
|
adamc@777
|
32
|
adamc@777
|
33 and addU r =
|
adamc@777
|
34 dml (INSERT INTO u (Id, Link, C, D) VALUES ({[readError r.Id]}, {[readError r.Link]}, {[r.C]}, {[readError r.D]}));
|
adamc@777
|
35 main ()
|