Page Menu
Home
WickedGov Phorge
Search
Configure Global Search
Log In
Files
F5985452
mode-r.js
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Flag For Later
Award Token
Size
15 KB
Referenced Files
None
Subscribers
None
mode-r.js
View Options
ace
.
define
(
"ace/mode/tex_highlight_rules"
,[
"require"
,
"exports"
,
"module"
,
"ace/lib/oop"
,
"ace/lib/lang"
,
"ace/mode/text_highlight_rules"
],
function
(
require
,
exports
,
module
){
/*
* tex_highlight_rules.js
*
* Copyright (C) 2009-11 by RStudio, Inc.
*
* The Initial Developer of the Original Code is
* Ajax.org B.V.
* Portions created by the Initial Developer are Copyright (C) 2010
* the Initial Developer. All Rights Reserved.
*
* Distributed under the BSD license:
*
* Copyright (c) 2010, Ajax.org B.V.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * Neither the name of Ajax.org B.V. nor the
* names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
*
*/
"use strict"
;
var
oop
=
require
(
"../lib/oop"
);
var
lang
=
require
(
"../lib/lang"
);
var
TextHighlightRules
=
require
(
"./text_highlight_rules"
).
TextHighlightRules
;
var
TexHighlightRules
=
function
(
textClass
)
{
if
(
!
textClass
)
textClass
=
"text"
;
this
.
$rules
=
{
"start"
:
[
{
token
:
"comment"
,
regex
:
"%.*$"
},
{
token
:
textClass
,
// non-command
regex
:
"\\\\[$&%#\\{\\}]"
},
{
token
:
"keyword"
,
// command
regex
:
"\\\\(?:documentclass|usepackage|newcounter|setcounter|addtocounter|value|arabic|stepcounter|newenvironment|renewenvironment|ref|vref|eqref|pageref|label|cite[a-zA-Z]*|tag|begin|end|bibitem)\\b"
,
next
:
"nospell"
},
{
token
:
"keyword"
,
// command
regex
:
"\\\\(?:[a-zA-Z0-9]+|[^a-zA-Z0-9])"
},
{
token
:
"paren.keyword.operator"
,
regex
:
"[[({]"
},
{
token
:
"paren.keyword.operator"
,
regex
:
"[\\])}]"
},
{
token
:
textClass
,
regex
:
"\\s+"
}
],
"nospell"
:
[
{
token
:
"comment"
,
regex
:
"%.*$"
,
next
:
"start"
},
{
token
:
"nospell."
+
textClass
,
// non-command
regex
:
"\\\\[$&%#\\{\\}]"
},
{
token
:
"keyword"
,
// command
regex
:
"\\\\(?:documentclass|usepackage|newcounter|setcounter|addtocounter|value|arabic|stepcounter|newenvironment|renewenvironment|ref|vref|eqref|pageref|label|cite[a-zA-Z]*|tag|begin|end|bibitem)\\b"
},
{
token
:
"keyword"
,
// command
regex
:
"\\\\(?:[a-zA-Z0-9]+|[^a-zA-Z0-9])"
,
next
:
"start"
},
{
token
:
"paren.keyword.operator"
,
regex
:
"[[({]"
},
{
token
:
"paren.keyword.operator"
,
regex
:
"[\\])]"
},
{
token
:
"paren.keyword.operator"
,
regex
:
"}"
,
next
:
"start"
},
{
token
:
"nospell."
+
textClass
,
regex
:
"\\s+"
},
{
token
:
"nospell."
+
textClass
,
regex
:
"\\w+"
}
]
};
};
oop
.
inherits
(
TexHighlightRules
,
TextHighlightRules
);
exports
.
TexHighlightRules
=
TexHighlightRules
;
});
ace
.
define
(
"ace/mode/r_highlight_rules"
,[
"require"
,
"exports"
,
"module"
,
"ace/lib/oop"
,
"ace/lib/lang"
,
"ace/mode/text_highlight_rules"
,
"ace/mode/tex_highlight_rules"
],
function
(
require
,
exports
,
module
){
/*
* r_highlight_rules.js
*
* Copyright (C) 2009-11 by RStudio, Inc.
*
* The Initial Developer of the Original Code is
* Ajax.org B.V.
* Portions created by the Initial Developer are Copyright (C) 2010
* the Initial Developer. All Rights Reserved.
*
* Distributed under the BSD license:
*
* Copyright (c) 2010, Ajax.org B.V.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * Neither the name of Ajax.org B.V. nor the
* names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
*
*/
var
oop
=
require
(
"../lib/oop"
);
var
lang
=
require
(
"../lib/lang"
);
var
TextHighlightRules
=
require
(
"./text_highlight_rules"
).
TextHighlightRules
;
var
TexHighlightRules
=
require
(
"./tex_highlight_rules"
).
TexHighlightRules
;
var
RHighlightRules
=
function
()
{
var
keywords
=
lang
.
arrayToMap
((
"function|if|in|break|next|repeat|else|for|return|switch|while|try|tryCatch|stop|warning|require|library|attach|detach|source|setMethod|setGeneric|setGroupGeneric|setClass"
)
.
split
(
"|"
));
var
buildinConstants
=
lang
.
arrayToMap
((
"NULL|NA|TRUE|FALSE|T|F|Inf|NaN|NA_integer_|NA_real_|NA_character_|"
+
"NA_complex_"
).
split
(
"|"
));
this
.
$rules
=
{
"start"
:
[
{
token
:
"comment.sectionhead"
,
regex
:
"#+(?!').*(?:----|====|####)\\s*$"
},
{
token
:
"comment"
,
regex
:
"#+'"
,
next
:
"rd-start"
},
{
token
:
"comment"
,
regex
:
"#.*$"
},
{
token
:
"string"
,
// multi line string start
regex
:
'["]'
,
next
:
"qqstring"
},
{
token
:
"string"
,
// multi line string start
regex
:
"[']"
,
next
:
"qstring"
},
{
token
:
"constant.numeric"
,
// hex
regex
:
"0[xX][0-9a-fA-F]+[Li]?\\b"
},
{
token
:
"constant.numeric"
,
// explicit integer
regex
:
"\\d+L\\b"
},
{
token
:
"constant.numeric"
,
// number
regex
:
"\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d*)?i?\\b"
},
{
token
:
"constant.numeric"
,
// number with leading decimal
regex
:
"\\.\\d+(?:[eE][+\\-]?\\d*)?i?\\b"
},
{
token
:
"constant.language.boolean"
,
regex
:
"(?:TRUE|FALSE|T|F)\\b"
},
{
token
:
"identifier"
,
regex
:
"`.*?`"
},
{
onMatch
:
function
(
value
)
{
if
(
keywords
[
value
])
return
"keyword"
;
else
if
(
buildinConstants
[
value
])
return
"constant.language"
;
else
if
(
value
==
'...'
||
value
.
match
(
/^\.\.\d+$/
))
return
"variable.language"
;
else
return
"identifier"
;
},
regex
:
"[a-zA-Z.][a-zA-Z0-9._]*\\b"
},
{
token
:
"keyword.operator"
,
regex
:
"%%|>=|<=|==|!=|\\->|<\\-|\\|\\||&&|=|\\+|\\-|\\*|/|\\^|>|<|!|&|\\||~|\\$|:"
},
{
token
:
"keyword.operator"
,
// infix operators
regex
:
"%.*?%"
},
{
token
:
"paren.keyword.operator"
,
regex
:
"[[({]"
},
{
token
:
"paren.keyword.operator"
,
regex
:
"[\\])}]"
},
{
token
:
"text"
,
regex
:
"\\s+"
}
],
"qqstring"
:
[
{
token
:
"string"
,
regex
:
'(?:(?:\\\\.)|(?:[^"\\\\]))*?"'
,
next
:
"start"
},
{
token
:
"string"
,
regex
:
'.+'
}
],
"qstring"
:
[
{
token
:
"string"
,
regex
:
"(?:(?:\\\\.)|(?:[^'\\\\]))*?'"
,
next
:
"start"
},
{
token
:
"string"
,
regex
:
'.+'
}
]
};
var
rdRules
=
new
TexHighlightRules
(
"comment"
).
getRules
();
for
(
var
i
=
0
;
i
<
rdRules
[
"start"
].
length
;
i
++
)
{
rdRules
[
"start"
][
i
].
token
+=
".virtual-comment"
;
}
this
.
addRules
(
rdRules
,
"rd-"
);
this
.
$rules
[
"rd-start"
].
unshift
({
token
:
"text"
,
regex
:
"^"
,
next
:
"start"
});
this
.
$rules
[
"rd-start"
].
unshift
({
token
:
"keyword"
,
regex
:
"@(?!@)[^ ]*"
});
this
.
$rules
[
"rd-start"
].
unshift
({
token
:
"comment"
,
regex
:
"@@"
});
this
.
$rules
[
"rd-start"
].
push
({
token
:
"comment"
,
regex
:
"[^%\\\\[({\\])}]+"
});
};
oop
.
inherits
(
RHighlightRules
,
TextHighlightRules
);
exports
.
RHighlightRules
=
RHighlightRules
;
});
ace
.
define
(
"ace/mode/matching_brace_outdent"
,[
"require"
,
"exports"
,
"module"
,
"ace/range"
],
function
(
require
,
exports
,
module
){
"use strict"
;
var
Range
=
require
(
"../range"
).
Range
;
var
MatchingBraceOutdent
=
function
()
{
};
(
function
()
{
this
.
checkOutdent
=
function
(
line
,
input
)
{
if
(
!
/^\s+$/
.
test
(
line
))
return
false
;
return
/^\s*\}/
.
test
(
input
);
};
this
.
autoOutdent
=
function
(
doc
,
row
)
{
var
line
=
doc
.
getLine
(
row
);
var
match
=
line
.
match
(
/^(\s*\})/
);
if
(
!
match
)
return
0
;
var
column
=
match
[
1
].
length
;
var
openBracePos
=
doc
.
findMatchingBracket
({
row
:
row
,
column
:
column
});
if
(
!
openBracePos
||
openBracePos
.
row
==
row
)
return
0
;
var
indent
=
this
.
$getIndent
(
doc
.
getLine
(
openBracePos
.
row
));
doc
.
replace
(
new
Range
(
row
,
0
,
row
,
column
-
1
),
indent
);
};
this
.
$getIndent
=
function
(
line
)
{
return
line
.
match
(
/^\s*/
)[
0
];
};
}).
call
(
MatchingBraceOutdent
.
prototype
);
exports
.
MatchingBraceOutdent
=
MatchingBraceOutdent
;
});
ace
.
define
(
"ace/mode/r"
,[
"require"
,
"exports"
,
"module"
,
"ace/unicode"
,
"ace/range"
,
"ace/lib/oop"
,
"ace/mode/text"
,
"ace/mode/text_highlight_rules"
,
"ace/mode/r_highlight_rules"
,
"ace/mode/matching_brace_outdent"
],
function
(
require
,
exports
,
module
){
/*
* r.js
*
* Copyright (C) 2009-11 by RStudio, Inc.
*
* The Initial Developer of the Original Code is
* Ajax.org B.V.
* Portions created by the Initial Developer are Copyright (C) 2010
* the Initial Developer. All Rights Reserved.
*
* Distributed under the BSD license:
*
* Copyright (c) 2010, Ajax.org B.V.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * Neither the name of Ajax.org B.V. nor the
* names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
*
*/
"use strict"
;
var
unicode
=
require
(
"../unicode"
);
var
Range
=
require
(
"../range"
).
Range
;
var
oop
=
require
(
"../lib/oop"
);
var
TextMode
=
require
(
"./text"
).
Mode
;
var
TextHighlightRules
=
require
(
"./text_highlight_rules"
).
TextHighlightRules
;
var
RHighlightRules
=
require
(
"./r_highlight_rules"
).
RHighlightRules
;
var
MatchingBraceOutdent
=
require
(
"./matching_brace_outdent"
).
MatchingBraceOutdent
;
var
Mode
=
function
()
{
this
.
HighlightRules
=
RHighlightRules
;
this
.
$outdent
=
new
MatchingBraceOutdent
();
this
.
$behaviour
=
this
.
$defaultBehaviour
;
};
oop
.
inherits
(
Mode
,
TextMode
);
(
function
()
{
this
.
lineCommentStart
=
"#"
;
this
.
tokenRe
=
new
RegExp
(
"^["
+
unicode
.
wordChars
+
"._]+"
,
"g"
);
this
.
nonTokenRe
=
new
RegExp
(
"^(?:[^"
+
unicode
.
wordChars
+
"._]|\s])+"
,
"g"
);
this
.
$id
=
"ace/mode/r"
;
this
.
snippetFileId
=
"ace/snippets/r"
;
}).
call
(
Mode
.
prototype
);
exports
.
Mode
=
Mode
;
});
(
function
()
{
ace
.
require
([
"ace/mode/r"
],
function
(
m
)
{
if
(
typeof
module
==
"object"
&&
typeof
exports
==
"object"
&&
module
)
{
module
.
exports
=
m
;
}
});
})();
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sat, Oct 3, 23:47 (2 w, 3 d ago)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
5c/87/49da3f06dbefd6e292ecbe638597
Default Alt Text
mode-r.js (15 KB)
Attached To
Mode
rMWPROD MediaWiki Production
Attached
Detach File
Event Timeline
Log In to Comment