Giter VIP home page Giter VIP logo

quarto-nvim-kickstarter's Introduction

Quarto Nvim Kickstarter

Companion to https://github.com/quarto-dev/quarto-nvim.

This requires Neovim >= v0.9.5 (https://github.com/neovim/neovim/releases/tag/stable)

Videos

Check out this playlist for a full guide and walkthrough: https://youtube.com/playlist?list=PLabWm-zCaD1axcMGvf7wFxJz8FZmyHSJ7

Setup

Clone this repo into ~/.config/nvim/ or copy-paste just the parts you like.

If you already have your own configuration, check out lua/plugins/quarto.lua for the configuration of plugins directly relevant to your Quarto experience. The comments in this file will also point to to other plugins required for the full functionality.

This configuration can make use of a "Nerd Font" for icons and symbols. Download one here: https://www.nerdfonts.com/ and set it as your terminal font.

Unix, Linux Installation

git clone https://github.com/jmbuhr/quarto-nvim-kickstarter.git ~/.config/nvim

For displaying images in your terminal a recent version of kitty or wezterm is required as well as the dependecies of image.nvim (see ./lua/plugins/ui.lua). Additionally, if you plan to use this through tmux make sure to have version >= 3.3a.

If you are unable to install those in your enviroment, disable the plugin by setting enabled = false.

Example dependencies install on ubuntu-based systems:

sudo apt install imagemagick
sudo apt install libmagickwand-dev
sudo apt install liblua5.1-0-dev
sudo apt install luajit
sudo apt install tree-sitter-cli

Manually installing luarocks and the magick rock is no longer required, this is handled by luarocks.nvim.

[!NOTE] Do this before opening nvim, otherwise luarocks.nvim might pick up the wrong luarocks version. If you forgot this step, you can do :Lazy build luarocks.nvim again manually after installation to fix it.

Windows Powershell Installation

git clone https://github.com/jmbuhr/quarto-nvim-kickstarter.git "$env:LOCALAPPDATA\nvim"

The telescope file finder uses fzf for fuzzy finding via the telescope-fzf-native extension. It will automatically install fzf, but needs some requirements which are not pre-installed on Windows. Check out the previous link for those (or comment out the extension in ./lua/plugins/ui.lua).

Now you are good to go!

Updating

Certain updates to plugins may leave behind unused plugin data. If this configuration produces an error on startup, try removing those first, allowing the lazy.nvim package manager to recreate the correct plugin structure:

rm -r ~/.local/share/nvim
rm -r ~/.local/state/nvim

Screenshots

image image

Use the integrated neovim terminal to execute code chunks:

image

quarto-nvim-kickstarter's People

Contributors

alexis12119 avatar aman9das avatar github-actions[bot] avatar h-mateus avatar jmbuhr avatar jonathanvoelkle avatar l4lolx3 avatar marsiwiec avatar nichtich 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-nvim-kickstarter's Issues

Failed to run `config` for nvim-lspconfig

I got the following error message after installing the quarto-nvim-kickstarter:

Failed to run `config` for nvim-lspconfig

C:/Users/[USER]/AppData/Local/nvim/lua/plugins/quarto.lua:303: attempt to concatenate local 'resource_path' (a nil value)

# stacktrace:
  - lua/plugins/quarto.lua:303 _in_ **config**
  - quarto-nvim\lua\quarto\init.lua:3
  - quarto-nvim\plugin\quarto.lua:16
  - vim\_editor.lua:341 _in_ **cmd**
  - lua/config/lazy.lua:17
  - init.lua:2

I'm using:
Windows 11
PowerShell
Neovim: v0.10.0-dev-400+ge41b2e34b

error with langagueserver / installation

hi --

sorry for the back and forth on the issues -- I've tried everything including clean purging and clean installs of nvim.

I can mostly get the quarto to work however it appears few of the language servers are working.

Below are error messages that I cant when I try to start up nvim

Upon startup of nvim

Error detected while processing /home/hagan/.config/nvim/init.lua:
[Copilot] copilot_node_command(node) is not executable
[mason-lspconfig.nvim] installing cssls
[mason-lspconfig.nvim] installing html
[mason-lspconfig.nvim] installing emmet_language_server
[mason-lspconfig.nvim] installing yamlls
[mason-lspconfig.nvim] installing dotls
[mason-lspconfig.nvim] installing pyright
[mason-lspconfig.nvim] installing bashls

upon opening up settings

:e $MYVIMRC | :cd %:p:h                                                                                                                                                                       
/home/hagan/.config/nvim

During the installation phase -- I get the following:

Failed to run config for headlines.nvim

...t/usr/share/nvim/runtime/lua/vim/treesitter/language.lua:93: no parser for 'markdown' language, see :help treesitter-parsers

# stacktrace:
  - /tmp/.mount_nvim28iQYt/usr/share/nvim/runtime/lua/vim/treesitter/language.lua:93 _in_ **add**
  - /tmp/.mount_nvim28iQYt/usr/share/nvim/runtime/lua/vim/treesitter/query.lua:252 _in_ **parse**
  - .config/nvim/lua/plugins/ui.lua:212 _in_ **config**
  - .config/nvim/lua/config/lazy.lua:16
  - .config/nvim/init.lua:2
Press ENTER or type command to continue

Below is sreenshot of what I see upon start up once I move past the initial error message

Screenshot from 2023-12-29 11-22-48

Errors after running Python chunks on Linux

Thanks for working on this! It's a cool idea.

I've noticed that when I run Python chunks there seems to be some extra characters sent to the terminal, so the code executes correctly but then procudes a syntax error. I recreated the bug on an up-to-date Arch Linux system like this:

# !assuming you've backed up your config!
# changed from -r to -rf
rm -rf ~/.local/share/nvim
rm -rf ~/.local/state/nvim

Then get the repo:

git clone https://github.com/jmbuhr/quarto-nvim-kickstarter.git ~/.config/nvim
nvim

I then created a qmd file with the following chunks:

print("python")
print("First")
print("Second")

When I run the first one (using space enter), I get:

>>>print("Python")
Python

When I run the second one, I get the following:

>>>print("first")
first
>>>print("second")
second
>>>--
  File <stdin>, line 1
   --
    ^
SyntaxError: invalid syntax

It looks like an extra line that isn't Python gets submitted when I call the multi-line chunk. After some experimenting, it looks like the error does not occur when I have the cursor directly on the delimiting lines of the chunk, that is to say, when my cursor is on the:
```{python}

ie

print("First") # executing with cursor one line above gives no error, executing here does
print("Second")

I also noticed that sometimes the error is...

%cpaste -q
^

...instead of the stdin error. ...but it's not obvious to me when it is this vs the other one. I assume this is something subtle with the delineation and parsing. I might be able to take a look around the codebase at it at some point but someone more familiar might know where to look right away.

If you could point me in the right direction that would be awesome.

Thanks again.

Error after install, loading the lua language server

I installed the quarto-kickstarter from scratch. I'm getting the following error when trying to access the settings from the starter page, or when trying to open any lua file:

"Spawning language server with cmd: lua-language-server failed. The language server is either not installed, missing from PATH, or not executable."

When googling the problem I found a suggestion to have the following option added to the mason setup:

require("mason").setup({
     PATH = "prepend", -- "skip" seems to cause the spawning error
 })

I tried this, but, unfortunately, it did not work. Do you have any suggestion about how to fix the issue?

Error loading lpeg

I encounter this error when I tried :QuartoPreview. I have tried uninstalling lua, luajit, luarocks and neovim itself. But the problem seems to persist. The config is exactly the same as here. I use brew for installation and use MacOS Sonoma.

Error running Lua:
error loading module 'lpeg' from file '/usr/local/lib/lua/5.4/lpeg.so':
        dlopen(/usr/local/lib/lua/5.4/lpeg.so, 0x0006): tried: '/usr/local/lib/lua/5.4/lpeg.so' (code signature in <CCE04CEC-FBC5-36DD-9BE6-AD251790D018> '/usr/local/Cellar/lpeg/1.1.0/lib/lua/5.4/lpeg.so' not valid for use in process: mapped file h
as no cdhash, completely unsigned? Code has to be at least ad-hoc signed.), '/System/Volumes/Preboot/Cryptexes/OS/usr/local/lib/lua/5.4/lpeg.so' (no such file), '/usr/local/lib/lua/5.4/lpeg.so' (code signature in <CCE04CEC-FBC5-36DD-9BE6-AD251790D0
18> '/usr/local/Cellar/lpeg/1.1.0/lib/lua/5.4/lpeg.so' not valid for use in process: mapped file has no cdhash, completely unsigned? Code has to be at least ad-hoc signed.), '/usr/local/Cellar/lpeg/1.1.0/lib/lua/5.4/lpeg.so' (code signature in <CCE
04CEC-FBC5-36DD-9BE6-AD251790D018> '/usr/local/Cellar/lpeg/1.1.0/lib/lua/5.4/lpeg.so' not valid for use in process: mapped file has no cdhash, completely unsigned? Code has to be at least ad-hoc signed.), '/System/Volumes/Preboot/Cryptexes/OS/usr/l
ocal/Cellar/lpeg/1.1.0/lib/lua/5.4/lpeg.so' (no such file), '/usr/local/Cellar/lpeg/1.1.0/lib/lua/5.4/lpeg.so' (code signature in <CCE04CEC-FBC5-36DD-9BE6-AD251790D018> '/usr/local/Cellar/lpeg/1.1.0/lib/lua/5.4/lpeg.so' not valid for use in process
: mapped file has no cdhash, completely unsigned? Code has to be at least ad-hoc signed.)
stack traceback:
        [C]: in upvalue 'orig_require'
        [string "..."]:1442: in function 'require'
        /Applications/quarto/share/pandoc/datadir/lpegshortcode.lua:4: in main chunk
        [C]: in upvalue 'orig_require'
        [string "..."]:1442: in function 'require'
        /Applications/quarto/share/pandoc/datadir/readqmd.lua:6: in main chunk
        [C]: in upvalue 'orig_require'
        [string "..."]:1442: in function 'require'
        /Applications/quarto/share/filters/qmd-reader.lua:6: in main chunk

[Process exited 1]

lspconfig not attaching to quarto files & code blocks not highlighted

I'm trying to incorporate elements from the quarto-nvim-kickstarter to my config, but I can't seem to find in the quarto.lua file in the kickstarter what makes the lsp for python attach to qmd files.

Currently, I open a qmd file and neither have autocompletion for Python and nor autoindentation for Python code (even within code chunks).

Any help I'll gladly appreciate, as trying to piece and modularize the plugins stated in the kickstarter into my own config. :)

Add Github Copilot to this configuration

Is there a straight forward way to add Github Copilot to this configuration? I've gotten it to work without installing this kickstarter as my nvim configuration.

I'm using Linux and what I've tried is
git clone https://github.com/github/copilot.vim
~/.config/nvim/pack/github/start/copilot.vim

But then when calling :Copilot setup from within nvim, Copilot isn't found.

Error while processing ~/.config/nvim/init.lua magick rock not found

I have been playing around with different configurations of neovim to get a better handle on how it works with Quarto. However, when I cloned the repo onto my Mac I got the following error when first opening the configured Neovim. Attempts to install a version which works with this configuration were met with no success, also detailed below. Install was just migrated from LazyVim w/ Quarto additions. Please let me know if I can provide any other details.

Neovim Error
Error detected while processing /Users/section_31/.config/nvim/init.lua:                                                                                           
image.nvim: magick rock not found, please install it and restart your editor                                                                                       
Press ENTER or type command to continue  
Brew/luarocks Install Attempts
ombiningIdeas git:dev โฏ luarocks install magick --check-lua-versions                                                                                          โŽ โœญ
magick not found for Lua 5.4.
Checking if available for other Lua versions...
Checking for Lua 5.1...
Checking for Lua 5.2...
Checking for Lua 5.3...

Error: No results matching query were found for Lua 5.4.
magick supports only Lua 5.1 but not Lua 5.4.
combiningIdeas git:dev โฏ luarocks install magick --lua-version=5.1                                                                                             โŽ โœญ
Installing https://luarocks.org/magick-1.6.0-1.src.rock

magick 1.6.0-1 depends on lua 5.1 (5.1-1 provided by VM)
No existing manifest. Attempting to rebuild...
magick 1.6.0-1 is now installed in /Users/section_31/.luarocks (license: MIT)
combiningIdeas git:dev โฏ luarocks --version                                                                                                                      โœญ
/opt/homebrew/bin/luarocks 3.9.2
LuaRocks main command-line interface
combiningIdeas git:dev โฏ lua -v                                                                                                                                โŽ โœญ
Lua 5.4.6  Copyright (C) 1994-2023 Lua.org, PUC-Rio
Machine Details
OS: macOS 14.3.1 23D60 arm64 
Host: Mac14,6 
Kernel: 23.3.0 
Uptime: 5 days, 4 hours, 1 min 
Packages: 306 (brew) 
Shell: zsh 5.9 
Resolution: 1728x1117, 3440x1440 
DE: Aqua 
WM: yabai 
Terminal: /dev/ttys000 
CPU: Apple M2 Max 
GPU: Apple M2 Max 
Memory: 4319MiB / 32768MiB                                           
Neovim Version
NVIM v0.9.5
Build type: Release
LuaJIT 2.1.1703358377

   system vimrc file: "$VIM/sysinit.vim"
  fall-back for $VIM: "/opt/homebrew/Cellar/neovim/0.9.5/share/nvim"
Neovim Checkhealth
==============================================================================
conform: require("conform.health").check()

conform.nvim report ~
- Log file: /Users/section_31/.local/state/nvim/conform.log
- OK black ready (python)
- OK isort ready (python)
- OK mystylua ready (lua)

==============================================================================
diffview: require("diffview.health").check()

Checking plugin dependencies ~
- OK nvim-web-devicons installed.

Checking VCS tools ~
- The plugin requires at least one of the supported VCS tools to be valid.
- OK Git found.
- OK Git is up-to-date. (2.44.0)
- WARNING Configured `hg_cmd` is not executable: 'hg'

==============================================================================
img-clip: require("img-clip.health").check()

img-clip.nvim ~
- OK `osascript` is installed
- OK `pngpaste` is installed

==============================================================================
kickstart: require("kickstart.health").check()

kickstart.nvim ~
- NOTE: Not every warning is a 'must-fix' in `:checkhealth`
  
  Fix only warnings for plugins and languages you intend to use.
  Mason will give warnings for languages that are not installed.
  You do not need to install, unless you want to use those languages!
- System Information: {
  machine = "arm64",
  release = "23.3.0",
  sysname = "Darwin",
  version = "Darwin Kernel Version 23.3.0: Wed Dec 20 21:31:00 PST 2023; root:xnu-10002.81.5~7/RELEASE_ARM64_T6020"
  }
- OK Neovim version is: 'table: 0x0102ebff08'
- OK Found executable: 'git'
- OK Found executable: 'make'
- OK Found executable: 'unzip'
- OK Found executable: 'rg'
- WARNING nvim < 0.10
- WARNING magick luarock is not available

==============================================================================
lazy: require("lazy.health").check()

lazy.nvim ~
- OK Git installed
- OK no existing packages found by other package managers
- OK packer_compiled.lua not found

==============================================================================
mason: require("mason.health").check()

mason.nvim ~
- OK mason.nvim version v1.10.0
- OK PATH: prepend
- OK Providers: 
  mason.providers.registry-api
  mason.providers.client
- OK neovim version >= 0.7.0

mason.nvim [Registries] ~
- OK Registry `github.com/mason-org/mason-registry version: 2024-03-05-frosty-waste` is installed.

mason.nvim [Core utils] ~
- OK unzip: `UnZip 6.00 of 20 April 2009, by Info-ZIP.  Maintained by C. Spieler.  Send`
- OK wget: `GNU Wget 1.21.4 built on darwin22.4.0.`
- OK curl: `curl 8.4.0 (x86_64-apple-darwin23.0) libcurl/8.4.0 (SecureTransport) LibreSSL/3.3.6 zlib/1.2.12 nghttp2/1.58.0`
- OK gzip: `Apple gzip 428`
- OK tar: `bsdtar 3.5.3 - libarchive 3.5.3 zlib/1.2.12 liblzma/5.0.5 bz2lib/1.0.8 `
- OK bash: `GNU bash, version 5.2.26(1)-release (aarch64-apple-darwin23.2.0)`
- OK sh: `Ok`

mason.nvim [Languages] ~
- OK Ruby: `ruby 2.6.10p210 (2022-04-12 revision 67958) [universal.arm64e-darwin23]`
- OK Go: `go version go1.22.0 darwin/arm64`
- OK cargo: `cargo 1.76.0`
- OK luarocks: `/opt/homebrew/bin/luarocks 3.9.2`
- OK node: `v21.6.2`
- WARNING javac: not available
  - ADVICE:
    - spawn: javac failed with exit code 1 and signal 0. The operation couldnโ€™t be completed. Unable to locate a Java Runtime.
      Please visit http://www.java.com for information on installing Java.
      
- WARNING java: not available
  - ADVICE:
    - spawn: java failed with exit code 1 and signal 0. The operation couldnโ€™t be completed. Unable to locate a Java Runtime.
      Please visit http://www.java.com for information on installing Java.
      
- OK PHP: `PHP 8.3.3 (cli) (built: Feb 13 2024 15:41:14) (NTS)`
- OK npm: `10.2.4`
- OK RubyGem: `3.0.3.1`
- OK Composer: `Composer version 2.7.1 2024-02-09 15:26:28`
- OK python: `Python 3.10.10`
- OK julia: `julia version 1.10.2`
- OK pip: `pip 24.0 from /Users/section_31/.pyenv/versions/3.10.10/lib/python3.10/site-packages/pip (python 3.10)`
- OK python venv: `Ok`

mason.nvim [GitHub] ~
- OK GitHub API rate limit. Used: 1. Remaining: 59. Limit: 60. Reset: Tue Mar  5 16:23:01 2024.
  Install and authenticate via gh-cli to increase rate limit.

==============================================================================
nvim: require("nvim.health").check()

Configuration ~
- OK no issues found

Runtime ~
- OK $VIMRUNTIME: /opt/homebrew/Cellar/neovim/0.9.5/share/nvim/runtime

Performance ~
- OK Build type: Release

Remote Plugins ~
- OK Up to date

terminal ~
- key_backspace (kbs) terminfo entry: `key_backspace=\177`
- key_dc (kdch1) terminfo entry: `key_dc=\E[3~`
- $COLORTERM="truecolor"

==============================================================================
nvim-treesitter: require("nvim-treesitter.health").check()

Installation ~
- OK `tree-sitter` found 0.21.0 (parser generator, only needed for :TSInstallFromGrammar)
- OK `node` found v21.6.2 (only needed for :TSInstallFromGrammar)
- OK `git` executable found.
- OK `cc` executable found. Selected from { vim.NIL, "cc", "gcc", "clang", "cl", "zig" }
  Version: Apple clang version 15.0.0 (clang-1500.1.0.2.5)
- OK Neovim was compiled with tree-sitter runtime ABI version 14 (required >=13). Parsers must be compatible with runtime ABI.

OS Info:
{
  machine = "arm64",
  release = "23.3.0",
  sysname = "Darwin",
  version = "Darwin Kernel Version 23.3.0: Wed Dec 20 21:31:00 PST 2023; root:xnu-10002.81.5~7/RELEASE_ARM64_T6020"
} ~

Parser/Features         H L F I J
  - bash                โœ“ โœ“ โœ“ . โœ“
  - c                   โœ“ โœ“ โœ“ โœ“ โœ“
  - css                 โœ“ . โœ“ โœ“ โœ“
  - diff                โœ“ . . . .
  - dot                 โœ“ . . . โœ“
  - html                โœ“ โœ“ โœ“ โœ“ โœ“
  - javascript          โœ“ โœ“ โœ“ โœ“ โœ“
  - jsdoc               โœ“ . . . .
  - json                โœ“ โœ“ โœ“ โœ“ .
  - jsonc               โœ“ โœ“ โœ“ โœ“ โœ“
  - julia               โœ“ โœ“ โœ“ โœ“ โœ“
  - latex               โœ“ . โœ“ . โœ“
  - lua                 โœ“ โœ“ โœ“ โœ“ โœ“
  - luadoc              โœ“ . . . .
  - luap                โœ“ . . . .
  - markdown            โœ“ . โœ“ โœ“ โœ“
  - markdown_inline     โœ“ . . . โœ“
  - mermaid             โœ“ . . . .
  - norg                . . . . โœ“
  - python              โœ“ โœ“ โœ“ โœ“ โœ“
  - query               โœ“ โœ“ โœ“ โœ“ โœ“
  - r                   โœ“ โœ“ . โœ“ โœ“
  - regex               โœ“ . . . .
  - toml                โœ“ โœ“ โœ“ โœ“ โœ“
  - tsx                 โœ“ โœ“ โœ“ โœ“ โœ“
  - typescript          โœ“ โœ“ โœ“ โœ“ โœ“
  - vim                 โœ“ โœ“ โœ“ . โœ“
  - vimdoc              โœ“ . . . โœ“
  - yaml                โœ“ โœ“ โœ“ โœ“ โœ“

  Legend: H[ighlight], L[ocals], F[olds], I[ndents], In[j]ections
         +) multiple parsers found, only one will be used
         x) errors found in the query, try to run :TSUpdate {lang} ~

==============================================================================
provider: health#provider#check

Clipboard (optional) ~
- OK Clipboard tool found: pbcopy

Python 3 provider (optional) ~
- pyenv: Path: /opt/homebrew/Cellar/pyenv/2.3.36/libexec/pyenv
- pyenv: Root: /Users/section_31/.pyenv
- `g:python3_host_prog` is not set.  Searching for python3.11 in the environment.
- WARNING pyenv is not set up optimally.
  - ADVICE:
    - Create a virtualenv specifically for Nvim using pyenv, and set `g:python3_host_prog`.  This will avoid the need to install the pynvim module in each version/virtualenv.
- Executable: /opt/homebrew/bin/python3.11
- Python version: 3.11.8
- pynvim version: 0.4.3 (outdated; from /opt/homebrew/lib/python3.11/site-packages/neovim)
- WARNING Latest pynvim is NOT installed: 0.5.0

Python virtualenv ~
- OK no $VIRTUAL_ENV

Ruby provider (optional) ~
- Ruby: ruby 2.6.10p210 (2022-04-12 revision 67958) [universal.arm64e-darwin23]
- WARNING `neovim-ruby-host` not found.
  - ADVICE:
    - Run `gem install neovim` to ensure the neovim RubyGem is installed.
    - Run `gem environment` to ensure the gem bin directory is in $PATH.
    - If you are using rvm/rbenv/chruby, try "rehashing".
    - See :help |g:ruby_host_prog| for non-standard gem installations.
    - You may disable this provider (and warning) by adding `let g:loaded_ruby_provider = 0` to your init.vim

Node.js provider (optional) ~
- Node.js: v21.6.2
- Nvim node.js host: /opt/homebrew/lib/node_modules/neovim/bin/cli.js
- OK Latest "neovim" npm/yarn/pnpm package is installed: 4.10.1

Perl provider (optional) ~
- WARNING "Neovim::Ext" cpan module is not installed
  - ADVICE:
    - See :help |provider-perl| for more information.
    - You may disable this provider (and warning) by adding `let g:loaded_perl_provider = 0` to your init.vim

==============================================================================
telescope: require("telescope.health").check()

Checking for required plugins ~
- OK plenary installed.
- OK nvim-treesitter installed.

Checking external dependencies ~
- OK rg: found ripgrep 14.1.0
- OK fd: found fd 9.0.0

===== Installed extensions ===== ~

Telescope Extension: `dap` ~
- No healthcheck provided

Telescope Extension: `ui-select` ~
- No healthcheck provided

==============================================================================
vim.lsp: require("vim.lsp.health").check()

- LSP log level : WARN
- Log path: /Users/section_31/.local/state/nvim/lsp.log
- Log size: 3016 KB

vim.lsp: Active Clients ~
- copilot (id=1, root_dir=/Volumes/WorkFiles/infection-inequity-susceptibility/combiningIdeas)

==============================================================================
vim.treesitter: require("vim.treesitter.health").check()

- Nvim runtime ABI version: 14
- OK Parser: bash       ABI: 14, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/bash.so
- OK Parser: c          ABI: 14, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/c.so
- OK Parser: css        ABI: 14, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/css.so
- OK Parser: diff       ABI: 14, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/diff.so
- OK Parser: dot        ABI: 13, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/dot.so
- OK Parser: html       ABI: 14, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/html.so
- OK Parser: javascript ABI: 14, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/javascript.so
- OK Parser: jsdoc      ABI: 14, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/jsdoc.so
- OK Parser: json       ABI: 14, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/json.so
- OK Parser: jsonc      ABI: 13, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/jsonc.so
- OK Parser: julia      ABI: 14, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/julia.so
- OK Parser: latex      ABI: 14, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/latex.so
- OK Parser: lua        ABI: 14, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/lua.so
- OK Parser: luadoc     ABI: 14, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/luadoc.so
- OK Parser: luap       ABI: 14, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/luap.so
- OK Parser: markdown   ABI: 14, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/markdown.so
- OK Parser: markdown_inline ABI: 14, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/markdown_inline.so
- OK Parser: mermaid    ABI: 14, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/mermaid.so
- OK Parser: norg       ABI: 14, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/norg.so
- OK Parser: python     ABI: 14, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/python.so
- OK Parser: query      ABI: 14, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/query.so
- OK Parser: r          ABI: 14, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/r.so
- OK Parser: regex      ABI: 14, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/regex.so
- OK Parser: toml       ABI: 13, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/toml.so
- OK Parser: tsx        ABI: 14, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/tsx.so
- OK Parser: typescript ABI: 14, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/typescript.so
- OK Parser: vim        ABI: 14, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/vim.so
- OK Parser: vimdoc     ABI: 14, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/vimdoc.so
- OK Parser: yaml       ABI: 13, path: /Users/section_31/.local/share/nvim/lazy/nvim-treesitter/parser/yaml.so
- OK Parser: c          ABI: 14, path: /opt/homebrew/Cellar/neovim/0.9.5/lib/nvim/parser/c.so
- OK Parser: lua        ABI: 14, path: /opt/homebrew/Cellar/neovim/0.9.5/lib/nvim/parser/lua.so
- OK Parser: query      ABI: 14, path: /opt/homebrew/Cellar/neovim/0.9.5/lib/nvim/parser/query.so
- OK Parser: vim        ABI: 14, path: /opt/homebrew/Cellar/neovim/0.9.5/lib/nvim/parser/vim.so
- OK Parser: vimdoc     ABI: 14, path: /opt/homebrew/Cellar/neovim/0.9.5/lib/nvim/parser/vimdoc.so

==============================================================================
which-key: require("which-key.health").check()

WhichKey: checking conflicting keymaps ~
- WARNING conflicting keymap exists for mode **"n"**, lhs: **"yS"**
- rhs: `<Plug>(nvim-surround-normal-line)`
- WARNING conflicting keymap exists for mode **"n"**, lhs: **"ys"**
- rhs: `<Plug>(nvim-surround-normal)`
- WARNING conflicting keymap exists for mode **"n"**, lhs: **" gc"**
- rhs: `:GitConflictRefresh<CR>`
- WARNING conflicting keymap exists for mode **"n"**, lhs: **"gb"**
- rhs: `<Plug>(comment_toggle_blockwise)`
- WARNING conflicting keymap exists for mode **"n"**, lhs: **"gc"**
- rhs: `<Plug>(comment_toggle_linewise)`

Unknown conflict triggers repeated command request when in insert mode

Hello,

This is a bit of a weird issue to describe, but I am having a problem where - when I enter insert mode - it keeps reverting to requesting a command which means characters can be missed when typing. I'll try and elaborate visually, let's say I open an .R file (same problem with .qmd), then I start with this view:

image

When I press i, a command is requested unexpectedly:

image

If I press enter I go into insert mode:

image

But when I press a key to type, it switches back to requesting a command:

image

I can ignore this and press another key:

image

But if I carry on typing it will sometimes cause characters to be missed as it switches back and forth between insert mode and requesting a command. For example, I continued typing alphabetically but the g got missed:

image

For this issue I am using Wezterm on Fedora 40 39 - but I get the same problem using Gnome Terminal, and also using Wezterm on Windows - so I don't think this is OS or terminal specific.

Fixes I've tried so far:

  • I did a full neovim reset (removing ~/.local/share/nvim, ~/.local/state/nvim, and ~/.cache/nvim).
  • I tried various previous commits of the quarto-nvim-kickstarter and that doesn't fix it either.

Any ideas how I can fix this please?

Edit: Fedora 40 -> 39, getting a bit ahead of myself on the Fedora release cycle!

Bug with quarto-nvim

Hey, thanks for this kickstarter. I really liked the idea.
However, I tried it but it has some problems that I could'nt solve with quarto-nvim which is the main plugin.
When I first open nvim:
Screen Shot 2023-01-10 at 3 53 30 PM

then after that it complains about quarto-nvim:
Screen Shot 2023-01-10 at 3 53 47 PM

What I did, I just cloned the repo and let lazy to install all the plugins.

Thanks again for this repo.

Error when opening quarto-nvim-kickstarter

Hi,
I am getting a similar error message to one that was reported earlier in this thread. After I cloned the repo and opened Neovim, I get 'Failed to run 'config' for image.nvim
nvim/lua/plugins/ui.lua:234: attempt to call field 'system' (a nil value)

stacktrace:

nvim/lua/plugins/ui.lua:234 in config
nvim/lua/config/lazy.lua:16
nvim/init.lua:2

I removed the files in .local /nvim share and state and cloned again, but the same message still came up.

I hope you can help.

This kickstarter works with the radian R terminal

In case others were interested to use the functionality of this kickstarter with the Radian terminal. This is easily accomplished by changing the following function in wk.register

Obviously you would need to have installed the radian terminal.

    r = {
      function()
        vim.b["quarto_is_r_mode"] = true
        vim.cmd("split term://R")
      end,
      "new [R] terminal",
    },

to

    r = {
      function()
        vim.b["quarto_is_r_mode"] = true
        vim.cmd("split term://radian")
      end,
      "new [R (radian)] terminal",
    },

Screenshot 2024-04-10 at 10 25 01

error installing kickstarter on linux

hi!

After installing the kickstarter, I got the below error.

I am using pop0S as my linux distribution.

Error detected while processing /home/hagan/.config/nvim/init.lua:
E5113: Error while calling lua chunk: vim/_meta.lua:570: Not a valid option name: winbar
stack traceback:
        [C]: in function 'assert'
        vim/_meta.lua:570: in function 'make_option'
        vim/_meta.lua:638: in function '__newindex'
        /home/hagan/.config/nvim/lua/config/global.lua:72: in main chunk
        [C]: in function 'require'
        /home/hagan/.config/nvim/init.lua:1: in main chunk

Feature Request: Auto-Completion for Sub-Variable-Names

First of, thank you so much for this repo and your work on otter.nvim and the quarto-nvim package; it really helped me to to get neovim setup for coding in R and it is so much fun now ๐Ÿฆฆ
I was wondering whether it would be possible to get auto-completion for sub-variable names, e.g., for variables of a data-frame (in R). For example, when using the base-r mtcars example, I would directly get suggestions for variable names after the $-sign (mtcars$...). Ideally, this would also work in 'piped environments' while using tidyverse packages, like in RStudio. Maybe there is already a solution, but I was so far not able to find it.

Package manager

Maybe it is a stupid question, but I don't understand which (if any) package manager is used for this configuration.
I'm trying to merge this configuration with mine since simply installing the quarto.nvim plugin with otter.nvim and following the given configuration I get an error.
I tried this configuration and everything works smoothly, but I don't want to lose my entire configuration. If this configuration is build without a package manager, could I add my own preferred package manager and re-install the other plugins I need?

Does not work with nvim 0.9.5 out of the box

Installation from scratch with nvim 0.9.5 (the current version included in Ubuntu 24.04 LTS) gives error message

lazydev.nvim requires Neovim >= 0.10

As far as I understand lazydev.nvim is not relevant for working with quarto in neovim, so it should better be disabled by default to support a straight-forward setup experience.

More crucial seems to be otter.nvim, it also requires Neovim >= 0.10. Any chance to get this running with nvim 0.9.5 at all?

update filtypes

neovim nightly now knows of a filetype quarto for qmd documents and sets this automatically. This requires either making some PRs to plugins used here or forking some. e.g. this is the opportunity to create a treesitter grammer for quarto, forked from markdown.

Bug: /usr/share/nvim/runtime/lua/vim/_system.lua:241: ENOENT: no such file or directory

At startup I get the following error. I'm not sure how to resolve this but it seems like an issue with lazy.nvim because that's the only location on my system with an images.nvim file. So far I haven't noticed any actual functionality issues.

Failed to run `config` for image.nvim

/usr/share/nvim/runtime/lua/vim/_system.lua:241: ENOENT: no such file or directory

# stacktrace:
  - /usr/share/nvim/runtime/lua/vim/_system.lua:241 _in_ **spawn**
  - /usr/share/nvim/runtime/lua/vim/_system.lua:332 _in_ **system**
  - .config/nvim/lua/plugins/ui.lua:236 _in_ **shell**
  - .config/nvim/lua/plugins/ui.lua:257 _in_ **config**
  - .config/nvim/lua/config/lazy.lua:16
  - .config/nvim/init.lua:2

r-languageserver installation

Hello,

I wanted to try your kickstart configuration, as I'm just starting with Neovim, everything seems fine, but i can't make it install the r-languageserver.

Do you have any idea of the cause of the problem?

Thanks.

nvim

Language features not working?

I have installed this config as stated, and all seems to work except for the LSP features and other language features such as definitions, types, etc. When I try to run manually the language features it says there are no supported language servers, but they are all correctly installed. Any idea?

can't get bibliography to autocomplete

Hi, thank you for this it's super helpful. For some reason I can't get my bilbliography data to autocomplete. It is set up properly in the qmd document and compiles fine when I run quarto preview, but doesn't appear as an autocomplete. Am I missing a place to put the references file outside of the qmd doc? I am coming from doom-emacs using citar where that is indicated in the settings.

Also, "right" is misspelled using SPC-s-r, not sure if that was intentional.

Question: is there a way to get a conda environment working in the Python terminal?

Hello! Thanks for the work on this.

I am attempting to get the Python terminal to use a conda environment. I've tried adding this to the global config:

vim.g.python3 = '/home/thadryan/anaconda3/envs/binf1/bin/python'

I also tried through pyright in the config after reading this:

      lspconfig.pyright.setup {
        on_attach = on_attach,
        capabilities = capabilities,
        flags = lsp_flags,
        settings = {
          python = {
            analysis = {
              autoSearchPaths = false, -- <----
              useLibraryCodeForTypes = true,
              diagnosticMode = 'openFilesOnly',
            },
            pythonPath = '/home/thadryan/anaconda3/envs/binf1/bin/python', -- <----
          },
        },
        root_dir = function(fname)
          return util.root_pattern(".git", "setup.py", "setup.cfg", "pyproject.toml", "requirements.txt")(fname) or
              util.path.dirname(fname)
        end
      }

...and this.

I noticed that if I start nvim from a conda env then IPython honors it but the base python shell doesn't. Normally would just use IPython but haven't gotten that working yet due to an external thing.

If you could point me in the right direction that would be great.

Thanks:
Thad

R.nvim alternative to vim-slime

Hello,

The current method of sending R code to terminal using vim-slime works perfectly fine, so this is not a feature request per se, more just a heads-up in case you didn't already know. Historically a lot of people using (neo)vim used Nvim-R for R. But they recently migrated to Lua with R.nvim, which presumably integrates better with modern neovim.

I'd guess you know about this already, and I don't know enough about the inner workings of either to know which is the better to choose for this project, but just in case I thought I'd mention the new Lua version.

Cheers,

Install in lunarvim not works

Hello, i was trying to install using the commands in my macos for lunarvim.

But look like it's not working in lunarvim. Any thoughts?

Thanks

Perpetual Error Pop-up when Editing *.qmd Files

When editing *.qmd files a persistent error message keeps popping up. The error message indicates a failure in running diagnostics with the following details:

Failed to run diagnostics: ! in callr subprocess.
Caused by error: 
! Linter 'object_length_linter' failed in test.qmd.otter.R: path[1]="test.qmd.otter.R": No such file or directory
Screenshot 2024-05-03 at 23 02 01

Environment:
macOS Sonoma 14.4.1 (23E224)
iTerm: v3.4.23
NVim: v0.9.5
Quarto NVim Kickstarter: v3.8.0

Feature suggestion: automated local .bib file generation

RStudio has the ability to search one's entire zotero library when inserting references, and then generate a local references.bib file that only contains the subset used in the quarto doc, which is super handy.

I'm wondering if it'd be possible to add similar functionality to the kickstarter?

I had hacky setups in emacs where I'd export the whole zotero library as a masterlib.bib file from zotero and then use that to source reference key completion.
I then had an even more hacky bash script to generate the locally used bib file:

## loop to extract keys used in thesis
  for i in $(cat bib/used_bib_keys.bib)
  do
    sed -n "/$i/,/^$/p" ~/Documents/masterLib.bib >> bib/thesis.bib
  done


## use bibtex-tidy (npm program) to clean .bib file
bibtex-tidy --omit=file --curly --numeric --space=2 --tab --align=13 --duplicates=key --no-remove-dupe-fields --backup bib/thesis.bib

I'm sure there are much more elegant solutions to this, but what do you think?

Syntax Highlighting for R Code Blocks in qmd-Files Breaks After Changing Color Scheme with Telescope

I believe I might have found a bug that is not related to my configuration. It occurs even when I clone the bare repository on both the main and dev branches.

When I open a Quarto file with Vim, the syntax highlighting in the R code block works as expected. However, when I want to change the color scheme with Telescope, the code block is no longer highlighted correctly.

Can anyone confirm this?

misc.handlers related error with lsp.lua

Hi,
The below error on lsp.lua is recurring during the initial setup further to cloning into .config/nvim folder (I am setting up as to work with Quarto). Could you please let me know what could be done to resolve this. Info and error below.
Jeffin

Nvim version
NVIM v0.10.1
Build type: RelWithDebInfo
LuaJIT 2.1.1707061634
OS version:
NAME="openSUSE Tumbleweed"
VERSION="20240805"

Error:

`Error detected while processing /home/jeffin/.config/nvim/init.lua:
Failed to load `plugins.lsp`

/home/jeffin/.config/nvim/lua/plugins/lsp.lua:2: loop or previous error loading module 'misc.handlers'

# stacktrace:
  - .config/nvim/lua/plugins/lsp.lua:2 _in_ **load**
  - .config/nvim/lua/config/lazy.lua:16
  - .config/nvim/init.lua:14
`

Syntax highlighting for ```{=latex}

Hello

First of all, I think this project is amazing. Thank you for making it.

I was just wondering if there was a way to configure the syntax highlighting for when a code chunk has an = sign before it.

Example:

```{latex}
```

that highlights latex syntax well

```{=latex}
```

does not

But I need to write in =latex for the latex code to render properly ( and not show up as a literal code chunk.

Thank you, and sorry if this is obvious

Error with `telescope.nvim`

I am getting the following error after cloning on windows 11. I'm pretty new to nvim but it seems telescope-fzf-native is missing and I cannot seem to be able to figure out how to install it (Mason does not show it). I would be grateful for any suggestions!


Failed to run `config` for telescope.nvim

...a/lazy/telescope.nvim/lua/telescope/_extensions/init.lua:10: 'fzf' extension doesn't exist or isn't installed: ...nvim-data/lazy/telescope-fzf-native.nvim/lua/fzf_lib.lua:11: cannot load module 'C:/Users/danie/AppData/Local/nvim-data/lazy/telescope-fzf-native.nvim/lua/../build/libfzf.dll': The specified module could not be found.^M


# stacktrace:
  - telescope.nvim\lua\telescope\_extensions\init.lua:10 _in_ **load_extension**
  - telescope.nvim\lua\telescope\_extensions\init.lua:62 _in_ **load_extension**
  - ui.lua:53 _in_ **config**
  - ~\AppData\Local\nvim/lua/config/lazy.lua:17

Tab completed on quoted variable names duplicates initial typing

Hello (again, sorry!),

I don't think this is necessarily the right repos to post this issue but I'm not sure whether this should go to the mason/r-languageserver, treesitter, nvim-cmp, or here. (I don't have the problem with vscode so I don't think this is a languageserver issue).

Let's say I start typing a mutate and I'm beginning to type the variable name "variable_one":

data |>
  mutate(
    variab
  )

when the variable name is sensible (i.e. snakecase) then there is no problem, when I hit tab the name is completed to variable_one perfectly. The issue comes when dealing with bad variable names (i.e. ones that have to be backquoted like Variable One). If I start typing like:

data |>
  mutate(
    `Variab
  )

Then the correct Variable One is suggested, but when I hit tab I get:

data |>
  mutate(
    `Variab `Variable One`
  )

So I think treesitter is working properly in the sense that it's suggesting correctly - but whatever plugin is doing the tab completion (nvim-cmp?) is getting confised by the initial backtick.

Assuming this isn't an issue with the kickstarter, would you mind pointing me in the right direction of the repos to post an issue on please?

Which-key not found after fresh install

Hi I have been struggling to integrate the quarto settings into a custom lazy config and came across your you tube video so thought I would try to work up my config from your kickstarter.

I removed my config and removed the local storage for the previous lazy config. I have made no changes to your files at this stage.

After installing the configuration and letting the first setup complete installation of the language servers. On restart I am getting this error message:

Error detected while processing /Users/jason/.config/nvim/init.lua:
Failed to load `plugins.ui`

...0.9.5/share/nvim/runtime/lua/vim/treesitter/language.lua:93: no parser for 'markdown' language, see :help treesitter-parsers

# stacktrace:
  - /usr/local/Cellar/neovim/0.9.5/share/nvim/runtime/lua/vim/treesitter/language.lua:93 _in_ **add**
  - /usr/local/Cellar/neovim/0.9.5/share/nvim/runtime/lua/vim/treesitter/query.lua:252 _in_ **parse**
  - ui.lua:233
  - ~/.config/nvim/lua/config/lazy.lua:16
  - ~/.config/nvim/init.lua:2
E5113: Error while calling lua chunk: /Users/jason/.config/nvim/lua/config/keymap.lua:1: module 'which-key' not found:
        no field package.preload['which-key']
cache_loader: module which-key not found
cache_loader_lib: module which-key not found
        no file './which-key.lua'
        no file '/usr/local/share/luajit-2.1/which-key.lua'
        no file '/usr/local/share/lua/5.1/which-key.lua'
        no file '/usr/local/share/lua/5.1/which-key/init.lua'
        no file './which-key.so'
        no file '/usr/local/lib/lua/5.1/which-key.so'
        no file '/usr/local/lib/lua/5.1/loadall.so'
stack traceback:
        [C]: in function 'require'
        /Users/jason/.config/nvim/lua/config/keymap.lua:1: in main chunk
        [C]: in function 'require'
        /Users/jason/.config/nvim/init.lua:4: in main chunk

and then:

Failed to run `init` for **vim-slime**

/Users/jason/.config/nvim/lua/plugins/quarto.lua:628: module 'which-key' not found:
^Ino field package.preload['which-key']
cache_loader: module which-key not found
cache_loader_lib: module which-key not found
^Ino file './which-key.lua'
^Ino file '/usr/local/share/luajit-2.1/which-key.lua'
^Ino file '/usr/local/share/lua/5.1/which-key.lua'
^Ino file '/usr/local/share/lua/5.1/which-key/init.lua'
^Ino file './which-key.so'
^Ino file '/usr/local/lib/lua/5.1/which-key.so'
^Ino file '/usr/local/lib/lua/5.1/loadall.so'

# stacktrace:
  - quarto.lua:628 _in_ **init**
  - ~/.config/nvim/lua/config/lazy.lua:16
  - ~/.config/nvim/init.lua:2

I have a working installation of quarto but hadn't previously got it configured properly with nvim.

I realised that I hadn't removed the .local state / share from the previous installation so removed those and did a fresh install. But the errors came through again.

I'm new to nvim so forgive any obvious errors I have made.

Symbol outline for quarto document does not work

First of all, thank you for the amazing project.

After setting up everything except for SymbolsOutline does not work in Quarto (.qmd) documents.
However, when I open a Markdown document (.md), SymbolsOutline shows on the right side.

Are there any additional settings or setups required for that option with the Quarto format?

copilot_node_command(node) not executable

Thanks for helping me with my previous installation issue -- I also wasn't using the latest version of nvim which was impacting things.

I can get the kickstarter to work but I get the below warning -- any thoughts?

Error detected while processing /home/hagan/.config/nvim/init.lua:
[Copilot] copilot_node_command(node) is not executable
Press ENTER or type command to continue

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.