很多人开始转V2版本了,群里几位大神也开发了 VSCode 插件。我试着几天,确实语法更舒服一点,强烈建议大家使用。
QuickSearch Extended 是文件管理器 Total Commander 的一个插件,因为名字打完标题会换行,我不喜欢,所以标题只打了插件一半的名字。
这个插件支持用拼音首字母快速搜索文件,可以说是 TC 用户最喜欢的插件。但是,中文用户还有很多是用五笔、双拼等输入法的,拼音首字母不一定是最顺手的。这个脚本可以把文本格式的码表文件转换成 QuickSearch Extended 可用的 tbl 数据文件。让 QuickSearch Extended 支持五笔首字母搜索、双拼首字母搜索等。
为提高论坛活跃度,已编译文件及码表示例支付积分后查看
; AHK VSERION: AutohotkeyH v2 W32
; Author: fwt
; Description: 生成tc插件 QuickSearch eXtended 可用的码表文件
SelectedFile := FileSelect(3, A_ScriptDir, "请选择码表文件", "*.txt")
if SelectedFile = ""
ExitApp
SplitPath(SelectedFile, , dir)
content := RTrim(FileRead(SelectedFile), "`n")
pytable := Map()
pytable.Capacity := 0x9FA5 - 0x4E00 + 1
buf := BufferAlloc((0x9FA5 - 0x4E00 + 1) * 2)
for l in StrSplit(content, "`n")
{
if l ~= "^#|^s*$"
Continue
m := StrSplit(l, A_Tab, "", 2)
zi := m[2]
hex := ord(zi)
if hex > 0x9FA5 || hex < 0x4E00
Continue
num := ord(m[1]) & 95 - 64
offset := (hex - 0x4E00) * 2
if pytable.Has(zi)
{
arr := pytable[zi]
if arr.Length < 3 && !inArray(arr, num)
{
arr.push(num)
num += NumGet(buf, offset, "UShort") << 5
}
}
else
{
pytable[zi] := [num]
}
NumPut("UShort", num, buf, offset)
}
outfile := dir "tcmatch.tbl"
file := FileOpen(outfile, "w")
file.RawWrite(Buf)
file.close()
Run("Explorer /Select," outfile)
inArray(arr, num)
{
for i in arr
if i = num
return True
return False
}
let me cc
学习一下