Hello, I've been using the Tabs Macro [1], and have some feedback on it. First a very positive because I really like that macro ;-) But ... : - in extension page [1], it is said that it's not compatible with 4.x, though I use it without any issue on a 4.4.1 instance. - only issue I have (already with XE 3.x) is that several empty lines are added BEFORE the tabs. The empty lines consist of 5 lines of : <div class="wikimodel-emptyline"></div> To fix the issue, I updated the Macro.TabsMacro macro code, there was a misplaced empty line in it: ///// BEGIN ////// {{velocity}} $xwiki.jsx.use("Macro.TabsMacro") #set ($tabsSortedMapString = $context.macro.params.idsToLabels) ## split incoming string into 2 velocity arrays #set ($tabMapEntriesStringArray = $tabsSortedMapString.split(',')) #set( $tabIdsArray = []) #set( $tabNamesArray = []) #foreach($tabEntryString in $tabMapEntriesStringArray ) #if ("$!tabEntryString" == "" ) ## ignore null or empty (see http://wiki.apache.org/velocity/CheckingForNull) #else #set ($tabEntryArray = $tabEntryString.trim().split('=')) #if ($tabEntryArray.size()!=2) {{error}}Parameter $tabEntryString is not a valid key=value pair in the provided map: $tabsSortedMapString{{/error}} #else #set ($addResult = $tabIdsArray.add($tabEntryArray.get(0).trim())) #set ($addResult = $tabNamesArray.add($tabEntryArray.get(1).trim())) #end (*) #end #end ## generate tabs (**) {{html}} <div class="floatcontainer"> ///// END ///// I had to remove line marked with (*), and add 2 empty lines right after (**). This result in having only 1 empty line added before the tabs, which is not perfect but better. As I didn't find a JIRA project for this macro, I'm posting it here ... BR, Jeremie [1] http://extensions.xwiki.org/xwiki/bin/view/Extension/Tabs+Macro