Skip to content

Quarto extension errors calling pandoc citeproc with file in iCloud storage or with ~ in directory name #924

@misea

Description

@misea

Bug description

When using the quarto extension in source mode in a directory with tilde characters embedded in the path name (i.e. a directory on the path has tildes in the name like Foo/tilde~in~name/bug/ ) autocomplete for bibliography fails and spews errors into the Output pane, because the file path is mangled on call to pandoc.

stderr: 'pandoc: /Users/yourname/Foo/tildeinname/bug/minibib.bib: withBinaryFile: does not exist (No such file or directory)\n'

Somehow the ~ is getting stripped from the path before you send a modified version of the file to pandoc. It wouldn't matter except that iCloud storage uses the convention

~/Library/iCloud~md~obsidian/

and I use Obsidian to sync dir with both .md and .qmd files in it.

Note that quarto render works fine

Steps to reproduce

Create a directory tree like this Foo/tilde~in~name/bug

Note that there's a directory in there with a tilde embedded in the name. In the bug directory create test.qmd with this content

---
bibliography: minibib.bib
---

Create the file minibib.bib with valid BibLaTex content like this

@book{durkheim1995,
  title = {The {{Elementary Forms}} of {{Religious Life}}},
  author = {Durkheim, Emile},
  date = {1995-06-01},
  origdate = {1912},
}

In test.qmd type

[@d

Actual behavior

Got error in output

pandoc: /Users/name/Foo/tildeinname/bug/minibib.bib: withBinaryFile: does not exist (No such file or directory)

    at genericNodeError (node:internal/errors:983:15)
    at wrappedFn (node:internal/errors:537:14)
    at checkExecSyncError (node:child_process:930:11)
    at Object.execFileSync (node:child_process:966:15)
    at Object.func (node:electron/js2c/node_init:2:2617)
    at M8 (/Users/name/.positron/extensions/quarto.quarto-1.130.0-universal/out/lsp/lsp.js:122:14901)
    at Object.runPandoc (/Users/name/.positron/extensions/quarto.quarto-1.130.0-universal/out/lsp/lsp.js:122:43358)
    at sqe (/Users/name/.positron/extensions/quarto.quarto-1.130.0-universal/out/lsp/lsp.js:348:16)
    at oqe (/Users/name/.positron/extensions/quarto.quarto-1.130.0-universal/out/lsp/lsp.js:347:1258)
    at B3e.i.bibliographies.length.i.bibliographies.reduce.cslRefs (/Users/name/.positron/extensions/quarto.quarto-1.130.0-universal/out/lsp/lsp.js:347:688) {
  status: 1,
  signal: null,
  output: [
    null,
    '',
    'pandoc: /Users/name/Foo/tildeinname/bug/minibib.bib: withBinaryFile: does not exist (No such file or directory)\n'
  ],
  pid: 3276,
  stdout: '',
  stderr: 'pandoc: /Users/name/Foo/tildeinname/bug/minibib.bib: withBinaryFile: does not exist (No such file or directory)\n'
}

Expected behavior

Autocomplete the reference name and no error

Your environment

Version: Positron 2026.02.1+5 (693b6d13ba5d61566bec7f5a4a46126eff7bbbe1, 2026-02-10T19:05:16.756Z)
Code - OSS version: VS Code 1.106.0
OS version: Darwin arm64 25.2.0
Modes:

System Info
Item Value
CPUs Apple M1 Pro (10 x 2400)
GPU Status 2d_canvas: enabled
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
multiple_raster_threads: enabled_on
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
skia_graphite: enabled_on
trees_in_viz: disabled_off
video_decode: enabled
video_encode: enabled
webgl: enabled
webgl2: enabled
webgpu: enabled
webnn: disabled_off
Load (avg) 9, 6, 6
Memory (System) 32.00GB (1.04GB free)
Process Argv
Screen Reader no
VM 0%
Extensions (17)
Extension Author (truncated) Version
ruff cha 2026.36.0
vscode-pull-request-github Git 0.120.2
todo-tree Gru 0.0.215
vscode-edit-csv jan 0.11.8
pyrefly met 0.53.0
debugpy ms- 2025.18.0
vscode-python-envs ms- 1.16.0
jupyter ms- 2025.9.1
jupyter-keymap ms- 1.1.2
vscode-jupyter-cell-tags ms- 0.1.9
vscode-jupyter-slideshow ms- 0.1.6
air-vscode Pos 0.20.0
publisher pos 1.31.8
shiny Pos 1.3.3
quarto qua 1.130.0
code-spell-checker str 4.5.6
open-in-external-app YuT 0.11.2

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingvscode

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions