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

TypeScriptでVSCodeの拡張機能を作っている話 / Development VSCode extension with TypeScript

0c9464e23aeaa91d185ec407cc15c0de?s=47 kuromoka
September 30, 2019

TypeScriptでVSCodeの拡張機能を作っている話 / Development VSCode extension with TypeScript

We Are JavaScripters! @36th(https://wajs.connpass.com/event/145639/ )での発表資料です。

0c9464e23aeaa91d185ec407cc15c0de?s=128

kuromoka

September 30, 2019
Tweet

Transcript

  1. 5ZQF4DSJQUで74$PEFͷ֦ுػೳΛ࡞͍ͬͨͯΔ࿩ 8F"SF+BWB4DSJQUFST!UI !LVSPNPLB

  2. !LVSPNPLB ๏ ͘Ζ΋͔LVSPNPLB ๏ (BNF8JUIαʔόαΠυΤϯδχΞ ๏ ීஈ͸1)1Λ΍͍ͬͯ·͢ ๏ ٕज़ॻయͰ΋1)1ͷຊΛग़ͨ͠ ๏

    5ZQF4DSJQU͸ࠓճॳΊͯ৮Γ·ͨ͠
  3. ࿩͢͜ͱ ๏ ࡞͍ͬͯΔ֦ுػೳʹ͍ͭͯ ๏ 74$PEFͷ֦ுػೳ։ൃʹ͍ͭͯ ๏ 5ZQF4DSJQUͰ։ൃͯ͠Έͯ ๏ ·ͱΊ

  4. ࡞͍ͬͯΔ֦ுػೳʹ͍ͭͯ

  5. $JSDMF$*4UBUVT ๏ $JSDMF$*ͷϏϧυ݁ՌΛεςʔλεόʔʹදࣔ ๏ Ϗϧυ݁ՌΛԡ͢ͱ௥Ճػೳ

  6. $JSDMF$*4UBUVT ๏ ௥Ճػೳ ‣ ࠷৽ͷϏϧυΛ΍Γ௚͠ ‣ $JSDMF$*ͷϏϧυϖʔδΛ։͘ ‣ աڈͷϏϧυҰཡΛදࣔ͢Δ

  7. $JSDMF$*4UBUVT ๏ ݱঢ়ͷ։ൃঢ়گ ‣ ਖ਼ৗܥ͸֓Ͷಈ͖ͦ͏͚ͩͲΤϥʔ࣌͸·ͬͨ͘ݟͯͳ͍ ‣ ϦϑΝΫλ͍ͨ͠ˍςετίʔυॻ͖͍ͨ ๏ (JU)VCʹ͸ެ։ࡁΈʢؾʹͳͬͨΒ˒͍ͩ͘͞ʂʣ ‣

    IUUQTHJUIVCDPNLVSPNPLBDJSDMFDJTUBUVT
  8. 74$PEFͷ֦ுػೳ։ൃʹ͍ͭͯ

  9. ֦ுػೳ։ൃͷྲྀΕ ๏ ίʔυδΣωϨʔλͰ਽ܗ࡞੒ ๏ ཉ͍͠ػೳͷ74$PEFͰͷ໊લΛ୳͢ ๏ ػೳͷαϯϓϧίʔυΛݟΔ

  10. ίʔυδΣωϨʔλͰ਽ܗ࡞੒ ๏ :FPNBOͱHFOFSBUPSDPEFΛΠϯετʔϧ ๏ ίʔυδΣωϨʔλͰίʔυੜ੒ $ npm install -g yo

    generator-code $ yo code
  11. ίʔυδΣωϨʔλͰ਽ܗ࡞੒ ๏ 8IBUUZQFPGFYUFOTJPOEPZPVXBOUUPDSFBUF  ‣ 5ZQF4DSJQU͸ʮ/FX&YUFOTJPO 5ZQF4DSJQU ʯΛબ୒

  12. ίʔυδΣωϨʔλͰ਽ܗ࡞੒ ๏ ͋ͱͷ࣭໰͸͓޷ΈͰʢOQNPSZBSOͳͲͷ࣭໰ʣ ๏ ࡞੒ޙʹσόοάʢ'ʣͯ͠ಈ࡞֬ೝ ‣ ֦ுػೳ։ൃ༻ͷ74$PEF͕ผʹ্ཱ͕ͪΔ ‣ ίϚϯυύϨοτ͔Βʮ)FMMP8PSMEʯͷಈ࡞Λ֬ೝ

  13. ཉ͍͠ػೳͷ74$PEFͰͷ໊લΛ୳͢ ๏ ֤ػೳ͝ͱͷ໊લ͕ɺ"1*ͷؔ਺໊΍Ϋϥε໊ʹͳ͍ͬͯΔ ‣ ͨͱ͑͹εςʔλεόʔ͸ʮDSFBUF4UBUVT#BS*UFNʯؔ਺Ͱ࡞Δ ๏ ཉ͍͠ػೳͷ৔ॴ͕෼͔ͬͯ΋໊લ͕෼͔Βͳ͍ ๏ ໊લ͑͞෼͔Ε͹"1*Ұཡͷϖʔδ͔Β৘ใݕࡧͰ͖Δ ‣

    IUUQTDPEFWJTVBMTUVEJPDPNBQJSFGFSFODFTWTDPEFBQJ
  14. ໊લ͕෼͔Βͳ͔ͬͨྫ ๏ ͜ΕΛ࡞Γ͍ͨΠϝʔδ͸಄ʹ͸͋Δ໊͕લ͕ෆ໌ɾɾɾ ‣ ެࣜυΩϡϝϯτͰ͸ࢀߟʹͳΔهࡌ͕ݟ͚ͭΒͳ͔ͬͨ ‣ ಉ༷ͷ6*͕͋Δʮ(JU-FOTʯͷιʔείʔυΛಡΜͰɺ
 ʮ2VJDL1JDLʯͱΑ͏΍͘൑໌

  15. ػೳͷαϯϓϧίʔυΛݟΔ ๏ ݸਓతʹ͸υΩϡϝϯτΑΓίʔυͷํ͕ࢀߟʹͳͬͨ ๏ ެࣜͰެ։͍ͯ͠ΔαϯϓϧίʔυͷϦϙδτϦ ‣ IUUQTHJUIVCDPNNJDSPTPGUWTDPEFFYUFOTJPOTBNQMFT

  16. 5ZQF4DSJQUͰ։ൃͯ͠Έͯ

  17. ྑ͔ͬͨͱ͜Ζ ๏ 74$PEFͰิ׬͕ΨϯΨϯޮ͘ͱ͜Ζ ‣ 1)1Λ74$PEFͰॻ͍ͯΔͱ͖ͱੈք͕ҧ͍·ͨ͠ɾɾɾ ๏ Τϥʔ͕͋Ε͹ίϯύΠϧͰ஄͔ΕΔ҆৺ײ

  18. ਏ͔ͬͨͱ͜Ζ ๏ ܕγεςϜ͕ڧྗͳ෼ɺΤϥʔͰ͸·ͬͨ͜ͱʢಛʹ࠷ॳʣ ๏ ԼͷΑ͏ͳίϯετϥΫλͷॻ͖ํ ‣ ίϯετϥΫλʹ౉ͨ͠஋ͰɺϓϩύςΟ΁ͷηοτ·Ͱߦ͏

  19. ·ͱΊ

  20. ·ͱΊ ๏ 74$PEFͷ֦ுػೳ։ൃ͸໊લΛ୳͢ͷ͕େม ๏ υΩϡϝϯτΑΓαϯϓϧίʔυͷํ͕ࢀߟʹͳΔ͔΋ʁ ๏ ࡞͍ͬͯΔʮ$JSDMF$*4UBUVTʯ͸։ൃதͰ͢ʂ