         return null
 
       shouldAddTab: ->
-        if @model.parent? then @model.parent.type isnt 'socket'
+        if @model.parent?
+          parent = @model.parent
+          while parent?.type is 'segment' then parent = parent.parent
+          parent?.type isnt 'socket'
         else not @model.valueByDefault
 
       computeOwnPath: ->


          # Additionally, we add glue spacing padding if we are disconnected
          # from the bounding box on the next line.
          unless @multilineChildrenData[line] is MULTILINE_MIDDLE
            # Find the horizontal overlap between these two bounding rectangles,
            # which is our right edge minus their left, or vice versa.
            overlap = Math.min @bounds[line].right() - @bounds[line + 1].x, @bounds[line + 1].right() - @bounds[line].x


        # Do not add padding to the glue
        # if our child is a block.
        if @model.start.nextVisibleToken().type is 'blockStart'
          view = @view.getViewNodeFor @model.start.next.container
          @glue = view.computeGlue()

