vscode 允许配置缩放步长百分比,以实现对缩放的细粒度控制,

23c0lvtd  于 8个月前  发布在  Vscode
关注(0)|答案(3)|浏览(68)

缩放级别0和1之间的差异相当大。我想要一个介于两者之间的值。
目前,您可以在固定的百分比步长内进行缩放,根据设置,这个步长是20%(即在缩进或退出时,缩放变化为20%)。

我希望能够使缩放步长百分比可配置,这样当我使用快捷键(Ctrl+Shift+减号或加号)时,我可以一次性缩放5%或10%。

h79rfbju

h79rfbju1#

这个功能请求现在是我们待办事项列表的候选项目。社区有60天的时间对这个问题进行投票。如果它收到20个赞成票,我们将把它移到我们的待办事项列表中。如果没有,我们将关闭它。要了解更多关于我们如何处理功能请求的信息,请参阅我们的documentation
快乐编码!

oewdyzsn

oewdyzsn2#

你可以通过修改 "window.zoomLevel" 来手动获得精确的缩放级别。"window.zoomLevel": 0, 是默认值,而 "window.zoomLevel": 1, 对应于一个默认的缩放级别。因此,设置 "window.zoomLevel": 0.5, 将使你获得半步缩放。但我同意你的观点,允许用户修改默认的步长大小确实会很好。

我已经找到了 3 个扩展程序,它们在某种程度上提供了这种功能。

安装量评分PRs最后提交问题版本发布时间更新时间安装量,排序
Zoom Bar96K4.5https://github.com/wraith13/zoombar-vscode3a year ago101.4.48/26/20182/17/202396000
Custom Window Zoom13.2K4.6https://github.com/cbengtson85/custom-window-zoom05 years ago11.1.43/10/20183/12/201813200
Zoomer2.9K5https://github.com/anthonyattard/zoomer02 months ago00.3.14/5/20225/20/20242900

Zoom Bar:

  • zoombar.zoomUnit 默认为 10
  • "zoombar.zoomUnit": 20, 的设置相当于默认的缩放增量。
  • 它看起来是在修改 "window.zoomLevel" 的值以改变当前的缩放级别。
  • 只有其中一个提供了“重置缩放”命令。在菜单栏中添加了一些控件。拥有最多的设置。"zoombar.zoomUnitType": "additive", 是一个不错的选择,具有 zoomUnit(即 20),它将从 0 -> 1 -> 2 -> 3 -> 4 更改为 0 -> 1 -> 1.845 -> 2.578 -> 3.224

Custom Window Zoom:

  • "customWindowZoom.zoomLevelChangeValue" 默认为 0.5
  • "customWindowZoom.zoomLevelChangeValue": 1, 的设置相当于默认的缩放增量。
  • 也可以通过修改 "window.zoomLevel" 实现。

Zoomer:

  • "zoomer.zoomIncrement" 默认为 0.1
  • "zoomer.zoomIncrement": 1, 的设置相当于默认的缩放增量。
  • 也可以通过修改 x
bvn4nwqk

bvn4nwqk3#

很高兴有这样的扩展,但这是一个vscode本身应该提供解决方案的问题。

查看相关代码,更改将是微小的:

  1. 在设置中添加一个参数(类似于"window.zoomIncrement"),默认值为1(当前行为)。
  2. 更新ZoomInActionZoomOutAction如下:
// src/vs/workbench/electron-sandbox/actions/windowActions.ts#L117

export class ZoomInAction extends BaseZoomAction {
	...
	override run(accessor: ServicesAccessor): Promise<void> {
-		return super.setZoomLevel(accessor, getZoomLevel(getActiveWindow()) + 1);
+		return super.setZoomLevel(accessor, getZoomLevel(getActiveWindow()) + getZoomIncrement());
	}
}

export class ZoomOutAction extends BaseZoomAction {
	override run(accessor: ServicesAccessor): Promise<void> {
-		return super.setZoomLevel(accessor, getZoomLevel(getActiveWindow()) - 1);
+ 		return super.setZoomLevel(accessor, getZoomLevel(getActiveWindow()) - getZoomIncrement());
	}

对于之前在vscode上做过任何工作的人来说,这似乎应该是一个快速的修复方法,甚至可能是一个很好的#good-first-issue

相关问题