返回 Skill 列表
extension
分类: 开发与工程无需 API Key

Check Inline Code Formatting

审查markdown文件中的内联代码,确保其格式正确并使用了语法高亮。检查CLI标志、文件名和代码元素是否缺少反引号。验证内联语法高亮(#!groovy)是否被恰当地使用。在审阅文档或测验问题时使用。

person作者: jakexiaohubgithub

Check Inline Code Formatting

Review inline code in markdown files for proper formatting and appropriate use of syntax highlighting.

What to Check

1. Missing Backticks

The following should always be wrapped in backticks:

CLI flags and options:

  • -resume, -profile, -params-file, --input, etc.

Filenames and paths:

  • nextflow.config, .command.sh, work/, modules/, etc.

Commands:

  • nextflow run, nextflow log, docker run, etc.

Code elements:

  • Variable names: params.input, outputDir
  • Process names: SAYHELLO
  • Operators and methods: collect(), map(), view()
  • Directives: container, publishDir, memory

2. Inline Syntax Highlighting

Use `#!groovy code` for Groovy/Nextflow code that benefits from syntax colouring.

DO use #!groovy for:

  • Variable interpolation: `#!groovy ${variable}`
  • Closures: `#!groovy { meta.id }` or `#!groovy .map { it * 2 }`
  • Method chains with closures: `#!groovy channel.of(1,2,3).map { it * 2 }`
  • String interpolation: `#!groovy "${greeting}-output.txt"`
  • Type declarations: `#!groovy param: String = 'value'`

DO NOT use #!groovy for:

  • Single words or identifiers: use `outputDir` not `#!groovy outputDir`
  • Simple directives: use `container 'uri'` not `#!groovy container 'uri'`
  • Plain dot notation: use `processName.out` not `#!groovy processName.out`
  • Keywords alone: use `include` not `#!groovy include`

The rule: Only use #!groovy when there's meaningful syntax structure (braces, interpolation, operators) that highlighting will visually enhance. A single word or simple expression gains nothing from syntax highlighting.

3. Consistency

  • Similar code references should be formatted the same way throughout a document
  • Quiz answer options should have consistent formatting

Examples

Good inline code formatting

Run the workflow with `nextflow run main.nf -resume`.

The `#!groovy ${greeting}` variable is interpolated into the string.

Set memory with `#!groovy process { withName: 'FOO' { memory = '4.GB' } }`.

The `container` directive specifies the Docker image.

Access outputs with `processName.out.outputName`.

Bad inline code formatting

<!-- Missing backticks -->

Run the workflow with nextflow run main.nf -resume.

<!-- Unnecessary #!groovy on single word -->

The `#!groovy container` directive specifies the image.

<!-- Missing #!groovy on closure -->

Transform with `.map { it.toUpperCase() }`.