Alfred Workflows by Go
by
enta0701
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
"MGSFE8PSLqPXT CZ(P 2017/12/11 golang.tokyo #11 @enta0701
Slide 2
Slide 2 text
ࣗݾհ ❐ɹ!FOUB ❐ɹגࣜձࣾϕʔγοΫ ❐ɹ3VCZ%PDLFSLT ɹ(P"OESPJE+BWB4DSJQU ❐ɹ(Pྺɿ͗͢ @enta0701 @endotakuya @enta0701
Slide 3
Slide 3 text
"MGSFE ɹͬͯ·͔͢ʁ
Slide 4
Slide 4 text
"MGSFE ❐ΠϯΫϦϝϯλϧαʔνͰύύοͱݕࡧ ❐ग़དྷΔݶΓΩʔϘʔυͷૢ࡞Ͱ͍݁ͨ͠ਓ͚ ❐εϦʔϓͱ͔ຯʹָ
Slide 5
Slide 5 text
"MGSFE8PSLqPXT ❐"MGSFEΛΑΓޮՌతʹ͑Δ֦ுػೳ ❐Ϣʔϩʢ ԁʣΛ͏͜ͱͰ͑Δ ❐Α͘͏ͷɺHJUIVC'POU"XFTPNF2JJUB
Slide 6
Slide 6 text
8PSLqPX ࣗ࡞Ͱ͖·͢
Slide 7
Slide 7 text
8PSLqPXΛࣗ࡞͢Δ ❐"MGSFE1SFGFSFODFT8PSLqPXT ɹ(FU4UBSUFE4DSJQU'JMUFS
Slide 8
Slide 8 text
8PSLqPXΛࣗ࡞͢Δ ❐4DSJQU'JMUFSΛબ ❐ͲͷݴޠΛબΜͰɺ࠷ऴతʹඞཁͳͷ+40/ ❐CJOCBTIͰɺ(Pͷ࣮ߦϑΝΠϧΛͤ0,
Slide 9
Slide 9 text
ͪͳΈʹ4QPSUJGZʁ ೖྗ͢Δ,FZXPSE͝ͱʹ4DSJQUΛΈ߹ΘͤΔ
Slide 10
Slide 10 text
ຊ
Slide 11
Slide 11 text
"MGSFE8PSLqPXT CZ(P
Slide 12
Slide 12 text
͢Ͱʹଘࡏ͢Δ"MGSFEͷύοέʔδ ϑΥʔϚοτ 4UBS ϝϯςφϯε SVFEBQHPBMGSFE 9.- QBTDBMXHPBMGSFE 9.- EFBOJTIFBXHP +40/ ˞"MGSFE͔Β+40/͕ਪ
Slide 13
Slide 13 text
BXHP ❐HPCVJMEͨ͠ͷΛɺຖճ8PSLqPXʹஔ͢Δ ɹඞཁͯ͠ݕূ͢Δඞཁ͕͋Δ ❐HPSVOͰؾܰʹݕূ͍ͨ͠ ❐DBDIFͱ͔͍ΖΜͳػೳ͋Δ͚Ͳͦ͜·ͰٻΊͯͳ͍ ❐ڥมΛ࣮ߦϑΝΠϧʹؚΊ͍ͨ ɹ˞8PSLqPXΛ͢Δͱ͖ʹFOWΛެ։ͨ͘͠ͳ͍
Slide 14
Slide 14 text
ͬͱγϯϓϧͰ ͍͍͕ͭ͢ཉ͍͠
Slide 15
Slide 15 text
8PSLqPXʹ͢ɺ࠷খݶͷ+40/ {"items": [ { "title": "Desktop", "arg": "~/Desktop", } ]}
Slide 16
Slide 16 text
BMGSFEHP $ go get github.com/endotakuya/alfred-go/... func main() { a := alfred.New() item := alfred.NewItem() item.Title = "Desktop" item.Arg = "~/Desktop" a.Append(item) a.Print() }
Slide 17
Slide 17 text
FOWͷσʔλΛຒΊࠐΉ HOGE="text" FUGA="http://example.com/" PIYO=50000 $ alfred-go $ ls env ./ ../ env.go FOW FOWFOWHPΛੜ
Slide 18
Slide 18 text
FOWͷσʔλΛຒΊࠐΉ func main() { fmt.Println( env.List() ) fmt.Println( env.Get(“HOGE") ) } map[HOGE:text FUGA:http://example.com/ PIYO:50000] text औΓग़͢ͱ͖ɺ
Slide 19
Slide 19 text
FOWHPͷੜ w := bufio.NewWriter(f) => f: *os.File defer w.Flush() fmt.Fprintf( w, `package main import ( "fmt" ) func main() { fmt.Println(“%s") }`, “Hello, world”) HPCJOEBUBΛࢀߟʢࡶʹॻ͘ͱ͜Μͳײ͡ʣ
Slide 20
Slide 20 text
·ͱΊ ❐HPͷϑΝΠϧͷੜํ๏ؾ࣋ͪѱ͍ɺɺɺ ❐8PSLqPXTΛ࡞Δͱ͖ɺ ɹػೳ͝ͱʢαδΣετ͍ͨ͠LFZXPSE͝ͱʁʣʹ ɹ࣮ߦϑΝΠϧΛੜ͍ͯ͠ΔΓํ͕ଟ͍ ɹ㱺͜Ε͙Β͍γϯϓϧͳύοέʔδͷ΄͏͕ѻ͍ͦ͢͏ ❐ͨͬͨͷ ԁͰ͜ΜͳʹշదʹͳΔͳΜͯʂ ❐"MGSFE8PSLqPXTΛ(Pࣗ࡞ָͯ͠Λ͠·ͤΜ͔
Slide 21
Slide 21 text
͋Γ͕ͱ͏͍͟͝·ͨ͠