Slide 1

Slide 1 text

Texdoc ͷ͘͠Έ Texdocͷ͘͠Έ ே૔୎ਓ 2024-11-30 @ TEXConf2024 1 / 19

Slide 2

Slide 2 text

Texdoc ͷ͘͠Έ ͸͡ΊʹɿTexdocͱ͸ TEX Live ͷจॻݕࡧπʔϧ ɹ ɹ ϩʔΧϧ TEX Live ͷυΩϡϝϯτΛίϚϯυͰݕࡧ ▶ τοϓώοτΛ PDF ϏϡʔΞͰදࣔ ▶ ݕࡧ݁ՌͷϦετදࣔ΋Մ ɹ ɹ Ұ෦αʔυύʔςΟ੡πʔϧͷόοΫΤϯυʹ΋ར༻ ɹ ɹ https://tug.org/texdoc/ ؔ࿈͢Δ΋ͷͨͪ ΦϯϥΠϯ൛΍ GUI ͕ଘࡏɻͨͩ͠ Texdoc ։ൃऀͷ؅׋֎ texdoc.org ΦϯϥΠϯ൛ TexdocɺIsland of TEX ੡ texdoctk Texdoc ͷ Perl/tk త GUIɺ։ൃऴྃ MiKTEX ͷ ‌ texdoc ‌ ผϓϩάϥϜ ‌ mthelp ‌ ͷΤΠϦΞε ˞ Texdoc ͸ TEX Live Πϯϑϥʹґଘ 2 / 19

Slide 3

Slide 3 text

Texdoc ͷ͘͠Έ ຊߨԋͷ໨త ΧδϡΞϧͳτʔΫɻؾָʹฉ͍͍ͯͩ͘͞ʂ ɹ ɹ Texdoc ͷ͘͠ΈΛཧղ͠Α͏ ɹ ɹ ϝϯςφͷ࢓ࣄΛ஌Ζ͏ ɹ ɹ TEX ΤίγεςϜΛ׆͔ͯ͠։ൃ͠Α͏ Texdoc ΛέʔεελσΟͱͯ͠ TEX ΤίγεςϜ։ൃͷώϯτʹͳΕ͹ɹ ɹ 3 / 19

Slide 4

Slide 4 text

Texdoc ͷ͘͠Έ ݕࡧπʔϧͷߏ੒ཁૉ Texdoc Λߏ੒͢Δॏཁͳػೳ͸ 2 ͭ υΩϡϝϯτΛݕࡧ͢Δػೳ ɹ ɹݕࡧΫΤϦʹؔ܎͢ΔυΩϡϝϯτΛݟ͚ͭΔ υΩϡϝϯτΛϥϯΩϯά͢Δػೳ ɹ ɹݟ͔ͭͬͨυΩϡϝϯτΛධՁ͠ɺॱং෇͚Δ ݕࡧ ϥϯΩϯά ● ● ● ΫΤϦ ʢϢʔβೖྗʣ υΩϡϝϯτू߹ υΩϡϝϯτू߹ 1. 2. 3. υΩϡϝϯτϦετ ʢॱং෇͖ʣ 4 / 19

Slide 5

Slide 5 text

Texdoc ͷ͘͠Έ ݕࡧᶃ TexdocͷΫΤϦ $ texdoc Texdoc ͷΫΤϦ͸ओʹ 3 ύλʔϯ ▶ ύοέʔδʢਖ਼֬ʹ͸ TEX Live ͷύοέʔδʣͷ໊લ ▶ ࣮ߦϑΝΠϧύεͷҰ෦ ▶ υΩϡϝϯτϑΝΠϧύεͷҰ෦ ˞ύεͳͷͰ਌σΟϨΫτϦͷ໊લͰ΋Α͍ ࢀߟɿྫ֎ 2 ύλʔϯ ▶ ΤΠϦΞε ▶ ύοέʔδϑΝΠϧͷϑΝΠϧ໊ʢ ‌ *.sty ‌ ʣ 5 / 19

Slide 6

Slide 6 text

