1.11.5 项目切换
多个项目同时在CodeBlocks中打开时,用户希望快速的在这些项目之间切换。CodeBlocks提供一组快捷键来实现:
Alt + F5:将视图中前一个项目设为激活(Active)项目。(译者注:
类似于VS中将某个项目设为启动项目。)
? ? ?
Alt + F6:将视图中后一个项目设为激活项目。
F11:在编辑器中切换源文件(name.cpp)和头文件(name.h)。
1.11.6 扩展编译器设置
在编译一个项目的过程中,编译信息将会显示在消息窗口的Build Log视图中。如果你想获取更详细的编译信息,通过菜单[Settings->Compiler and Debugger],在Other Settings面板中选择Compiler logging下拉列表项:
“Full command line”选项意味着将在Build Log视图中显示所有的编译信息。可以将这些日志信息保存为HTML文件,通过选中”Save build log to HTML file when finished’。另外,通过选中”Display build process bar”,CodeBlocks支持在Build Log视图中显示编译进度。
1.11.7 编辑器缩放
CodeBlocks提供了一个非常高效的编辑器。这个编辑器允许你缩放打开文
本的字体大小。如果你的鼠标有滚轮,你只要按住Ctrl键,同时滚支鼠标滚轮,就可以实现文本的缩放。
提示:通过菜单[Edit->Special commands->Zoom->Reset]来重置缩放。 1.11.8 自动换行模式
在CodeBlcoks中打开一个文本文件,使用自动换行模式可以将很长的行以多行的形式显示在一个屏幕内,有利于编辑。通过菜单[Settings->Editor->Other Options],选中Word warp来激活自动换行模式。?
1.11.9 块选文本
CodeBlocks支持在代码编辑器中块选文本。按住Alt键的同时按住鼠标左键在编辑器选择一块区域。如果你想选择数组的几列进行复制和粘贴,这个功能是非常有用的(译者注:VS也提示类似的功能,快捷键也一样。)。如图:
1.11.10 代码折叠
CodeBlocks支持代码折叠,允许将函数、类的实现折叠起来。
提示:通过菜单[Settings->Editor->Folding],可以设置代码折叠的样式和层次限制(depth limit)。
1.11.11 自动完成
在CodeBlocks中打开一个项目时,编译器的相关目录(include目录)与项目的源文件/头文件将被解析,提取有关类型定义、函数、宏等的信 息,CodeBlocks使用这些信息来实现自动完成功能。通过菜单[Settings->Editors->Code completion]启用该功能,通过快捷键 Ctrl + Space 来显示提示信息(译者注:默认的快捷键 Ctrl + Space 不适合中国人的键盘习惯,建议改成其他快捷键。)。通过[Settings->Editor->Syntax highlighting],你可以添加自定义的关键字。
1.11.12 查找破损文件(Find broken files)
如果一个文件已经从磁盘中删除,但它仍然被包含在项目文件(project.cbp)中(译者注:项目的文件信息保存在*.cbp文件里。),这个文件在项目面板中显示一个破损符号(如下图)。应该通过上下文菜单[Remove file from project]将它从项目中移除。
一个大的工程可能包含许多子文件夹,搜索破损文件会非常花费时间。CodeBlocks提供ThreadSearch插件来解决这个问题。在ThreadSearch中输入要查找的表达式,并设置查找的范围:“Project files”或者“Workspace files”,ThreadSearch将会分析所有包括在项目或者解决方案中的文件。当
ThreadSearch找到一个跋损文件的时候,会发出一个文件丢失的错误。
1.11.13 包含库
在项目的编译选项中,你可以通过”Add”按键添加项目所使用的库。库可以以绝对路径的形式给出,也可以只给出名称而无需提供lib前缀和文件扩展名。
例如:存在这样的一个库文件:
1.11.14 对象链接顺序
在编译过程中,源文件name.c/cpp将会被编译成目标文件name.o,然后链接器把独立的目标文件链接成可执行文件name.exe(对于嵌入式 系统,将链接成name.elf)。这种情况下,可能需要预先定义对象链接的顺序。在CodeBlocks中,可以设置相关源文件的优先级来实现。在上下 文菜单中选择[Properties],在Build标签中定义。较低优先级使文件较先链接。
1.11.15 自动保存
CodeBlcoks允许自动保存当前正在编辑的文件和项目,或者对它们进行备份。可以通过菜单[Settings->Environment->Autosave]来激活该功能。
1.11.16 文件扩展名设置
在CodeBlocks中,可以选择多次方式来处理文件不同后缀的文件,可以在菜单[Settings->Environment settings->Files extension handling]设置相应的处理方式:“Launch an external program”指定外部程序来打开文件;“Launch the associated application”使用系统默认程序来打开文件;“Open it in Code::Blocks editor”使用Code::Blocks编辑器来打开文件。如下图:
1.12 通过命令行操作CodeBlocks
CodeBlocks能够通过命令行来运行。在这种情况下,需要通过一些选项来控制项目的构建过程。因为CodeBlocks是scriptable的,所以CodeBlocks项目的构建可以集成到你自己的工作过程中。
codeblocks.exe /na /nd --no-splash-screen --built
--file=
/h, --help:显示帮助信息。
/na, --no-check-associations:不执行文件关联检查。(windows only) /nd, --no-dde:不启动DDE服务。(windows only) /ni, --no-ipc:不启动IPC服务。(Linux and Mac only)
/ns, --no-splash-screen:应用程序启动的时候,不显示启动画面。 /d, --debug-log:显示应用程序的调试日志 --prefix=
/p, --personality=
--rebuild:清理并重新编译工程或解决方案。 --build:编译工程或解决方案。
--target=
>
的输出重定向,并非CodeBlocks内置选项。
1.13 快捷键
在IDE中使用快捷键比使用鼠标更为高效。下表给出CodeBolcks默认的快捷键。(译者注:笔者将CodeBlocks中的快捷键设置为与VS大体一致,使用CodeBlocks时非常顺手。)
Function Undo last action Redo last action Shortcut Key Ctrl + Z Ctrl + Shift + Z Cut selected text Ctrl + X Copy selected text Ctrl + C Paste text from Ctrl + V clipboard Select all text Ctrl + A Swap header / source F11 Comment highlighted Ctrl + Shift code + C Uncomment highlighted code Duplicate caret is on Auto-complete Abbreviations Show call tip Ctrl + Shift + X line Ctrl + D / Ctrl + Space / Ctrl + J Ctrl + Shift + Space Swap line caret is on with line above Ctrl + T it Toggle bookmark Ctrl + B Goto previous Alt + PgUp bookmark Goto next bookmark Alt + PgDown Toggle current F12 block folding Toggle all folds Shift + F12 CodeBlocks代码编辑器组件提供的快捷键,这些快捷键不能重新绑定