mirror of https://github.com/gogits/gogs.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
85 lines
2.5 KiB
85 lines
2.5 KiB
<!doctype html> |
|
|
|
<title>CodeMirror: MUMPS mode</title> |
|
<meta charset="utf-8"/> |
|
<link rel=stylesheet href="../../doc/docs.css"> |
|
|
|
<link rel="stylesheet" href="../../lib/codemirror.css"> |
|
<script src="../../lib/codemirror.js"></script> |
|
<script src="mumps.js"></script> |
|
<style type="text/css">.CodeMirror {border-top: 1px solid black; border-bottom: 1px solid black;}</style> |
|
<div id=nav> |
|
<a href="http://codemirror.net"><h1>CodeMirror</h1><img id=logo src="../../doc/logo.png"></a> |
|
|
|
<ul> |
|
<li><a href="../../index.html">Home</a> |
|
<li><a href="../../doc/manual.html">Manual</a> |
|
<li><a href="https://github.com/codemirror/codemirror">Code</a> |
|
</ul> |
|
<ul> |
|
<li><a href="../index.html">Language modes</a> |
|
<li><a class=active href="#">MUMPS</a> |
|
</ul> |
|
</div> |
|
|
|
<article> |
|
<h2>MUMPS mode</h2> |
|
|
|
|
|
<div><textarea id="code" name="code"> |
|
; Lloyd Milligan |
|
; 03-30-2015 |
|
; |
|
; MUMPS support for Code Mirror - Excerpts below from routine ^XUS |
|
; |
|
CHECKAV(X1) ;Check A/V code return DUZ or Zero. (Called from XUSRB) |
|
N %,%1,X,Y,IEN,DA,DIK |
|
S IEN=0 |
|
;Start CCOW |
|
I $E(X1,1,7)="~~TOK~~" D Q:IEN>0 IEN |
|
. I $E(X1,8,9)="~1" S IEN=$$CHKASH^XUSRB4($E(X1,8,255)) |
|
. I $E(X1,8,9)="~2" S IEN=$$CHKCCOW^XUSRB4($E(X1,8,255)) |
|
. Q |
|
;End CCOW |
|
S X1=$$UP(X1) S:X1[":" XUTT=1,X1=$TR(X1,":") |
|
S X=$P(X1,";") Q:X="^" -1 S:XUF %1="Access: "_X |
|
Q:X'?1.20ANP 0 |
|
S X=$$EN^XUSHSH(X) I '$D(^VA(200,"A",X)) D LBAV Q 0 |
|
S %1="",IEN=$O(^VA(200,"A",X,0)),XUF(.3)=IEN D USER(IEN) |
|
S X=$P(X1,";",2) S:XUF %1="Verify: "_X S X=$$EN^XUSHSH(X) |
|
I $P(XUSER(1),"^",2)'=X D LBAV Q 0 |
|
I $G(XUFAC(1)) S DIK="^XUSEC(4,",DA=XUFAC(1) D ^DIK |
|
Q IEN |
|
; |
|
; Spell out commands |
|
; |
|
SET2() ;EF. Return error code (also called from XUSRB) |
|
NEW %,X |
|
SET XUNOW=$$HTFM^XLFDT($H),DT=$P(XUNOW,".") |
|
KILL DUZ,XUSER |
|
SET (DUZ,DUZ(2))=0,(DUZ(0),DUZ("AG"),XUSER(0),XUSER(1),XUTT,%UCI)="" |
|
SET %=$$INHIBIT^XUSRB() IF %>0 QUIT % |
|
SET X=$G(^%ZIS(1,XUDEV,"XUS")),XU1=$G(^(1)) |
|
IF $L(X) FOR I=1:1:15 IF $L($P(X,U,I)) SET $P(XOPT,U,I)=$P(X,U,I) |
|
SET DTIME=600 |
|
IF '$P(XOPT,U,11),$D(^%ZIS(1,XUDEV,90)),^(90)>2800000,^(90)'>DT QUIT 8 |
|
QUIT 0 |
|
; |
|
; Spell out commands and functions |
|
; |
|
IF $PIECE(XUSER(0),U,11),$PIECE(XUSER(0),U,11)'>DT QUIT 11 ;Terminated |
|
IF $DATA(DUZ("ASH")) QUIT 0 ;If auto handle, Allow to sign-on p434 |
|
IF $PIECE(XUSER(0),U,7) QUIT 5 ;Disuser flag set |
|
IF '$LENGTH($PIECE(XUSER(1),U,2)) QUIT 21 ;p419, p434 |
|
Q 0 |
|
; |
|
</textarea></div> |
|
<script> |
|
var editor = CodeMirror.fromTextArea(document.getElementById("code"), { |
|
mode: "mumps", |
|
lineNumbers: true, |
|
lineWrapping: true |
|
}); |
|
</script> |
|
|
|
</article>
|
|
|