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. | + | ** [[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. | + | ** [[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 | + | * 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 |
− | * | + | * [[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 |
− | * | + | * 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
- Multiple compiler support:
- GNU GCC (incl. GFortran) (Linux)
- MinGW GCC (incl. GFortran) (Win32)
- MSP430 GCC (Win32)
- TriCore GCC (Win32, Linux)
- PowerPC GCC (Win32, Linux)
- Apple GCC (Xcode) (Mac OS X)
- Microsoft Visual C++ Toolkit 2003 (Win32)
- Microsoft Visual C++ 2005 (Win32)
- Borland's C++ Compiler 5.5 (Win32)
- DigitalMars C/C++ (Win32)
- Open Watcom (Win32)
- Intel C++ compiler (Win32)
- Small Device C Compiler (SDCC)
- Cygwin (Win32)
- GNU GCC Objective-C
- Digital Mars D
- GDC D Compiler
- LLVM D Compiler
- Very fast custom build system (no makefiles needed)
- Support for parallel builds (utilizing your CPU's extra cores)
- Multi-target projects
- Workspaces to combine multiple projects
- Inter-project dependencies inside workspace
- Imports MSVC projects and workspaces (NOTE: assembly code not supported yet)
- Imports Dev-C++ projects
- Clangd LSP support
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
- Syntax highlighting, customizable and extensible
- Code folding for C++, Fortran, Python, XML, and multiple other languages
- Tabbed interface
- Code completion
- Class Browser
- Smart indent
- One-key swap between .h and .c/.cpp files
- Custom keyboard shortcuts
- Open files list for quick switching between files (optional)
- External customizable "Tools"
- To-do list management with different users
Plugins
- Fully customizable through plugins
- Automatically format source code to the desired style
- Spell-check on strings and comments (svn only)
- Rapid application development tool for wxWidgets based GUIs
- Nassi–Shneiderman diagramming
- Integrated hex editor
- And much more...