<commit_before>#List of features that should be supported

Projects
    -List of files (source files, libraries, others)
    -How to build the project (usable for syntax highlighting)
    -Assistance for project generation and adoption

Semantic highlighting
    -Ask clang to provide context information
    -Have color schemes for various token types

Code navigation
    -Go to definition
    -Go to declaration
    -Go back
    -Easily switch between .h and .cpp
    -Find uses
    -Find template instanciations
    -Show type of object
    -Code completion

Code refactoring
    -Rename objects
    -Extract function
    -Specialize template

Special tool support
    -Define tools through input, output, path and trigger
    -Run tools on trigger (keyboard shortcut, menu, ...)
    -Allow interactive tools (such as vim)
    -Parse compiler error and warning messages
        -Jump to location
        -Apply suggested fix
    -Debugger support
        -Variable values on mouse-over
        -Display stack, breakpoints, watch, controls
    -Offer suggestions for common errors
        -On error "X is not in namespace std" offer to #include the appropriate header
        -On error "undefined reference to foobar" offer to link appropriate library

Embedded documentation
    -Cppreference
    -Qt
    -Custom<commit_msg>Markdown formatting.<commit_after># List of features that should be supported

## Projects
- List of files (source files, libraries, others)
- How to build the project (usable for syntax highlighting)
- Assistance for project generation and adoption

## Semantic highlighting
- Ask clang to provide context information
- Have color schemes for various token types

## Code navigation
- Go to definition
- Go to declaration
- Go back
- Easily switch between .h and .cpp
- Find uses
- Find template instanciations
- Show type of object
- Code completion

## Code refactoring
- Rename objects
- Extract function
- Specialize template

## Special tool support
- Define tools through input, output, path and trigger
- Run tools on trigger (keyboard shortcut, menu, ...)
- Allow interactive tools (such as vim)
- Parse compiler error and warning messages
  - Jump to location
  - Apply suggested fix
- Debugger support
  - Variable values on mouse-over
  - Display stack, breakpoints, watch, controls
- Offer suggestions for common errors
  - On error "X is not in namespace std" offer to #include the appropriate header
  - On error "undefined reference to foobar" offer to link appropriate library

## Embedded documentation
- Cppreference
- Qt
- Custom
{'fraction_non_alphanumeric': 0.053938688397361274, 'fraction_numerical': 0.0, 'mean_word_length': 3.2193126022913257, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3168658', 'n_tokens_mistral': 651, 'n_tokens_neox': 629, 'n_words': 325}