GithubHelp home page GithubHelp logo

quarto-dev / quarto Goto Github PK

View Code? Open in Web Editor NEW
295.0 295.0 23.0 11.17 MB

Quarto open-source scientific and technical publishing system

Home Page: https://quarto.org

License: GNU Affero General Public License v3.0

JavaScript 11.81% HTML 0.35% TypeScript 85.04% CSS 2.33% SCSS 0.26% Lua 0.22% TeX 0.01%

quarto's People

Contributors

candemircan avatar cderv avatar cscheid avatar dragonstyle avatar edavidaja avatar jcheng5 avatar jjallaire avatar jooyoungseo avatar juliasilge avatar mcanouil avatar mine-cetinkaya-rundel avatar samrickman avatar seem avatar wuvist avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

quarto's Issues

[Feature request] MathLive for a WYSIWYG math editing experience

I'm wondering if Mathlive could be used to offer a WYSIWYG math editing experience for quarto documents.
quarto-vscode already offers the live preview panel which is great.

A WYSIWYG math editor like the excellent mathlive web component for math input could greatly increase the editing experience for quarto.

Alternatives like this one below exist for other apps (Emacs, Logseq)
https://github.com/casouri/quick-mathlive
https://github.com/hkgnp/darwis-mathlive-plugin

Don't know if the concept is easily transferable to quarto-vscode.

Thanks for considering this feature request :)

Python editing capabilities in .qmd code cells in VS-code

When editing python code cells in .qmd files in vs-code, I would expect to have the full editing capabilities of Python in VScode (go-to-definition, references, etc.). This is currently not the case.

I tried associating .qmd files with Python, but the I lose the Quarto editing assistance.

Inline plotting

Thanks for all the hard work on this plugin!

Feature request:

The ability to have inline plotting below each code block similar to the Jupyter notebook VSCode plugin.

This would enable a more similar preview to the rendered Quarto document, aiding with debugging and formatting.
Additionally this would greatly improve the organization of working in the document, especially with multiple languages, as currently each opens its own interactive side window for plots making it difficult to keep track of which code block matches which generated plot.

Auto-formatting of quarto file

Hello !

Quarto files are a type of markdown file but still are not detected as a markdown file by Vscode.
Thus it is impossible to use classic formatter to format quarto file.
The more annoying thing is to manually format table.

It is possible to add it to this extension ? Or make it possible to use quarto file with other extension which format markdown file ?

I tired to manually change the association of the file extension(.qmd) to markdown in the vscode settings but I am losing all the benefices of this extension.

Thanks a lot for your help

[Feature Request] Inline Rendering of Images

Quarto + VSCode starts to feel like a really good environment for data exploration and downstream programming and I slowly learn more and more about it (coming from RMarkdown/RStudio).

I miss the possibility to render images "inline" so they are right next to the code and also persist over various computing sessions. This helps me navigate longer documents. The functionality exists for RStudio/RMarkdown as well as for Jupyter.

Is this planned for Quarto/VSCode as well?

Quarto Render in Windows broken 1.55

I took Quarto for a spin in WSL today, because I'm having trouble with the CI builds in Ubuntu with GitHub actions (the generated PDF is corrupt, but there is no error in the build -- on windows it is OK -- just explaining why I was trying WSL on my project).

So, I re-opened my project in WSL in VSCode, and installed the Quarto extension 1.55 in WSL and maybe a Lua extension, too, since it was recommended. It complained about some WSL: Ubuntu extension missing, so I also installed that manually.

When I re-opened VSCode in Windows, the render button is broken:

image

The error makes no sense, since obviously I clicked the button on the top menu of the .qmd file.

The command line works fine.

I removed the extension from WSL, thinking it was a conflict, but the same (open) file wouldn't again render in Windows when I re-opened it in WSL.

I switched to another .qmd file, and the rendering started working again. It's an odd bug, perhaps related to VSCode and file types, but I'm leaving the info here in case there is some conflict between WSL and Windows versions of the extension.

Markdown Table multicolumn header removed when switching to visual editor from source

Bug description