Texdoc ͷ͘͠Έ ݕࡧᶄ 2ͭͷ৘ใݯ 1. TEX Live ύοέʔδσʔλϕʔεɹ ɹʢTLPDBʣ ɹ ɹˠɹ ɹ ύοέʔδ໊͔ΒυΩϡϝϯτ΁ͷඥ͚ͮ ɹ ɹˠɹ ɹ ࣮ߦϑΝΠϧ͔ΒυΩϡϝϯτ΁ͷඥ͚ͮ 2. TEXMF ͷ doc πϦʔͨͪɹ ɹʢTEXDOCSʣ ɹ ɹ πϦʔͷ࠶ؼత૸ࠪͰυΩϡϝϯτͷύεΛҰཡՄ ΫΤϦλΠϓͱιʔε ΫΤϦλΠϓ ιʔε ύοέʔδ TLPDB (tlptodoc) ࣮ߦϑΝΠϧ TLPDB (runtodoc) υΩϡϝϯτϑΝΠϧ TEXDOCS 6 / 19

Slide 7

Slide 7 text

Texdoc ͷ͘͠Έ લఏ஌ࣝɿTDSͱKpathsea TEX Directory StructureʢTDSʣ TEX γεςϜͷσΟϨΫτϦߏ੒ ʹ TEXMF πϦʔ ‌ tex ‌ : TEX ϑΝΠϧʢL A TEX ύοέʔδΛؚΉʣ ‌ scripts ‌ : εΫϦϓτϑΝΠϧʢTexdoc ͷ࣮૷ͳͲʣ ‌ doc ‌ : υΩϡϝϯτϑΝΠϧ ɹ ɹ TEXDOCS ‌ source ‌ : ιʔεϑΝΠϧʢ ‌ dtx ‌ ͳͲʣ Karl’s path searchʢKpathsea; ‌ kpse ‌ ʣ TDS ʹ͕ͨ͠͏ϑΝΠϧ܈͔ΒϑΝΠϧΛݕࡧ͢Δ͘͠Έ ▶ ‌ \input ‌ ͷཪͰࢦఆͨ͠ϑΝΠϧΛ୳͍ͯ͠Δ ▶ CLIʢ ‌ kpsewhich ‌ ʣ΍ Lua ϥΠϒϥϦʢ ‌ kpse ‌ ʣ΋ଘࡏ ɹ ɹ ৄ͘͠͸ TEX Live ΨΠυʢ ‌ texdoc texlive ‌ ʣ7 અΛࢀর 7 / 19

Slide 8

Slide 8 text

Texdoc ͷ͘͠Έ ݕࡧᶅ TLPDBͷར༻ TEX Live ύοέʔδσʔλϕʔεʢTLPDBʣͱ͸ ɹ ɹ CTAN Χλϩά༝དྷͷϝλσʔλ΍ϑΝΠϧҰཡͳͲ name ύοέʔδ໊ shortdesc ύοέʔδͷ୹͍આ໌ docfiles υΩϡϝϯτϑΝΠϧͷύεϦετ runfiles ࣮ߦϑΝΠϧͷύεϦετ ɹ ɹ ‌ TEXMFROOT/tlpkg/texlive.tlpdb ‌ ʢݱࡏ ໿ 18MBʣ ߴ଎Խͷ޻෉ TLPDB ͸ڊେͳͷͰɺΩϟογϡΛར༻ ▶ ඞཁͳσʔλͷΈൈ͖ग़͠ɺLua ͷ ‌ dofile ‌ Խ ▶ ॳճݕࡧ࣮ߦ࣌ʹ࡞੒ ɹ ɹ DB ͷߋ৽Λݕ஌ͯ͠ߋ৽ 8 / 19

Slide 9

Slide 9 text

