nix-reference
String Escaping
When writing Nix strings that contain code for other languages (TypeScript, JavaScript, etc.), remember:
| What you want in output | Nix syntax |
|---|---|
${variable} |
''${variable} |
$${variable} |
$''${variable} |
''${literal} |
'''${literal} |
Rule: Use two single quotes '' before ${} to prevent Nix from interpolating it.
Example - Generating TypeScript with template literals:
Nix source:
{
xdg.configFile."my-plugin.ts".text = ''
function log(msg: string) {
More from sirn/dotfiles
code-explain
Explain code, triage changes, or map project structure. Use when user asks to explain, understand, triage, or explore project structure.
19code-plan
Generate comprehensive implementation plan based on analysis. Use when user asks to plan this, create a plan, how should I implement, or wants implementation guidance.
19code-commit
Commit current changes using jj. Analyzes changes, suggests commit messages following repository conventions, proposes splits if needed, and creates commits. Use ONLY when user explicitly asks to commit changes or create commits.
18gemini-reference
Reference for calling the Gemini CLI agent from other agents. ALWAYS read BEFORE invoking Gemini to ensure correct JSON protocol, session management, and subtask delegation patterns.
18code-quality
Run comprehensive quality checks by orchestrating review, verification, testing, and linting. Use when user asks to check code quality, run full checks, or verify code health.
18context7
Retrieve up-to-date documentation context for libraries using the Context7 API. Use when needing current library documentation (React, Python stdlib, Rust, etc.) BEFORE implementing or writing code.
17