When switching between visual editor and source editor the formatting of markdown tables gets changed. Particularly when there is a multicolumn header it is removed and a | is placed in make the columns not multicolumn.

In source mode:

---
title: "Try turning on Visual"
format: html
---

+------------------------------------+--------------------------------------------+--------------+
|                                    | Decision (Conclusion from hypothesis test)                |
+====================================+============================================+==============+
| True Population                    | Reject $H_o$                               | Accept $H_o$ |
+------------------------------------+--------------------------------------------+--------------+
| Means are equal ($H_o$ is true)    | $\alpha$                                   | 1 - $\alpha$ |
+------------------------------------+--------------------------------------------+--------------+
| Means are unequal ($H_o$ is false) | 1 - $\beta$                                | $\beta$      |
+------------------------------------+--------------------------------------------+--------------+

After switching to visual mode and back

---
title: "Try turning on Visual"
format: html
---

|                                    | Decision (Conclusion from hypothesis test) |              |
|-------------------------|-------------------------------|----------------|
| True Population                    | Reject $H_o$                               | Accept $H_o$ |
| Means are equal ($H_o$ is true)    | $\alpha$                                   | 1 - $\alpha$ |
| Means are unequal ($H_o$ is false) | 1 - $\beta$                                | $\beta$      |


Rstudio version: "Spotted Wakerobin" Release (7872775e, 2022-07-22) for Windows

Checklist

  • Please include a minimal, fully reproducible example in a single .qmd file? Please provide the whole file rather than the snippet you believe is causing the issue.
  • Please format your issue so it is easier for us to read the bug report.
  • Please document the RStudio IDE version you're running (if applicable), by providing the value displayed in the "About RStudio" main menu dialog?
  • Please document the operating system you're running. If on Linux, please provide the specific distribution.

Format code cell based on lang id

Possibly related to #22. Currently, format code (Alt+Shift+F) does not work. Is it possible for Quarto to flexibly use different formatters depending on the code cell lang id (e.g., r; python) where the formatting code is executed?

Visual Debugger Support

QMD files currently don't have visual debugging support in the way Python scripts and Jupyter notebooks do. Without this feature, it's still much easier in VSCode to develop analyses using those other options.

