Difference between revisions of "Feature List"

From Code::Blocks
m (Listed Clangd LSP support as a feature)
 
(7 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:'''
** [[Installing a supported compiler#Downloading the GNU GCC compiler .26 GDB debugger|GNU GCC]] ([[Installing Fortran Compiler|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)
** [[Installing a supported compiler#MinGW.2FGCC|MinGW GCC]] ([[Installing Fortran Compiler|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)
Line 28: Line 28:
 
* '''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
 
* [[The build process of Code::Blocks#Using project dependencies|Inter-project dependencies]] inside workspace
 
* [[The build process of Code::Blocks#Using project dependencies|Inter-project dependencies]] inside workspace
 
* [[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)
 
* [[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==
Line 51: 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)
 
* [[Tools+ reference|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 [[Code::Blocks Plugins|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
* [[SpellChecker|Spell-check]] on strings and comments ([[Nightly Cookbook|svn]] only)
+
* [[SpellChecker plugin|Spell-check]] on strings and comments ([[Nightly Cookbook|svn]] only)
 
* [[WxSmith tutorials|Rapid application development tool]] for [[Using wxWidgets|wxWidgets]] based GUIs
 
* [[WxSmith tutorials|Rapid application development tool]] for [[Using wxWidgets|wxWidgets]] based GUIs
* [[NassiShneiderman|Nassi–Shneiderman]] diagramming
+
* [[NassiShneiderman plugin|Nassi–Shneiderman]] diagramming
* Hex editor
+
* Integrated [[HexEditor plugin|hex editor]]
 +
* 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