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 a3bb0eaaa5 Hide tooktips and stop tag similar symbol cleanup. No longer activates tooltips or similar symbol tags on format style, undo, redo and paste 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 Updated dependency install for Debian/Linux Mint/Ubuntu 8 years ago
libclangmm@e8f8a04f98 Added Prettier tooltips, and cleanup of src/source* files 8 years ago
share Icon now also set in MacOS 9 years ago
src Hide tooktips and stop tag similar symbol cleanup. No longer activates tooltips or similar symbol tags on format style, undo, redo and paste 8 years ago
tests Tooltip background is now set through css instead of using deprecated functions 8 years ago
tiny-process-library@a034812647 Updated submodules 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 v1.4.2 8 years ago
LICENSE Updated license year 8 years ago
README.md Added Prettier tooltips, and cleanup of src/source* files 8 years ago
appveyor.yml say yes to all system related upgrade questions 8 years ago

README.md

juCi++ Build Status Build status

a lightweight, platform independent C++-IDE with support for C++11, C++14 and 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
  • 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++)
  • OpenCL and CUDA files are supported and parsed as C++
  • Other file types:
    • Language server protocol support is enabled if [language identifier]-language-server executable is found. This executable can be a symbolic link to one of your installed language server binaries. See language-server-protocol/specification.md for the currently defined language identifiers.
    • otherwise, only keyword and buffer completion supported
  • Find symbol through Ctags
  • Spell checking depending on file context
  • Run shell commands within juCi++
  • Regex search and replace
  • Smart paste, keys and indentation
  • Multiple cursors
  • Auto-indentation through clang-format or Prettier if installed
  • Source minimap
  • Split view
  • Multiple cursors
  • 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.