In Interactive mode for Python scripts, You can click in the margin to the left of line numbers to set breakpoints. Then you can use Debug Cell to start a debugging session for that code cell. The debugger stops execution at breakpoints and allows you to step through code one line at a time and inspect variables (see Debugging for details.

The closest thing to this that I seem able to achieve is to add the line import pdb; pdb.set_trace() where I want to debug. This triggers a breakpoint where I can interrupt code flow to input commands, but I don't get to benefit from key affordances in VSCode's debugging UI.

sql code cells feature

Hello,
I am trying to reproduce some of my reports and one feature I fail to spot is the ability to create SQL code cells like in RMarkdown.
I thought that if quarto used knitr to produce views (and knitr supports creation of sql cells), then sql chunk would be an option, yet I struggle to recreate this kind of behavior. Is there a possibility to create sql scripts in this fashion?

{sql}
#| connection = con
SELECT 1 FROM test

Thanks!

New version of VS Code breaks Run Cell button for jupyter qmd

Hi!
I've recently updated VS Code to 1.73.0. Since then, when I click on "Run Cell" on a python code chunk in a qmd file (jupyter: python3 engine), the interactive python kernel (running the correct kernel for the project) opens, but the code does not get transferred to it. So, I have to manually copy the code from the code chunk into the repl.

Here are the details of my VS Code installation:
Version: 1.73.0 (user setup)
Commit: 8fa188b2b301d36553cbc9ce1b0a146ccb93351f
Date: 2022-11-01T15:34:06.111Z
Electron: 19.0.17
Chromium: 102.0.5005.167
Node.js: 16.14.2
V8: 10.2.154.15-electron.0
OS: Windows_NT x64 10.0.19044
Sandboxed: No

I am using conda environments, the kernel is py 3.10.4 and here's my conda list:

Name Version Build Channel
anyio 3.5.0 py310haa95532_0
argon2-cffi 21.3.0 pyhd3eb1b0_0
argon2-cffi-bindings 21.2.0 py310h2bbff1b_0
asttokens 2.0.5 pyhd3eb1b0_0
attrs 21.4.0 pyhd3eb1b0_0
babel 2.9.1 pyhd3eb1b0_0
backcall 0.2.0 pyhd3eb1b0_0
beautifulsoup4 4.11.1 py310haa95532_0
bleach 4.1.0 pyhd3eb1b0_0
brotlipy 0.7.0 py310h2bbff1b_1002
bzip2 1.0.8 he774522_0
ca-certificates 2022.07.19 haa95532_0
certifi 2022.9.24 py310haa95532_0
cffi 1.15.1 py310h2bbff1b_0
charset-normalizer 2.0.4 pyhd3eb1b0_0
colorama 0.4.5 py310haa95532_0
contourpy 1.0.5 pypi_0 pypi
cryptography 37.0.1 py310h21b164f_0
cx-oracle 8.3.0 pypi_0 pypi
cycler 0.11.0 pypi_0 pypi
debugpy 1.5.1 py310hd77b12b_0
decorator 5.1.1 pyhd3eb1b0_0
defusedxml 0.7.1 pyhd3eb1b0_0
entrypoints 0.4 py310haa95532_0
et_xmlfile 1.1.0 py310haa95532_0
executing 0.8.3 pyhd3eb1b0_0
fonttools 4.37.4 pypi_0 pypi
glib 2.69.1 h5dc1a3c_1
greenlet 1.1.3 pypi_0 pypi
gst-plugins-base 1.18.5 h9e645db_0
gstreamer 1.18.5 hd78058f_0
icu 58.2 ha925a31_3
idna 3.3 pyhd3eb1b0_0
ipykernel 6.15.2 py310haa95532_0
ipython 8.4.0 py310haa95532_0
ipython_genutils 0.2.0 pyhd3eb1b0_1
ipywidgets 7.6.5 pyhd3eb1b0_1
jedi 0.18.1 py310haa95532_1
jinja2 3.0.3 pyhd3eb1b0_0
jpeg 9e h2bbff1b_0
json5 0.9.6 pyhd3eb1b0_0
jsonschema 4.4.0 py310haa95532_0
jupyter 1.0.0 py310haa95532_8
jupyter_client 7.3.5 py310haa95532_0
jupyter_console 6.4.3 pyhd3eb1b0_0
jupyter_core 4.10.0 py310haa95532_0
jupyter_server 1.18.1 py310haa95532_0
jupyterlab 3.4.4 py310haa95532_0
jupyterlab_pygments 0.1.2 py_0
jupyterlab_server 2.12.0 py310haa95532_0
jupyterlab_widgets 1.0.0 pyhd3eb1b0_1
kiwisolver 1.4.4 pypi_0 pypi
libclang 12.0.0 default_h627e005_2
libffi 3.4.2 hd77b12b_4
libiconv 1.16 h2bbff1b_2
libogg 1.3.5 h2bbff1b_1
libpng 1.6.37 h2a8f88b_0
libsodium 1.0.18 h62dcd97_0
libvorbis 1.3.7 he774522_0
libwebp 1.2.2 h2bbff1b_0
libxml2 2.9.14 h0ad7f3c_0
libxslt 1.1.35 h2bbff1b_0
lz4-c 1.9.3 h2bbff1b_1
markupsafe 2.1.1 py310h2bbff1b_0
matplotlib 3.6.1 pypi_0 pypi
matplotlib-inline 0.1.6 py310haa95532_0
mistune 0.8.4 py310h2bbff1b_1000
nbclassic 0.3.5 pyhd3eb1b0_0
nbclient 0.5.13 py310haa95532_0
nbconvert 6.4.4 py310haa95532_0
nbformat 5.3.0 py310haa95532_0
nest-asyncio 1.5.5 py310haa95532_0
notebook 6.4.12 py310haa95532_0
numpy 1.23.3 pypi_0 pypi
openpyxl 3.0.10 py310h2bbff1b_0
openssl 1.1.1q h2bbff1b_0
packaging 21.3 pyhd3eb1b0_0
pandas 1.5.0 pypi_0 pypi
pandocfilters 1.5.0 pyhd3eb1b0_0
parso 0.8.3 pyhd3eb1b0_0
pcre 8.45 hd77b12b_0
pickleshare 0.7.5 pyhd3eb1b0_1003
pillow 9.2.0 pypi_0 pypi
pip 22.1.2 py310haa95532_0
ply 3.11 py310haa95532_0
prometheus_client 0.14.1 py310haa95532_0
prompt-toolkit 3.0.20 pyhd3eb1b0_0
prompt_toolkit 3.0.20 hd3eb1b0_0
psutil 5.9.0 py310h2bbff1b_0
pure_eval 0.2.2 pyhd3eb1b0_0
pycparser 2.21 pyhd3eb1b0_0
pygments 2.11.2 pyhd3eb1b0_0
pyopenssl 22.0.0 pyhd3eb1b0_0
pyparsing 3.0.9 py310haa95532_0
pyqt 5.15.7 py310hd77b12b_0
pyqt5-sip 12.11.0 py310hd77b12b_0
pyrsistent 0.18.0 py310h2bbff1b_0
pysocks 1.7.1 py310haa95532_0
python 3.10.4 hbb2ffb3_0
python-dateutil 2.8.2 pyhd3eb1b0_0
python-fastjsonschema 2.16.2 py310haa95532_0
pytz 2022.1 py310haa95532_0
pywin32 302 py310h2bbff1b_2
pywinpty 2.0.2 py310h5da7b33_0
pyyaml 6.0 pypi_0 pypi
pyzmq 23.2.0 py310hd77b12b_0
qt-main 5.15.2 he8e5bd7_7
qt-webengine 5.15.9 hb9a9bb5_4
qtconsole 5.3.2 py310haa95532_0
qtpy 2.2.0 py310haa95532_0
qtwebkit 5.212 h3ad3cdb_4
requests 2.28.1 py310haa95532_0
send2trash 1.8.0 pyhd3eb1b0_1
setuptools 63.4.1 py310haa95532_0
sip 6.6.2 py310hd77b12b_0
siuba 0.3.0 pypi_0 pypi
six 1.16.0 pyhd3eb1b0_1
sniffio 1.2.0 py310haa95532_1
soupsieve 2.3.1 pyhd3eb1b0_0
sqlalchemy 1.4.41 pypi_0 pypi
sqlite 3.39.2 h2bbff1b_0
stack_data 0.2.0 pyhd3eb1b0_0
terminado 0.13.1 py310haa95532_0
testpath 0.6.0 py310haa95532_0
tk 8.6.12 h2bbff1b_0
toml 0.10.2 pyhd3eb1b0_0
tornado 6.2 py310h2bbff1b_0
traitlets 5.1.1 pyhd3eb1b0_0
typing-extensions 4.3.0 py310haa95532_0
typing_extensions 4.3.0 py310haa95532_0
tzdata 2022c h04d1e81_0
urllib3 1.26.11 py310haa95532_0
vc 14.2 h21ff451_1
vs2015_runtime 14.27.29016 h5e58377_2
wcwidth 0.2.5 pyhd3eb1b0_0
webencodings 0.5.1 py310haa95532_1
websocket-client 0.58.0 py310haa95532_4
wheel 0.37.1 pyhd3eb1b0_0
widgetsnbextension 3.5.2 py310haa95532_0
win_inet_pton 1.1.0 py310haa95532_0
wincertstore 0.2 py310haa95532_2
winpty 0.4.3 4
xz 5.2.5 h8cc25b3_1
zeromq 4.3.4 hd77b12b_0
zlib 1.2.12 h8cc25b3_3
zstd 1.5.2 h19a0ad4_0

[Feature request] Insert new chunk button for qmd files

RStudio has an option to insert new code chunk from the upper bar, jupyter notebook also have it.
Would be great to have this option in similar option in VSC when editing qmd files.

I see two potential solutions:

  1. Additional button above the existing single chunk menu (run cell, run next cell), in a similar way this is solved in the jupyter notebook
  2. Add a button to add a new chunk along the render button, then the chunk will be inserted in a place of cursor . Default language might be inferred on the basis of the current file, there might also more options along the default one like in the Render menu

Make wrapping lines with Alt-Q work

If I change the language mode to plain text or markdown, hard-wrapping lines with Alt-Q (which uses the rewrap extension) works but not in Quarto mode (also not in Rmarkdown mode). When I write in plain markdown or LaTeX I usually do this for readability.

I also tried to configure rewrap but without success. Is there a reason why this does not work out of the box?

System Info:

  • Quarto 1.2.242
  • VSCode Version: 1.72.2 (user setup)
    Commit: d045a5eda657f4d7b676dedbfa7aab8207f8a075
    Date: 2022-10-12T22:15:18.074Z
    Electron: 19.0.17
    Chromium: 102.0.5005.167
    Node.js: 16.14.2
    V8: 10.2.154.15-electron.0
    OS: Windows_NT x64 10.0.19044
    Sandboxed: No

Quarto Help does not fix for a function for R, but changes for every parameter.

It would be helpful if the contextual help could be fixed for a function. At the moment, when the cursor is moved into parentheses, it then turns to provide a summary information for that function.

image

Also, when I type such as data in the function, it then changes to the following, which is the information for the first highlight of autocomplete

image

image

Also, only after after typing data=, and remove =, will it show parameter help.

data=

image

remove=
image

VScode preview not available?

I was able to render the Hello, Quarto tutorial, and I find the rendering in my working directory (I even can open it) but I don't see any preview in VSCode? The extension settings are set as default internal preview and reveal the panel preview but I don't see any panel and don't know how to open it.

Here's my terminal:

PS C:\Programming\R\R Programming A-Z> quarto preview "c:/Programming/R/R Programming A-Z/hello.qmd" --no-browser --no-watch-inputs

Starting python3 kernel...Done

Executing 'hello.ipynb'
Cell 1/1...Done

pandoc
to: html
output-file: hello.html
standalone: true
section-divs: true
html-math-method: mathjax
wrap: none
default-image-extension: png

metadata
document-css: false
link-citations: true
date-format: long
lang: en
title: Quarto Basics
jupyter: python3

Output created: hello.html

Watching files for changes

VSCode: Sync Outline with Cursor Position

We can already use the Outline to navigate the headings of my source files.

It would be convenient, if the outline highlight would follow the position of my cursor in the document. This would make it easier to not get lost in the structure of a long document.

No module named 'nbformat' when following macOS VS Code installation instructions

Bug description

I started at https://quarto.org/docs/get-started/ and used the macOS installer to install Quarto. quarto --help confirmed that this had worked.

Then I installed the VS Code extension from https://marketplace.visualstudio.com/items?itemName=quarto.quarto

Everything seemed to work, until I clicked "Render" in VS Code and got this error:

No module named 'nbformat'

I have many different versions of Python 3 installed on my machine. It was not at all obvious to me which one Quarto was using. After some investigation (described here) I figured out it was using this one:

/Applications/Xcode.app/Contents/Developer/usr/bin/python3

So I ran this command to fix my problem:

/Applications/Xcode.app/Contents/Developer/usr/bin/python3 -m pip install nbformat nbclient

After doing that the Render button worked.

Interestingly, the output of quarto check shows /Library/Frameworks/Python.framework/Versions/3.10/bin/python3 as the version of Python - but executing sys.executable in a cell in VS Code showed /Applications/Xcode.app/Contents/Developer/usr/bin/python3 instead. So there's a mismatch between Python versions here.

My operating system is macOS 12.2.1 and I'm running VS Code 1.70.2.

quarto check Output

[✓] Checking Quarto installation......OK
      Version: 1.0.38
      Path: /Applications/quarto/bin

[✓] Checking basic markdown render....OK

[✓] Checking Python 3 installation....OK
      Version: 3.10.2
      Path: /Library/Frameworks/Python.framework/Versions/3.10/bin/python3
      Jupyter: 4.11.1
      Kernels: python3

(-) Checking Jupyter engine render....Traceback (most recent call last):
  File "/Applications/quarto/share/jupyter/jupyter.py", line 21, in <module>
    from notebook import notebook_execute, RestartKernel
  File "/Applications/quarto/share/jupyter/notebook.py", line 17, in <module>
    from nbclient import NotebookClient
ModuleNotFoundError: No module named 'nbclient'
There is an unactivated Python environment in jupyter-venv. Did you forget to activate it?

[✓] Checking Jupyter engine render....OK

quarto tools check Output

~ % quarto tools check
[✓] Inspecting tools

Tool         Status            Installed     Latest  
chromium     Not installed     ---           869685  
tinytex      Up to date        v2022.08      v2022.08

Checklist

  • formatted your issue so it is easier for us to read?
  • included a minimal, fully reproducible example in a single .qmd file? Please provide the whole file rather than the snippet you believe is causing the issue.
  • documented the quarto version you're running, by pasting the output from running quarto check in the "Quarto Check Output" text area?
  • documented the version of the quarto tools you're running, by providing the output from running quarto tools check in the "Quarto Tools Check Output" text area?
  • documented the RStudio IDE version you're running (if applicable), by providing the value displayed in the "About RStudio" main menu dialog?
  • documented which operating system you're running? If on Linux, please provide the specific distribution as well.
  • upgraded to the latest version, including your versions of R, the RStudio IDE, and relevant R packages?

render targets in _quarto.yml not used

Hi,

I wrote an extension and I'am using it with a special format notion in the _quarto.yml file:

project:
  type: book
  # output-dir: rendered_docs

lang: de-DE

book:
  title: "Title"
  author: "Author"
  date-format: DD.MM.YYYY
  chapters:
    - index.qmd
    - content/Chapter_01.qmd
    - content/References.qmd
  appendices: 
    - content/Appendix_01.qmd

bibliography: resources/literature/references.bib

format:
  extension-html: default
  extension-docx: default
  extension-pdf: default

editor: 
  render-on-save: true

When I either save one of the chapter documents or use the render shortcuts

Bildschirmfoto 2022-11-04 um 10 09 57

the definition in the _quarto.yml isn't used but the default --to docx,html,pdf targets.

Is this by design?
Can I configure quarto-vscode to use by default the targets in the _quarto.yml file?

Thanks,
Maarten

Not all R code chunk options are showed in autocomplete.

I am using Quarto extension v1.52.0 on VScode 1.72.2 on Windows 10.

In an R code chunk, not all chunk options are showed up in autocomplete, such as fig-width, fig-height or fig-dpi. However, they do in RStudio.

Those are the only options appear.

image

Conflict with other open ipyn notebooks

Steps to reproduce the problem:

  1. Open a qmd file on a newly opened VS Code instance and render the document.
  2. Open a new VS Code instance (not a new window, but a new instance).
  3. Open a ipyn notebook and edit it.
  4. When clicking on save button of the ipyn notebook, VS Code will render the ipyn notebook.

Thanks in advance!

[Feature request] More pronouced info about wrong placement of ticks

When I was executing python code I had in one chunk a ticks moved by one space

My wrong code

 ```{python}
#| label: chunkA

x = 2
```
```{python}
#| label: chunkB
print(x)
```

giving the output

Executing 'test.ipynb'
  Cell 1/1...ERROR: 

An error occurred while executing the following cell:
------------------
print(x)
------------------

---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
Cell In [1], line 1
----> 1 print(x)

NameError: name 'x' is not defined
NameError: name 'x' is not defined

The code should be written

```{python}
x = 2
```
```{python}
print(x)
```

In the first case the variable x is unavailable int the s B chunk when rendering.
Would be great if there would some better mechanism informing the about the the wrong placement of ticks in the first case or the first case ticks shouldn't render as a proper chunk

Snippets Support

Currently, editor.action.triggerSuggest does not suggest user snippets, neither global snippets from global.code-snippets nor language-specific snippets fromquarto.json.

It would be awesome to support context-aware snippets such that existing snippets from python.json can be used in Python code chunks, snippets from r.json in R code chunks, and Markdown snippets outside of code chunks to avoid snippets duplication across multiple files.

cell error when trying to run multiple cell at once (run above/below) in the interactive's python sessione for qmd files (it's fine when rendering with quarto)

