Difference between revisions of "Feature List"

From Code::Blocks
m (Listed Clangd LSP support as a feature)
 
(8 intermediate revisions by 2 users not shown)
Line 4: Line 4:
 
* '''Cross-platform.''' Runs on Linux, Mac, Windows (uses wxWidgets).
 
* '''Cross-platform.''' Runs on Linux, Mac, Windows (uses wxWidgets).
 
* Written in C++. No interpreted languages or proprietary libs needed.
 
* Written in C++. No interpreted languages or proprietary libs needed.
* Extensible through plugins
+
* Extensible through [[Code::Blocks Plugins|plugins]]
  
 
==Compiler==
 
==Compiler==
 
* '''Multiple compiler support:'''
 
* '''Multiple compiler support:'''
** GNU GCC (incl. G77) (Linux)
+
** [[Installing a supported compiler#Downloading the GNU GCC compiler .26 GDB debugger|GNU GCC]] ([[Fortran support in Code::Blocks|incl. GFortran]]) (Linux)
** MinGW GCC (incl. G77) (Win32)
+
** [[Installing a supported compiler#MinGW.2FGCC|MinGW GCC]] ([[Fortran support in Code::Blocks|incl. GFortran]]) (Win32)
 
** MSP430 GCC (Win32)
 
** MSP430 GCC (Win32)
 
** TriCore GCC (Win32, Linux)
 
** TriCore GCC (Win32, Linux)
 
** PowerPC GCC (Win32, Linux)
 
** PowerPC GCC (Win32, Linux)
** Apple GCC (Xcode) (Mac OS X)
+
** [[Installing a supported compiler#Downloading the GNU GCC compiler .26 GDB debugger 2|Apple GCC (Xcode)]] (Mac OS X)
** Microsoft Visual C++ Toolkit 2003 (Win32)
+
** [[Integrating Microsoft Visual Toolkit 2003 with Code::Blocks IDE|Microsoft Visual C++ Toolkit 2003]] (Win32)
** Microsoft Visual C++ 2005 (Win32)
+
** [[Installing a supported compiler#Microsoft Visual C.2B.2B|Microsoft Visual C++ 2005]] (Win32)
** Borland's C++ Compiler 5.5 (Win32)
+
** [[Installing a supported compiler#Borland C.2B.2B Compiler 5.5|Borland's C++ Compiler 5.5]] (Win32)
** DigitalMars C/C++ (Win32)
+
** [[Installing a supported compiler#Digital Mars C.2FC.2B.2B Free Compiler|DigitalMars C/C++]] (Win32)
** Open Watcom (Win32)
+
** [[Using Code::Blocks with Open Watcom|Open Watcom]] (Win32)
** Intel C++ compiler (Win32)
+
** [[Installing a supported compiler#Intel C.2B.2B Compiler|Intel C++ compiler]] (Win32)
** Small Device C Compiler (SDCC)
+
** [[Using the Code::Blocks IDE with SDCC on PIC MCUs|Small Device C Compiler (SDCC)]]
** Digital Mars D
+
** [[Installing Cygwin Compiler|Cygwin]] (Win32)
 +
** [[Installing Objective-C Compiler|GNU GCC Objective-C]]
 +
** [[Installing a supported compiler#Digital Mars D Compiler for Windows|Digital Mars D]]
 
** GDC D Compiler
 
** GDC D Compiler
 
** LLVM D Compiler  
 
** LLVM D Compiler  
 
* '''Very fast''' custom build system (no makefiles needed)
 
* '''Very fast''' custom build system (no makefiles needed)
 
* Support for '''parallel builds''' (utilizing your CPU's extra cores)
 
* Support for '''parallel builds''' (utilizing your CPU's extra cores)
* Multi-target projects
+
* [[Creating a new project#Adding a new build target|Multi-target]] projects
 
* Workspaces to combine multiple projects
 
* Workspaces to combine multiple projects
* Inter-project dependencies inside workspace
+
* [[The build process of Code::Blocks#Using project dependencies|Inter-project dependencies]] inside workspace
* Imports MSVC projects and workspaces (NOTE: assembly code not supported yet)
+
* [[Integrating Microsoft Visual C 6 with Code::Blocks IDE#Working with "legacy" MSVC6 workspaces/projects|Imports MSVC projects and workspaces]] (NOTE: assembly code not supported yet)
* Imports Dev-C++ projects  
+
* Imports Dev-C++ projects
 +
* [[CB Clangd Client|Clangd LSP support]]
  
 
==Debugger==
 
==Debugger==
* Interfaces GNU GDB
+
* Interfaces [[Debugging with Code::Blocks|GNU GDB]]
 
* Also supports MS CDB (not fully featured)
 
* Also supports MS CDB (not fully featured)
 
* '''Full breakpoints support:'''
 
* '''Full breakpoints support:'''
Line 49: Line 52:
  
 
==Interface==
 
==Interface==
* Syntax highlighting, customizable and extensible
+
* [[Languages supported by Code::Blocks lexers|Syntax highlighting]], customizable and [[Creating a custom lexer for Code::Blocks editor|extensible]]
* Code folding for C++ and XML files.
+
* Code folding for C++, Fortran, Python, XML, and multiple other languages
 
* Tabbed interface
 
* Tabbed interface
* Code completion
+
* [[Code Completion plugin|Code completion]]
 
* Class Browser
 
* Class Browser
 
* Smart indent
 
* Smart indent
* One-key swap between .h and .c/.cpp files
+
* [[Keyboard Shortcuts#Editor|One-key swap]] between .h and .c/.cpp files
 +
* Custom [[Keyboard Shortcuts plugin|keyboard shortcuts]]
 
* Open files list for quick switching between files (optional)
 
* Open files list for quick switching between files (optional)
* External customizable "Tools"
+
* [[Tools+ reference|External customizable "Tools"]]
* To-do list management with different users
+
* [[To-Do List plugin|To-do list]] management with different users
  
 
==Plugins==
 
==Plugins==
* Fully customizable through plugins
+
* Fully customizable through [[Code::Blocks Plugins|plugins]]
* Automatically format source code to the desired style
+
* Automatically [[Source Code Formatter plugin|format source code]] to the desired style
* Spellcheck on strings and comments ([[Nightly Cookbook|svn]] only)
+
* [[SpellChecker plugin|Spell-check]] on strings and comments ([[Nightly Cookbook|svn]] only)
* Rapid application development tool for wxWidgets based GUIs
+
* [[WxSmith tutorials|Rapid application development tool]] for [[Using wxWidgets|wxWidgets]] based GUIs
* Nassi–Shneiderman diagramming
+
* [[NassiShneiderman plugin|Nassi–Shneiderman]] diagramming
* Hex editor
+
* Integrated [[HexEditor plugin|hex editor]]
* Custom defined tools
+
* And much more...

Latest revision as of 20:57, 12 October 2024

Highlights

  • Open Source! GPLv3, no hidden costs.
  • Cross-platform. Runs on Linux, Mac, Windows (uses wxWidgets).
  • Written in C++. No interpreted languages or proprietary libs needed.
  • Extensible through plugins

Compiler

Debugger

  • Interfaces GNU GDB
  • Also supports MS CDB (not fully featured)
  • Full breakpoints support:
    • Code breakpoints
    • Data breakpoints (read, write and read/write)
    • Breakpoint conditions (break only when an expression is true)
    • Breakpoint ignore counts (break only after certain number of hits)
  • Display local function symbols and arguments
  • User-defined watches (support for watching user-defined types through scripting)
  • Call stack
  • Disassembly
  • Custom memory dump
  • Switch between threads
  • View CPU registers

Interface

Plugins