/*
Language: FIX
Author: Brent Bradbury <brent@brentium.com>
*/

function(hljs) {
  return {
    contains: [
    {
      begin: /[^\u2401\u0001]+/,
      end: /[\u2401\u0001]/,
      className: 'fixfield',
      lexems: /[^\u2401\u0001]/,
      excludeEnd: true,
      returnBegin: true,
      returnEnd: false,
      contains: [
      {
        begin: /([^\u2401\u0001=]+)/,
        end: /=([^\u2401\u0001=]+)/,
        returnEnd: true,
        returnBegin: false,
        className: 'attribute',

      },
      {
        begin: /=/,
        end: /([\u2401\u0001])/,
        excludeEnd: true,
        excludeBegin: true,
        className: 'string',
        
      }]
    }],
      case_insensitive: true,
  };
}

/*
Language: FIX
Author: Brent Bradbury <brent@brentium.com>
*/

function(hljs) {
  return {
    contains: [
    {
      begin: /[^\u2401\u0001]+/,
      end: /[\u2401\u0001]/,
      className: 'fixField',
      lexems: /[^\u2401\u0001]/,
      excludeEnd: true,
      returnBegin: true,
      returnEnd: false,
        contains: [
        {
          begin: /([^\u2401\u0001=]+)/,
          end: /=([^\u2401\u0001=]+)/,
          returnEnd: true,
          returnBegin: false,
          className: 'attribute'
        },
        {
          begin: /=/,
          end: /([\u2401\u0001])/,
          excludeEnd: true,
          excludeBegin: true,
          className: 'string'
        }]
    }],
    case_insensitive: true
  };
}

Update to fix bug on some browsers