Texdoc ͷ͘͠Έ ݕࡧᶆ TEXDOCSͷ૸ࠪ Kpathsea API Ͱ͸ͳ͘ɺTexdoc ಠࣗʹ֤πϦʔΛ૸ࠪ Ϛονͷ৚݅ ΫΤϦ͕ύεͷ෦෼จࣈྻʹϚον͢Ε͹ OK ɹ ɹϑΝΠϧ໊͚ͩͰͳ͘ɺ਌σΟϨΫτϦ໊ʹ΋Ϛον ྫ ‌ hyperref/manual.pdf ‌ ʢݱࡏ͸ ‌ hyperref-doc.pdf ‌ ʣ ߴ଎Խͷ޻෉ Kpathsea ͷ͘͠ΈΛྲྀ༻ ɹ ɹ ՄೳͳΒ ‌ ls-R ‌ Λར༻ ▶ ‌ TEXDOCS ‌ ͷ ‌ ! ‌ ࢦఆࢠʹ͕ͨ͠͏ ▶ ‌ ls-R ‌ ࢖༻πϦʔͷߋ৽൓өʹ͸ ‌ mktexlsr ‌ ͕ඞཁ 9 / 19

Slide 10

Slide 10 text

Texdoc ͷ͘͠Έ ݕࡧᶇ ͍͋·͍ݕࡧ ͍͋·͍ݕࡧͱ͸ ▶ ଟগͷλΠϙʢޡࣈ΍୤ࣈʣΛڐ༰ͨ͠ݕࡧ ྫ scsnowmen ɹ ɹ scsnowman ▶ ฤूڑ཭Λ༻͍࣮ͯ૷͞ΕΔ͜ͱ͕ଟ͍ Texdoc ͷ͍͋·͍ݕࡧ v3 Ҏ߱ɺύοέʔδ໊ͷΈର৅ͱ͢Δ؆қ࣮૷Λಋೖ 1. ௨ৗͷݕࡧΛ࣮ߦ 2. ώοτͳ͠ͷ৔߹ɺ͍ۙύοέʔδ໊Λ୳͢ 3. ݟ͔ͭͬͨύοέʔδ໊Ͱ࠶ݕࡧ ɹ ɹ ΤΠϦΞε΍υΩϡϝϯτϑΝΠϧ໊΁ͷରԠΛݕ౼த 10 / 19

Slide 11

Slide 11 text

Texdoc ͷ͘͠Έ ݕࡧπʔϧͷߏ੒ཁૉʢ࠶ܝʣ Texdoc Λߏ੒͢Δॏཁͳػೳ͸ 2 ͭ υΩϡϝϯτΛݕࡧ͢Δػೳ ɹ ɹݕࡧΫΤϦʹؔ܎͢ΔυΩϡϝϯτΛݟ͚ͭΔ υΩϡϝϯτΛϥϯΩϯά͢Δػೳ ɹ ɹݟ͔ͭͬͨυΩϡϝϯτΛධՁ͠ɺॱং෇͚Δ ݕࡧ ϥϯΩϯά ● ● ● ΫΤϦ ʢϢʔβೖྗʣ υΩϡϝϯτू߹ υΩϡϝϯτू߹ 1. 2. 3. υΩϡϝϯτϦετ ʢॱং෇͖ʣ 11 / 19

Slide 12

Slide 12 text

Texdoc ͷ͘͠Έ ϥϯΩϯάᶃ είΞͱॱং είΞϦϯά ໨త ༏ઌతʹදࣔ͢ΔυΩϡϝϯτΛܾΊΔ ํ๏ ϑΝΠϧ໊ͷύλʔϯ΍ϝλσʔλΛධՁ ج४ جຊతʹ good ͷΈΛදࣔɻ𝑠 ͸είΞ ɹ ɹ good: 𝑠 > 0 ɹ ɹ bad: −100 < 𝑠 ≤ 0 ˞ ‌ -showall ‌ ϞʔυͰ͸දࣔ ɹ ɹ killed: 𝑠 ≤ −100 ॱং෇͚ͷϧʔϧ είΞ͕࠷༏ઌɻಉ఺ͷ৔߹ʹଞͷཁૉΛར༻ 1. είΞɿܭࢉํ๏͸࣍εϥΠυҎ߱Ͱઆ໌ 2. ϑΝΠϧͷछྨɿPDF > HTML > TXT > ͦͷଞ 3. ϑΝΠϧ໊ͷΞϧϑΝϕοτॱ 4. ϑΝΠϧॴࡏ TEXMF πϦʔͷ༏ઌॱ 12 / 19

