configs property

Map<ProjectType, LanguageConfig> configs
final

All predefined language configurations

Implementation

static final Map<ProjectType, LanguageConfig> configs = {
  ProjectType.dart: const LanguageConfig(
    type: ProjectType.dart,
    extensions: ['.dart'],
    commentStyleName: 'cStyle',
    defaultIgnorePatterns: [
      '*.g.dart',
      '*.freezed.dart',
      '*.gr.dart',
      '*.artifact.dart',
      '*/generated/*',
      '.dart_tool/*',
      'build/*',
    ],
    defaultSourceDirs: ['lib', 'bin', 'src'],
  ),
  ProjectType.python: const LanguageConfig(
    type: ProjectType.python,
    extensions: ['.py', '.pyw', '.pyi'],
    commentStyleName: 'pythonStyle',
    defaultIgnorePatterns: [
      '__pycache__/*',
      '*.pyc',
      '.venv/*',
      'venv/*',
      '.env/*',
      'env/*',
      '*.egg-info/*',
      'dist/*',
      'build/*',
      '.tox/*',
      '.pytest_cache/*',
    ],
    defaultSourceDirs: ['src', '.'],
  ),
  ProjectType.javascript: const LanguageConfig(
    type: ProjectType.javascript,
    extensions: ['.js', '.jsx', '.mjs', '.cjs'],
    commentStyleName: 'cStyle',
    defaultIgnorePatterns: [
      'node_modules/*',
      'dist/*',
      'build/*',
      '*.min.js',
      '*.bundle.js',
      'coverage/*',
      '.next/*',
      '.nuxt/*',
    ],
    defaultSourceDirs: ['src', 'lib', '.'],
  ),
  ProjectType.typescript: const LanguageConfig(
    type: ProjectType.typescript,
    extensions: ['.ts', '.tsx', '.mts', '.cts'],
    commentStyleName: 'cStyle',
    defaultIgnorePatterns: [
      'node_modules/*',
      'dist/*',
      'build/*',
      '*.d.ts',
      '*.js.map',
      'coverage/*',
      '.next/*',
      '.nuxt/*',
    ],
    defaultSourceDirs: ['src', 'lib', '.'],
  ),
  ProjectType.go: const LanguageConfig(
    type: ProjectType.go,
    extensions: ['.go'],
    commentStyleName: 'cStyle',
    defaultIgnorePatterns: [
      'vendor/*',
      '*_test.go',
      '*.pb.go',
      'bin/*',
    ],
    defaultSourceDirs: ['cmd', 'pkg', 'internal', '.'],
  ),
  ProjectType.rust: const LanguageConfig(
    type: ProjectType.rust,
    extensions: ['.rs'],
    commentStyleName: 'cStyle',
    defaultIgnorePatterns: [
      'target/*',
      '*.rlib',
    ],
    defaultSourceDirs: ['src'],
  ),
  ProjectType.java: const LanguageConfig(
    type: ProjectType.java,
    extensions: ['.java'],
    commentStyleName: 'cStyle',
    defaultIgnorePatterns: [
      'target/*',
      'build/*',
      '*.class',
      '.gradle/*',
      'out/*',
    ],
    defaultSourceDirs: ['src/main/java', 'src'],
  ),
  ProjectType.kotlin: const LanguageConfig(
    type: ProjectType.kotlin,
    extensions: ['.kt', '.kts'],
    commentStyleName: 'cStyle',
    defaultIgnorePatterns: [
      'target/*',
      'build/*',
      '*.class',
      '.gradle/*',
      'out/*',
    ],
    defaultSourceDirs: ['src/main/kotlin', 'src'],
  ),
  ProjectType.swift: const LanguageConfig(
    type: ProjectType.swift,
    extensions: ['.swift'],
    commentStyleName: 'cStyle',
    defaultIgnorePatterns: [
      '.build/*',
      'DerivedData/*',
      '*.xcodeproj/*',
      'Pods/*',
    ],
    defaultSourceDirs: ['Sources', 'src', '.'],
  ),
  ProjectType.cpp: const LanguageConfig(
    type: ProjectType.cpp,
    extensions: ['.c', '.cpp', '.cc', '.cxx', '.h', '.hpp', '.hxx'],
    commentStyleName: 'cStyle',
    defaultIgnorePatterns: [
      'build/*',
      'cmake-build-*/*',
      '*.o',
      '*.a',
      '*.so',
      '*.dylib',
      '*.exe',
    ],
    defaultSourceDirs: ['src', 'include', '.'],
  ),
  ProjectType.csharp: const LanguageConfig(
    type: ProjectType.csharp,
    extensions: ['.cs'],
    commentStyleName: 'cStyle',
    defaultIgnorePatterns: [
      'bin/*',
      'obj/*',
      '*.Designer.cs',
      '*.g.cs',
      'packages/*',
    ],
    defaultSourceDirs: ['src', '.'],
  ),
  ProjectType.ruby: const LanguageConfig(
    type: ProjectType.ruby,
    extensions: ['.rb', '.rake', '.gemspec'],
    commentStyleName: 'hashStyle',
    defaultIgnorePatterns: [
      'vendor/*',
      '.bundle/*',
      'coverage/*',
      'tmp/*',
      'log/*',
    ],
    defaultSourceDirs: ['lib', 'app', 'src', '.'],
  ),
  ProjectType.php: const LanguageConfig(
    type: ProjectType.php,
    extensions: ['.php', '.phtml'],
    commentStyleName: 'cStyle',
    defaultIgnorePatterns: [
      'vendor/*',
      'node_modules/*',
      'cache/*',
      'storage/*',
      'bootstrap/cache/*',
    ],
    defaultSourceDirs: ['src', 'app', 'lib', '.'],
  ),
  ProjectType.web: const LanguageConfig(
    type: ProjectType.web,
    extensions: ['.html', '.htm', '.css', '.scss', '.sass', '.less', '.js', '.vue', '.svelte'],
    commentStyleName: 'mixedWeb',
    defaultIgnorePatterns: [
      'node_modules/*',
      'dist/*',
      'build/*',
      '*.min.js',
      '*.min.css',
      'public/*',
    ],
    defaultSourceDirs: ['src', '.'],
  ),
  ProjectType.generic: const LanguageConfig(
    type: ProjectType.generic,
    extensions: [
      '.txt', '.md', '.json', '.yaml', '.yml', '.xml', '.toml',
      '.cfg', '.ini', '.conf', '.sh', '.bash', '.zsh', '.fish',
    ],
    commentStyleName: 'hashStyle',
    defaultIgnorePatterns: [
      '.git/*',
      '.svn/*',
      '.hg/*',
      'node_modules/*',
      '__pycache__/*',
      '.idea/*',
      '.vscode/*',
      '.DS_Store',
      'Thumbs.db',
    ],
    defaultSourceDirs: ['.'],
  ),
};