CLANG-INCLUDE-FIXER(1)

πŸ“¦
version 14.0.6 Β· 5 versions
, in ubuntu questing

πŸ’– NAME πŸ’–

clang-include-fixer β€” bestie, this is the manual page for clang-include-fixer 14, from the User Commands corner of the universe (section 1, obviously). πŸ¦‹


✨ DESCRIPTION ✨

okay so. here's the whole vibe. you run it like this:

clang-include-fixer [options] <source0> [... <sourceN>]

and then you get OPTIONS, which we are about to go through together, one by one, no skipping, no skimming, because we don't do that here. πŸ’…

🫢 OPTIONS 🫢

⭐ Generic Options ⭐

the little housekeeping ones. the bare minimum. the "hi how are you" of flags.

  • --help β€” shows you every available option. and if you're nosy (love that for you), --help-hidden gives you even more. πŸ‘€
  • --help-list β€” prints out a list of all the available options. want the hidden list too? that's --help-list-hidden. ✨
  • --version β€” tells you which version of this program you're running. identity check, slay. πŸ‘‘

πŸ› οΈ Tool options πŸ› οΈ

the main character section. the actual plot. let's get into it. πŸ”₯

  • --db=<value> β€” specify the input format. it's giving "pick your fighter", and your choices are:
    • =fixed β€” a hard-coded mapping. simple, classic, no notes.
    • =yaml β€” a Yaml database created by find-all-symbols. very demure, very mindful.
    • =fuzzyYaml β€” a Yaml database, but with fuzzy-matched names. it's giving "close enough bestie". 🌸
  • --extra-arg=<string> β€” one extra argument, appended to the end of the compiler command line. πŸŽ€
  • --extra-arg-before=<string> β€” one extra argument, but prepended to the front of the compiler command line. same energy, opposite end. πŸ’«
  • --input=<string> β€” a string to initialize the database with.
  • --insert-header=<string> β€” insert one specific header. heads up, this one should run with STDIN mode. the result gets written to stdout, and it's currently used for editor integration. it supports YAML/JSON format, like so:
-insert-header="{
  FilePath: "/path/to/foo.cc", QuerySymbolInfos: [
  {RawIdentifier: foo,
   Range: {Offset: 0, Length: 3}}
  ], HeaderInfos: [ {Headers: "\"foo_a.h\"",
  QualifiedName: "a::foo"} ]}"
  • --minimize-paths β€” decides whether to minimize the include paths that get added. tiny paths, tiny footprint. 🐾
  • --output-headers β€” prints the symbol being queried and all its relevant headers, in JSON format, to stdout, like this:
{
  "FilePath": "/path/to/foo.cc", "QuerySymbolInfos": [
  {"RawIdentifier": "foo",
   "Range": {"Offset": 0, "Length": 3}}
  ], "HeaderInfos": [ {"Header": "\"foo_a.h\"",
  "QualifiedName": "a::foo"} ]
}
  • -p=<string> β€” the build path. πŸ—οΈ
  • -q β€” reduces terminal output. quiet mode. shhh. 🀫
  • --query-symbol=<string> β€” queries a given symbol (e.g. "a::b::foo") directly in the database, without parsing the file at all. skipping straight to the answer, we love efficiency. πŸ’…
  • --stdin β€” overrides the source file's content (in the overlaying virtual file system) with input from <stdin>, then runs the tool on that new content using the compilation options of the source file. this mode is currently used for editor integration. 🧚
  • --style=<string> β€” the fallback style used for reformatting after inserting new headers, for when there's no clang-format config file to be found. plan B, but make it fashion. ✨

fr fr, that's the whole page. nothing left out, nothing invented, every flag accounted for. πŸ’–

signing off as clang-include-fixer 14, May 2025 β€” periodt. πŸŽ€πŸ¦‹πŸ’…

πŸ“¦ where this page comes from