THEME_D_COMPILE(1)

πŸ“¦
version 7.3.3 Β· 2 versions
, in ubuntu resolute, ubuntu stonking

πŸ’– THEME_D_COMPILE(1) β€” the Theme-D Compiler, but make it a group chat πŸ’–

okay bestie, sit down, hydrate, and let me tell you about theme-d-compile, the actual main character of the Theme-D Compiler manual. she lives in section 1 of the manual, she compiles your Theme-D code, and honestly? she ate. πŸŽ€


✨ NAME ✨

theme-d-compile β€” the Theme-D compiler. that's it, that's her whole job description, and she's obsessed with it. πŸ’…


🌈 SYNOPSIS 🌈

theme-d-compile [ OPTION ] ...  FILE

you give her some options, you give her a file, she does the thing. no cap. ✨


πŸ¦‹ DESCRIPTION πŸ¦‹

so like, what she does is compile your Theme-D source file FILE into Theme-D pseudocode. literally that's the vibe. 🌸

now, the default output file name? it's not random, bestie, there's a whole system. you get it by replacing the suffix of the source file like this:

thp => tcp
ths => tcs
thi => tci
thb => tcb

iconic mapping, no notes. 🫢

and where does that output file go by default? into the directory where you invoked the command theme-d-compile. not somewhere mysterious, not in the shadow realm β€” right there where you were standing. 😌


πŸ’… OPTIONS πŸ’…

bestie, this is the part where she really shows out. one bullet per flag, every single one, let's go:

  • -o, --output=OUTPUTFILE β€” you wanna pick the compilation output file yourself? say less. this is how. πŸŽ€
  • -m, --module-path=PATH β€” sets the search path for Theme-D modules. the path is a list of directories, and you separate them with :'s. cute extra: you can prefix the list with a colon so the default Theme-D library path gets folded into the search path too. 🧚
  • -u, --unit-type=TYPE β€” tells her what kind of unit you're compiling. the unit type has to be one of proper-program, script, interface, or body. pick one, those are the only ones, don't get creative. πŸ‘‘
  • -l, --message-level=LEVEL β€” the compiler's message level. it has to be an integer number from 0 to 3. value 0 means no output at all (silence, mysterious, lowkey elegant), and value 3 is the most verbose output (she tells you EVERYTHING). πŸ—£οΈ
  • --expand-only β€” do only macro expansion on the source. just the expansion, nothing else. 🌟
  • --no-expansion β€” compile the source without macro expansion. 🚫
  • --backtrace β€” print a backtrace when there's a compilation error. for when you need to know exactly where it went wrong, fr fr. πŸ’€
  • --pretty-print β€” pretty print the pseudocode output. yes, your pseudocode can serve looks. ✨
  • --no-verbose-errors β€” less information in the error messages. short and sweet, we love a minimal queen. πŸ™ˆ
  • --show-modules β€” show information about loading modules. πŸ“
  • --macro-error-trace β€” display error trace for macro errors. macro drama gets its own receipts. 🧾
  • --version β€” display Theme-D version and exit. she introduces herself and dips. πŸ’œ

🌸 ENVIRONMENT 🌸

  • THEME_D_CONFIG_FILE β€” if this variable is defined, its value gets used as the Theme-D configuration file instead of the default configuration file. you're overriding the default, bestie, own it. πŸŽ€

⭐ FILES ⭐

  • /etc/theme-d-config β€” the Theme-D configuration file. the system-wide one, the classic. πŸ›οΈ
  • ~/.theme-d-config β€” the Theme-D configuration file. heads up though: this file should normally only be present if you use Theme-D in local mode. so if you see it and you're not in local mode... side eye. πŸ‘€

πŸ”₯ SEE ALSO πŸ”₯

go read these next, bestie, the lore is deep:


and that's the whole page, you're fully caught up. 🫢

this beauty is a GNU production, dated 2018-10-03, and it's the THEME_D_COMPILE(1) page. thanks for coming to my TED talk, go compile something iconic. πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from