blender/extern
Jacques Lucke e8c146ed8e UI: support markdown labels
This implements a new `layout.label_markdown(text="...")` function which
supports drawing a subset of Markdown in the Blender UI. The original motivation
for this was to support markdown in a new Comment node (#163168). However, the
functionality is more useful more generally. For example it could be used to
draw extension descriptions or maybe tooltips in the future etc.

It uses the [md4c](https://github.com/mity/md4c) library for the actual markdown
parsing. It has the MIT license. It's a very simple to integrate C library, just
on .c and one .h file.

The following markdown features are supported currently:
* Headers
* Paragraphs
* Bold/italics/monospace text
* Clickable links
* Code blocks
* Inline code

Intentionally omitted:
* Tables: Could be added later.
* Images: Could be added later, but needs design regarding internet access.
* Footnotes: Could be added later if needed.
* Latex math Could be added but requires more work to render such text in the
  first place.
* Underlined and striked through text: Could be added if our font system
  supports it.
* Syntax highlighting in code blocks: Could be added later.
* Raw HTML: Unlikely that this will be supported.

All the various margins etc. are hard-coded but there is a UI to be able to find
the right values by using `4002` in the `Debug Menu`. The settings could be
theme settings but it seems overkill to add that many right now.

Pull Request: https://projects.blender.org/blender/blender/pulls/163254
2026-09-11 11:02:34 +02:00
..
audaspace Audaspace: port ffmpeg 9 support from upstream. 2026-08-19 20:00:42 +02:00
binreloc Refactor: Use more modern bf::dependencies and bf::extern in CMake 2026-01-14 17:45:17 +01:00
bullet2 CMake: rename C_* prefix to C_AND_CXX_* for flags shared by C & C++ 2026-03-23 07:41:58 +00:00
cuew CMake: Windows: Pass WIN32_LEAN_AND_MEAN as a global flag 2026-03-10 14:29:54 +01:00
curve_fit_nd CMake: include missing headers in source listings 2026-04-20 13:08:27 +10:00
fast_float Refactor: Use more modern bf::dependencies and bf::extern in CMake 2026-01-14 17:45:17 +01:00
gflags CMake: correct typos, compiler checks and message type 2026-01-26 02:21:42 +00:00
glew-es Add license and copyright information for external dependencies 2024-10-18 17:08:33 +02:00
glog CMake: Fix clang warnings on windows. 2026-03-17 19:55:29 +01:00
gmock Add license and copyright information for external dependencies 2024-10-18 17:08:33 +02:00
gtest CMake: rename C_* prefix to C_AND_CXX_* for flags shared by C & C++ 2026-03-23 07:41:58 +00:00
hipew Deps: Library changes for Blender 5.2 LTS 2026-05-11 19:04:45 +02:00
json Refactor: Use more modern bf::dependencies and bf::extern in CMake 2026-01-14 17:45:17 +01:00
mantaflow Fix: Mantaflow memory leak in PbArgs temporary storage 2026-04-01 11:17:53 +02:00
md4c UI: support markdown labels 2026-09-11 11:02:34 +02:00
nanosvg Refactor: Move code in source/ into blender namespace 2026-01-06 20:00:02 +01:00
quadriflow CMake: rename add_c_flag to add_cc_flag, add new add_c_flag for C-only 2026-03-20 14:02:44 +11:00
rangetree Add license and copyright information for external dependencies 2024-10-18 17:08:33 +02:00
renderdoc Add license and copyright information for external dependencies 2024-10-18 17:08:33 +02:00
tinygltf Add license and copyright information for external dependencies 2024-10-18 17:08:33 +02:00
toml11 UI: TOML File for Saving UI State Settings 2026-08-18 23:02:21 +02:00
tracy_profiler Tracy: Add target variant for building profiler frontend on X11 2026-09-09 11:24:22 +02:00
ufbx Cleanup: update ufbx to latest version 2025-09-04 14:40:13 +02:00
volk Vulkan: On demand loading of the Vulkan Loader (VOLK) 2026-06-30 15:50:57 +02:00
vulkan_memory_allocator Vulkan: On demand loading of the Vulkan Loader (VOLK) 2026-06-30 15:50:57 +02:00
wcwidth extern: update wcwidth combining character table to Unicode 17.0 2026-08-05 13:29:10 +10:00
wintab libs: move wintab out of the lib dir into /extern 2025-05-29 00:52:57 +02:00
xdnd Add license and copyright information for external dependencies 2024-10-18 17:08:33 +02:00
xxhash Add license and copyright information for external dependencies 2024-10-18 17:08:33 +02:00
.clang-format ClangFormat: add configuration files 2019-04-17 06:11:16 +02:00
CMakeLists.txt UI: support markdown labels 2026-09-11 11:02:34 +02:00
README Extern libs: Remove info to update THIRD-PARTY-LICENSES 2024-03-19 17:06:31 +01:00

When updating a library remember to:

* Update the README.blender with the corresponding version.