class SyntaxTree::Command

def align(q, node, &block)

def align(q, node, &block)
  arguments = node.arguments
  if arguments.is_a?(Args)
    parts = arguments.parts
    if parts.size == 1
      part = parts.first
      case part
      when DefNode
        q.text(" ")
        yield
      when IfOp
        q.if_flat { q.text(" ") }
        yield
      when Command
        align(q, part, &block)
      else
        q.text(" ")
        q.nest(message.value.length + 1) { yield }
      end
    else
      q.text(" ")
      q.nest(message.value.length + 1) { yield }
    end
  else
    q.text(" ")
    q.nest(message.value.length + 1) { yield }
  end
end