Hello,

When I get back to a qmd files with a bunch of python cell in a qmd files and I try to run all cell at once I get a bunch of errors, mostly due to the interactive session not being able to find variables in the namespace. It seems like at some point a cell tries to run before the previous one are returned, therefore not being able to find variables defined above. It will run correctly if each celle is run one by one.

This issue is present only for the interactive session. When I properly render the document with quarto, ti will render correctly.

I've converted the qmd file to ipynb to see if it was an issue with vscode itself not being able to keepup with the cell, but it will run smoothly as an ipynb file.

I think the issue is with the execution time of the cell: some take quite few seconds to return if they are doing intensive task like from sympy import * or working with largish pandas dataframe.

Quick Suggestions appearing in SQL and Python cells regardless of settings

Extension version: 1.57.0
VSCode Version: 1.74.1
MacOS Version: 13.0.1 (M1 chip)

I have quick suggestions turned off for everything - trimmed down settings.json file (these entries are identical for user and workspace) here:

{
"editor.quickSuggestions": {
    "comments": false,
    "strings": false,
    "other": false
  },
"[quarto]": {
    "editor.quickSuggestions": {
      "other": false,
      "comments": false,
      "strings": false
    },
 "[sql]": {
    "editor.quickSuggestions": {
      "comments": false,
      "strings": false,
      "other": false
    }
  },
"[python]": {
    "editor.quickSuggestions": {
      "other": false,
      "strings": false,
      "comments": false
    }
  },
  "[r]": {
    "editor.quickSuggestions": {
      "other": false,
      "comments": false,
      "strings": false
    }
}

But I still see quick suggestions in Python cells and SQL cells. This doesn't happen with normal markdown documents, Python files, or SQL files. It doesn't happen in the Quarto main document or the R cells, just Python and SQL.

Let me know if there's additional info I can provide.

Using Quarto Render in VS Code WSL-Ubuntu

When I try to use the render in vs code (in wsl ubuntu mode) quarto always starts a new terminal, asks for the ubuntu password and terminates.

If I call quarto render in the command line of vs code everything works perfectly (pandoc and tinytext are installed).

Thank you

Two-way sync?

VS Code supports two-way sync for Markdown documents. That is, if you scroll in the source the preview will sync to the corresponding locations and vice versa. This would be a really useful feature for the Quarto Preview too – is this planned by any chance?

Integration with code spell checker

For writing, spell checker is a quite useful tool. But Quarto extension in vscode is not integrated with a spell checker.
In #1218 , one has proposed a solution to use code spell checker extension, which eases the problem to some extent but still has some unsatisfactory points. For example, if one specifies .qmd with quarto spell checker, it will check all the contents of .qmd file. But in most cases, one only needs to check markdown cells, which contain contents for publishing.
So it will be good that quarto extension itself can support markdown cell spell checking.

Auto formatting code blocks?

Thank you so much for working on this extension.
I was impressed to see how quickly you implemented the auto-completion of options and the ability to run code blocks.

One thing I think is missing is the ability to auto-format code blocks.
I don't know if the auto-formatting feature is feasible since this extension appears to make LSP work by copying the code in the code block to another script file, but it would be great if it could be done. (As far as R is concerned, we can auto-format by temporarily changing the file type to RMarkdown.)

Multi-line Julia Code

When working in VSCode, multi-line code runs if you run the whole cell, but if the code is split over multiple lines and you use the CMD + Enter / Ctrl + Enter to run a single-line, it only attempts to run the one line and breaks.

With the chunk below, hitting Ctrl+Enter on the first line:

randn(
    10
)

Results in this error:

julia> randn(
ERROR: syntax: incomplete: premature end of input
Stacktrace:
 [1] top-level scope
   @ code:1

Multi-line but not whole-chunk execution would be very handy. Thanks for the great plugin so far though!

eval:false without preceding space wrongly (?) rendered

This is a follow-up to issue quarto-dev/quarto-vscode#89 (as suggested here)

If you render the script below, the second chunk will be evaluated, despite being eval:false. The reason is the missing space between | and eval.

Interestingly, though, if I simply trigger the chunk by the subsequent "Run above", it is not triggered (as intended and corrected by the recent change).

So, in one instance the space makes a difference, in the other not. Not a big deal if you know it, but it can be quite annoying if you don't know it...


title: Test
format: html

#| include: false
library(tidyverse)
#|eval: false
1 + 1
#| eval: false
2 + 2
3 + 3

Quarto render command launches before conda activate in terminal

When I click the Render button with a conda environment it launches a terminal then:

> C:/ProgramData/mambaforge/Scripts/activate

(base)> quarto preview "path/to/file.qmd" --no-browser --no-watch-inputs

So my conda env doesn't get selected. When I stop the command with ctrl+C:

> C:/ProgramData/mambaforge/Scripts/activate

(base)> quarto preview "path/to/file.qmd" --no-browser --no-watch-inputs

^C

(base)> conda activate MyEnv

So it wants to launch the correct conda environment but for some reason launches the quarto command before the conda activate command

System info:
Windows 10
Quarto cli: 1.2.269
Quarto VSCode: v1.54.0
VSCode: 1.73.0

params not loaded in global environment in vscode

👋 Thank you so much for quarto. Continues to be a joy to use in both the RStudio IDE and vscode. I just wanted to report a minor pain point.

Using the vscode quarto version of 1.55.0, I am not able to access params interactively in vscode while I am in RStudio. Here is the quarto code that can reproduce the problem:

---
title: "problem params"
format: html
params:
  my_cool_param: 42
---


```{r}
params$my_cool_param
```

In the RStudio IDE I can click Run Current Chunk and params is automatically loaded into my environment. In vscode, that is not the case. This is very handy for interactive work.

Code chunks in fenced divs within VS Code's don't have a run cell button

Bug description

Code chunks within a .column fenced div do not allow for interactive use.

Quarto v1.2.269
VS Code v1.73.1
Quarto Ext v1.56.0
Mac + Python 3.10.6

Reprex Code - doesn't really matter though, even 1+1 works
---
title: "No Run code button in VS Code"
format: html
---

## Quarto, unified syntax

This syntax also applies across code-chunks

:::: {.columns}

::: {.column width="40%" .fragment}

```markdown
::: {layout-ncol=2}
![](image1.png)

![](image2.png)
:::
```

:::

::: {.column width="60%" .fragment}

```{python}
#| echo: fenced
#| eval: true
#| layout-ncol: 2

from plotnine import ggplot, geom_point, geom_boxplot, aes, stat_smooth, facet_wrap, theme
from plotnine.data import mtcars

# plot 1 in column 1
plot1 = (ggplot(mtcars, aes('wt', 'mpg', color='factor(gear)'))
   + geom_point() + stat_smooth(method='lm')
   + facet_wrap('~gear')).draw(show=True)

# plot 2 in column 2
plot2 = (ggplot(mtcars, aes('cyl', 'mpg', color='factor(cyl)'))
+ geom_boxplot()
 ).draw(show=True)
```

:::

::::

image

Checklist

  • Please include a minimal, fully reproducible example in a single .qmd file? Please provide the whole file rather than the snippet you believe is causing the issue.
  • Please format your issue so it is easier for us to read the bug report.
  • Please document the RStudio IDE version you're running (if applicable), by providing the value displayed in the "About RStudio" main menu dialog?
  • Please document the operating system you're running. If on Linux, please provide the specific distribution.

Add option to disable/hide Quarto panel

I don't really need the Quarto panel, which always appears in the lower panel (even when no Quarto document is open). It would be great if (1) the panel is shown only when Quarto files are open and/or (2) there was an option to disable/hide the panel completely.

editor should support document structure for pandoc specific Markdown requirements

I stumble now and then over Pandoc specific Markdown requirements (#3208) refering to https://pandoc.org/MANUAL.html#extension-blank_before_header and wonder whether these could be integrated in the editor.

For example, I templated my document structure with headings and chapters in different files organized into _quarto.yml and in my appendix.qmd I had:

# Appendix
## Appendix 1

which leads to # Appendix## Appendix 1 as text.
Doing:

# Appendix

## Appendix 1

works...

A warning or notice from the editor would be really helpful...

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.