root(1)

πŸ“¦
version 6.40.04 Β· 3 versions
, in arch rolling, epel 10, epel 9, fedora 43, fedora 44, nixos 26.05

🌸 root(1) β€” the glow-up manual 🌸

okay bestie, listen up πŸ’– you just typed man 1 root (or like, you're reading this in the terminal, main character energy fr) and now you're meeting root β€” an interactive interpreter of C++ code using Cling and the ROOT framework. This page lives in the General Commands Manual, section 1, iykyk.

For more info on ROOT, go touch grass at https://root.cern/ 🌱 β€” and lowkey there's an extensive Users Guide and an API Reference waiting for you on that exact website. Like, go look. It's giving encyclopedia but make it C++.


✨ SYNOPSIS ✨

the way that you summon it:

usage: root [-b B] [-x X] [-e E] [-n N] [-t T] [-q Q] [-l L] [-a A]
            [-config CONFIG] [-h HELP] [--version VERSION]
            [--notebook NOTEBOOK] [--web WEB] [--web=<type> WEB=<TYPE>]
            [--web=off WEB=OFF]
            [dir] [data1.root...dataN.root] [file1.C...fileN.C]
            [file1_C.so...fileN_C.so] [anyfile1..anyfileN]

so many little boxes to fill in, so much potential πŸ’…


πŸ¦‹ DESCRIPTION πŸ¦‹

root is an interactive interpreter of C++ code using Cling and the ROOT framework. That's it, that's the vibe. You type C++, it just runs, no compile-edit-run cycle crying session required.

For more information on ROOT, please refer to https://root.cern/ β€” an extensive Users Guide and API Reference are available from that website. 🫢


πŸ‘‘ OPTIONS πŸ‘‘

Every single flag, no skips, no cap:

  • -b β€” Run in batch mode without graphics. no windows, no vibes, just ✨execution✨
  • -x β€” Exit on exceptions. the moment something throws, we're out πŸšͺπŸ’¨
  • -e β€” Execute the command passed between single quotes
  • -n β€” Do not execute logon and logoff macros as specified in .rootrc
  • -t β€” Enable thread-safety and implicit multi-threading (IMT). multitasking queen behavior 🧚
  • -q β€” Exit after processing command line macro files
  • -l β€” Do not show the ROOT banner. (shy mode πŸ™ˆ)
  • -a β€” Show the ROOT splash screen (Windows only). windows girlies get the sparkle ✨
  • -config β€” print ./configure options
  • -h β€” Show summary of options. your lil cheat sheet πŸŽ€
  • --version β€” Show the ROOT version
  • --notebook β€” Execute ROOT notebook
  • --web β€” Use web-based display for graphics, browser, geometry 🌐
  • --web=<type> β€” Use the specified web-based display such as chrome, firefox, qt6

For more options see the documentation of TROOT::SetWebDisplay()

  • --web=off β€” Disable any kind of web-based display. we're going offline bestie πŸ“΄
  • [dir] β€” if dir is a valid directory cd to it before executing
  • [data1.root...dataN.root] β€” Open the given ROOT files; remote protocols (such as http://) are supported. yes you can be remote and mysterious 🌈
  • [file1.C...fileN.C] β€” Execute the ROOT macro file1.C ... fileN.C

Compilation flags as well as macro arguments can be passed, see format in https://root.cern/manual/root_macros_and_shared_libraries/

  • [file1_C.so...fileN_C.so] β€” Load and execute file1_C.so ... fileN_C.so (or .dll if on Windows)

They should be already-compiled ROOT macros (shared libraries) or:

regular user shared libraries e.g. userlib.so with a function userlib(args)

  • [anyfile1..anyfileN] β€” All other arguments pointing to existing files will be checked to see if they are ROOT Files (checking the MIME type inside the file) and if they are not they will be handled as a ROOT macro file

πŸ’€ real talk though: some of these flags change what actually happens when stuff goes wrong, so don't just yeet them in because they look cute. -x and -b especially? they mean what they mean.

and that's the whole page, bestie β€” no notes, no crumbs, ate and left zero evidence πŸ’…

This was the root(1) page from the General Commands Manual, section 1, served fresh at the bottom of every man page like a lil signature πŸŽ€ periodt. πŸ’–

πŸ“¦ where this page comes from