Slide 13

Slide 13 text

Texdoc ͷ͘͠Έ ϥϯΩϯάᶄ ώϡʔϦεςΟοΫείΞ ΫΤϦͱυΩϡϝϯτͷϑΝΠϧ໊Λൺֱͯ͠ࢉग़ 1. ΦϦδφϧͷΫΤϦͱͷҰக ▶ ϑΝΠϧ໊͕ΫΤϦ͓Αͼϩέʔϧ͕׬શҰக ɹ ɹ 5 ఺ ▶ ϑΝΠϧ໊͕ΫΤϦͱ׬શҰக ɹ ɹ 4 ఺ ▶ ϑΝΠϧ໊͕ΫΤϦΛؚΉ ɹ ɹ 1 ఺ 2. ೿ੜΫΤϦͱͷҰக ΫΤϦʹ ‌ -doc ‌ ͳͲͷසग़ͳ઀ඌࣙΛ෇Ճͯ֬͠ೝ ▶ ϑΝΠϧ໊͕೿ੜΫΤϦͱ׬શҰக ɹ ɹ 3 ఺ ▶ ϑΝΠϧ໊͕೿ੜΫΤϦΛؚΉ ɹ ɹ 2 ఺ 3. ্هʹ͋ͯ͸·Βͳ͍৔߹ ▶ Ұ཯ ɹ ɹ −10 ఺ 13 / 19

Slide 14

Slide 14 text

Texdoc ͷ͘͠Έ ϥϯΩϯάᶅ είΞௐ੔ ώϡʔϦεςΟοΫείΞͷܭࢉޙʹείΞௐ੔ 1. TLPDB ༝དྷͷυΩϡϝϯτ΁ͷٹࡁ ώϡʔϦεςΟοΫείΞ͕ −10 ҎԼͷͱ͖ ▶ tlptodoc ༝དྷͷ৔߹ ɹ ɹ −1 ఺ ▶ runtodoc ༝དྷͷ৔߹ ɹ ɹ −5 ఺ 2. ϝλσʔλ΍ϩέʔϧʹΑΔϘʔφε ▶ CTAN Χλϩάʹৄࡉ͋Γ ɹ ɹ +1.5 ఺ ▶ ϩέʔϧͱ ‌ lang ‌ ઃఆ͕Ұக ɹ ɹ +1.0 ఺ 3. adjscore ʹΑΔखಈௐ੔ ઃఆͰՃ఺΍ݮ఺͕Մ ˞ݱࡏɺσϑΥϧτͰ 61 ͷࢦఆ 14 / 19

Slide 15

Slide 15 text

Texdoc ͷ͘͠Έ ϝϯςφͷ͠͝ͱ 1. ໢ཏςετͷ։ൃɹ ɹ Ҿܧ࣌ɺ໢ཏςετ͸ଘࡏͤͣɹ ɹ ɹ ɹ ଍ֻ͚ 6 ೥͔͚ͯ։ൃɹ ɹ ˞ 130 ߲໨Ҏ্ 2. είΞௐ੔ͱΤΠϦΞεͷϝϯςφϯεɹ ɹ ೔ࠒ͔Β࢖ͬͯνΣοΫˍใࠂϕʔε ɹ ɹ ඪ४ઃఆʢ ‌ texdoc-dist.cnf ‌ ʣʹ൓ө 3. ϓϧϦΫͷड͚ೖΕɹ ɹ ৽ػೳͷੵۃಋೖϑΣʔζͰ͸ͳ͍͕ɺఏҊ࣍ୈ ɹ ɹ ϨϏϡʔˍςετͷ࡞੒ґཔʢαϙʔτʣ 15 / 19

Slide 16

Slide 16 text

