Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Elixir 好用的編輯器
Search
bobo52310
July 20, 2016
Programming
0
150
Elixir 好用的編輯器
於 CatchPlay 內部 Elixir 讀書會分享。
bobo52310
July 20, 2016
Tweet
Share
More Decks by bobo52310
See All by bobo52310
Introduction openstack-horizon
bobo52310
0
86
PHP7 傳說中的第七隻大象
bobo52310
2
140
軟體工程師的3大試煉-大安高工資訊科講座
bobo52310
0
260
JSON-LD 簡介
bobo52310
2
170
實戰驚豔 Laravel 給你的5個驚嘆號
bobo52310
9
910
Other Decks in Programming
See All in Programming
[PyCon Korea 2024 Keynote] 커뮤니티와 파이썬, 그리고 우리
beomi
0
110
EventSourcingの理想と現実
wenas
6
2.1k
NSOutlineView何もわからん:( 前編 / I Don't Understand About NSOutlineView :( Pt. 1
usagimaru
0
190
ECSのサービス間通信 4つの方法を比較する 〜Canary,Blue/Greenも添えて〜
tkikuc
11
2.3k
VR HMDとしてのVision Pro+ゲーム開発について
yasei_no_otoko
0
110
ピラミッド、アイスクリームコーン、SMURF: 自動テストの最適バランスを求めて / Pyramid Ice-Cream-Cone and SMURF
twada
PRO
9
1k
CSC305 Lecture 13
javiergs
PRO
0
130
JaSST 24 九州:ワークショップ(は除く)実践!マインドマップを活用したソフトウェアテスト+活用事例
satohiroyuki
0
270
デプロイを任されたので、教わった通りにデプロイしたら障害になった件 ~俺のやらかしを越えてゆけ~
techouse
52
32k
破壊せよ!データ破壊駆動で考えるドメインモデリング / data-destroy-driven
minodriven
16
4.1k
Jakarta Concurrencyによる並行処理プログラミングの始め方 (JJUG CCC 2024 Fall)
tnagao7
1
240
PagerDuty を軸にした On-Call 構築と運用課題の解決 / PagerDuty Japan Community Meetup 4
horimislime
1
110
Featured
See All Featured
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
107
49k
The Invisible Side of Design
smashingmag
297
50k
Visualization
eitanlees
145
15k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.8k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
For a Future-Friendly Web
brad_frost
175
9.4k
The Pragmatic Product Professional
lauravandoore
31
6.3k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
9
680
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
42
9.2k
Code Reviewing Like a Champion
maltzj
519
39k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.6k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
32
1.8k
Transcript
Elixir 好用的編輯器 by Bobo Chen
工欲善其事, 必先利其器。 http://www.fjycw.com/manage/upload/201205/20120530083951421_FJ1.jpg
鄉野調查時間:哪個是你目前開發主力的編輯器 • Vim、Emacs • Sublime Text、Atom、Notepad++、TextMate • Eclipse、Netbeans • JetBrains(IntelliJ、PHPSotrm、WebStorm、PyCharm...)
• Visual Studio、Visual Studio Code
好用的編輯器應該具備哪些條件? • Syntax Highlighting • Autocomplete • Go to function
definition • 豐富的套件支援 • 專案目錄結構瀏覽
推薦3款 Elixir 開發編輯器 Sublime Text IntelliJ IDEA Vim
Sublime Text 安裝與設定 安裝 Sublime Text 3 安裝 Sublime Package
Control 安裝 SideBarEnhancements
Sublime Text 推薦套件 • ApplySyntax ◦ 自動判斷文件的類型 • SublimeCodeIntel ◦
支援多種語言的 Autocomplete • SublimeLinter ◦ 支援多種語言的 Linter • GitGutter ◦ 在側欄顯示此檔 Git 修改差異 • EasyMotion ◦ 懶人鍵盤移動法
• ElixirSublime ◦ 支援 Elixir 語法 Code completion 和 Linter
• SublimeLinter-contrib-elixirc ◦ (需先安裝 SublimeLinter)支援 Elixir 語法 Linter • Elixir-tmbundle ◦ 支援 Elixir 語法 Linter 和整合 Build code ◦ - cd ~/Library/Application Support/Sublime Text 3/Packages ◦ - git clone git://github.com/elixir-lang/elixir-tmbundle Elixir Sublime Text 推薦套件 for Elixir
IntelliJ IDEA 安裝與設定 • 付費軟體,一年 $499 訂閱制。另外有 Community 版本可以免費使用。 •
IntelliJ 安裝 Elixir 套件,可以從 IDE 建立 Elixir project。 • 或是也可以在 PHPStorm、PyCharm 這些 Jetbrains 公司出品的 IDE 安裝 Elixir 套件即可支援 Syntax Highlighting,但是不支援從 IDE 建立 Elixir project) 。
IntelliJ IDEA 推薦套件 • intellij-elixir ◦ Elixir 官方推薦套件 • AceJump
◦ 懶人鍵盤移動法 • .ignore ◦ 內建許多語言的 .gitignore 的範本
Vim 安裝與設定 Mac:已經有內建 Vim。若是覺得 Mac 內建的 Vim 版本太舊,可使用 brew 安裝新版
Vim,並且在 .bashrc 設定 alias Ubuntu: CentOS: alias vim='/usr/local/bin/vim' apt-get install vim yum -y install vim
Vim 推薦套件 • vim-elixir • EasyMotion • Vundle • Undotree
• spf13-vim 大推!
適合的使用情境 • 輕巧快速開檔 • 單檔的 Elixir Script • 開啟完整專案類型 •
需要 Compile 的專案 • 在 Server 上面編輯
補充:Elixir 內建的指令與檔案格式 - Elixir 裝好後 Console 已經有以下指令可以使用: - iex:interactive mode
- elixir:執行 elixir script - elixirc:Compiler elixir file - mix:Elixir's build tool - 2種檔案格式 .ex 、 .exs - .ex 表示 complied files - .exs 表示 script files - 檔案名稱使用 "snake_case"
補充:Interactive mode - h - IO.puts “String” - respawn $iex>
Q&A