引言

  ABAP是一种和当代编程语言在许多方面有着相当不同的编程语言。ABAP的某些方面可能会让我们奇怪,为什么它会如此复杂?而它的某些方面又是那么杰出,给予了ABAP开发者们比其它任何语言更多的便利。

  我发现有两样东西太cool了:

  • 朴实的IDE(ABAP Editor)以及
  • 酷炫的调试器

  尽管SAP的IDE不支持某些更加有名的IDE(比如Eclipse)的一些特点,我依然发现在ABAP Editor中写代码要比其它IDE舒服太多。原因在于以下的快捷键以及它的可定制性。我会列出一些我常用的功能清单,如果没了它们,我可能就没办法写ABAP代码了。

大部分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 vbap

Ctrl + /

跳转到左上角我们输入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 Information

Ctrl + 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,跳转到书签,格式化选择文本等等..

本文链接:http://www.cnblogs.com/hhelibeb/p/5794460.html

英文原文:Shortcuts that can make an ABAP'er life easier

转载请注明

让ABAP开发者更加轻松的若干快捷键的更多相关文章

  1. 让ABAP开发者愈加轻松的若干快捷键

    引言 ABAP是一种和当代编程语言在许多方面有着相当不同的编程语言.ABAP的某些方面可能会让我们奇怪,为什么它会如此复杂?而它的某些方面又是那么杰出,给予了ABAP开发者们比其它任何语言更多的便利. ...

  2. 为什么ABAP开发者需要使用面向对象技术?

    ABAP对面向对象的支持已有十多年的历史,然而在生产实践中,我们对这门技术的应用十分有限. 一方面,面向过程的惯性长期存在着:另一方面,对于大部分二次开发工作而言,似乎并没有足够的理由促使开发者使用面 ...

  3. 这不是我想要的ABAP开发者

    原文在此: These Aren’t the Developers You’re Looking for 在吃饼干的过程中偶然看到这篇文章,立刻被UC化的标题吸引到了. 全文读完,感觉作者还是有点刻薄 ...

  4. vue3.0和2.0的区别,Vue-cli3.0于 8月11日正式发布,更快、更小、更易维护、更易于原生、让开发者更轻松

    vue3.0和2.0的区别Vue-cli3.0于 8月11日正式发布,看了下评论,兼容性不是很好,命令有不少变化,不是特别的乐观vue3.0 的发布与 vue2.0 相比,优势主要体现在:更快.更小. ...

  5. Netty 系列之 Netty 高性能之道 高性能的三个主题 Netty使得开发者能够轻松地接受大量打开的套接字 Java 序列化

    Netty系列之Netty高性能之道 https://www.infoq.cn/article/netty-high-performance 李林锋 2014 年 5 月 29 日 话题:性能调优语言 ...

  6. ABAP开发者上云的时候到了 - 现在大家可以免费使用SAP云平台ABAP环境的试用版了

    之前Jerry已经写了一系列SAP Cloud Platform ABAP编程环境的文章,当时使用的环境,是SAP专门为SAP社区导师们创建的. 当时也有朋友留言,询问大家何时才能使用到免费的SAP云 ...

  7. ImageKnife组件,让小白也能轻松搞定图片开发

    本期我们给大家带来的是开发者周黎生的分享,希望能给你的HarmonyOS开发之旅带来启发~ 图片是UI界面的重要元素之一, 图片加载速度及效果直接影响应用体验.ArkUI开发框架提供了丰富的图像处理能 ...

  8. 每个Android开发者必须知道的资源集锦

    英文原文:Resources every Android developer must know 随着 Android 平台持续惊人的增长,越来越多的开发人员开始工作于 Android 应用程序.而且 ...

  9. HANA CDS与ABAP CDS

    如果你在网络或者SCN上面搜索CDS,即SAP的Core Data Services,你会很容易地找到类似“Core Data Services(CDS)是一个在SAP HANA中用于定义和消费富语义 ...

随机推荐

  1. 简单java在线测评程序

    简单java程序在线测评程序 一.前言 大家过年好!今年的第一篇博客啊!家里没有网,到处蹭无线!日子过得真纠结!因为毕设的需求,简单写了一个java程序在线测评程序,当然也可以在本地测试. 二.思路 ...

  2. Java设计模式之单例模式(Singleton)

    前言: 在总结okHttp的时候,为了管理网络请求使用到了单例模式,晚上实在没啥状态了,静下心来学习总结一下使用频率最高的设计模式单例模式. 单例模式: 单例模式确保某个类只有一个实例,而且自行实例化 ...

  3. 基于讯飞语音API应用开发之——离线词典构建

    最近实习在做一个跟语音相关的项目,就在度娘上搜索了很多关于语音的API,顺藤摸瓜找到了科大讯飞,虽然度娘自家也有语音识别.语义理解这块,但感觉应该不是很好用,毕竟之前用过百度地图的API,有问题也找不 ...

  4. Git代码管理工具

    Git代码管理工具 Git 是分布式的源代码管理工具,这点区别于svn -让源代码可以被追溯,主要是记录了每次的更新了什么,如果新版本不想用,那么则可以退回之前的版本 -Git 是Linux之父当年为 ...

  5. 相克军_Oracle体系_随堂笔记003-体系概述

    1.进程结构图 对Oracle生产库来讲,服务器进程(可以简单理解是前台进程)的数量远远大于后台进程.因为一个用户进程对应了一个服务器进程. 而且后台进程一般出问题几率不大,所以学习重点也是服务器进程 ...

  6. 30 个惊艳的 Bootstrap 扩展插件

    Bootstrap 是快速开发Web应用程序的前端工具包.它是一个CSS和HTML的集合,它使用了最新的浏览器技术,给你的Web开发提供了时尚的版式,表单,buttons,表格,网格系统等等. Boo ...

  7. 使用签名来保证ASP.NET MVC OR WEBAPI的接口安全

    当我们开发一款App的时候,App需要跟后台服务进行通信获取或者提交数据.如果我们没有完善的安全机制则很容易被别用心的人伪造请求而篡改数据. 所以我们需要使用某种安全机制来保证请求的合法.现在最常用的 ...

  8. Java aes加密C#解密的取巧方法

    摘要: 项目开发过程中遇到一个棘手的问题:A系统使用java开发,通过AES加密数据,B系统使用C#开发,需要从A系统获取数据,但在AES解密的时候遇到麻烦.Java的代码和C#的代码无法互通. Ja ...

  9. C#~异步编程再续~大叔所理解的并行编程(Task&Parallel)

    返回目录 并行这个概念出自.net4.5,它被封装在System.Threading.Tasks命名空间里,主要提供一些线程,异步的方法,或者说它是对之前Thread进行的二次封装,为的是让开发人员更 ...

  10. asp.net 301重定向代码

    /// <summary> ///重定向代码 /// </summary> /// <param name="sender"></para ...