vscode Diff / Compare不遵守忽略前导/尾随空格设置

nukf8bse  于 5个月前  发布在  Vscode
关注(0)|答案(7)|浏览(54)

类型:Bug

你好,
在较早版本的vscode中,"忽略前导/尾随空格差异"是有效的。但在这个版本中,它不起作用。只有前导/尾随空格差异的行被标记为不同。

步骤:

  • 比较两个文件。这些文件中的几行只有前导和尾随空格差异

预期结果:

  • 只有前导/尾随空格差异的行不应被标记为不同

实际结果:

  • 只有前导/尾随空格差异的行被标记为不同

注意:降级到较旧版本1.74.3后,功能按预期工作。
VS Code版本:Code 1.75.1 ( 441438a , 2023-02-08T21:32:34.589Z)
操作系统版本:Windows_NT x64 10.0.19043
模式:
沙箱:否
远程操作系统版本:Linux x64 5.4.0-60-generic
系统信息
| 项目 | 值 |
| ------ | ------ |
| CPUs | AMD Ryzen 5 3500U with Radeon Vega Mobile Gfx (8 x 2096) |
| GPU状态 | 2d_canvas:启用canvas_oop_rasterization:禁用_offdirect_rendering_display_compositor:禁用_off_okgpu_compositing:启用multiple_raster_threads:启用_onopengl:启用_onrasterization:启用raw_draw:禁用_off_okskia_renderer:启用_onvideo_decode:启用video_encode:启用vulkan:禁用_offwebgl:启用webgl2:启用webgpu:禁用_off |
| 负载(平均) | 未定义 |
| 内存(系统) | 13.92GB(6.33GB可用) |
| 进程参数 | --crash-reporter-id 95a035c2-d82b-4389-b0e7-0f165ae091b0 |
| 屏幕阅读器 | 否 |
| VM | 80% |
| 项目 | 值 |
| ------ | ------ |
| 远程 | SSH: 207.180.251.250 |
| OS | Linux x64 5.4.0-60-generic |
| CPUs | Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz (6 x 2199) |
| 内存(系统) | 15.64GB(10.38GB可用) |
| VM | 67% |扩展(2)
| 扩展名 | 作者(省略) | 版本 |
| ------ | ------ | ------ |
| remote-ssh | ms- | 0.96.0 |A/B实验

vsliv368:30146709
vsreu685:30147344
python383:30185418
vspor879:30202332
vspor708:30202333
vspor363:30204092
vslsvsres303:30308271
pythonvspyl392:30443607
vserr242:30382549
pythontb:30283811
vsjup518:30340749
pythonptprofiler:30281270
vshan820:30294714
vstes263:30335439
vscoreces:30445986
pythondataviewer:30285071
vscod805cf:30301675
binariesv615:30325510
bridge0708:30335490
bridge0723:30353136
cmake_vspar411:30581797
vsaa593:30376534
pythonvs932:30410667
cppdebug:30492333
vscaat:30438848
vsclangdf:30486550
c4g48928:30535728
dsvsc012:30540252
azure-dev_surveyone:30548225
vsccc:30610678
pyindex848cf:30577861
nodejswelcome1cf:30587006
3biah626:30602489
f6dab269:30613381
pythonsymbol12:30657548
a9j8j154:30646983
jjhzyzn0

jjhzyzn01#

@software-artisan Can you please share two example files which demonstrate the problem? I have tried with the following and this works for me in a vanilla VS Code with no extensions in a folder without any settings:
Kapture.2023-02-20.at.22.33.45.mp4

cld4siwp

cld4siwp2#

你好,Alex。我会在一两天内重现这个问题并附上截图。谢谢。

bqjvbblv

bqjvbblv3#

你好,Alex。请查看下面的屏幕录制。我已经

  • 附加了我用于比较的两个文件。请将文件重命名为fileC.py和fileD.yaml,然后进行比较
  • 版本是1.76。
  • 我已经使用code --disable-extensions禁用了所有扩展名。
  • 没有文件夹,所以没有文件夹设置。

谢谢。

jqjz2hbq

jqjz2hbq4#

这是由于 #169555 引起的。执行操作 toggle.diff.ignoreTrimWhitespace 没有效果,因为用户设置总是被默认的语言特定设置覆盖。
Kapture.2023-04-07.at.02.42.08.mp4

mbskvtky

mbskvtky5#

感谢Alex。鉴于这是一个回归问题,是否有解决方法?我尝试了一些方法,但没有成功。有没有办法更改默认的语言特定设置?谢谢。
这个问题是由#169555引起的。执行操作toggle.diff.ignoreTrimWhitespace没有任何效果,因为用户设置总是被默认语言特定设置覆盖。
Kapture.2023-04-07.at.02.42.08.mp4

ddrv8njm

ddrv8njm6#

我已经尝试在设置中添加

"[python]": {
        "diffEditor.ignoreTrimWhitespace": true,
    },

以覆盖此设置,但似乎效果不佳(这很奇怪,因为我原以为用户特定的语言设置会覆盖默认的语言设置。无论如何。)
作为替代方案,您可以在比较时将"Language Mode"更改为另一种语言,虽然有点麻烦,但有效。

55ooxyrt

55ooxyrt7#

这似乎在1.90.0版本中又可以正常工作了。至少,通过点击¶图标,我可以在两种模式之间切换。
有趣的是,点击¶图标不会改变它的选中状态,也不会改变"忽略时间空白"设置。此外,更改全局的"忽略时间空白"会改变图标的选中状态,但对Python文件有效——它显示为"由Python > 用户修改",这显然是点击图标存储状态的地方。

总的来说,我认为实际的修剪模式和¶图标的选中状态之间存在不匹配,但至少基本功能又可以正常工作了。

相关问题