section.field
  h1 #{node.get('name')}
  ul
    li
      a.drop Drop
    li
      a.rename Rename
  h2 Properties
  ul.properties
    li.type(title='Type')
      - var types      = {}
      - types.Boolean  = ['tinyint', 1]
      - types.Date     = ['date']
      - types.DateTime = ['datetime']
      - types.Float    = ['float']
      - types.Integer  = ['int', 11]
      - types.String   = ['varchar', 256]
      - types.Text     = ['text']
      - types.Time     = ['time']
      select.type
        each def, type in types
          option(data-type=def[0],
            data-length=def[1],
            selected=node.get('type') == def[0] && node.get('length') == def[1])= type
        option Custom...
      :coffeescript
        # A nescessary evil to allow the creation of an option for types not
        # defined above
        unless $('select.type option[selected]').length
          option = $('<option/>')
            .attr(selected: true, 'data-type': '#{node.get("type")}', 'data-length': '#{node.get("length")}')
            .text('#{node.get("type")}')
            .insertBefore $('select.type option:last')
          option.append '(#{node.get("length")})' if option.attr 'data-length'
    li.default(title='Default')
      input.default(type='text', value=node.get('default'), disabled=node.get('default') === null)
      input.default_toggle(type='checkbox', checked=node.get('default') !== null)
    li.key(title='Key')
      select.key
        option(value='') None
        option(value='index', selected=node.get('key') == 'index') Index
        option(value='primary', selected=node.get('key') == 'primary') Primary
        option(value='unique', selected=node.get('key') == 'unique') Unique
    li.null(title='Null')
      input.null(type='checkbox', checked=node.get('null'))
    li.ai(title='Auto Increment')
      input.ai(type='checkbox', checked=node.get('ai'))
    li.save
      input.save(type='button', value='Save')