Upgrade to Pro — share decks privately, control downloads, hide ads and more …

パッケージ制作のすゝめ / latex-package

Watson
November 05, 2016

パッケージ制作のすゝめ / latex-package

Watson

November 05, 2016
Tweet

More Decks by Watson

Other Decks in Programming

Transcript

  1. ύοέʔδ੍࡞ͷ͢ʍΊ
    ύοέʔδ੍࡞ͷ͢ʍΊ
    ே૔୎ਓ
    TEX Ϣʔβͷू͍ 2016
    2016 ೥ 11 ݄ 5 ೔
    1 / 27

    View Slide

  2. ύοέʔδ੍࡞ͷ͢ʍΊ
    ࣗݾ঺հ
    ே૔ ୎ਓ
    ▶ ౦ژେֶཧֶ෦ੜ෺৘ใՊֶՊ 3 ೥
    ▶ ϋϯυϧωʔϜ͸ϫτιϯʢwtsnjpʣ
    ▶ ߴߍ࣌୅͸෼ࢠੜ෺ֶΛѪ͍ͯͨ͠
    ˠ͍·͸਺ֶ΍৘ใՊֶʹڵຯ͕Ҡߦ
    ▶ झຯ͸ొࢁʢΫϥΠϛϯά΍୔ొΓ΋ؚΉʣ
    ˠࠓ೥͸ઇࢁ΋ߦ͖͍ͨɽ໋͕͍ͭ͋ͬͯ͘΋଍Γͳ͍
    ▶ ΋ͪΖΜϓϩάϥϛϯά΋޷͖
    େ޷͖ͳݴޠɿTEX (on L
    A
    TEX), Ruby
    ࢖ͬͨ͜ͱ͋ΔݴޠɿC/C++, R, Python, Scheme, etc.
    ▶ 2015 ೥ʹ౦େ TEX Ѫ޷ձΛઃཱ
    2 / 27

    View Slide

  3. ύοέʔδ੍࡞ͷ͢ʍΊ
    L
    A
    TEX ύοέʔδͱ͸
    ఆٛ
    L
    A
    TEX ͓ΑͼจॻΫϥεΛิ͍ɼ༷ʑͳػೳ֦ுΛߦ͏ϓϩάϥϜ
    ʢ͓Αͼ෇ଐ͢ΔϑΥϯτ౳ͷσʔλʣΛ L
    A
    TEX ύοέʔδͱݺͿɽ
    ˠ௨ৗϓϦΞϯϒϧʹͯ \usepackege ʹΑΓಡΈࠐ·ΕΔ΋ͷ

    ▶ ύοέʔδͰ͋Δ΋ͷɿgraphicx, X
    Υ
    MTEX, TikZ, etc.
    ▶ ύοέʔδͰͳ͍΋ͷɿjsarticle, ConTEXt, METAFONT, etc.
    ύοέʔδϑΝΠϧ
    چελΠϧϑΝΠϧʢL
    ATEX 2.09ʣ
    ∗.cls, ∗.clo, ∗.sty , ∗.def, ∗.dtx, ∗.ins
    ύοέʔδʹؚ·ΕಘΔϑΝΠϧ
    3 / 27

    View Slide

  4. ύοέʔδ੍࡞ͷ͢ʍΊ
    L
    A
    TEX ύοέʔδ਺ͷભҠʢTEX Liveʣ
    4 / 27

    View Slide

  5. ύοέʔδ੍࡞ͷ͢ʍΊ
    ։ൃதͷύοέʔδͨͪ
    ▶ WT SeriesɿL
    A
    TEX จॻ࡞੒༻ͷύοέʔδू
    ▶ WTStyle - จॻϨΠΞ΢τΛ؆୯ʹઃఆ
    ▶ WTRef - ૬ޓࢀরػೳͷ֦ுʢ໊લۭؒɾείʔϓʣ
    ▶ WTKeyword - ࡧҾ࡞੒ͷิॿ
    ▶ WTMath - ਺ࣜ༻ϚΫϩ
    ▶ WTCounter - Χ΢ϯλͷग़ྗΛ֦ு
    ▶ TL SeriesɿTEX on L
    A
    TEX ϓϩάϥϛϯά༻ͷύοέʔδू
    ▶ TLArray - ഑ྻϥΠϒϥϦ
    ▶ TLRegexp - ਖ਼نදݱϥΠϒϥϦ
    ▶ TLDebug - σόοά༻
    ▶ ClassicalCipherɿݹయΞϧΰϦζϜʹΑΔ҉߸Խɾ෮߸Խ
    ▶ GotohɿSmith-Waterman-Gotoh ΞϧΰϦζϜ
    ੨ࣈɿCTAN Ͱར༻Մ ੺ࣈɿܭըஈ֊ʢະ࣮૷ʣ
    5 / 27

    View Slide

  6. ύοέʔδ੍࡞ͷ͢ʍΊ
    ύοέʔδ੍࡞ͷϝϦοτ
    ϚΫϩ࡞੒ͷҙٛ
    ▶ ίʔυهड़ྔͷܰݮ
    ▶ จॻߏ଄Խͷపఈ
    ▶ ηϚϯςΟΫεͷ໌ྎԽ
    ▶ อकੑͷ޲্
    ▶ දهΏΕ౳ͷൃੜΛ཈ࢭ

    ྦྷ৐ͱٯߦྻɿx−1, A−1
    ▶ ී௨ʹॻ͘ͱ
    x^{-1}, A^{-1}
    ▶ ߏ଄Խ͢Δͱ
    x^{-1}, \inverse{A}
    ύοέʔδԽͷҙٛ
    ▶ DRY ݪଇΛकΔ͜ͱʹΑΔอकੑͷ޲্
    ▶ υΩϡϝϯτ࡞੒౳ʹΑΓ࢓༷ͷચ࿅Խ͕ଅਐ
    ▶ ੒Ռ෺ͷڞ༗ɾίϛϡχςΟ΁ͷߩݙʹͭͳ͕Δ
    6 / 27

    View Slide

  7. ύοέʔδ੍࡞ͷ͢ʍΊ
    ύοέʔδ੍࡞ʹඞཁͳ΋ͷ
    ΞΠσΞ Ϟνϕʔγϣϯ ଟগͷ஌ࣝ
    twemoji by twitter, inc.
    7 / 27

    View Slide

  8. ύοέʔδ੍࡞ͷ͢ʍΊ
    ͳͯ͘΋Α͍΋ͷ
    ߴ౓ͳΞϧΰϦζϜ
    TEX ݴޠ
    ωλੑ
    8 / 27

    View Slide

  9. ύοέʔδ੍࡞ͷ͢ʍΊ
    ύοέʔδͷએݴ
    ▶ \ProvidesPackageɿύοέʔδͷجຊࣄ߲Λએݴ
    ▶ \ProvidesPackage{⟨name⟩}[⟨date⟩ ⟨info⟩] ͱ͍͏ॻࣜ
    ▶ ⟨name⟩ ͸ύοέʔδͷ໊শʹύοέʔδϑΝΠϧ໊
    ▶ ⟨date⟩ ͸ඞͣ YYYY/MM/DD ͷॻࣜͰॻ͘ ex. 2016/11/05
    ▶ ⟨info⟩ ʹ͸ͦͷଞͷ৘ใ
    ▶ ϩάϑΝΠϧʹॻ͖ࠐ·ΕΔͷͰ௕ա͗Δͷ͸μϝ
    ▶ όʔδϣϯ൪߸ͱ୹͍આ໌͕ॻ͔ΕΔ͜ͱ͕ଟ͍
    ▶ \NeedsTeXFormatɿඞཁͳ TEX ؀ڥΛએݴ
    ▶ \NeedsTeXFormat{⟨format⟩}[⟨date⟩] ͱ͍͏ॻࣜ
    ▶ ⟨format⟩ ͸جຊతʹ LaTeX2e ͔ pLaTeX2eʢ࿨จઐ༻ͷ৔߹ʣ
    ▶ ⟨date⟩ ͷॻࣜ͸ \ProvidesPackage ͱಉ͡
    ▶ ಛఆͷϦϦʔεҎ߱ͷ ⟨format⟩ Λࢦఆ͍ͨ͠৔߹ʹॻ͘
    ▶ ಛʹͳ͚Ε͹লུͯ͠Α͍
    طଘͷʢஶ໊ʣύοέʔδʹ฿͏ͷ͕Φεεϝ
    9 / 27

    View Slide

  10. ύοέʔδ੍࡞ͷ͢ʍΊ
    ී௨ͷϚΫϩ࡞੒ͱͷҧ͍
    ύοέʔδ΍Ϋϥε࡞੒ऀ༻ L
    A
    TEX ໋ྩ
    Φϓγϣϯؔ࿈΍ϝοηʔδग़ྗؔ࿈Ͱ͍͔ͭ͋͘Δɽ࢖͍ํ͸
    ඞཁʹԠͯ͡ௐ΂Ε͹े෼ɽ

    ▶ \RequirePackageɿґଘύοέʔδͷಡΈࠐΈ
    ▶ \DeclareOptionɿύοέʔδΦϓγϣϯͷએݴ
    ▶ \ProcessOptionsɿϢʔβࢦఆΦϓγϣϯͷॲཧΛ࣮ߦ
    ͦͷଞͷ஫ҙࣄ߲
    ▶ ଞͷύοέʔδͱͷׯবΛۃྗආ͚Δ
    ▶ ෭࡞༻ΛͳΔ΂͘Ҿ͖ى͜͞ͳ͍
    ͍ͭ΋Ҏ্ͷʮؾ഑Γʯ͕େ੾
    10 / 27

    View Slide

  11. ύοέʔδ੍࡞ͷ͢ʍΊ
    ͜ΕΑΓ͠͹Β͘
    TEXݴޠ஫ҙ
    11 / 27

    View Slide

  12. ύοέʔδ੍࡞ͷ͢ʍΊ
    ؾ഑Γᶃ ໊લۭؒ
    ໋ྩͷछྨ
    ▶ Ϣʔβ໋ྩɿϢʔβʹ࢖༻ͯ͠΋Β͏ͨΊͷ໋ྩ
    ▶ ಺෦໋ྩɿ࣮૷্ඞཁͳύοέʔδ಺Ͱར༻͢Δ໋ྩ
    ಈػ
    1. Ϣʔβʹ͸಺෦໋ྩʹΞΫηεͯ͠ཉ͘͠ͳ͍
    2. ଞͷύοέʔδ౳ͷ໋ྩͱͷিಥΛ཈ࢭ͍ͨ͠
    ํ๏
    1. ໋ྩʹ@ΛؚΊΔʢύοέʔδ಺Ͱ͸σϑΥϧτͰར༻Մʣ
    2. ಺෦໋ྩʹ͸ඞͣύοέʔδݻ༗ͷ઀಄ࣙΛ෇͚Δ
    ex. sample ύοέʔδͷ಺෦໋ྩΛ \[email protected] ʹ౷Ұ
    12 / 27

    View Slide

  13. ύοέʔδ੍࡞ͷ͢ʍΊ
    ؾ഑Γᶄ ໋ྩఆٛ
    ͓͢ʍΊํ਑
    Ϣʔβ໋ྩ͸ L
    A
    TEX ࣜɼ಺෦໋ྩ͸ TEX ࣜͰఆٛ͢Δɽ
    ▶ L
    A
    TEX ࣜɿ\newcommand, \providecommand, etc.
    ▶ ఆٛ͠Α͏ͱ͢Δ໋ྩ͕ఆٛࡁΈͰ΋҆શͳڍಈ
    ▶ TEX ࣜͷఆٛʹൺ΂Δͱࣗ༝౓͕௿͍
    ˠ L
    A
    TEX ࣜͰఆٛෆೳͳϢʔβ໋ྩ͸࢓༷ͷݟ௚͠Λݕ౼
    ▶ TEX ࣜɿ\def, \edef, \xdef, \let, etc.
    ▶ ఆٛ͠Α͏ͱ͢Δ໋ྩ͕طଘͰ΋ແܯࠂͰ্ॻ͖͢Δ
    ˠিಥ͠ͳ͍Α͏໊લۭ͕ؒ෼཭͞Ε͍ͯΔ͜ͱ͕લఏ
    ໋ྩͷ robust ੑ
    \section ΍ \caption ͳͲͷҾ਺಺Ͱ࢖༻͞ΕಘΔϢʔβ໋ྩ͸
    robust ʹఆٛ͢Δඞཁ͕͋Δɽ
    ˠݪଇ \DeclareRobustCommand ໋ྩΛ༻͍ͯఆٛ͢Δ
    13 / 27

    View Slide

  14. ύοέʔδ੍࡞ͷ͢ʍΊ
    ؾ഑Γᶅ ྫ֎ॲཧ
    ͓͢ʍΊํ਑
    ▶ ༧ଌͰ͖Δෆਖ਼ͳೖྗΛ์ஔ͠ͳ͍
    ˠ͖ͪΜͱݕ஌͠ɼద੾ͳϝοηʔδΛදࣔ͢Δ
    ▶ ϩάϨϕϧʹ͍ͭͯ͸Α͘ߟ͑Δඞཁ͕͋Δ
    ▶ ܯࠂɿજࡏతͳ໰୊͸͋Δ͕ॲཧ͸ଓߦՄ
    ▶ Τϥʔɿக໋తͳ໰୊Ͱॲཧͷଓߦ͸ෆՄೳ
    ϩάؔ࿈ͷ L
    A
    TEX ໋ྩ
    ͢΂ͯͷ໋ྩ͕ୈ 1 Ҿ਺ʹύοέʔδ໊ ⟨pkg⟩ ΛͱΔɽ
    ▶ \PackageError{⟨pkg⟩}{⟨error text⟩}{⟨help text⟩}
    ▶ \PackageWarning{⟨pkg⟩}{⟨warning text⟩}
    ▶ \PackageWarningNoLine{⟨pkg⟩}{⟨warning text⟩}
    ▶ \PackageInfo{⟨pkg⟩}{⟨info text⟩}
    14 / 27

    View Slide

  15. ύοέʔδ੍࡞ͷ͢ʍΊ
    ؾ഑Γᶆ Ϩδελͷར༻ن໿
    ▶ TEX ʹ͸ \count, \dimen ͳͲͷϨδελʢม਺ʣ͕͋Δ
    ▶ ࢖༻ՄೳͳϨδελͷ਺ʹ͸্ݶ͕͋Δ
    ▶ ݩʑͷ TEX ॲཧܥͰ͸֤छ 256 ݸͣͭ
    ▶ ࠷ۙͷॲཧܥʹ͸͍ͬͺ͍ʢ֓Ͷ 215, 216 ݸఔ౓ʣ
    ▶ چདྷͷΑ͏ʹؤுͬͯઅ໿͠ͳͯ͘΋͍͍
    ▶ ༻్ຖʹඞཁͳ͚ͩϨδελΛऔಘ
    ▶ ແ༻ͳϨδελͷ࢖͍ճ͠͸όάͷԹচʹͳΓ͕ͪ
    ▶ ໋ྩΛ࢖༻͢Δ౓ʹϨδελΛফඅ͢Δઃܭ͸ආ͚Δ
    ˠ\newcount ͷྨ͸ݪଇύοέʔδͷ஍ͷจʹ͚ͩॻ͘
    μϝͳྫ
    1 \def\[email protected]#1{%
    2 \newcount\[email protected]
    3 \[email protected]=#1\relax
    4 \multiply\[email protected]\[email protected]
    5 \the\[email protected]}
    ྑ͍ྫ
    1 \newcount\[email protected]
    2 \def\[email protected]#1{%
    3 \[email protected]=#1\relax
    4 \multiply\[email protected]\[email protected]
    5 \the\[email protected]}
    15 / 27

    View Slide

  16. ύοέʔδ੍࡞ͷ͢ʍΊ
    ؾ഑Γᶇ ͦͷଞ
    ݪঢ়෮ؼ
    ▶ φχΧΛมߋͨ͠ΒɼॲཧΛऴ͑ͨΒݩʹ໭͢
    ▶ ͳΔ΂͘ \bgroup, \egroup ౳ʹΑΔάϧʔϐϯάΛ׆༻
    ˠඞͣ͜ͷํ๏͕࢖͑Δͱ͸ݶΒͳ͍ʢείʔϓͷ໰୊ʣ
    ▶ ࣗ෼Ͱݪঢ়෮ؼ͢Δ৔߹ʹ͸ಛʹ஫ҙ͕ඞཁ

    1 \[email protected]=\catcode ‘\| \catcode ‘\|=11
    2 % wonderful definition!!
    3 \catcode ‘\|=\[email protected]
    ϚΫϩ࡞੒ʹؔΘΔҰൠతͳ஫ҙ
    ▶ ߦ຤ͷॲཧ͕؁͘ɼ༨ܭͳۭന͕ೖ͍ͬͯͳ͍͔ʁ
    ▶ ޡͬͯ TEX ͷΩʔϫʔυͱͯ͠ղऍ͞ΕΔڪΕ͸ͳ͍͔ʁ
    16 / 27

    View Slide

  17. ύοέʔδ੍࡞ͷ͢ʍΊ
    ؀ڥґଘ
    Ұൠతͳ͜ͱ
    ▶ ґଘύοέʔδ͸ՄೳͳݶΓগͳ͍ํ͕ྑ͍
    ˠ؆୯ʹ࣮૷Ͱ͖Δ໋ྩΛ਺ݸ࢖͍͍ͨఔ౓ͳΒࣗલͰ༻ҙ
    ▶ ࢓༷ॻʹ໌ه͞Ε͍ͯͳ͍ڍಈʢ෭࡞༻ʣʹґଘ͠ͳ͍
    TEX ಛ༗ͷ஫ҙࣄ߲
    ▶ L
    A
    TEX ͷ໋ྩʹґଘ͢Δͷ΋࣮͸ةݥ
    ▶ latex.ltx ͸݁ߏେ୾ʹมߋ͞ΕΔ͜ͱ͕͋Δ
    ▶ ಛʹ಺෦໋ྩʢ@ΛؚΉ໋ྩʣ࢖༻࣌͸ཁ஫ҙ
    ▶ Ϋϥεʹ͸ݪଇґଘ͠ͳ͍ʢύοέʔδͷཁ݅ʣ
    ▶ ॲཧܥʹΑͬͯ࢖͑ΔϓϦϛςΟϒ͕ҧ͏͜ͱʹཹҙ
    ˠಛఆͷॲཧܥʹґଘͯ͠΋͍͍͕ɼ࢓༷ʹ໌ه
    17 / 27

    View Slide

  18. ύοέʔδ੍࡞ͷ͢ʍΊ
    TEXݴޠ͜͜·Ͱ
    18 / 27

    View Slide

  19. ύοέʔδ੍࡞ͷ͢ʍΊ
    ΠϯλʔϑΣʔεͷઃܭᶃ
    εΫϦϓτݴޠతಛੑ
    ▶ TEX ͸ߴϨΠϠͷଘࡏ
    ˠ L
    A
    TEX ͸΋ͬͱ
    ▶ ΠϯλϓϦλܕݴޠ
    ▶ ੩తܕ෇͚Ͱͳ͍
    ▶ ࣮ߦ଎౓͸஗͍
    ػցޠ
    ΞηϯϒϦ
    C ݴޠ
    TEX
    L
    ATEX
    ઃܭͷํ਑ʢݸਓతͳݟղʣ
    ▶ ؆ܿʹهड़Ͱ͖ΔͱΑ͍
    ▶ ݫ֨ੑΑΓ΋ॊೈੑ
    ex. ਺͑Ε͹Θ͔Δ਺ࣈΛϢʔβʹهೖͤ͞ͳ͍
    19 / 27

    View Slide

  20. ύοέʔδ੍࡞ͷ͢ʍΊ
    ΠϯλʔϑΣʔεͷઃܭᶄ
    L
    A
    TEX Β͠͞
    ▶ ݪ࢝తʹ͸ \newcommand ͕αϙʔτ͢Δܗଶ
    ▶ ඞਢҾ਺͸͢΂ͯ{}Ͱғ͏ॻࣜ
    ▶ ࠷ॳͷҾ਺͕ [] Ͱғ͏ॻࣜͳΒΦϓγϣϯҾ਺
    ▶ L
    A
    TEX Β͠͞Λҡ֦࣋ͨ͠ுܗଶ
    ▶ ੍ޚ௲ͷ௚ޙʹ ∗ ͕෇͘ͱڍಈ͕গ͠มԽ
    ▶ ೚ҙͷҐஔʹ [] Ͱғ͏ॻࣜͷΦϓγϣϯҾ਺
    ͳΔ΂͘ආ͚͍ͨ
    ▶ L
    A
    TEX Β͘͠ͳ͍ΠϯλʔϑΣʔεʢඇ௚ײతʣ
    ▶ {}Ͱғ͏Ҿ਺͕Մม௕
    ▶ Ҿ਺ͷࣝผʹ{}Ͱ΋ [] Ͱ΋ͳ͍ه߸ͷ࢖༻
    ▶ Ҿ਺ͷ਺͕ଟա͗Δʢ֮͑ʹ͘͘ɼՄಡੑ΋௿͍ʣ
    20 / 27

    View Slide

  21. ύοέʔδ੍࡞ͷ͢ʍΊ
    key-value Ϧετͷ׆༻
    key-value Ϧετ
    ▶ graphicx ΍ TikZ Ͱଟ༻͞Ε͍ͯΔ
    ▶ “⟨Ωʔ⟩=⟨஋⟩” ͷΧϯϚ۠੾ΓϦετ
    ▶ L
    A
    TEX ඞਢύοέʔδ keyval ΍ͦͷ֦ு xkeyval Ͱ࣮૷Մೳ
    ▶ Ϧετͷઌ಄ɾ຤ඌɼΧϯϚͱ౳߸पลͷεϖʔε͸ແࢹ
    ϝϦοτ
    ▶ Ҿ਺ͷॱ൪͕ࣗ༝͔ͭҙຯ͕໌ࣔతͰॻࣜΛ֮͑΍͍͢
    ▶ άϩʔόϧͳઃఆɾϩʔΧϧͳઃఆΛ࣮૷͠΍͍͢
    ˠϢʔβ͸ಉ͡ઃఆΛ͍͍ͪͪೖྗ͠ͳͯ͘Α͍
    ▶ ΧϯϚ۠੾ΓϦετ͔ΒۭനΛ؆୯ʹআڈ͢Δͷʹ࢖͑Δ
    ˠϧʔϓॲཧதɼຖճ “key=\member” ͷΑ͏ʹ௨͢
    21 / 27

    View Slide

  22. ύοέʔδ੍࡞ͷ͢ʍΊ
    υΩϡϝϯτͷ༻ҙ
    ඞཁੑͱ༗༻ੑ
    ▶ গͳ͘ͱ΋ਓʹ࢖ͬͯ΋Β͏ʹ͸υΩϡϝϯτ͸ඞਢ
    ▶ ࢓༷Λ໌จԽ͢Δ࡞ۀ͸։ൃऀʹͱͬͯ΋༗ӹ
    ˠઃܭͷ៛ີԽ΍ચ࿅ʹͭͳ͕Δ
    υΩϡϝϯτͷܗଶ
    ▶ جຊ͸ L
    A
    TEX จॻͱͯ͠࡞੒
    ▶ ՄೳͰ͋Ε͹೔ຊޠͱӳޠͷ 2 ϲࠃޠͰ࡞੒
    ˠ࿨จઐ༻ύοέʔδͳΒ೔ຊޠɼͦΕҎ֎ͳΒӳޠ͕༏ઌ
    ▶ READMEʢ௨ৗ text ͔ markdownʣͷΈͰ΋ͳ͍ΑΓ͸Ϛγ
    ▶ ϒϩά΍ Qiita ͰهࣄΛ࡞੒͢Δͱએ఻ޮՌ͸ൈ܈
    ▶ doc/DocStrip ʹΑΔจॻ࡞੒ʢdtx, insʣ͸ͦΕͳΓʹ൥ࡶ
    22 / 27

    View Slide

  23. ύοέʔδ੍࡞ͷ͢ʍΊ
    GitHub Ͱͷ։ൃ
    GitHub
    ▶ ιϑτ΢ΣΞͷιʔε؅ཧαʔϏε ݉ ։ൃऀ޲͚ SNS
    ▶ όʔδϣϯ؅ཧγεςϜ git Λ࢖༻
    ▶ OSS ։ൃʹ͸ແྉͰར༻Մೳ
    ▶ TEX ͷγϯλοΫεϋΠϥΠτʹ΋ͪΌΜͱରԠ͍ͯ͠Δ
    23 / 27

    View Slide

  24. ύοέʔδ੍࡞ͷ͢ʍΊ
    ςετࣗಈԽ
    Travis CI
    ▶ GitHub ͱ࿈ܞ͢ΔܧଓతΠϯςάϨʔγϣϯαʔϏε
    ˠ GitHub ΁ͷ push ૢ࡞ΛτϦΨʹࣗಈͰςετ࣮ߦ
    ▶ GitHub ͱಉ༷ʹ OSS ։ൃʹ͸ແྉͰར༻Մೳ
    ▶ TEX ؀ڥ͸ඪ४૷උ͞Ε͍ͯͳ͍͕ɼࣗ༝౓͕ۃΊͯߴ͍
    ˠࣗྗͰ TEX Live ౳ΛಋೖՄೳ
    ▶ ༷ʑͳ؀ڥʢOS, TEX ॲཧܥʣͰͷςετ࣮ߦ͕༰қ

    ࣍ͷ 3 ॲཧܥͰςετʹ੒ޭʢOS ؀ڥ͸ Ubuntu 12.04ʣ
    ▶ pdfTEX
    ▶ LuaTEX
    ▶ X
    E
    TEX
    24 / 27

    View Slide

  25. ύοέʔδ੍࡞ͷ͢ʍΊ
    CTAN ΁ͷΞοϓϩʔυ
    Ξοϓϩʔυཁ݅ʢҰ෦ TEX Live ͷ৘ใΛؚΉʣ
    ▶ ڊେύοέʔδҎ֎͸֊૚ߏ଄Λ࡞ΒͣʹϑΝΠϧ഑ஔ
    ˠ TDS ߏ଄ͷ zip ϑΝΠϧʢTDS-structured ZIPʣ͸ෆཁ
    ▶ ࠷௿Ͱ΋ӳޠ൛ README ͸ඞਢ
    ▶ ΋͏গ͠ຊ֨తͳυΩϡϝϯτ΋͋ͬͨํ͕Α͍
    ˠϑΝΠϧ͸ manual.pdf ͷΑ͏ͳҰൠత໊শͰ͸μϝ
    Ξοϓϩʔυޙ
    ▶ ਺࣌ؒޙʹϝϯςφͷํ͔ΒϑΟʔυόοΫʢӳޠʣ
    ▶ ϛϥʔϦϯάͷ׬ྃΛ଴ͪɼ͓Αͦ 24 ࣌ؒޙʹࠂ஌͕ܝࡌ
    ▶ ཌ೔ʹ͸ TEX Live ʹ΋औΓࠐ·Εͨ
    25 / 27

    View Slide

  26. ύοέʔδ੍࡞ͷ͢ʍΊ
    ύοέʔδΛ࡞Ζ͏
    ▶ ಛघͳٕೳ͸ඞཁͳ͍
    ˠجຊతʹΞΠσΞͱ΍Δؾ͕͋Ε͹े෼ʂ
    ▶ ϝϦοτͦ͋͜ΕɼσϝϦοτ͸͋·Γͳ͍
    ▶ ҙ֎ͱखؒ͸͔͔Βͳ͍
    ▶ ඞཁͳϢʔςΟϦςΟ͸ L
    A
    TEX ͕ඪ४Ͱ༻ҙ
    ▶ ීஈΑΓ͸গ༷͠ʑʹؾΛ഑ͬͯίʔσΟϯά
    ▶ Ͱ͖ΔൣғͰυΩϡϝϯτΛॻ͘
    ▶ ࢖͍΍͍͢ΠϯλʔϑΣʔεΛߟ͑Α͏
    ▶ ۙ೥͸։ൃΛࢧԉ͢ΔศརͳαʔϏε͕ͨ͘͞Μ͋Δ
    ▶ ༨ྗ͕͋Ε͹ CTAN ʹΞοϓϩʔυ
    ˠ͜͜·Ͱ΍ΔͱɼͦΕͳΓʹୡ੒ײ΋ಘΒΕΔ
    ύοέʔδ੍࡞Ͱɼշదͳ L
    A
    TEX ϥΠϑΛʂ
    26 / 27

    View Slide

  27. ύοέʔδ੍࡞ͷ͢ʍΊ
    ࢀߟจݙ
    [1] Ԟଜ੖඙ɿL
    A
    TEX2ε ඒจॻ࡞੒ೖ໳ɼٕज़ධ࿦ࣾɼ1997 ೥
    [2] ౻ాᚸ࡞ɿL
    A
    TEX2ε ϚΫϩ࡞๏ɼϐΞιϯɼ2010 ೥
    [3] ϖʔδɾΤϯλʔϓϥΠθζ᷂ɿL
    A
    TEX2εʲϚΫϩˍΫϥεʳ
    ϓϩάϥϛϯάجૅղઆɼٕज़ධ࿦ࣾɼ2002 ೥
    [4] ٢Ӭపඒɿಠश L
    A
    TEX2εɼᠳӭࣾɼ2008 ೥
    [5] The L
    A
    TEX3 Project: L
    A
    T
    EX2ε for class and package writers, http:
    //mirror.ctan.org/macros/latex/doc/clsguide.pdf
    [6] Z.R.: ϚΫϩπΠʔλʔɼ
    http://d.hatena.ne.jp/zrbabbler/
    Happy L
    ATEXing!!
    27 / 27

    View Slide