microsoft / vscode

Visual Studio Code
https://code.visualstudio.com
MIT License
162.96k stars 28.77k forks source link

VS Code installs en-US-10-1.bdic #226531

Open allefeld opened 1 month ago

allefeld commented 1 month ago

Type: Bug

Whenever I start VS Code, the dictionary file en-US-10-1.bdic is written into ~/.config/Code/Dictionaries. Since to my knowledge VS Code does not include any spell checking functionality, this seems superfluous. Moreover, it interferes with the functionality of a spell checking extension.

I am certain that this is not due to an extension; I used both "Extension Bisect" and code --disable-extensions. I delete the file before, and after VS Code has started, it is there again, even with all extensions disabled.

VS Code version: Code 1.92.2 (fee1edb8d6d72a0ddff41e5f71a671c23ed924b9, 2024-08-14T17:29:30.058Z) OS version: Linux x64 6.4.0-0.deb12.2-amd64 Modes:

System Info |Item|Value| |---|---| |CPUs|Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz (8 x 3920)| |GPU Status|2d_canvas: enabled
canvas_oop_rasterization: enabled_on
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: disabled_off
video_decode: enabled
video_encode: disabled_software
vulkan: disabled_off
webgl: enabled
webgl2: enabled
webgpu: disabled_off
webnn: disabled_off| |Load (avg)|1, 1, 1| |Memory (System)|31.29GB (26.75GB free)| |Process Argv|/home/ca/work/Projects/CvCrossManova/paper --crash-reporter-id 7385d41d-b1f1-40cd-9e1c-2f129a2666df| |Screen Reader|no| |VM|0%| |DESKTOP_SESSION|plasma| |XDG_CURRENT_DESKTOP|KDE| |XDG_SESSION_DESKTOP|KDE| |XDG_SESSION_TYPE|x11|
Extensions (45) Extension|Author (truncated)|Version ---|---|--- pandoc-defaults|all|0.1.0 spellright|ban|3.0.136 toml|be5|0.6.0 docs-view|bie|0.1.0 insert-unicode|bru|0.15.1 jsonviewer|cci|1.5.2 excel-to-markdown-table|csh|1.3.0 markdown-word-count|Cur|0.0.7 vscode-eslint|dba|3.0.10 xml|Dot|2.5.1 overtype|DrM|0.5.0 copilot|Git|1.223.0 copilot-chat|Git|0.18.2 gc-excelviewer|Gra|4.2.61 todo-tree|Gru|0.0.226 pandiff-vscode|Her|0.2.11 stan-vscode|iva|0.2.4 vscode-latex|mat|1.3.0 language-matlab|Mat|1.2.5 rainbow-csv|mec|3.12.0 autopep8|ms-|2024.0.0 debugpy|ms-|2024.10.0 flake8|ms-|2023.10.0 isort|ms-|2023.10.1 python|ms-|2024.12.3 vscode-pylance|ms-|2024.8.1 jupyter|ms-|2024.7.0 jupyter-keymap|ms-|1.1.2 jupyter-renderers|ms-|1.0.19 vscode-jupyter-cell-tags|ms-|0.1.9 remote-ssh|ms-|0.113.1 remote-ssh-edit|ms-|0.86.0 live-server|ms-|0.4.14 remote-explorer|ms-|0.4.3 gremlins|nho|0.26.0 autodocstring|njp|0.6.1 material-icon-theme|PKi|5.9.0 quarto|qua|1.114.0 vscode-yaml|red|1.15.0 r|REd|2.8.4 jinjahtml|sam|0.20.0 docxreader|Sha|1.1.3 rewrap|stk|1.16.3 lua|sum|3.10.5 pdf|tom|1.2.2
A/B Experiments ``` vsliv368cf:30146710 vspor879:30202332 vspor708:30202333 vspor363:30204092 vscod805cf:30301675 binariesv615:30325510 vsaa593:30376534 py29gd2263:31024239 vscaat:30438848 c4g48928:30535728 azure-dev_surveyone:30548225 962ge761:30959799 pythongtdpath:30769146 welcomedialogc:30910334 pythonnoceb:30805159 asynctok:30898717 pythonregdiag2:30936856 pythonmypyd1:30879173 h48ei257:31000450 pythontbext0:30879054 accentitlementst:30995554 dsvsc016:30899300 dsvsc017:30899301 dsvsc018:30899302 cppperfnew:31000557 dsvsc020:30976470 pythonait:31006305 dsvsc021:30996838 9c06g630:31013171 pythoncenvpt:31062603 a69g1124:31058053 dvdeprecation:31068756 dwnewjupytercf:31046870 impr_priority:31102340 nativerepl1:31104043 refactort:31108082 pythonrstrctxt:31112756 flightc:31119335 wkspc-onlycs-t:31111718 wkspc-ranged-c:31123312 pme_test_t:31118333 ei213698:31121563 ```
roblourens commented 1 month ago

I'm pretty confident that vscode isn't doing this, I'm not aware of any feature that would do this. Even though you said you tried disabling extensions, I'd think that an extension is responsible for it. You could also try searching your extensions directory for the file name, Dictionaries, etc, to see whether that helps figure out which extension is involved.

allefeld commented 1 month ago

I admit it sounds strange that VS Code would do something like this, and the obvious suspicion falls on extensions. But isn't code --disable-extensions there exactly to test this?

I now did it more radically by moving the extensions folder somewhere else:

$ ls ~/.config/Code/Dictionaries/
.rw-r--r-- ca ca 451968  2024-08-24 18:23:55 -- en-US-10-1.bdic
$ rm ~/.config/Code/Dictionaries/en-US-10-1.bdic 
$ mv ~/.vscode/extensions/ ~/_vscode_extensions/
$ code --disable-extensions
$ ls ~/.config/Code/Dictionaries/
.rw-r--r-- ca ca 451968  2024-08-27 16:49:43 -- en-US-10-1.bdic

I then switched to another user account which I only use for testing like this, on which I had never run VS Code, let alone installed extensions. I made sure that – as expected – ~/.config/Code/ and ~/.vscode don't exist. Then I started VS Code. After that, ~/.config/Code/ exists including ~/.config/Code/Dictionaries/en-US-10-1.bdic.

So it really looks like this file is created by VS Code...

roblourens commented 1 month ago

I guess I see that too, on Linux

roblourens commented 1 month ago

Sounds like this was enabled to support spell checking in the scm input, do we use that @lszomoru ?

allefeld commented 1 month ago

You mean e.g. commit messages?

It seems strange that VS Code has spell checking specifically for such a particular thing, but for nothing else.