Pastakhov has uploaded a new change for review. ( 
https://gerrit.wikimedia.org/r/364422 )

Change subject: Reorganize the extension tag styles
......................................................................

Reorganize the extension tag styles

This patch allows to redefine the look for the users (in the future).
It does not change the current look.

This patch adds the classes for extension tags:
.cm-mw-tag-{tagname} - the text of the entire extension tags (include tags)
.cm-mw-exttag-inside - the text inside extension tags

renamed:
.cm-mw-exttag - renamed to cm-mw-exttag-default
(the text inside tags when tag mode is not defined, used by default)

removed:
cm-mw-ext-{tagname} replaced by cm-mw-tag-{tagname} and cm-mw-exttag-inside

unchanged:
.cm-mw-exttag-name - tag name (pre, ref, poem, gallery, etc...)
.cm-mw-exttag-bracket - tag brackets ('<' and '>')
.cm-mw-exttag-attribute - tag attributes (style="padding: 1em;")commit

Change-Id: I0651da68aae2c0cc8089ae25ca2b634ccebf01d6
---
M resources/mode/mediawiki/mediawiki.css
M resources/mode/mediawiki/mediawiki.js
2 files changed, 25 insertions(+), 25 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/CodeMirror 
refs/changes/22/364422/1

diff --git a/resources/mode/mediawiki/mediawiki.css 
b/resources/mode/mediawiki/mediawiki.css
index 7a5f98d..66adf3c 100644
--- a/resources/mode/mediawiki/mediawiki.css
+++ b/resources/mode/mediawiki/mediawiki.css
@@ -39,8 +39,8 @@
 .cm-mw-parserfunction-bracket { color: #a11; font-weight: bold; }
 .cm-mw-parserfunction-delimiter { color: #a11; font-weight: bold; }
 
-pre.cm-mw-exttag { background-image: url( img/ext2.png ); }
-.cm-mw-exttag { background-image: url( img/ext4.png ); }
+pre.cm-mw-exttag-default { background-image: url( img/ext2.png ); }
+.cm-mw-exttag-default { background-image: url( img/ext4.png ); }
 .cm-mw-exttag-name { color: #290; font-weight: bold; }
 .cm-mw-exttag-bracket { color: #290; font-weight: normal; }
 .cm-mw-exttag-attribute { color: #290; font-weight: normal; }
@@ -49,8 +49,8 @@
 .cm-mw-htmltag-bracket { color: #290; font-weight: normal; }
 .cm-mw-htmltag-attribute { color: #290; font-weight: normal; }
 
-pre.cm-mw-tag-pre, .cm-mw-tag-pre { background-image: url( img/black4.png ); }
-pre.cm-mw-tag-nowiki, .cm-mw-tag-nowiki { background-image: url( 
img/black4.png ); }
+.cm-mw-tag-pre.cm-mw-exttag-inside { background-image: url( img/black4.png ); }
+.cm-mw-tag-nowiki.cm-mw-exttag-inside { background-image: url( img/black4.png 
); }
 
 .cm-mw-link { color: #36c; font-weight: normal; }
 .cm-mw-link-pagename { color: #36c; font-weight: normal; }
diff --git a/resources/mode/mediawiki/mediawiki.js 
b/resources/mode/mediawiki/mediawiki.js
index 0115b9f..9b23668 100644
--- a/resources/mode/mediawiki/mediawiki.js
+++ b/resources/mode/mediawiki/mediawiki.js
@@ -411,11 +411,11 @@
                                        return makeLocalStyle( 
'mw-htmltag-name', state );
                                } // it is the extension tag
                                if ( isCloseTag ) {
-                                       state.tokenize = eatChar( '>', 
'mw-exttag-bracket mw-ext-' + name );
+                                       state.tokenize = eatChar( '>', 
'mw-exttag-bracket mw-tag-' + name );
                                } else {
                                        state.tokenize = eatExtTagAttribute( 
name );
                                }
-                               return makeLocalStyle( 'mw-exttag-name mw-ext-' 
+ name, state );
+                               return makeLocalStyle( 'mw-exttag-name mw-tag-' 
+ name, state );
                        };
                }
 
@@ -440,7 +440,7 @@
                function eatExtTagAttribute( name ) {
                        return function ( stream, state ) {
                                if ( stream.match( /[^>\/<\{\&~]+/ ) ) {
-                                       return makeLocalStyle( 
'mw-exttag-attribute mw-ext-' + name, state );
+                                       return makeLocalStyle( 
'mw-exttag-attribute mw-tag-' + name, state );
                                }
                                if ( stream.eat( '>' ) ) {
                                        state.extName = name;
@@ -449,13 +449,13 @@
                                                state.extState = 
CodeMirror.startState( state.extMode );
                                        }
                                        state.tokenize = eatExtTagArea( name );
-                                       return makeLocalStyle( 
'mw-exttag-bracket mw-ext-' + name, state );
+                                       return makeLocalStyle( 
'mw-exttag-bracket mw-tag-' + name, state );
                                }
                                if ( stream.match( '/>' ) ) {
                                        state.tokenize = state.stack.pop();
-                                       return makeLocalStyle( 
'mw-exttag-bracket mw-ext-' + name, state );
+                                       return makeLocalStyle( 
'mw-exttag-bracket mw-tag-' + name, state );
                                }
-                               return eatWikiText( 'mw-exttag-attribute 
mw-ext-' + name, '' )( stream, state );
+                               return eatWikiText( 'mw-exttag-attribute 
mw-tag-' + name, '' )( stream, state );
                        };
                }
 
@@ -493,19 +493,20 @@
                                stream.next(); // eat <
                                stream.next(); // eat /
                                state.tokenize = eatTagName( name.length, true, 
false );
-                               return makeLocalStyle( 'mw-exttag-bracket 
mw-ext-' + name, state );
+                               return makeLocalStyle( 'mw-exttag-bracket 
mw-tag-' + name, state );
                        };
                }
 
                function eatExtTokens( origString ) {
                        return function ( stream, state ) {
-                               var ret;
+                               var wholeLine = origString === false && 
stream.sol(),
+                                       style = ( wholeLine ? 
'line-cm-mw-exttag-inside line-cm-mw-tag-' : 'mw-exttag-inside mw-tag-' ) + 
state.extName + ' ';
+
                                if ( state.extMode === false ) {
-                                       ret = ( origString === false && 
stream.sol() ? 'line-cm-mw-exttag' : 'mw-exttag' );
+                                       style += ( wholeLine ? 
'line-cm-mw-exttag-default' : 'mw-exttag-default' );
                                        stream.skipToEnd();
                                } else {
-                                       ret = ( origString === false && 
stream.sol() ? 'line-cm-mw-tag-' : 'mw-tag-' ) + state.extName;
-                                       ret += ' ' + state.extMode.token( 
stream, state.extState, origString === false );
+                                       style += state.extMode.token( stream, 
state.extState, origString === false );
                                }
                                if ( stream.eol() ) {
                                        if ( origString !== false ) {
@@ -513,7 +514,7 @@
                                        }
                                        state.tokenize = state.stack.pop();
                                }
-                               return makeLocalStyle( ret, state );
+                               return makeLocalStyle( style, state );
                        };
                }
 
@@ -943,14 +944,13 @@
                        blankLine: function ( state ) {
                                var ret;
                                if ( state.extName ) {
-                                       if ( state.extMode ) {
-                                               ret = '';
-                                               if ( state.extMode.blankLine ) {
-                                                       ret = ' ' + 
state.extMode.blankLine( state.extState );
-                                               }
-                                               return 'line-cm-mw-tag-' + 
state.extName + ret;
+                                       ret = 'line-cm-mw-exttag-inside 
line-cm-mw-tag-' + state.extName + ' ';
+                                       if ( !state.extMode ) {
+                                               ret += 
'line-cm-mw-exttag-default';
+                                       } else if ( state.extMode.blankLine ) {
+                                               ret += state.extMode.blankLine( 
state.extState );
                                        }
-                                       return 'line-cm-mw-exttag';
+                                       return ret;
                                }
                        }
                };
@@ -978,14 +978,14 @@
        CodeMirror.defineMode( 'mw-tag-pre', function ( /* config, parserConfig 
*/ ) {
                return {
                        startState: function () { return {}; },
-                       token: eatNowiki( 'mw-tag-pre', 'line-cm-mw-tag-pre' )
+                       token: eatNowiki( '', '' )
                };
        } );
 
        CodeMirror.defineMode( 'mw-tag-nowiki', function ( /* config, 
parserConfig */ ) {
                return {
                        startState: function () { return {}; },
-                       token: eatNowiki( 'mw-tag-nowiki', 
'line-cm-mw-tag-nowiki' )
+                       token: eatNowiki( '', '' )
                };
        } );
 

-- 
To view, visit https://gerrit.wikimedia.org/r/364422
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I0651da68aae2c0cc8089ae25ca2b634ccebf01d6
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/CodeMirror
Gerrit-Branch: master
Gerrit-Owner: Pastakhov <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to