jjzjj

《UE4开发笔记》Tip 0 Rider的五个必备技巧

籽麟网络 2024-01-21 原文

在UE4的C++工程和源码开发中,过去常使用Visual Studio系列来作为IDE,但VS始终对UE4工程支持的并不友好,小番茄Visual Assist X系列插件的安装也是十分玄学,时不时就失灵。
JetBrains推出了Rider For UE4,经过一段时间的试用,感觉在日常开发上可以完胜VS+VA的,虽然还在测试版本,但经过近年来的打磨,基本上是没碰到过什么大毛病。

这里总结Rider在写代码时一些能够大大提高效率的功能,文章内附上的快捷键是在Visual Studio模式下的。
1-编辑器快捷键
有时候在代码里需要新起一行,有时候需要在上方,有时候需要在下方,如果光标直接在行内,使用Enter会把一行拆断,所以我们常常是使用Home->Enter/End->Enter的两步方式实现,右手需要按两次,比较费事,这在Rider中是有快捷键的:

Ctrl+Enter:上方新起一行
Shift+Enter:下方新起一行
Ctrl和Shift的上下关系稍微有点反直觉,可以自行在Setting->KeyMap里修改

一些其他行编辑快捷键:

Ctrl+L:删除行
Ctrl+D:复制行/选中块
Ctrl+Alt+Shift+Up/Down:上下移动行(不破坏块结构,还蛮神奇,就是反应有时候有点慢)
除了Rider自身在代码左侧提供的代码块折叠功能,还可以手动选中需要折叠的区域,使用快捷键折叠:

Ctrl+M, H:折叠选中(Hide)
Ctrl+M, E:展开(Expand)
Ctrl+M, S:折叠(Shrink)
2-搜索快捷键
双击Shift/Ctrl+T:全局快速搜索(Search Everywhere),精简版的Find in Files,找一些项目里关键类的文件比较方便;
Ctrl+F:在文件中查找,文件中选中内容再搜索可以不用再填写搜索内容;
Ctrl+Shift+F:在所有文件中搜索,搜索速度会慢一点,但比快速搜索更全;
Ctrl+Shift+T:搜索文件,用于按名字搜索文件(快速搜索中自动包含该选项)
Alt+:用于快速搜索当前文件内的一些方法/成员
3-导航快捷键
除了上面提到的文件内快速搜索方法,还有一些文件内快速导航的方法:

