阅读:10回复:0

yong-con使用说明

楼主#
更多 发布于:2026-03-08 13:28
本命令只在linux下存在,起作用是在控制台(非图形界面)下进行简单的中文输入

使用过程
yong-con 编码
然后yong-con会在标准输出打印编码对应的文字

几个场景
1. 进入中文路径
cd `yong-con xiazai`

2. vim中输入中文
选中一段编码,然后按快捷键把编码转换成文字
```vim9script
def g:GetVisualText(): string
    var arr = getregion(getpos("'<"), getpos("'>"), {'type': 'v'})
    if len(arr) != 1
        return ""
    endif
    var text = trim(arr[0])
    if len(text) < 1 || len(text) > 59
        return ""
    endif
    if match(text, '[^\x20-\x7E]') != -1
        return ""
    endif
    return text
enddef

def g:YongInputCb(channel: channel, output: string)
    var text = trim(output)
    if text == ""
        return
    endif

    if mode() ==# 'v'
        echo "visual mode"
        normal! c
        feedkeys('i' .. text)
    elseif mode() ==# 'n'
        feedkeys('i' .. text)
    elseif mode() ==# 'i'
        feedkeys(text)
    else
        return
    endif
enddef

def g:YongInput()
    if has('win32')
        return
    endif
    if !exists('g:yong_con')
        return
    endif
    normal! gv
    var text = g:GetVisualText()
    if text == ""
        echo "请选择文本"
        return
    endif
    job_start([g:yong_con, text], {noblock: 1, out_cb: 'g:YongInputCb'})
enddef

vnoremap <C-S-I> :call g:YongInput()<CR>
```
游客

返回顶部