hunk.code_window: const screenAspect = computed(() => width.value / height.value)
   const scale = computed(() => {
     if (screenAspect.value < slideAspect)
       return width.value / slideWidth
     return (height.value * slideAspect) / slideWidth
   })
   // In print mode, the routes will never change. So we don't need reactivity here.
   let routes = slides.value
   if (currentRoute.value.query.range) {
  
hunk.labels: keep keep keep keep replace replace replace keep keep keep keep keep
hunk.after_edit:   if (screenAspect.value < slideAspect.value)
       return width.value / slideWidth.value
     return (height.value * slideAspect.value) / slideWidth.value
  
hunk.file_path: packages/client/internals/PrintContainer.vue
hunk.type: replace
file: import type { Plugin } from 'vite'
  import { objectEntries } from '@antfu/utils'
  import type { ResolvedSlidevOptions } from '../options'
  import { getDefine } from './extendConfig'
  
  export function createFixPlugins(
    options: ResolvedSlidevOptions,
  ): Plugin[] {
    const define = objectEntries(getDefine(options))
    return [
      {
        name: 'slidev:flags',
        enforce: 'pre',
        transform(code, id) {
          if (id.match(/\.vue($|\?)/)) {
            const original = code
            define.forEach(([from, to]) => {
              code = code.replace(new RegExp(from, 'g'), to)
            })
            if (original !== code)
              return code
          }
        },
      },
    ]
  }
  