You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
eidheim ef5561672c Corrected add_definitions to add_compile_options 8 years ago
ci Fixed static analysis ci script. Since static analysis is performed through clang++, the clang++ compilation was removed 8 years ago
cmake_modules Updated submodules and modernized cmake files 8 years ago
debian Fixes #251: Go to Usage and Rename now includes unopened files. Also includes various other cleanups related to this work. 8 years ago
docs Fixes #251: Go to Usage and Rename now includes unopened files. Also includes various other cleanups related to this work. 8 years ago
libclangmm@817bbbfb1d Updated submodules and modernized cmake files 8 years ago
share Icon now also set in MacOS 9 years ago
src Minor optimization of Dispatcher::dispatcher handler 8 years ago
tests Fixes crash that could happen when performing compile and run and start debug at approximately the same time. Project objects are now kept alive for as long as they are needed. Also removed Terminal::InProgress since it could lead to unsafe code in the future. 8 years ago
tiny-process-library@72790542e0 Updated submodules and modernized cmake files 8 years ago
.gitignore Fixes #251: Go to Usage and Rename now includes unopened files. Also includes various other cleanups related to this work. 8 years ago
.gitmodules Updated tiny-process-library submodule 10 years ago
.travis.yml Fixed static analysis ci script. Since static analysis is performed through clang++, the clang++ compilation was removed 8 years ago
CMakeLists.txt Corrected add_definitions to add_compile_options 8 years ago
LICENSE Update LICENSE 10 years ago
README.md Another update to Clang-Tidy feature in README.md 8 years ago
appveyor.yml update system before pacman 9 years ago

README.md

juCi++ Build Status Build status

a lightweight, platform independent C++-IDE with support for C++11, C++14, and experimental C++17 features depending on libclang version.

About

Current IDEs struggle with C++ support due to the complexity of the programming language. juCI++, however, is designed especially towards libclang with speed, stability, and ease of use in mind.

Features

  • Platform independent
  • Fast, responsive and stable (written extensively using C++11/14 features)
  • Syntax highlighting for more than 100 different file types
  • C++ warnings and errors on the fly
  • C++ Fix-its
  • Integrated Clang-Tidy checks possible through clang plugins, for instance (recreating existing build is needed):
    CXX=clang++ CXXFLAGS="-Xclang -add-plugin -Xclang clang-tidy -Xclang -plugin-arg-clang-tidy -Xclang -checks='-*,clang-analyzer-core.*'" juci [project-path]
    
  • Debug integration, both local and remote, through lldb
  • Supports the following build systems:
    • CMake
    • Meson
  • Git support through libgit2
  • Fast C++ autocompletion
  • Keyword and buffer autocompletion for other file types
  • Tooltips showing type information and doxygen documentation (C++)
  • Rename refactoring across files (C++)
  • Highlighting of similar types (C++)
  • Automated documentation search (C++)
  • Go to declaration, implementation, methods and usages (C++)
  • Find symbol through Ctags
  • Spell checking depending on file context
  • Run shell commands within juCi++
  • Regex search and replace
  • Smart paste, keys and indentation
  • Auto-indentation of C++ file buffers through clang-format
  • Source minimap
  • Split view
  • Full UTF-8 support
  • Wayland supported with GTK+ 3.20 or newer

See enhancements for planned features.

Screenshots

Dependencies

  • boost-filesystem
  • boost-serialization
  • gtkmm-3.0
  • gtksourceviewmm-3.0
  • aspell
  • libclang
  • lldb
  • libgit2
  • libclangmm (downloaded directly with git --recursive, no need to install)
  • tiny-process-library (downloaded directly with git --recursive, no need to install)

Installation

See installation guide.

Documentation

See how to build the API doc.