Ctrl+[:移到方法/类定义的第一行
Alt+Up:移动到上一个方法
Alt+Down:移动到下一个方法
Ctrl+G:移动到指定行/列号

一种比较特殊的文件内快速导航是结构视图(Structure),可以以列表的方式直接查看当前文件内的类、方法、成员函数等的情况,打开的快捷键是Ctrl+Alt+F,也可以在左下角找到选项页按钮。
代码页(Tab)导航的快捷键:

鼠标中键单击Tab:关闭Tab页(就不用点小叉叉了)
Ctrl+F4:关闭当前Tab页(你甚至可以不用鼠标)
Alt+Left/Right:左右切换显示的Tab页
Ctrl+Tab:使用Switcher快速切换Tab页
Shift+F4:使用独立新窗口打开Tab页
文件级别的导航快捷键:

Ctrl+,:最近文件
Ctrl+Shift+,:最近修改过的文件
Alt+`:导航菜单(当前文件/选中内容)
Alt+Shift+L:在解决方案目录里定位当前文件
一些类/函数定义相关的文件导航

F12:找到定义(Definition)/使用(Usage)
Shift+F12:查找使用(Usage)
Alt+Shift+F12:快速展示使用(Usage)
Ctrl+F12:查找实现(Implementation)
Ctrl+Shift+F11:找到类型声明(Type Declaration)
4-书签视图(Bookmarks)
在项目里阅读大量的代码时,经在各个文件各个函数中导航来导航去的,一来二去的就容易在其中迷失了自我,Rider提供了书签(Bookmarks)管理我们常去的代码位置或者一些传送门。

打开书签的快捷键:Alt+2,或者在编辑器左下角可以找到,这是所有书签的管理页,其中还有自定义书签名、添加书签列表等操作。
Ctrl+K, K:在当前行添加普通书签,会看到行号旁边多出一个旗帜;
Ctrl+F11:添加有助记符号的书签,可以给这个书签添加一个助记符旗帜来代替普通的旗帜,更加有标示性;
Ctrl+`:弹出一个浮窗快速,单击书签可以快速预览对应的代码内容
5-继承视图(Hierarchy)
在想了解各个类之间的继承关系时,Rider提供了一个非常有用的功能,就是继承视图(Hierarchy)。

选中需要查看的类,然后使用Ctrl+E, H就可以打开对应的继承视图,上面有两个选项比较关键,第一个是查看自己继承了哪些父类(Supertypes),第二个是查看自己有哪些子类(Subtypes)。

使用继承视图要比自己一个个的按F12然后在各个文件之间脑补出各个类的继承关系要直接了当的多。

文章转自:《UE4开发笔记》Tip 0 Rider的五个必备技巧_其他-答学网

作者:答学网,转载请注明原文链接:http://www.dxzl8.com/

有关《UE4开发笔记》Tip 0 Rider的五个必备技巧的更多相关文章

  1. UE4 源码阅读:从引擎启动到Receive Begin Play - 2

    一、引擎主循环UE版本:4.27一、引擎主循环的位置:Launch.cpp:GuardedMain函数二、、GuardedMain函数执行逻辑:1、EnginePreInit:加载大多数模块int32ErrorLevel=EnginePreInit(CmdLine);PreInit模块加载顺序:模块加载过程:(1)注册模块中定义的UObject,同时为每个类构造一个类默认对象(CDO,记录类的默认状态,作为模板用于子类实例创建)(2)调用模块的StartUpModule方法2、FEngineLoop::Init()1、检查Engine的配置文件找出使用了哪一个GameEngine类(UGame

  2. LC滤波器设计学习笔记(一)滤波电路入门 - 2

    目录前言滤波电路科普主要分类实际情况单位的概念常用评价参数函数型滤波器简单分析滤波电路构成低通滤波器RC低通滤波器RL低通滤波器高通滤波器RC高通滤波器RL高通滤波器部分摘自《LC滤波器设计与制作》,侵权删。前言最近需要学习放大电路和滤波电路,但是由于只在之前做音乐频谱分析仪的时候简单了解过一点点运放,所以也是相当从零开始学习了。滤波电路科普主要分类滤波器:主要是从不同频率的成分中提取出特定频率的信号。有源滤波器:由RC元件与运算放大器组成的滤波器。可滤除某一次或多次谐波,最普通易于采用的无源滤波器结构是将电感与电容串联,可对主要次谐波(3、5、7)构成低阻抗旁路。无源滤波器:无源滤波器,又称

  3. 动漫制作技巧如何制作动漫视频 - 2

    动漫制作技巧是很多新人想了解的问题,今天小编就来解答与大家分享一下动漫制作流程,为了帮助有兴趣的同学理解,大多数人会选择动漫培训机构,那么今天小编就带大家来看看动漫制作要掌握哪些技巧?一、动漫作品首先完成草图设计和原型制作。设计草图要有目的、有对象、有步骤、要形象、要简单、符合实际。设计图要一致性,以保证制作的顺利进行。二、原型制作是根据设计图纸和制作材料,可以是手绘也可以是3d软件创建。在此步骤中,要注意的问题是色彩和平面布局。三、动漫制作制作完成后,加工成型。完成不同的表现形式后,就要对设计稿进行加工处理,使加工的难易度降低,并得到一些基本准确的概念,以便于后续的大样、准确的尺寸制定。四、

  4. 玩以太坊链上项目的必备技能(初识智能合约语言-Solidity之旅一) - 2

    前面一篇关于智能合约翻译文讲到了,是一种计算机程序,既然是程序,那就可以使用程序语言去编写智能合约了。而若想玩区块链上的项目,大部分区块链项目都是开源的,能看得懂智能合约代码,或找出其中的漏洞,那么,学习Solidity这门高级的智能合约语言是有必要的,当然,这都得在公链``````以太坊上,毕竟国内的联盟链有些是不兼容Solidity。Solidity是一种面向对象的高级语言,用于实现智能合约。智能合约是管理以太坊状态下的账户行为的程序。Solidity是运行在以太坊(Ethereum)虚拟机(EVM)上,其语法受到了c++、python、javascript影响。Solidity是静态类型

  5. Unity Shader 学习笔记(5)Shader变体、Shader属性定义技巧、自定义材质面板 - 2

    写在之前Shader变体、Shader属性定义技巧、自定义材质面板,这三个知识点任何一个单拿出来都是一套知识体系,不能一概而论,本文章目的在于将学习和实际工作中遇见的问题进行总结,类似于网络笔记之用,方便后续回顾查看,如有以偏概全、不祥不尽之处,还望海涵。1、Shader变体先看一段代码......Properties{ [KeywordEnum(on,off)]USL_USE_COL("IsUseColorMixTex?",int)=0 [Toggle(IS_RED_ON)]_IsRed("IsRed?",int)=0}......//中间省略,后续会有完整代码 #pragmamulti_c

  6. Tcl脚本入门笔记详解(一) - 2

    TCL脚本语言简介•TCL(ToolCommandLanguage)是一种解释执行的脚本语言(ScriptingLanguage),它提供了通用的编程能力:支持变量、过程和控制结构;同时TCL还拥有一个功能强大的固有的核心命令集。TCL经常被用于快速原型开发,脚本编程,GUI和测试等方面。•实际上包含了两个部分:一个语言和一个库。首先,Tcl是一种简单的脚本语言,主要使用于发布命令给一些互交程序如文本编辑器、调试器和shell。由于TCL的解释器是用C\C++语言的过程库实现的,因此在某种意义上我们又可以把TCL看作C库,这个库中有丰富的用于扩展TCL命令的C\C++过程和函数,所以,Tcl是

  7. Linux网络编程必备的POSIX API的细节 - 2

    目录POSIXAPI大集合五元组三次握手的过程,内核协议栈分析listen函数DDOS攻击,洪水攻击DDOS攻击的应对措施数据发送 怎么保证顺序?如何保证包地顺序到达(序号+确认应答机制+重传)TCP断开连接的过程问题1.大量的CLOSE_WAIT+FIN_WAIT2是为啥?time_wait状态存在的原因?POSIXAPI大集合五元组(sip,sport,dip,dport,protocol)三次握手的过程,内核协议栈分析内核协议栈中是有内核数据结构的.  我们send/write数据,都是先发送到内核协议栈中,然后由内核协议栈封装发送到物理介质中传输到对端的对端的接收过程也是经有内核协议栈

  8. 计算机网络笔记:TCP三次握手和四次挥手过程 - 2

    TCP是面向连接的协议,连接的建立和释放是每一次面向连接的通信中必不可少的过程。TCP连接的管理就是使连接的建立和释放都能正常地进行。三次握手TCP连接的建立—三次握手建立TCP连接①若主机A中运行了一个客户进程,当它需要主机B的服务时,就发起TCP连接请求,并在所发送的分段中用SYN=1表示连接请求,并产生一个随机发送序号x,如果连接成功,A将以x作为其发送序号的初始值:seq=x。主机B收到A的连接请求报文,就完成了第一次握手。客户端发送SYN=1表示连接请求客户端发送一个随机发送序号x,如果连接成功,A将以x作为其发送序号的初始值:seq=x②主机B如果同意建立连接,则向主机A发送确认报

  9. 华为数通笔记VXLAN&BGP EVPN - 2

    VXLAN简介定义RFC定义了VLAN扩展方案VXLAN(VirtualeXtensibleLocalAreaNetwork,虚拟扩展局域网)。VXLAN采用MACinUDP(UserDatagramProtocol)封装方式,是NVO3(NetworkVirtualizationoverLayer3)中的一种网络虚拟化技术。目的随着网络技术的发展,云计算凭借其在系统利用率高、人力/管理成本低、灵活性/可扩展性强等方面表现出的优势,已经成为目前企业IT建设的新趋势。而服务器虚拟化作为云计算的核心技术之一,得到了越来越多的应用。服务器虚拟化技术的广泛部署,极大地增加了数据中心的计算密度;同时,为

  10. [蓝桥杯单片机]学习笔记——串口通信的基本原理与应用 - 2

    目录一、原理部分1、什么是串行通信(1)并行通信与串行通信(2)串行通信的制式(3)串行通信的主要方式  2、配置串口(1)SCON和PCON:串行口1的控制寄存器(2)SBUF:串行口数据缓冲寄存器 (3)AUXR:辅助寄存器​编辑(4)ES、PS:与串行口1中断相关的寄存器(5)波特率设置  3、串口框架编写二、程序案例一、原理部分1、什么是串行通信(1)并行通信与串行通信微控制器与外部设备的数据通信,根据连线结构和传送方式的不同,可以分为两种:并行通信和串行通信。并行通信:数据的各位同时发送与接收,每个数据位使用一条导线,这种方式传输快,但是需要多条导线进行信号传输。串行通信:数据一位一

随机推荐