開発環境へのこだわり
by
SHIBATA Hiroshi
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
։ൃڥͷͩ͜ΘΓ @hsbt
Slide 2
Slide 2 text
ࡉ͔͗ͯ͢ΘΒͳ͍ @hsbt ͷ։ൃڥ(खݩͷϚγϯ)ͷΛ͠·͢ɻ @hsbt ͜ΕͰੜ࢈ੑ͋͛ͯΔͱ͍͏͚ͩͷͳͷͰɺͦΕͧΕʹ͋ͬͨ࠷ߴ ͷΓํ͍ͯͩ͘͠͞ɻ ࠓ͢͜ͱ
Slide 3
Slide 3 text
● macOS, Windows, Linux શ෦͏ͷͰ platform ʹϩοΫ͞ΕΔͷ Θͳ͍ ○ macOS (Windows) Ͱ͚ͩಈ͘ GUI ΞϓϦ ○ homebrew, scoop, apt(dnf) ͰखʹೖΒͳ͍ίϚϯυ ○ Go, Rust ͰγϡοͱϏϧυͰ͖ͳ͍ίϚϯυ جຊతͳߟ͑ํ
Slide 4
Slide 4 text
● هԱ(҉ه)͠ͳ͍ ○ ਓؒͷهԱྗʹݶք͕͋ΔͷͰͦΕʹཔΒͳ͍ ○ ಛతͳϫʔυ͚ͩͰಛఆͰ͖ΔΈΛ͏ ● ੵۃతʹΞϯϥʔχϯά͢Δ ○ https://rebuild.fm/169/ Λฉ͍ͯ΄͍͠ ○ ίϯϐϡʔςΟϯάڥ͕·͙Δ͘͠มΘΔੈͷதͰݹ͍Γํ͕ ͍ͭ·Ͱ͍͍ͱࢥΘͳ͍ɻֵ৽ɻ جຊతͳߟ͑ํ
Slide 5
Slide 5 text
● ΧελϚΠζ͋·Γ͠ͳ͍ɺϓϥάΠϯ͋·ΓΘͳ͍ ○ όουϊϋͱʮԞ͕ਂ͍ީ܈ʯ ΛಡΜͰ͍ͩ͘͞ ○ ͦͦಓ۩ͦͷ··Ͱ͍͍͢ͷͰ͋Δ͖ ■ Git ࠷ѱ!(͚ͩͲ͠ΐ͏͕ͳ͍ͷͰ͏) ● https://github.com/hsbt/hsbt/tree/master/toolbox/xdg/config/fish ͕શ෦ ○ xdg ʹͱʹ͔͘دͤΔͨΊʹڥม͚ͩ͠ΐ͏͕ͳ͘ઃఆ͍ͯ͠Δ ○ alias ͱ͔ઃఆͯ͠ fuzzy finder ͕༏लͳΒΘͳ͍... γΣϧ fish
Slide 6
Slide 6 text
● fzf, peco ● zoxide, autojump, z ਓ͕ؒҰੜʹλΠϓͰ͖ΔΩʔͷʹݶք͕͋ΔͷͰগͳ͍Ͱ͍͍ײ͡ʹ ͢Δ fuzzy finder Λ͍·͘Δ
Slide 7
Slide 7 text
● ϖύϘʹೖࣾͯ͠10ԹΊͨൿͷλϨ ○ ೖ͔ࣾͨ͠Γͩͱཤྺ͕ͳ͍ͷͦΕͦ͏... ● fish ͷཤྺ fuzzy find Ͱ͏ (fzf ֦ுͳͷ͔ built-in ͳͷ͔ௐ͍ͯͳ͍) ● ϓϥοτϑΥʔϜΛލ͍Ͱ͍͍ײ͡ʹͰ͖ͳ͍ͷ͕ͩΔ͍ ○ ಛʹ fish ಠࣗܗࣜͳͷ͕ͪΐͬͱ... ཤྺΛ͏
Slide 8
Slide 8 text
● find ΑΓ fd ● grep ΑΓ ripgrep ● sed ΑΓ sd ● cat ΑΓ bat ● dig ΑΓ dog ● man ΑΓ tealdeer(tldr ͷ࣮৭ʑ͋ΔͷͰ͖ͳͭ͏) ෳࡶͳΦϓγϣϯΛ֮͑Δͷ࣌ؒͷແବɺඞཁͳ࣌ʹௐΕྑ͍ Rust Ͱॻ͔Εͨ࣍ੈπʔϧ͍ɺ͍͍͢
Slide 9
Slide 9 text
Q. “Rust ͷπʔϧ͕αʔόʔʹΠϯετʔϧ͞Εͯͳ͍͜ͱ͋ΔΜͰ?” A. “ผʹ GNU πʔϧ࠷ϨϕϧͰ͑ΔΜͰͳ͍Ͱ͢” ͱݴ͍ΕΔ͘Β͍ʹ྆ํ͑ΔΑ͏ʹ͓ͯ͘͠ɻ Α͋͘Δ
Slide 10
Slide 10 text
● workspace Λ׆༻ ○ “code -a .” Λ e ʹ alias ○ ؔ͋ΔϦϙδτϦશ෦ vscode ʹಥͬࠐΉ(-a Φϓγϣϯ) ● vscode ͷىಈ “open ~/path/to/workspace.code-workspace” ● ͋ͷϑΝΠϧͲ͚ͩͬ͜ͳʙͱ୳͕࣌ؒ͢ແବɺίϚϯυύϨοτͰ͙͢ ։͘ vscode
Slide 11
Slide 11 text
● ghq ͱ gem-src Λͬͯɺશ෦खݩʹ clone ○ fzf Λͬͯଈ࠲ʹ։͘ ● google/codesearch Λͬͯେ·͔ͳݕࡧΛͰ͖ΔΑ͏ʹ͢Δ ● ͋ΕͳΜ͔ݹ͘Ͷ?ͱ͍͏࣌ʹ git pull Λ͢Δͷ࣌ؒͷແବͳͷͰ ghq.root ͷԼΛҰؾʹΞοϓσʔτ͢ΔίϚϯυΛࣄલʹຖே࣮ߦ ○ ͦͷ࣌ؒʹ feedly Ͱ֤ࣾͷςοΫϒϩάͱ͔ hackernews ͱ͔શ෦ಡΉ Git ͱ GitHub
Slide 12
Slide 12 text
● https://github.com/hsbt/hsbt/tree/master/toolbox/libexec ʹࡉ͔͍࣮ߦϓϩ άϥϜΛೖΕ͍ͯΔ ● ͲΜͳʹখ͍͞ίʔυͰhttps://github.com/hsbt/hsbt/tree/master/ sandbox ʹ์ΓࠐΉ ○ octokit ͷॳظԽॲཧͳΜ͔ͩͬͨͳʔɺΛௐΔͷ࣌ؒͷແବɺ͜ ͔͜ΒऔΓग़͢ ● GitHub copilot ͍͢͝ɺશһ͏͖ ͦͷଞ
Slide 13
Slide 13 text
● ಓ۩ͱਓؒΛߟ͑ͨͱ͖ʹɺਓؒͷ͍ํ͕ѱ͍ͱ͍͏ͷͰͳ͘ɺ͍ ʹ͍͘ಓ۩͕ѱ͍ͱ͍͏ࢥߟͰ͍͘ ○ ͱݴͬͯϦςϥγʔͱ͔͑·͚͢ͲͶ... ○ Ωʔϫʔυ: ମੑɺίϯϰΟϰΟΞϦςΟ ● దʹࢥ͍ු͔ͨใͷஅย͔Β΄͍͠ͷΛશ෦ग़Δੈͷதʹͳͬͯ ΄͍͠ ○ ೦͡Δ͚ͩͰṶ͔ΔαʔϏεͰ͖ͯ΄͍͠ ·ͱΊ