求文本替换工具,输入弯引号自动转换为直角引号「」『』

如题,最初想要达到像在macOS环境下[]]输入shift+[shift+]输入

为避免快捷键冲突,现在追求实现:输入弯引号后自动转换为直角引号,即引号键输入直角引号

autohotkey 不太理想,只能组合键输入直角引号,如下图

其他文本替换工具

  • aText 失败
  • Beeftext 失败
  • PhraseExpressr 失败
  • TextExpander失败

找位大手子,好几次看到大佬现场手搓,看看这次有没有大佬能手搓出来

ahk 的 热字符串?!

虽然不是很懂,但是ahk里应该不需要必须使用alt/shift/ctrl来组合热键,可以用caps、space 之类的结合输入符号。这样应该可以避免热键冲突。

热字符串不行,只能 send,而且也做不到弯引号自动转换为直角引号

你说的,已经做到,但是我嫌弃组合键麻烦
现在是想要在微软拼音中文模式下按引号键输入直角引号

「1111」←aTex 可以直接输入成对然后定位光标到中间,我设置的快捷键是 rtk3 ,算是用搜狗五笔的习惯,rtkg 是「括号」的五笔编码,虽然这东西是引号不是括号。

唯一问题是英文状态下反而不容易触发。。

因为‘和’本身是两个符号占用一个键,所以除非输入法支持,基本上很难通过只按一个键达到目的。
一个思路是通过设定一个间的快捷键(比如右侧Shift),在按下之后获取前一个字符的内容,然后做对应的替换。
另一个思路就是全都写完以后批量替换一下。
还有一种就是做一个这种自动替换的编辑器,如果是纯文本内容的话,可以自己写一个简单的。
测试了一下,这个vscode插件可以自动替换。

直接使用 RIME 输入法(Windows 平台为小狼毫),然后自定义。

2 个赞

输入法本身就可以设置

不过mac上输入法没用过.

word是可以自动更正实现, 也可以批量替换.

没自定义前【】键位也是直角引号 :grinning:,挺好用的

对,但可以直接自定义为:

punctuator:
  full_shape:
    "[" : 「
    "]" :  」
    "{" : 『
    "}" : 』

这样就实现 键输入单直引号,然后 {} 输入双直引号。

AHK 还是可以解决的,方法还挺多。对着例子自己改一下。

1、单键复用
同一个快捷键,第一次触发和第二次触发时产生不同效用,正适合这种成对出现的符号
例子是双击左键,可以对应不同的引号分别写一个'键单击、双击、三击……

~LButton::
if (A_PriorHotkey = "~LButton" and A_TimeSincePriorHotkey < 300){
	if (C = 0) {
		Do anything …
		C := 1
	} else {
		Do anything …
		C := 0
	}
}
return

2、单键多用
一个快捷键轮换效果,偶尔用挺方便,高频输入还是差了点

~LButton::
round++
if (round = 0) {
	Do anything …
} 
if  (round = 1) {
	Do anything …
}
if  (round = 2) {
	Do anything …
}
if  (round = 3 {
	Do anything …
}
if  (round = 4) {
	Do anything …
	round := 0
}
return

3、单键+选择
效果参照输入法的 V模式输入,说实话这个没必要用 AHK 了,输入法自带的 自定义短语 功能。
最简单,也最实用。

1 个赞

让我三选一的话,第一种单键复用,但是这个方案感觉还是没自带的引号键输入引号好用

唉,输入引号后就替换掉,看样子没法了

搜狗输入法自己有个直角引号的插件 装一下就可以了
https://imedl.sogoucdn.com/index/subject/zhihu/zhijiaoyinhao.exe