在 Joe 自己的编辑器中移动行

在 Joe 自己的编辑器中移动行

有没有办法在行中上下移动编辑?

答案1

我认为没有,至少在 joe 配置中是这样。这是我写的一对宏。 up 宏是一个相当简单的剪切和粘贴操作;在第一行调用时它不执行任何操作。 down 宏更复杂,因为在倒数第二行调用时它的行为必须有所不同(这可能只是因为我不擅长编写 joe 宏);当在最后一个不完整的行上调用时,它会在前面插入一个换行符。我将它们绑定到Ctrl+K UpCtrl+ K Down

:main
if,"line!=1",then,home,dellin,uparw,yank,uparw,endif ^K .ku  Move current line up
if,"line<lines-1",then,home,dellin,dnarw,yank,uparw,elsif,"line==lines",then,bol,rtn,else,bol,deleol,dnarw,yank,deleol,uparw,yank,endif ^K .kd  Move current line down

在jmacs配置中,有一个宏可以转置两行:

psh,if,"arg>=0",then,
  uparw,bol,markb,dnarw,markk,dnarw,
  blkmove,dnarw,
else,
  bol,markk,uparw,markb,uparw,blkmove,
  dnarw,
endif   ^X ^T                   Transpose lines

我将让一位专家评论一下这两种方法各自的优点。

相关内容