Как подружить С++ и YAML: сохранение конфигов с помощью yaml-cpp

В этой статье речь пойдет о добавлении в С++ приложение функционала сохранения данных в формате YAML с использованием библиотеки yaml-cpp. Мы подробно рассмотрим какие возможности для этого предоставляет библиотека и на какие подводные камни можно наткнуться в процессе ее использования. Особое внимание будет уделено вопросам форматирования(и представления) выходного YAML-текста, поскольку это влияет как на восприятие конечного YAML-документа человеком, так и на совместимость с другими программами, парсеры которых могут хуже поддерживать спецификации YAML. В качестве практического примера в этой статье выбрана реализация сохранения конфигурации программы в YAML-файл, но полученные знания, конечно же, можно будет применить для формирования любого YAML-контента.

https://habr.com/ru/articles/987074/

#cpp #yaml #yamlпарсер #yamlcpp #yamlконфигурация #opensource #c++ #конфигурация

Как подружить С++ и YAML: сохранение конфигов с помощью yaml-cpp

Введение Интерфейс yaml-cpp Запись в YAML::Node Генерация YAML с использованием возможностей форматирования YAML::Node Генерация YAML с использованием возможностей форматирования YAML::Emitter Микс из...

Хабр

Как подружить C++ и YAML: добавляем чтение конфигов с помощью yaml-cpp

В этой статье я расскажу о том, как добавить в С++/CMake проект возможность чтения YAML-конфигов с помощью библиотеки yaml-cpp. Начнем с краткого обзора интерфейса yaml-cpp, а потом разработаем небольшой проект, состоящий из библиотеки с функционалом чтения конфига и приложения, использующего эту библиотеку для получения настроек из YAML-файла.

https://habr.com/ru/articles/984468/

#C++ #yaml #yamlcpp #cmake #yamlпарсер #yamlконфигурация

Как подружить C++ и YAML: добавляем чтение конфигов с помощью yaml-cpp

Иметь дело с наследием в виде зоопарка программ, каждая из которых использует конфиги в разных форматах, как минимум, неудобно. Причем как разработчикам, так и пользователям. А с учетом того, что все...

Хабр

Yaml-CPP too confusing to get the output formatted the way you want? write your own output. surely you won't regret writing your own output thing with a string concatenation

#programming #YamlCPP #CPlusPlus

Here's a gif for #ScreenshotSaturday of the widget editor I've been working in my spare time. I'd say it's coming along quite nicely!

Currently you can customize the alignment of the widget on the screen, and the size and color of the widget. You can also save this data to a file.

You can also remove visual components of the widget (such as alignment or color), and add them back dynamically

All of this uses #ImGui (obviously) as a visual backend, and #EnTT as a backend for adding and removing widget components! It also uses #yamlcpp in tandem with my own library called konbu for parsing and writing widget data.

You can check out the source code here:
https://github.com/josiest/gold

GitHub - josiest/gold: A simple SDL2 gui framework

A simple SDL2 gui framework. Contribute to josiest/gold development by creating an account on GitHub.

GitHub

#yamlcpp is a #YAML 1.2 #library for #Cpp.

yaml-cpp provides interfaces for parsing and emitting YAML data. The parser's API is quite simple, and supports multi-document files. Building or modifying YAML data using accessors is quite simple, but an element by element emitting API is also supported.

Website 🔗️: https://github.com/jbeder/yaml-cpp

apt 📦️: libyaml-cpp-dev

#free #opensource #foss #fossmendations #programming

GitHub - jbeder/yaml-cpp: A YAML parser and emitter in C++

A YAML parser and emitter in C++. Contribute to jbeder/yaml-cpp development by creating an account on GitHub.

GitHub