diff --git a/lib/ace/mode/javascript_highlight_rules.js b/lib/ace/mode/javascript_highlight_rules.js
index eeb8479f..185b40d7 100644
--- a/lib/ace/mode/javascript_highlight_rules.js
+++ b/lib/ace/mode/javascript_highlight_rules.js
@@ -105,6 +105,9 @@ var JavaScriptHighlightRules = function() {
}, {
token : "constant.numeric", // float
regex : "[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"
+ }, {
+ token : ["keyword", "text", "entity.name.function"],
+ regex : "(function)(\\s+)(" + identifierRe + ")"
}, {
token : "constant.language.boolean",
regex : "(?:true|false)\\b"
diff --git a/lib/ace/theme/clouds.js b/lib/ace/theme/clouds.js
index a1a7fda9..9db45260 100644
--- a/lib/ace/theme/clouds.js
+++ b/lib/ace/theme/clouds.js
@@ -204,6 +204,14 @@ define(function(require, exports, module) {
color:#606060;\
}\
\
+.ace-clouds .ace_entity.ace_name {\
+ \
+}\
+\
+.ace-clouds .ace_entity.ace_name.ace_function {\
+ \
+}\
+\
.ace-clouds .ace_markup.ace_underline {\
text-decoration:underline;\
}\
diff --git a/lib/ace/theme/clouds_midnight.js b/lib/ace/theme/clouds_midnight.js
index 9b7408d7..adc8663f 100644
--- a/lib/ace/theme/clouds_midnight.js
+++ b/lib/ace/theme/clouds_midnight.js
@@ -205,6 +205,14 @@ background-color:#E92E2E;\
color:#606060;\
}\
\
+.ace-clouds-midnight .ace_entity.ace_name {\
+ \
+}\
+\
+.ace-clouds-midnight .ace_entity.ace_name.ace_function {\
+ \
+}\
+\
.ace-clouds-midnight .ace_markup.ace_underline {\
text-decoration:underline;\
}\
diff --git a/lib/ace/theme/cobalt.js b/lib/ace/theme/cobalt.js
index 2dddbd46..c8009106 100644
--- a/lib/ace/theme/cobalt.js
+++ b/lib/ace/theme/cobalt.js
@@ -206,6 +206,14 @@ color:#0088FF;\
\
}\
\
+.ace-cobalt .ace_entity.ace_name {\
+ \
+}\
+\
+.ace-cobalt .ace_entity.ace_name.ace_function {\
+ \
+}\
+\
.ace-cobalt .ace_markup.ace_underline {\
text-decoration:underline;\
}\
diff --git a/lib/ace/theme/dawn.js b/lib/ace/theme/dawn.js
index 654ac3b7..d2fce4da 100644
--- a/lib/ace/theme/dawn.js
+++ b/lib/ace/theme/dawn.js
@@ -210,6 +210,14 @@ color:#5A525F;\
\
}\
\
+.ace-dawn .ace_entity.ace_name {\
+ \
+}\
+\
+.ace-dawn .ace_entity.ace_name.ace_function {\
+ \
+}\
+\
.ace-dawn .ace_markup.ace_underline {\
text-decoration:underline;\
}\
diff --git a/lib/ace/theme/idle_fingers.js b/lib/ace/theme/idle_fingers.js
index 3ecc3be3..8702f16b 100644
--- a/lib/ace/theme/idle_fingers.js
+++ b/lib/ace/theme/idle_fingers.js
@@ -206,6 +206,14 @@ color:#BC9458;\
\
}\
\
+.ace-idle-fingers .ace_entity.ace_name {\
+ color:#FFC66D;\
+}\
+\
+.ace-idle-fingers .ace_entity.ace_name.ace_function {\
+ \
+}\
+\
.ace-idle-fingers .ace_markup.ace_underline {\
text-decoration:underline;\
}\
diff --git a/lib/ace/theme/kr_theme.js b/lib/ace/theme/kr_theme.js
index 8a2f919d..176941ab 100644
--- a/lib/ace/theme/kr_theme.js
+++ b/lib/ace/theme/kr_theme.js
@@ -206,6 +206,14 @@ color:#706D5B;\
\
}\
\
+.ace-kr-theme .ace_entity.ace_name {\
+ \
+}\
+\
+.ace-kr-theme .ace_entity.ace_name.ace_function {\
+ \
+}\
+\
.ace-kr-theme .ace_markup.ace_underline {\
text-decoration:underline;\
}\
diff --git a/lib/ace/theme/mono_industrial.js b/lib/ace/theme/mono_industrial.js
index ca347670..ecc5b59c 100644
--- a/lib/ace/theme/mono_industrial.js
+++ b/lib/ace/theme/mono_industrial.js
@@ -206,6 +206,14 @@ background-color:#151C19;\
color:#909993;\
}\
\
+.ace-mono-industrial .ace_entity.ace_name {\
+ color:#5778B6;\
+}\
+\
+.ace-mono-industrial .ace_entity.ace_name.ace_function {\
+ color:#A8B3AB;\
+}\
+\
.ace-mono-industrial .ace_markup.ace_underline {\
text-decoration:underline;\
}\
diff --git a/lib/ace/theme/monokai.js b/lib/ace/theme/monokai.js
index 49885bce..12ae43bd 100644
--- a/lib/ace/theme/monokai.js
+++ b/lib/ace/theme/monokai.js
@@ -206,6 +206,14 @@ background-color:#AE81FF;\
color:#A6E22E;\
}\
\
+.ace-monokai .ace_entity.ace_name {\
+ \
+}\
+\
+.ace-monokai .ace_entity.ace_name.ace_function {\
+ color:#A6E22E;\
+}\
+\
.ace-monokai .ace_markup.ace_underline {\
text-decoration:underline;\
}\
diff --git a/lib/ace/theme/solarized_dark.js b/lib/ace/theme/solarized_dark.js
index a696f179..63b957a4 100644
--- a/lib/ace/theme/solarized_dark.js
+++ b/lib/ace/theme/solarized_dark.js
@@ -205,6 +205,14 @@ color:#657B83;\
color:#93A1A1;\
}\
\
+.ace-solarized-dark .ace_entity.ace_name {\
+ \
+}\
+\
+.ace-solarized-dark .ace_entity.ace_name.ace_function {\
+ color:#268BD2;\
+}\
+\
.ace-solarized-dark .ace_markup.ace_underline {\
text-decoration:underline;\
}\
diff --git a/lib/ace/theme/solarized_light.js b/lib/ace/theme/solarized_light.js
index edc5eff1..3362d4a9 100644
--- a/lib/ace/theme/solarized_light.js
+++ b/lib/ace/theme/solarized_light.js
@@ -204,6 +204,14 @@ define(function(require, exports, module) {
color:#93A1A1;\
}\
\
+.ace-solarized-light .ace_entity.ace_name {\
+ \
+}\
+\
+.ace-solarized-light .ace_entity.ace_name.ace_function {\
+ color:#268BD2;\
+}\
+\
.ace-solarized-light .ace_markup.ace_underline {\
text-decoration:underline;\
}\
diff --git a/lib/ace/theme/textmate.js b/lib/ace/theme/textmate.js
index 009e05a8..71f6f109 100644
--- a/lib/ace/theme/textmate.js
+++ b/lib/ace/theme/textmate.js
@@ -156,7 +156,11 @@ define(function(require, exports, module) {
color: rgb(104, 104, 91);\
}\
\
-.ace-tm .ace_markup.ace_underline {\
+.ace-tm .ace_entity.ace_name.ace_function {\
+ color: #0000A2;\
+}\
+\
+.ace-tm .ace_markup.ace_markupine {\
text-decoration:underline;\
}\
\
diff --git a/lib/ace/theme/twilight.js b/lib/ace/theme/twilight.js
index 23af59bb..7999d907 100644
--- a/lib/ace/theme/twilight.js
+++ b/lib/ace/theme/twilight.js
@@ -211,6 +211,14 @@ color:#5F5A60;\
\
}\
\
+.ace-twilight .ace_entity.ace_name {\
+ \
+}\
+\
+.ace-twilight .ace_entity.ace_name.ace_function {\
+ color:#AC885B;\
+}\
+\
.ace-twilight .ace_markup.ace_underline {\
text-decoration:underline;\
}\
diff --git a/lib/ace/theme/vibrant_ink.js b/lib/ace/theme/vibrant_ink.js
index e6c7c48a..4045dff1 100644
--- a/lib/ace/theme/vibrant_ink.js
+++ b/lib/ace/theme/vibrant_ink.js
@@ -207,6 +207,14 @@ define(function(require, exports, module) {
color:#99CC99;\
}\
\
+.ace-vibrant-ink .ace_entity.ace_name {\
+ \
+}\
+\
+.ace-vibrant-ink .ace_entity.ace_name.ace_function {\
+ color:#FFCC00;\
+}\
+\
.ace-vibrant-ink .ace_markup.ace_underline {\
text-decoration:underline;\
}\
diff --git a/tool/Theme.tmpl.css b/tool/Theme.tmpl.css
index f41d8503..f1abe83a 100644
--- a/tool/Theme.tmpl.css
+++ b/tool/Theme.tmpl.css
@@ -163,6 +163,14 @@
%entity.other.attribute-name%
}
+.%cssClass% .ace_entity.ace_name {
+ %entity.name%
+}
+
+.%cssClass% .ace_entity.ace_name.ace_function {
+ %entity.name.function%
+}
+
.%cssClass% .ace_markup.ace_underline {
text-decoration:underline;
}
diff --git a/tool/tmtheme.js b/tool/tmtheme.js
index c5762398..fe3656b7 100644
--- a/tool/tmtheme.js
+++ b/tool/tmtheme.js
@@ -88,6 +88,8 @@ var supportedScopes = {
"meta.tag": "meta.tag",
"meta.tag.form": "meta.tag.form",
"entity.other.attribute-name": "entity.other.attribute-name",
+ "entity.name.function": "entity.name.function",
+ "entity.name": "entity.name",
"markup.heading": "markup.heading",
"markup.heading.1": "markup.heading.1",
diff --git a/tool/tmthemes/Twilight.tmTheme b/tool/tmthemes/Twilight.tmTheme
index a83f7ecb..a5984e82 100644
--- a/tool/tmthemes/Twilight.tmTheme
+++ b/tool/tmthemes/Twilight.tmTheme
@@ -343,6 +343,19 @@
#CDA869
+
+ name
+ Function name
+ scope
+ entity.name.function, support.function.any-method
+ settings
+
+ fontStyle
+ bold
+ foreground
+ #AC885B
+
+
name
ยง css:pseudo-class