OCP-BROWSER(1)

πŸ“¦ version 1.4.1, in nixos 26.05, nixpkgs unstable

πŸ¦‹ OCP-BROWSER(1) πŸ¦‹

okay bestie, welcome to ocp-browser, from the Ocp-browser Manual (yes that's the manual's actual name, we love a self-titled moment πŸ’…). This is the page where you learn the whole vibe. Strap in. πŸŽ€


✨ NAME ✨

ocp-browser β€” interactively completes and prints documentation. That's it, that's the whole job. It completes stuff, it prints docs, it does it interactively. Slay. πŸ‘‘


✨ SYNOPSIS ✨

ocp-browser [OPTION]…

literally just the command and then a bunch of options, no positional args to worry about, breathe 🫢


✨ DESCRIPTION ✨

So here's the entire description the page gives us:

See alt+h for help.

no cap, that's the whole thing 😭 so like β€” press alt+h once you're inside and it'll explain itself to you. iykyk, the tool explains the tool. iconic honestly.


✨ OPTIONS ✨

okay here's the full menu, every single one, no gatekeeping πŸ’–

  • --build=DIR β€” sets the current project build dir (default: it tries to guess). it's giving "i'll figure it out myself" energy, but you can hand it the answer if you want.
  • -c WHEN, --color=WHEN β€” colorizes the output. WHEN is either always, never or auto. pick your aesthetic 🌈
  • --context=FILEPOS β€” analyses the context at the given FILE[:LINE[,COL]] so it can give you appropriate answers w.r.t. open modules, etc. and yes, you can read from stdin: specify just : for that, or alternatively FILENAME:- if you still wanna specify a filename β€” which gets used to detect e.g. the owning library scope. sneaky but useful 🧚
  • -F MODULES, --full-open=MODULES β€” like --open, but if the .cmt is available, it loads even the elements that would be restricted by the interface. useful for the current file. it's --open's unhinged main character sister πŸ’€
  • -h LIST, --hide=LIST β€” kinds of elements not to show in answers; LIST is a comma-separated list of element kinds (see --show). ⚠️ careful, bestie: here -h is hide, not help. the help is alt+h. do not get got by this.
  • -I DIRS β€” OCaml directories to (recursively) load the libraries from. yes, recursively. it goes deep πŸ•³οΈ
  • --no-build β€” don't include the build directory of the current project in lookups. boundaries! 🚧
  • --no-opamlib β€” don't include the OPAM library directory (opam var lib) in lookups.
  • --no-stdlib β€” don't include the OCaml standard library directory (ocamlc -where) in lookups.
  • -O MODULES, --open=MODULES β€” considers the given (comma-separated list of) modules as opened for lookup. yes bestie, opened, we're letting them in πŸ”“
  • --root=DIR β€” sets the current project root (default: try to guess). same guessing situation as --build, it's a whole theme.
  • -s LIST, --show=LIST β€” kinds of elements to show in answers; LIST is a comma-separated list of types, values and methods, exceptions, constructs (record fields and sum type constructors), modules and classes, sigs (module and class types), keywords. the default is t,v,e,c,m,s,k β€” screenshot that, you'll need it ✨

🌸 COMMON OPTIONS 🌸

the shared ones, every CLI has them, but ours are cute:

  • --help[=FMT] (default=auto) β€” shows this help in format FMT. the value FMT must be one of auto, pager, groff or plain. with auto, the format is pager or plain whenever the TERM env var is dumb or undefined.
  • --version β€” shows version information. little identity check πŸͺͺ

πŸ’œ EXIT STATUS πŸ’œ

ocp-browser exits with:

  1. 0 β€” on success. we love a clean win πŸŽ‰
  2. 123 β€” on indiscriminate errors reported on standard error. vague, chaotic, no further notes πŸ’€
  3. 124 β€” on command line parsing errors. you typed something weird, it's judging you gently
  4. 125 β€” on unexpected internal errors (bugs). not you, it's them 😭

and that's the whole page, bestie β€” you are now officially ocp-browser literate, go forth and complete things πŸŒˆπŸ¦‹β­

Ocp-browser 1.4.0 β€” that's the version, and this is the end of the OCP-BROWSER(1) manual page. mwah, bye πŸ«ΆπŸ’–

πŸ“¦ where this page comes from