★★ 默认匹配目标格式的粘贴方法(原半成品,后有所成)
这个问题,经过鄙人一番浅入浅出的研究后得出一个一拍脑门的结论:很难。
我想涉及到两个方面的问题,难以协调。
这个后面再说。
思路历程:
首先第一步,如何设置默认?
WPS文档里有这个设置
但是不知出于何种原因,WPS表格里并没有此设置。
因此设置默认这条方式在官方路径里行不通。
我曾试着在KUIP里把所有粘贴命令都替换成匹配目标格式,但并不成功。默认还是普通粘贴。
看着默认已经是“匹配目标格式”,其实不是(目标字体是黑色,未加粗)
即使修改了表面(默认是匹配目标格式),其实内核还是没有修改。
因此替换也不好使。它应该还有更底层的代码逻辑。
目前我还没有找到。只能搁置。
官方不让设置,自己又找不到途径。
那么就剩下一种可行性方案。
就是最简单的:修改快捷键。
把CTRL+V的快捷键,指向“匹配目标格式”,这样四舍五入,粘贴“默认”就约等于“匹配目标格式”了。
首先为了演示,我要可视化一下。把“匹配目标格式”放入快速访问栏。
发现快速访问栏并没有“匹配目标格式”。
一般来说“匹配目标格式”为次级菜单,为隐藏。
如果需要将“匹配目标格式”放入快速访问栏,可以用以下操作。
“匹配目标格式”WPS内部命令为:“SmartPasteHTMLNoFormatting”
把该命令写入:ETUI.XML,可写作:<mso:control idK="SmartPasteHTMLNoFormatting"/>
就会出现在快捷启动栏。
具体方法参见:https://bbs.wps.cn/topic/70060
这里不多说了。
放入快速访问栏,才发现,要把“匹配目标格式”设置快捷键,有两个很难绕开的问题:
全局粘贴
CTRL+V 本身是全局粘贴,里面一段“全息影像”,字体样式颜色超链一股脑在里面,要啥都有,一揽子打包,有时候连图片都在里面(这就是复制单元格“文字”,粘贴到微信会出现图片的原因)。
所以要用的时候,WPS也给了多个粘贴细项。
匹配目标格式正是其中之一。
因为这些细化是子项,不一定全用得上,所以有时这些按钮是灰色的,事不关己高高挂起。
如果强行把CTRL+V设置为“匹配目标格式”,有些粘贴就无效了。
所以铁路警察各管一段,“匹配目标格式”不是全程在线的,不能拿它挑大梁使。
对应从本工作簿内的复制,“匹配目标格式”粘贴是不起作用的。为灰色
如果你把它和CTRL+V关联,这时候CTRL+V就没有任何作用。
到外接文本,也不行。无法粘贴的
只有在非本工作簿,非文本,非图片等以外的粘贴项,它才起作用。比如,外部浏览器复制
所以CTRL+V如果和匹配目标格式强制关联,会发生很多情况ctrl+v失效的情况,此非上策。
目标区域
“匹配目标格式”为粘贴子母菜单,先有的粘贴母单,再去细化粘贴子内容。
所以它的变动是以粘贴(CTRL+V)处为锚点的,(其实就是上一个编辑单元格)。
即使CTRL+V直接调用“匹配目标格式”,它一定会跑偏,跑到上一个编辑单元格内粘贴,不会听从你的意志在所框选的区域粘贴。除非是刚打开单元格,什么也做过,之前没有编辑。
所以粘贴到出乱跑,不像个乖乖女,……
如果说(1)还能用其他细化组来补充代替,那么(2)就更麻烦。
它不是粘贴即所得区域。
比如我们想要粘贴到绿框内:
当然你可以按CTRL,再按M
但是要按就下,CTRL+V组合,CTRL单按,M单按
太麻烦
也可以用系统本身的CTRL+SHIFT+V,但只能复制纯文本,有时不能匹配目标格式,比如目标格式是红色字体,CTRL+SHIFT+V有一定几率能粘贴出红色文本,但是大部分情况下是黑色纯文本。
图示:
那只能将就着找几个代替的方案。先写到这吧,以后再补充。
解决方案
补充几个方案:
看了下,粘贴为文本或粘贴值,和匹配目标格式最为接近,可以用这两个之一,代替匹配目标格式。
比如,把粘贴为文本,设置为“CTRL+SHIFT+V”(代替系统纯文本,因为达不到我们想要的匹配效果)
这样的好处就是快捷,不用借助第三方。而且粘贴即所得,不会乱跳。
缺点就是,当粘贴为文本本应为灰色时候。CTRL+SHIFT+V就没有效果。
不过可以按CTRL+V。
触发窗口事件,然后把瞄准箭头对准快捷栏的“匹配目标格式”即可。
发现自动运行等别的动作没有用,只有左键点击可以。
这样做的好处是先粘贴一个CTRL+V。
然后再代替手动点击“匹配”,这样做的好处就是匹配为灰色时候,CTRL+V照样有效。
然后把快捷键设置为“CTRL+SHIFT+V”
注1: 以上只要CTRL+SHIFT+V即可(设为该动作快捷键),其他不用手动操作。
注2:变化有点慢是可以调的,我调的是500ms,如果50,或者5,基本就看不出来了,当然也可以调成0。
注3:QUICKER的简单介绍见:https://bbs.wps.cn/topic/84290
当然你也可以给“匹配目标格式”单独设置快捷键(如:CTRL+SHIFT+V)
但是不推荐,弊端上文已经说过了。
所以只能搞了这么个半成品的解决方案。
将来如果能发现默认粘贴方式的改变设置,就轻松多了。
很遗憾,只是目前还没有发现。
下次发现更快捷的设置,再来补
20260405
另一个方法,编了一个AHK。可以实现让用户自己选择粘贴方式。这种方式比较有趣。
用户多了一个自主选择权。
操作:按完CTRL+V,松开V,但是不松开CTRL,此时,再按一下V,出现的就是下一个粘贴,直到出现到满意的粘贴,就松开CTRL。此时就改变最后一个选择的格式选项。
缺点:费点事
优点:用户操控自由度更大,有更多的选择权。
第二个版本:
这个版本在第一个基础上有所增强。
这个版本的效果:
如果普通的按CTRL+V,就是带格式粘贴,就像我们正常的CTRL+V一样。但这时候也和正常的粘贴一样,是带格式的粘贴。
如果你想匹配目标格式粘贴(毕竟这个用的不多),那就在按完CTRL+V后,松开V,再多按一会CTRL,有一个读秒数,大概到了这个时间,延迟足够,就触发下一步。
就会自动选择到“匹配目标格式”。如果你还不满意,可以继续按V,就从第一个开始继续选起。每按一下V,就选择下一个目标选项。
这样自由度更大,而且不会误操作,而且默认延迟就是“匹配目标格式”。
以上这个还是靠粘滞CTRL键时长来决定是否是“匹配目标格式”。
对于时长这种矢量概念,人们控制起来不是很精确。
于是我又想到了改用次数控制。
一次两次这种控制起来还是容易操作的。
3.0版:
只要按一下CTRL+V,无认CTRL是否弹起,无论V粘滞多久,都不触发
只有等CTRL+V之后,CTRL键粘滞未弹起,V键继续按第二次,就触发自动(程序)选择“匹配”。
这样按次好控制。见图。
缺点:和WPS调出自带剪贴板重复了。
不过问题不大,那个用的极少,而且可以点击按钮调出。没有CTRL+V,和CTRL+VV使用频率高。所以可以靠后。
这个方案我觉得还算可以。
但是还有一个缺点2:就是必须用AHK。
20260406
可以用VB直编一个。不借助外援,省得要装第三方软件不方便。
优点:不装任何软件,完全内置宏来解决。
缺点:要修改KUIP,不修改单纯靠宏还未能实现; 现在WPS宏添加快捷键没以前方便了
最后再加上快捷键。的半成品功成。
CTRL+V普通粘贴(带格式粘贴、单元格粘贴、图片粘贴等)
CTRL+SHIFT+V,匹配目标格式粘贴(代替之前的纯文本、无格式粘贴)
虽然看起来很轻巧,但是整体过程还有些弯弯绕,这篇写的时长跨度还挺长,主要还经常弄了点“添油战术”,不想精兵简政了。,凑合着看吧,
