title: Is there a way to tell VS Code that the firstLine match in my language extension should overrule any file extension?
body: <p>I am currently developing a language extension for VS Code. The language I am developing it for usually comes with either its own file extension (let's call it <code>.myext</code>) or simply <code>.txt</code> (it's just a scripting language).</p>
  
  <p>I have run into the issue that I am not sure how to tell VS Code to use my extension when the first line matches a specific string when opening <code>.txt</code> files.</p>
  
  <p>This is what I am trying (excerpt from my <code>package.json</code>):</p>
  
  <pre class="lang-json prettyprint-override"><code>"contributes": {
    "languages": [
      {
        "id": "mylang",
        "aliases": [
          "mylang"
        ],
        "extensions": [
          ".myext"
        ],
        "firstLine": "^MyLang.*",
        "configuration": "./language-configuration.json"
      }
    ]
  }
  </code></pre>
  
  <p>This does not work when I open a <code>.txt</code> file that starts with <code>MyLang</code>. It does however work if I open a file that has an unknown (e.g., <code>file.foobar1234</code>) or no extension at all.</p>
  
  <p>When I now change the configuration to include <code>.txt</code> files, it will activate my extension for <em>any</em> <code>.txt</code> file I open:</p>
  
  <pre class="lang-json prettyprint-override"><code>"contributes": {
    "languages": [
      {
        "id": "mylang",
        "aliases": [
          "mylang"
        ],
        "extensions": [
          ".myext",
          ".txt"
        ],
        "firstLine": "^MyLang.*",
        "configuration": "./language-configuration.json"
      }
    ]
  }
  </code></pre>
  
  <p>However, I do not want this, I want to keep the default <code>plain text</code> setting when opening normal <code>.txt</code> files.</p>
  
  <p>In short, what I want to achieve:</p>
  
  <ul>
  <li>have my extension activate on my custom file extension <code>.myext</code> (this already works without any issues)</li>
  <li>have my extension activate when opening <code>.txt</code> files that start with the string specified via <code>firstLine</code></li>
  <li>do not have my extension activate when opening <code>.txt</code> files that <em>do not</em> start with the string specified via <code>firstLine</code></li>
  </ul>
  
  <p>Is there a way to do this?</p>