Texdoc ͷ͘͠Έ ϝϯςᶃ ໢ཏςετͱCIઃఆ ςετ։ൃͷ՝୊ ▶ ৼΔ෣͍͕ݕࡧର৅ͷυΩϡϝϯτʹ΋ґଘ ɹ ɹ ೖྗͱίʔυ͚ͩͰܾ·Βͳ͍ ▶ Kpathsea ͕ೝࣝͰ͖ΔΠϯετʔϧ͕ඞཁ CI ઃఆ ▶ GitHub Actions Ͱ Linux/macOS/Windows ▶ ςετର৅ Texdoc ͱ scheme-small ΛΠϯετʔϧ ςετͷجຊઃܭ ▶ RubyʢRSpec + ArubaʣʹΑΔ݁߹ςετ͕த৺ ʢएׯ͕ͩɺ಺෦ؔ਺͸ Lua ͷ Unit ςετ΋͋Γʣ ▶ ϞοΫ TEXMF + TLPDB ͱຊ෺ͷ TEX Live Λ࢖͍෼͚ 16 / 19

Slide 17

Slide 17 text

Texdoc ͷ͘͠Έ ϝϯςᶄ είΞͱΤΠϦΞε TEX Live ͷύοέʔδ͸૿ݮɺͨ·ʹߏ଄΋มߋ ɹ ɹ ඪ४ઃఆͷ ‌ alias ‌ ΍ ‌ adjscore ‌ ͸ϝϯςφϯε͕ඞཁ ೔ࠒͷΞΫγϣϯ ͱʹ͔͘ Texdoc Λ࢖͏ʂ มͳڍಈΛݟͨΒ௚͢ɹ ɹ ▶ ‌ tlmgr update ‌ Ͱ auto-install ΛݟͨΒଈ ‌ texdoc ‌ ϝʔϦεʢ ‌ [email protected] ‌ ʣ΍ GitHub ͷใࠂʹରԠ ϦϦʔεલͷΞΫγϣϯ ‌ rake check_aliases ‌ ͰશΤΠϦΞεͷੜଘΛ֬ೝ ‌ rake save_output ‌ Ͱ؂ࢹΫΤϦͷείΞΛ֬ೝ 17 / 19

Slide 18

Slide 18 text

Texdoc ͷ͘͠Έ ϝϯςᶅ ࠷ۙͷϓϧϦΫ ड͚ೖΕͷํ਑ ▶ Texdoc ։ൃऀ͕ܧଓతʹϝϯςφϯεͰ͖Δ͜ͱ ▶ ςετ͕༻ҙͰ͖Δ͜ͱ ˞࡞੒ͷαϙʔτ͸Մ ۙ೥ͷओͳϓϧϦΫ #79 ΦϯϥΠϯݕࡧػೳʢMax Chernoff ͞Μʣ ϩʔΧϧʹυΩϡϝϯτ͕ෆࡏͳΒ texdoc.org ʹඈͿ #91 λϒิ׬ؔ਺ͷϓϦϯτʢWu Zhenyu ͞Μʣ ‌ --print-completion=zsh ‌ ΞΫγϣϯͷ௥Ճ ɹ ɹมߋͷҰཡ͸෇ଐͷ ‌ NEWS ‌ Λࢀর 18 / 19

Slide 19

Slide 19 text

Texdoc ͷ͘͠Έ ࠓޙͷܭըͱ·ͱΊ ͜Ε͔Βͷ Texdoc ▶ ͍͋·͍ݕࡧͷ֦ு ▶ ΤΠϦΞε΍ϑΝΠϧ໊Λର৅ʹ௥Ճ ▶ ώοτ 0 ݅Ҏ֎ͷ৔߹ʹ΋࣮ߦ ▶ ิ׬ؔ਺ͷαϙʔτγΣϧ௥Ճ ▶ L A TEX ιʔεΛར༻ͨ͠શจݕࡧͷࢼݧ࣮૷ʂʁ ɹ ɹ ໢ཏςετ͕׬੒ͨ͠ͷͰɺ৽ػೳ௥Ճͷػӡ ·ͱΊ ▶ Texdoc ͸ TEX Live Πϯϑϥͷ͘͠Έʹཱ٭ ▶ ϝϯςϯφε͸ී௨ͷ OSS ͱಉ༷ɻςετ͸େࣄʂ ▶ TEX ΤίγεςϜΛ׆͔ͨ͠։ൃΛͯ͠ΈΑ͏ʂ 19 / 19