Skip to content
Bruno Heridet edited this page Sep 7, 2017 · 12 revisions

73 header files

The following table offers a bird eye view of kakoune C++ source code.

alias_registry.hh Registry to add/remove command aliases
array_view.hh ArrayView a non owning view into consecutive memory
assert.hh kak_assert macro and associated utility functions
backtrace.hh Callstack gathering utility
buffer.hh
buffer.inl.hh
buffer_manager.hh
buffer_utils.hh Various utility functions related to buffers
changes.hh Utilities for updating ranges/selections according to buffer changes
client.hh
client_manager.hh
clock.hh Aliases for Clock and Timepoint
color.hh Struct Color { r, g, b }
command_manager.hh
commands.hh
completion.hh Build CandidateList from a string query used to populate menus
context.hh Jumplist
coord.hh BufferCoord, DisplayCoord
diff.hh Diff algorithm implementation used on file reloading
display_buffer.hh A DisplayBuffer has a vector of DisplayLine made of DisplayAtom
enum.hh Utilities for ad-hoc reflection support for enums
env_vars.hh
event_manager.hh
exception.hh
face.hh Face struct { fg, bg, attributes }
face_registry.hh This registry maps Faces with FaceAliases (like "Prompt"). Provides get_face()
file.hh Connect buffers and the underlying file system representation through read/write operations
flags.hh Utilities for adding flag like bitwise operations on enum types
hash.hh
hash_map.hh Custom insertion order preserving hash map implementation
highlighter_group.hh
highlighter.hh An Highlighter is a function which mutates a DisplayBuffer in order to change the visual representation of a file. It could be changing text color, adding information text (line numbering for example) or replacing buffer content (folding for example)
highlighters.hh
hook_manager.hh
input_handler.hh modes definition: Normal, Insert, Menu, Prompt…
insert_completer.hh
json_ui.hh RPC interface emitting JSON to stdout instead of printing box on the screen
keymap_manager.hh
keys.hh
line_modification.hh
memory.hh Utilities for tracking where memory is allocated
meta.hh meta programming utilities
ncurses_ui.hh Draw the screen, the menus, the info-boxes.
normal.hh
optional.hh
option.hh
option_manager.hh
option_types.hh
parameters_parser.hh ParametersParser provides tools to parse command parameters. There are 3 types of parameters: * unnamed options, which are accessed by position (ignoring named ones) * named boolean options, which are enabled using '-name' syntax * named string options, which are defined using '-name value' syntax
ranges.hh Various container related utilities, such as range based adapters and pipe syntax support (container | filter() | transform()...
ranked_match.hh Fuzzy matching completion ranking utilities
ref_ptr.hh Intrusive reference counter pointer implementation
regex.hh Regular expression wrapping class, providing correct utf8 support on top of boost::regex
register_manager.hh StaticRegister, DynamicRegister with get/set operations
remote.hh Client/Server communication code
safe_ptr.hh Special RefPtr variant that does not participate in lifetime handling, but asserts at destruction that the ref count is 0
scope.hh Nested bags: global -> buffer -> window. Bring together: OptionManager, HookManager, KeymapManager and AliasRegistry
selection.hh
selectors.hh select_word, select_to_next_word, select_paragraph, select_matching…
shared_string.hh
shell_manager.hh Manager in charge of evaluating %sh{ } blocks
string.hh
unicode.hh
units.hh LineCount, ByteCount, CharCount, ColumnCount
unit_tests.hh
user_interface.hh Abstract class for Ncurses, JSON and dummy UIs
utf8.hh utf8 decoding/encoding support functions
utf8_iterator.hh utf8 adapter iterator
utils.hh
value.hh Value class, able to contain an object of any other type
vector.hh Vector type using specific memory domain
window.hh A view on a Buffer. set_dimensions, scroll…
word_db.hh Word Database support, maintaining the list of words available in a buffer for fast word completion
Clone this wiki locally