IBM PCOMM实现Ctrl+C, Ctrl+V复制粘贴

PCOMM默认不支持Ctrl+C, Ctrl+V复制粘贴,这个可以通过自定义键盘和宏脚本(Macro)来完美实现。

Ctrl+C实现复制

  1. Edit –-> Preferences –-> Keyboard…-->Customize…
  2. 点击界面上的C`键,然后在左下区域的Function下拉列表中,选中Edit Copy,之后再点击右边区域中Ctrl那一行的箭头, 这时候会发现Ctrl行的值变为Edit-Copy。

ctrl_c

点击File-–>Save保存配置。

C:\Users\Mainframer\AppData\Roaming\IBM\Personal Communications\mykeyboard.kmp

同样的方法,点击界面上的V键,然后在左下区域的Function下拉列表中,选中Edit Paste,之后再点击右边区域中Ctrl 那一行的箭头,点击File-->Save保存配置。

C:\Users\Mainframer\AppData\Roaming\IBM\Personal Communications\mykeyboard.kmp


上面配置完之后,复制粘贴算是可以工作了,但是还有一个小问题,就是Ctrl+V粘贴完光标还停留在前面,不会自动移到 后面去。

cursor_ahead

也就是说,自定义键盘的方式只能满足Ctrl+C的需求,满足不了Ctrl+V的需求,这时候需要用到Macro宏来实现了。 首先,动手写一个Macro,内容如下,保存成:

C:\Users\Mainframer\AppData\Roaming\IBM\Personal Communications\paste_cursor_end.mac

[PCOMM SCRIPT HEADER]
LANGUAGE=VBSCRIPT
DESCRIPTION=
[PCOMM SCRIPT SOURCE]
OPTION EXPLICIT
autECLSession.SetConnectionByName(ThisSessionName)

REM This line calls the macro subroutine
subSub1_

sub subSub1_()
   autECLSession.autECLOIA.WaitForAppAvailable

   autECLMacro "[edit-paste]"
   autECLMacro "[end field]"

end sub

然后,再重新设置键盘映射:

  1. Edit –-> Preferences –-> Keyboard…-->Customize…
  2. 点击界面上的V键,然后在左下区域的Macro/Script下拉列表中,选中paste_cursor_end,之后再点击右边区域中Ctrl 那一行的箭头,点击File-->Save保存配置。

C:\Users\Mainframer\AppData\Roaming\IBM\Personal Communications\mykeyboard.kmp
ctrl_v_macro

再试试,粘贴之后光标已经可以自动移到末尾了:

cursor_append

Comments !