filenameToLanguageId top-level constant

Map<String, VSCodeLanguageId> const filenameToLanguageId

Maps exact filenames (without extension) to VSCode Language IDs

Implementation

const Map<String, VSCodeLanguageId> filenameToLanguageId = {
  // Git files
  'gitignore': VSCodeLanguageId.ignore,
  '.gitignore': VSCodeLanguageId.ignore,
  'gitattributes': VSCodeLanguageId.ignore,
  '.gitattributes': VSCodeLanguageId.ignore,
  'git_commit_editmsg': VSCodeLanguageId.git_commit,
  'git_rebase_todo': VSCodeLanguageId.git_rebase,

  // Build and config files
  'dockerfile': VSCodeLanguageId.dockerfile,
  'docker-compose.yml': VSCodeLanguageId.dockercompose,
  'docker-compose.yaml': VSCodeLanguageId.dockercompose,
  'compose.yml': VSCodeLanguageId.dockercompose,
  'compose.yaml': VSCodeLanguageId.dockercompose,
  'makefile': VSCodeLanguageId.makefile,
  'gnumakefile': VSCodeLanguageId.makefile,
  'makefile.am': VSCodeLanguageId.makefile,
  'makefile.in': VSCodeLanguageId.makefile,
  '.editorconfig': VSCodeLanguageId.editorconfig,
  'jenkinsfile': VSCodeLanguageId.groovy,

  // Ruby files
  'vagrantfile': VSCodeLanguageId.ruby,
  'rakefile': VSCodeLanguageId.ruby,
  'gemfile': VSCodeLanguageId.ruby,
  'podfile': VSCodeLanguageId.ruby,
  'brewfile': VSCodeLanguageId.ruby,
  'fastfile': VSCodeLanguageId.ruby,
  'appfile': VSCodeLanguageId.ruby,
  'deliverfile': VSCodeLanguageId.ruby,
  'matchfile': VSCodeLanguageId.ruby,
  'scanfile': VSCodeLanguageId.ruby,
  'snapfile': VSCodeLanguageId.ruby,
  'gymfile': VSCodeLanguageId.ruby,

  // Shell config files
  '.bashrc': VSCodeLanguageId.shellscript,
  '.zshrc': VSCodeLanguageId.shellscript,
  '.bash_profile': VSCodeLanguageId.shellscript,
  '.zsh_profile': VSCodeLanguageId.shellscript,
  '.profile': VSCodeLanguageId.shellscript,
  '.bash_aliases': VSCodeLanguageId.shellscript,
  '.zsh_aliases': VSCodeLanguageId.shellscript,

  // Environment files
  '.env': VSCodeLanguageId.properties,
  '.env.local': VSCodeLanguageId.properties,
  '.env.development': VSCodeLanguageId.properties,
  '.env.production': VSCodeLanguageId.properties,
  '.env.test': VSCodeLanguageId.properties,

  // Documentation
  'readme': VSCodeLanguageId.markdown,
  'readme.txt': VSCodeLanguageId.markdown,
  'changelog': VSCodeLanguageId.markdown,
  'changelog.txt': VSCodeLanguageId.markdown,
  'license': VSCodeLanguageId.plaintext,
  'licence': VSCodeLanguageId.plaintext,
  'authors': VSCodeLanguageId.plaintext,
  'contributors': VSCodeLanguageId.plaintext,

  // SSH config
  'ssh_config': VSCodeLanguageId.ssh_config,
  'sshd_config': VSCodeLanguageId.ssh_config,
  '.ssh/config': VSCodeLanguageId.ssh_config,

  // Hosts file
  'hosts': VSCodeLanguageId.hosts,
};