As usual while waiting for the next release - don't forget to check the nightly builds in the forum.
Many of the projects now a days use clang-format for formatting code. clangd has support for clang-format as well using textDocument/rangeFormatting LSP request. Attaching patch which adds a context menu item " Format use Clangd" and does the formatting on selecting that.
diff --git a/src/plugins/contrib/clangd_client/src/codecompletion/codecompletion.cpp b/src/plugins/contrib/clangd_client/src/codecompletion/codecompletion.cppindex 0964bbd37..e122e4823 100644--- a/src/plugins/contrib/clangd_client/src/codecompletion/codecompletion.cpp+++ b/src/plugins/contrib/clangd_client/src/codecompletion/codecompletion.cpp@@ -1073,11 +1073,9 @@ void ClgdCompletion::BuildModuleMenu(const ModuleType type, wxMenu* menu, const const wxString labelAStyle = _("Format use AStyle"); const wxString label = _("Format use Clangd"); // (christo 25/05/02) int position = Manager::Get()->GetPluginManager()->FindSortedMenuItemPosition(*menu, labelAStyle);- wxMenuItem* item = menu->FindItemByPosition(position);- if (item) {- wxString itemLabel = item->GetItemLabelText();- if (itemLabel == labelAStyle)- position += 1;+ if (position != menu->GetMenuItemCount())+ {+ position += 1; } menu->Insert(position, idCodeFormatterActiveFile, label, _("Format the selected source code (selected line) in the current file"));