阅读:8085回复:2

yong-vim使用说明

楼主#
更多 发布于:2016-05-22 14:06
这个应用最初的目的是为了配合vim普通模式和命令模式之间的切换而开发的,下面说明相关功能。

格式如 yong-vim [-w] [-t n] [p]
-w 等待主程序返回相关值
-t 指定要执行的命令
p -t命令所对应的参数

-t命令有效的值有两个
1 设置中英文,状态发生了切换,则返回1,否则返回0
2 获得中英文状态,如果输入法没有激活,则返回-1
这里中文用数字0表示,英文用数字1表示
命令为1时-t参数可以不设,为了兼容老版本,也建议不要设

设置中文
yong-vim 0
设置英文
yong-vim 1
获得当前状态
yong-vim -w -t 2
打开设置程序
yong-vim -w -t 5
打开软键盘(最后一个0表示打开第几个)

yong-vim -w -t 8 0
模拟按键
yong-vim -w -t 11 键值(这里是10进制数字,具体值自己换算,参考https://github.com/dgod/yong/blob/master/include/yong.h

最新喜欢:

xiaozhuanxiaozh... zrjojozrjojo 盘古大陆盘古大陆
沙发#
发布于:2022-07-04 20:17
" yong input method
let g:yong_vim = "d:\\yong\\yong-vim.exe"
let g:input_toggle = 0
let g:input_toggle_timer = 0

fun! Yong_set_input_toggle(channel,output)
    let g:input_toggle = a:output
endf

fun! Yong2en_timer(timer)
    if g:input_toggle_timer == 0
        return
    endif
    let g:input_toggle_timer = 0
    call job_start(g:yong_vim . " 1 -w",{'out_cb':'Yong_set_input_toggle'})
endf

fun! Yong2en()
    let g:input_toggle_timer=1
    call timer_start(200,'Yong2en_timer')
endf

fun! Yong2zh()
    let g:input_toggle_timer=0
    if g:input_toggle != 0
        call job_start(g:yong_vim . " 0")
        g:input_toggle = 0
    endif
endf

autocmd InsertLeave * call Yong2en()
autocmd InsertEnter * call Yong2zh()
板凳#
发布于:2022-07-04 22:51
gvim的windows最新版已比较好的支持了输入法的状态切换,以上脚本建议在只使用小小输入法的外挂模式使用。
Linux版本在gvim或者vim没编译入输入法支持的时候使用。

还有一个gvim和小小输入法的冲突,小小输入法激活时会自动切换到中文状态,gvim进行状态管理时就会出现无法回到临时英文的情况。最新测试版对此进行了处理。

返回顶部