sandbox/npm/prettier-config
Yongmin Hong 9df5a0f602
CI(GitHub Actions): Make publish via pnpm work
Summary:
/shrugs

Signed-off-by: Yongmin Hong <revi@omglol.email>

Test Plan: land and push tag again

Reviewers: O1 revi & automations, revi

Reviewed By: O1 revi & automations, revi

Differential Revision: https://issuetracker.revi.xyz/D634
2024-08-01 19:08:32 +09:00
..
types npm(prettier-config): add xml, alphabetical sort 2024-06-30 16:56:39 +09:00
CHANGELOG.md npm: update (eslint|prettier)-config packages 2024-08-01 18:59:12 +09:00
package.json CI(GitHub Actions): Make publish via pnpm work 2024-08-01 19:08:32 +09:00
prettier.config.js npm(prettier-config): consolidate globs 2024-07-04 19:59:27 +09:00
README.md npm(prettier-config): consolidate globs 2024-07-04 19:59:27 +09:00

@revi/prettier-config

NPM Version GitHub License

This is @revi's personal prettier config.

Config

const config = {
  bracketSpacing: false,
  bracketSameLine: true,
  proseWrap: 'preserve',
  singleQuote: true,
  trailingComma: 'all',
  plugins: [
    // https://github.com/prettier/plugin-php
    '@prettier/plugin-php',
    // https://github.com/un-ts/prettier/tree/master/packages/sh
    'prettier-plugin-sh',
    // https://github.com/bd82/toml-tools/tree/master/packages/prettier-plugin-toml
    'prettier-plugin-toml',
    // https://github.com/prettier/plugin-xml
    '@prettier/plugin-xml',
  ],
  overrides: [
    // Sort by parser alphabet.
    {
      files: ['.arcconfig', '.arclint', '.arcunit', '.imgbotconfig'],
      options: {parser: 'json'},
    },
    {
      files: [
        '**/*.hujson',
        '.devcontainer.json',
        '.devcontainer/**/devcontainer.json',
        '.vscode/**/*.json',
        '**/jsconfig.json',
        '**/jsconfig.*.json',
        '**/tsconfig.json',
        '**/tsconfig.*.json',
      ],
      options: {parser: 'jsonc', trailingComma: 'none'},
    },
    {
      files: '*.php',
      options: {
        parser: 'php',
        phpVersion: '8.1',
        useTabs: true,
        tabWidth: 4,
        braceStyle: '1tbs',
      },
    },
    {
      files: [
        '.editorconfig',
        '.gitattributes',
        '.gitignore',
        '.prettierignore',
      ],
      options: {parser: 'sh', keepPadding: true, minify: false},
    },
    {
      files: ['*.svg', '*.xml'],
      options: {
        parser: 'xml',
        singleAttributePerLine: false,
        xmlQuoteAttributes: 'preserve',
        xmlSelfClosingSpace: true,
        xmlSortAttributesByKey: false,
        xmlWhitespaceSensitivity: 'strict',
      },
    },
    {
      files: '.yamllint',
      options: {parser: 'yaml'},
    },
  ],
};

export default config;