[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6EM0WJSZZ38VQCQKVJM6NJ0":3,"skill-same:01M6EM0WJSZZ38VQCQKVJM6NJ0":70},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":27,"linkOnly":28,"markdownContent":29,"markdownBody":30,"frontMatter":31,"refName":47,"commitSha":48,"skillDirectory":49,"forksCount":50,"repositoryHtmlUrl":51,"repositoryHomepageUrl":6,"ownerHtmlUrl":52,"ownerBlogUrl":53,"ownerDescription":54,"updatedAt":55,"install":56,"resources":69},"01M6EM0WJSZZ38VQCQKVJM6NJ0","latex-table-discipline",null,"Column-count discipline, resizebox usage rules, and threeparttable for table footnotes inside the float.","cgpan\u002Fedm-ars-public","cgpan","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F118746117?v=4","01M6EKT5TG36Q3GH340QN8RH08","Chenguang Pan","01M6EKT5YTQVRARGJF0VPA1SY7",5,"MIT","https:\u002F\u002Fgithub.com\u002Fcgpan\u002Fedm-ars-public\u002Fblob\u002Fmain\u002Fskills\u002Fwriting\u002Flatex-table-discipline\u002FSKILL.md",[],[19,20,21,22,23,24,25,26],"LaTeX","table","discipline","latex table discipline","writing","Rules","writer","column","2026-11-10 10:12:30",false,"---\nname: latex-table-discipline\nlayer: writing\ndescription: Column-count discipline, resizebox usage rules, and threeparttable for table footnotes inside the float.\ntrigger_keywords:\n  - latex\n  - table\n  - tabular\n  - resizebox\n  - threeparttable\n  - booktabs\napplicable_task_types: []\napplicable_datasets: []\napplicable_stages:\n  - Writer\npriority: 1\nreferences_skills: []\nresources: []\nversion: \"1.1\"\nrule_severity: mandatory\n---\n\n# LaTeX Table Discipline\n\nTables in ACM acmart sigconf are narrow (~88mm per column) and float\nfreely. Three failure modes recur and are addressed below.\n\n## Basic table form\n\n```latex\n\\begin{table}[h]\n\\caption{Your caption here.}\n\\label{tab:label}\n\\begin{tabular}{lrrr}\n\\toprule\nColumn1 & Column2 & Column3 & Column4 \\\\\n\\midrule\ndata & data & data & data \\\\\n\\bottomrule\n\\end{tabular}\n\\end{table}\n```\n\n## CRITICAL: column-count must match\n\nThe number of specifier letters in `{lrrr}` MUST exactly match the number\nof `&`-separated columns in EVERY row, including the header. A mismatch\ncauses a compile failure with an unhelpful error message.\n\n**Mandatory counting procedure — follow this every time:**\n\n1. Write out a sample data row first: `Model & AUC & CI & Accuracy & F1 \\\\`\n2. Count the `&` characters: 4 ampersands → **5 columns**\n3. Write the tabular spec with exactly that many letters: `{lrrrr}` (1 + 4 = 5)\n4. Verify every other row in the table also has exactly 4 `&` characters\n\nNever write the spec before counting. One `r` too many or too few causes\na compile error.\n\n## CRITICAL: wide tables (5+ columns) MUST use `\\resizebox`\n\nACM sigconf is two-column. Any table with 5 or more columns WILL overflow\nthe column and extend into the margin unless resized. Wrap the `tabular`\nin `\\resizebox{\\columnwidth}{!}{...}`:\n\n```latex\n\\begin{table}[h]\n\\caption{Model comparison across all six models.}\n\\label{tab:model_comparison}\n\\resizebox{\\columnwidth}{!}{%\n\\begin{tabular}{lrrrrr}\n\\toprule\nModel & AUC & Acc. & Prec. & Recall & F1 \\\\\n\\midrule\nXGBoost & 0.82 & 0.76 & 0.74 & 0.71 & 0.72 \\\\\n\\bottomrule\n\\end{tabular}%\n}\n\\end{table}\n```\n\n- Use abbreviated headers to save space: \"Acc.\" not \"Accuracy\", \"Prec.\"\n  not \"Precision\", \"CI\" not \"95% CI\", \"LR\" not \"Logistic Regression\".\n- The `%` after `{` and after `\\end{tabular}` suppresses spurious\n  whitespace.\n- `\\resizebox` comes from `graphicx`, already loaded by the template.\n- If using `threeparttable`, wrap the entire\n  `\\begin{threeparttable}...\\end{threeparttable}` block (not just the\n  tabular) inside `\\resizebox`.\n\n## CRITICAL: narrow tables (fewer than 5 columns) MUST NOT use `\\resizebox`\n\n`\\resizebox{\\columnwidth}{!}` scales the table to fill the full column\nwidth. On a 2–4 column table this makes the font absurdly large. Use a\nplain `tabular` without any wrapper.\n\n## Table notes — use `threeparttable`, never loose text after `\\end{table}`\n\nTables float. Any `\\noindent{\\small ...}` placed after `\\end{table}` is\nloose body text that will be separated from the table when it floats.\n\nAlways use `threeparttable` for tables with footnotes. The note lives\ninside the float and stays attached:\n\n```latex\n\\begin{table}[h]\n\\caption{Your caption.}\n\\label{tab:label}\n\\begin{threeparttable}\n\\begin{tabular}{lrr}\n\\toprule\nCol1 & Col2 & Col3\\tnote{*} \\\\\n\\midrule\ndata & data & data \\\\\n\\bottomrule\n\\end{tabular}\n\\begin{tablenotes}\n\\footnotesize\n\\item[*] Your note text here.\n\\end{tablenotes}\n\\end{threeparttable}\n\\end{table}\n```\n\n- Use `\\tnote{*}` (or `\\tnote{\\dag}`) in table cells to place the marker.\n- Use `\\item[*]` inside `tablenotes` for the note text.\n- `threeparttable` is already loaded in the template — do NOT add\n  `\\usepackage` yourself.\n\nNEVER place a footnote as `\\noindent{\\small ...}` after `\\end{table}`.\n\n## Font\u002Fsize declarations (CRITICAL — declaration must be inside braces)\n\n`\\small`, `\\footnotesize`, `\\large`, `\\itshape`, etc. are *declarations*,\nnot commands that take arguments. The declaration must be **inside** the\ngroup it scopes:\n\n- CORRECT: `{\\small text}` or `\noindent{\\small text}`\n- WRONG:   `\\small{text}` or `\noindent\\small{text}` — leaks into the surrounding text\n\nThe same rule applies to all size and shape declarations.\n\n## Source provenance\n\nCanonical source: `agent_prompts\u002Fwriter.yaml` §\"Tables\" + §\"Table Notes\".\n\nMerged content from: none — single-sourced.\n","# LaTeX Table Discipline\n\nTables in ACM acmart sigconf are narrow (~88mm per column) and float\nfreely. Three failure modes recur and are addressed below.\n\n## Basic table form\n\n```latex\n\\begin{table}[h]\n\\caption{Your caption here.}\n\\label{tab:label}\n\\begin{tabular}{lrrr}\n\\toprule\nColumn1 & Column2 & Column3 & Column4 \\\\\n\\midrule\ndata & data & data & data \\\\\n\\bottomrule\n\\end{tabular}\n\\end{table}\n```\n\n## CRITICAL: column-count must match\n\nThe number of specifier letters in `{lrrr}` MUST exactly match the number\nof `&`-separated columns in EVERY row, including the header. A mismatch\ncauses a compile failure with an unhelpful error message.\n\n**Mandatory counting procedure — follow this every time:**\n\n1. Write out a sample data row first: `Model & AUC & CI & Accuracy & F1 \\\\`\n2. Count the `&` characters: 4 ampersands → **5 columns**\n3. Write the tabular spec with exactly that many letters: `{lrrrr}` (1 + 4 = 5)\n4. Verify every other row in the table also has exactly 4 `&` characters\n\nNever write the spec before counting. One `r` too many or too few causes\na compile error.\n\n## CRITICAL: wide tables (5+ columns) MUST use `\\resizebox`\n\nACM sigconf is two-column. Any table with 5 or more columns WILL overflow\nthe column and extend into the margin unless resized. Wrap the `tabular`\nin `\\resizebox{\\columnwidth}{!}{...}`:\n\n```latex\n\\begin{table}[h]\n\\caption{Model comparison across all six models.}\n\\label{tab:model_comparison}\n\\resizebox{\\columnwidth}{!}{%\n\\begin{tabular}{lrrrrr}\n\\toprule\nModel & AUC & Acc. & Prec. & Recall & F1 \\\\\n\\midrule\nXGBoost & 0.82 & 0.76 & 0.74 & 0.71 & 0.72 \\\\\n\\bottomrule\n\\end{tabular}%\n}\n\\end{table}\n```\n\n- Use abbreviated headers to save space: \"Acc.\" not \"Accuracy\", \"Prec.\"\n  not \"Precision\", \"CI\" not \"95% CI\", \"LR\" not \"Logistic Regression\".\n- The `%` after `{` and after `\\end{tabular}` suppresses spurious\n  whitespace.\n- `\\resizebox` comes from `graphicx`, already loaded by the template.\n- If using `threeparttable`, wrap the entire\n  `\\begin{threeparttable}...\\end{threeparttable}` block (not just the\n  tabular) inside `\\resizebox`.\n\n## CRITICAL: narrow tables (fewer than 5 columns) MUST NOT use `\\resizebox`\n\n`\\resizebox{\\columnwidth}{!}` scales the table to fill the full column\nwidth. On a 2–4 column table this makes the font absurdly large. Use a\nplain `tabular` without any wrapper.\n\n## Table notes — use `threeparttable`, never loose text after `\\end{table}`\n\nTables float. Any `\\noindent{\\small ...}` placed after `\\end{table}` is\nloose body text that will be separated from the table when it floats.\n\nAlways use `threeparttable` for tables with footnotes. The note lives\ninside the float and stays attached:\n\n```latex\n\\begin{table}[h]\n\\caption{Your caption.}\n\\label{tab:label}\n\\begin{threeparttable}\n\\begin{tabular}{lrr}\n\\toprule\nCol1 & Col2 & Col3\\tnote{*} \\\\\n\\midrule\ndata & data & data \\\\\n\\bottomrule\n\\end{tabular}\n\\begin{tablenotes}\n\\footnotesize\n\\item[*] Your note text here.\n\\end{tablenotes}\n\\end{threeparttable}\n\\end{table}\n```\n\n- Use `\\tnote{*}` (or `\\tnote{\\dag}`) in table cells to place the marker.\n- Use `\\item[*]` inside `tablenotes` for the note text.\n- `threeparttable` is already loaded in the template — do NOT add\n  `\\usepackage` yourself.\n\nNEVER place a footnote as `\\noindent{\\small ...}` after `\\end{table}`.\n\n## Font\u002Fsize declarations (CRITICAL — declaration must be inside braces)\n\n`\\small`, `\\footnotesize`, `\\large`, `\\itshape`, etc. are *declarations*,\nnot commands that take arguments. The declaration must be **inside** the\ngroup it scopes:\n\n- CORRECT: `{\\small text}` or `\noindent{\\small text}`\n- WRONG:   `\\small{text}` or `\noindent\\small{text}` — leaks into the surrounding text\n\nThe same rule applies to all size and shape declarations.\n\n## Source provenance\n\nCanonical source: `agent_prompts\u002Fwriter.yaml` §\"Tables\" + §\"Table Notes\".\n\nMerged content from: none — single-sourced.\n",{"name":5,"layer":23,"version":32,"priority":33,"resources":34,"description":7,"rule_severity":35,"trigger_keywords":36,"applicable_stages":42,"references_skills":44,"applicable_datasets":45,"applicable_task_types":46},"1.1",1,[],"mandatory",[37,20,38,39,40,41],"latex","tabular","resizebox","threeparttable","booktabs",[43],"Writer",[],[],[],"main","1aeaead66d2bf876109f3b101005d2eed54041d9","skills\u002Fwriting\u002Flatex-table-discipline",0,"https:\u002F\u002Fgithub.com\u002Fcgpan\u002Fedm-ars-public","https:\u002F\u002Fgithub.com\u002Fcgpan","https:\u002F\u002Fcpan.ai","Ph.D. candidate in Measurement, Evaluation, and Statistics.","2026-09-28 20:39:06",{"source":8,"skillName":5,"commands":57,"prompt":67,"zipAvailable":68},[58,61,64],{"tool":59,"command":60},"npx","npx skills add cgpan\u002Fedm-ars-public --skill latex-table-discipline",{"tool":62,"command":63},"bunx","bunx skills add cgpan\u002Fedm-ars-public --skill latex-table-discipline",{"tool":65,"command":66},"pnpm","pnpm dlx skills add cgpan\u002Fedm-ars-public --skill latex-table-discipline","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fcgpan\u002Fedm-ars-public\u002Fblob\u002Fmain\u002Fskills\u002Fwriting\u002Flatex-table-discipline\u002FSKILL.md",true,[],[71,91,105,114,127,138],{"skillNo":72,"name":73,"nameZh":6,"description":74,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":75,"categories":76,"keywords":87,"publishedAt":27},"01M6EM1ZTQZVAP90DZTVBHCCFB","acm-fixture","Fixture writing skill for ACM acmart sigconf paper output.","https:\u002F\u002Fgithub.com\u002Fcgpan\u002Fedm-ars-public\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fskills\u002Fwriting\u002Facm-fixture\u002FSKILL.md",[77,82],{"categoryNo":78,"categoryName":79,"taxonomyType":80,"taxonomyTypeDesc":81},"01JBSEEDCAT000000000000018","写作与文案","SCENARIO","使用场景",{"categoryNo":83,"categoryName":84,"taxonomyType":85,"taxonomyTypeDesc":86},"01JBSEEDCAT000000000000036","内容创作者","PROFESSION","适用职业",[88,89,23,19,25,90],"acm fixture","fixture","paper",{"skillNo":92,"name":93,"nameZh":6,"description":94,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":95,"categories":96,"keywords":97,"publishedAt":27},"01M6EM1XNFETAZFGPHQPAXKBYN","prediction-fixture","Fixture skill for the prediction task type; references shap-fixture.","https:\u002F\u002Fgithub.com\u002Fcgpan\u002Fedm-ars-public\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fskills\u002Ftask-type\u002Fprediction-fixture\u002FSKILL.md",[],[89,98,99,100,101,102,103,104],"prediction fixture","task","type","references","fixture skill","shap","analyst",{"skillNo":106,"name":107,"nameZh":6,"description":108,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":109,"categories":110,"keywords":111,"publishedAt":27},"01M6EM1V4MQXYGQ7K2ZDJRAPSM","causal-fixture","Fixture skill for the causal_inference task type.","https:\u002F\u002Fgithub.com\u002Fcgpan\u002Fedm-ars-public\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fskills\u002Ftask-type\u002Fcausal-fixture\u002FSKILL.md",[],[89,112,100,99,113,102],"causal fixture","inference",{"skillNo":115,"name":116,"nameZh":6,"description":117,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":118,"categories":119,"keywords":120,"publishedAt":27},"01M6EM1SCWFZZ2ACSAP65GNWK9","shap-fixture","Fixture methodology for SHAP feature importance analysis.","https:\u002F\u002Fgithub.com\u002Fcgpan\u002Fedm-ars-public\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fskills\u002Fmethodology\u002Fshap-fixture\u002FSKILL.md",[],[121,89,103,122,123,124,125,126],"shap fixture","feature importance","methodology","analysis","explainer","feature",{"skillNo":128,"name":129,"nameZh":6,"description":130,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":131,"categories":132,"keywords":133,"publishedAt":27},"01M6EM1PZC1MK1G0D1YFVYAQ9W","cluster-recon-fixture","Fixture methodology for reconstructing cluster IDs from fingerprint variables.","https:\u002F\u002Fgithub.com\u002Fcgpan\u002Fedm-ars-public\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fskills\u002Fmethodology\u002Fcluster-recon-fixture\u002FSKILL.md",[],[134,135,136,89,137,123],"recon","cluster recon fixture","cluster","ids",{"skillNo":139,"name":140,"nameZh":6,"description":141,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":142,"categories":143,"keywords":144,"publishedAt":27},"01M6EM1MZVKMSWEXZ7TJ45DS04","hsls09-fixture","Fixture skill for HSLS:09 with a bundled YAML resource and one cross-reference.","https:\u002F\u002Fgithub.com\u002Fcgpan\u002Fedm-ars-public\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fskills\u002Fdataset\u002Fhsls09-fixture\u002FSKILL.md",[],[89,145,146,147,148,102,149,134,136,150],"hsls09 fixture","yaml","public","reference","dataset","registry"]