-
正文
引言
ABAP是一种和当代编程语言在许多方面有着相当不同的编程语言。ABAP的某些方面可能会让我们奇怪,为什么它会如此复杂?而它的某些方面又是那么杰出,给予了ABAP开发者们比其它任何语言更多的便利。
我发现有两样东西太cool了:
- 朴实的IDE(ABAP Editor)以及
- 酷炫的调试器
尽管SAP的IDE不支持某些更加有名的IDE(比如Eclipse)的一些特点,我依然发现在ABAP Editor中写代码要比其它IDE舒服太多。原因在于以下的快捷键以及它的可定制性。我会列出一些我常用的功能清单,如果没了它们,我可能就没办法写ABAP代码了。
2017.01.09更新:如果你发现某个快捷键不可用,那么很可能是热键冲突的原因。比如,在Windows 7下,QQ输入法和解除注释快捷键是冲突的。
大部分ABAP程序员甚至只有一点ABAP经验的人可能已经了解下面清单的部分内容了。如果你是这样的话,请忽略它们。如果你不是的话,那这部分就是为你准备的。
快捷键
快捷键 效果
Ctrl + D
复制行.
例子 i_vbap TYPE STANDARD TABLE OF vbap + Ctrl-D = i_vbap TYPE STANDARD TABLE OF vbap
i_vbap TYPE STANDARD TABLE OF vbapCtrl + /
跳转到左上角我们输入T-CODE的输入框。这个真的很方便,省去了从键盘切换到鼠标的时间,有的时候你切换键盘和鼠标再回到键盘仅仅是为了点击这个输入框
Ctrl + J
将每个单词的首字母转换为大写,写注释的时候十分有用。
例子: * this is a comment which will give absolutely no useful information 将转换为
* This Is A Comment Which Will Give Absolutely No Useful InformationCtrl + I &
Ctrl + Shift + I增量搜索。 这是查找(Ctrl + F) 功能的一个小小增强,可以在你键入的同时搜索,对没耐心的人来说很有用 加上Shift反向搜索
Ctrl + K
大小写切换.
Alt + 选择
在你指向选择表中某些字段的情况下,自动选择是一个很有用的功能。
例子:caufv–aufnr,
caufv–werks,
caufv–objnr,
caufv–plnbez,
caufv–gamng,
caufv–gasmg,
caufv–gmein,
caufv–plnnr,
caufv–plnal,
caufv–dispo,
caufv–fevor,
caufv–cy_seqnr ,
caufv–aufpl,
caufv–gstrp,
caufv–gltrp,
caufv–gstrs,
caufv–gltrs,
caufv–gstri,
caufv–gltri,
你可以按住ALT键来把下面的值选中并复制到剪切板中(类似Ctrl+Y)
aufnr,
werks,
objnr,
plnbez,
gamng,
gasmg,
gmein,
plnnr,
plnal,
dispo,
fevor,
cy_seqnr ,
aufpl,
gstrp,
gltrp,
gstrs,
gltrs,
gstri,
gltri,
Tab & Shift tab
增加和删除缩进
Ctrl + O
前往程序的某一行
Ctrl + Shift + S
把当前文件以ABAP格式保存到桌面上,因为学会了这个快捷键,我才了解到.abap格式的存在
Ctrl + Selection
当你按住Ctrl选择 **** + -> or <- 的时候,可以选取到符号左侧或者右侧的单词
Ctrl + . & Ctrl + ,
注释和解除注释
Ctrl+Alt+T
交换当前行与上一行的位置。(译者注:个人测试未成功)
例子: INCLUDE ZTEST_ABAP_HTTP_CLIENT_TOP.
INCLUDE ZTEST_ABAP_HTTP_CLIENT_C01. 变为
INCLUDE ZTEST_ABAP_HTTP_CLIENT_C01.
INCLUDE ZTEST_ABAP_HTTP_CLIENT_TOP.
Ctrl+Shift+L/X 删除整行 Ctrl + ] & Ctrl + [ 跳转到上一个段落、下一个段落 段落是用句子间留空行的方式创建的
Ctrl + Shift + Num8 &
Ctrl + Shift + Num2在编辑器中以行为单位上下移动,光标位置不随之改变
这个和Page Up & Page Down相似,只是每次移动的是行而不是整页
Ctrl + Spacebar 显示补全选项列表(译者注:可能和输入法冲突)
例子: 输入CREATE之后,按 Ctrl + Spacebar将会显示一个列表让你选择DATA或者OBJECT
更多编辑器工具
除了这个,还有一些其它东西可以在编辑器选项中设置。
代码模板
这里我使用了一个文本模板。它可以用在标记修改、或者定义以及实现本地类的情况,等等。
* Begin of Insertion <SID>K12345 <username>
* End of Insertion <SID>K12345 <username>当我在编辑器输入i*的时候,它可以提示代码的补全…
- 当我点击tab补全的时候,弹出了TR号对话框
- 我们给出的TR号将会被添加到注释中。
变量名补全
这是一个小小的设置,但是它会将你从不停地复制粘贴/重复输入各种小单词的繁琐中拯救出来。
- 当你选中这个选项之后,他会提示你每一个变量名比如…
在长变量名的情况下特别有用。
结论
除了编辑器和调试器功能,导航和使用过的清单(used-list,似乎是指程序中查找功能)也是我们经常使用的功能。由于这些特性,代码维护和支持的工作变得相对而言不那么繁重了。
另一个比较cool的地方是可以使用API来拓展核心编辑器的功能,这使得应用开发者也可以使用代码自定义编辑器特征。因为任何第三方开发者都有可能借此产生有关编辑器拓展的好主意,SAP方面也能由此得到有创意的东西。
就我目前的探索情况,我还没有发现任何BADI或者类可以用于执行编辑器功能,也许我应该多找找或者再等等。
更新:这篇博文得到的反响感动了我,让我去更深入地挖掘这个主题,之后我遇到了这个:
编程快捷键——极客风格
大部分列出的快捷键和没列出的快捷键可以在SAP-GUI编辑器选项中查看。
还是那样,点击编辑器界面右下角的编辑器选项按钮,
- 然后如图选择键盘选项…
现在,大部分快捷键都在上面的清单中列出来了。
我们可以按自己的意愿重新分配任何快捷键。
也有些没有默认分配快捷键的cool功能,Copy Append就是其中之一,很有用,而且未分配。
- 现在,根据新设置,按Ctrl+Alt+C,我就可以将内容追加到剪切板了。
- + Ctrl + Alt + C
- +=
- 相似地,你可以设置Cut Append,跳转到书签,格式化选择文本等等..
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/20104.html