Soumettre la recherche
Mettre en ligne
Power UP your CLI
•
1 j'aime
•
241 vues
Andy Dai
Suivre
Power UP your CLI
Lire moins
Lire la suite
Logiciels
Signaler
Partager
Signaler
Partager
1 sur 23
Télécharger maintenant
Télécharger pour lire hors ligne
Recommandé
2019/7/27 先別開 Branch 了,你聽過 Feature Toggle 嗎?
2019/7/27 先別開 Branch 了,你聽過 Feature Toggle 嗎?
Miles Chou
GIT實務操作與理論
GIT實務操作與理論
鵬 大
Continuous Delivery Workshop with Ansible x GitLab CI (3rd)
Continuous Delivery Workshop with Ansible x GitLab CI (3rd)
Chu-Siang Lai
Continuous Delivery Workshop with Ansible x GitLab CI (5th)
Continuous Delivery Workshop with Ansible x GitLab CI (5th)
Chu-Siang Lai
Continuous Delivery Workshop with Ansible x GitLab CI
Continuous Delivery Workshop with Ansible x GitLab CI
Chu-Siang Lai
Continuous Delivery with Ansible x GitLab CI (2e)
Continuous Delivery with Ansible x GitLab CI (2e)
Chu-Siang Lai
Mercurial簡介與教學
Mercurial簡介與教學
芳本 林
TeamToy-创新团队的效率工具
TeamToy-创新团队的效率工具
easychen
Recommandé
2019/7/27 先別開 Branch 了,你聽過 Feature Toggle 嗎?
2019/7/27 先別開 Branch 了,你聽過 Feature Toggle 嗎?
Miles Chou
GIT實務操作與理論
GIT實務操作與理論
鵬 大
Continuous Delivery Workshop with Ansible x GitLab CI (3rd)
Continuous Delivery Workshop with Ansible x GitLab CI (3rd)
Chu-Siang Lai
Continuous Delivery Workshop with Ansible x GitLab CI (5th)
Continuous Delivery Workshop with Ansible x GitLab CI (5th)
Chu-Siang Lai
Continuous Delivery Workshop with Ansible x GitLab CI
Continuous Delivery Workshop with Ansible x GitLab CI
Chu-Siang Lai
Continuous Delivery with Ansible x GitLab CI (2e)
Continuous Delivery with Ansible x GitLab CI (2e)
Chu-Siang Lai
Mercurial簡介與教學
Mercurial簡介與教學
芳本 林
TeamToy-创新团队的效率工具
TeamToy-创新团队的效率工具
easychen
大家應該都要會的工具 Git 從放棄到會用1-基礎篇
大家應該都要會的工具 Git 從放棄到會用1-基礎篇
Alan Tsai
電子內容管理 使用Git 與 github 1
電子內容管理 使用Git 與 github 1
Alan Tsai
Jenkins x GitLab CI
Jenkins x GitLab CI
Yihsuan Chen
Git and Github basic with SourceTree
Git and Github basic with SourceTree
Chu-Siang Lai
從 GitHub Copilot 到 Enterprise Copilot:打造符合企業需求的智能開發助手之路 | .NET Conf 2023 Taiwan
從 GitHub Copilot 到 Enterprise Copilot:打造符合企業需求的智能開發助手之路 | .NET Conf 2023 Taiwan
Alan Tsai
Git and git hub
Git and git hub
唯 李
Git 入門與實作
Git 入門與實作
奕浦 郭
COSCUP 2015 開源之道-Git工作坊教學簡報
COSCUP 2015 開源之道-Git工作坊教學簡報
Bachue Zhou
[students AI workshop] Pytorch
[students AI workshop] Pytorch
Tzu-Wei Huang
Go
Go
Andy Shi
Go
Go
Andy Shi
How to integrate GitLab CICD into B2B service
How to integrate GitLab CICD into B2B service
Alex Su
Visual Studio 開發密技大補帖 | Study4.TW 2021 小聚#2
Visual Studio 開發密技大補帖 | Study4.TW 2021 小聚#2
Alan Tsai
Python 于 webgame 的应用
Python 于 webgame 的应用
勇浩 赖
不妥協的河蟹之道
不妥協的河蟹之道
Ken Kuan
大獅子與小獅子的分享
大獅子與小獅子的分享
jo lin
[3]投影片 futurewad樹莓派研習會 141204
[3]投影片 futurewad樹莓派研習會 141204
CAVEDU Education
Build Your Own Android Toolchain from scratch
Build Your Own Android Toolchain from scratch
National Cheng Kung University
Cocoa on Rails 4th
Cocoa on Rails 4th
Xiaochun Shen
Continuous Delivery with Ansible x GitLab CI
Continuous Delivery with Ansible x GitLab CI
Chu-Siang Lai
Grpc + python.key
Grpc + python.key
Andy Dai
該怎麼樣(認真的)部署你的 Python Web 應用程式?
該怎麼樣(認真的)部署你的 Python Web 應用程式?
Andy Dai
Contenu connexe
Similaire à Power UP your CLI
大家應該都要會的工具 Git 從放棄到會用1-基礎篇
大家應該都要會的工具 Git 從放棄到會用1-基礎篇
Alan Tsai
電子內容管理 使用Git 與 github 1
電子內容管理 使用Git 與 github 1
Alan Tsai
Jenkins x GitLab CI
Jenkins x GitLab CI
Yihsuan Chen
Git and Github basic with SourceTree
Git and Github basic with SourceTree
Chu-Siang Lai
從 GitHub Copilot 到 Enterprise Copilot:打造符合企業需求的智能開發助手之路 | .NET Conf 2023 Taiwan
從 GitHub Copilot 到 Enterprise Copilot:打造符合企業需求的智能開發助手之路 | .NET Conf 2023 Taiwan
Alan Tsai
Git and git hub
Git and git hub
唯 李
Git 入門與實作
Git 入門與實作
奕浦 郭
COSCUP 2015 開源之道-Git工作坊教學簡報
COSCUP 2015 開源之道-Git工作坊教學簡報
Bachue Zhou
[students AI workshop] Pytorch
[students AI workshop] Pytorch
Tzu-Wei Huang
Go
Go
Andy Shi
Go
Go
Andy Shi
How to integrate GitLab CICD into B2B service
How to integrate GitLab CICD into B2B service
Alex Su
Visual Studio 開發密技大補帖 | Study4.TW 2021 小聚#2
Visual Studio 開發密技大補帖 | Study4.TW 2021 小聚#2
Alan Tsai
Python 于 webgame 的应用
Python 于 webgame 的应用
勇浩 赖
不妥協的河蟹之道
不妥協的河蟹之道
Ken Kuan
大獅子與小獅子的分享
大獅子與小獅子的分享
jo lin
[3]投影片 futurewad樹莓派研習會 141204
[3]投影片 futurewad樹莓派研習會 141204
CAVEDU Education
Build Your Own Android Toolchain from scratch
Build Your Own Android Toolchain from scratch
National Cheng Kung University
Cocoa on Rails 4th
Cocoa on Rails 4th
Xiaochun Shen
Continuous Delivery with Ansible x GitLab CI
Continuous Delivery with Ansible x GitLab CI
Chu-Siang Lai
Similaire à Power UP your CLI
(20)
大家應該都要會的工具 Git 從放棄到會用1-基礎篇
大家應該都要會的工具 Git 從放棄到會用1-基礎篇
電子內容管理 使用Git 與 github 1
電子內容管理 使用Git 與 github 1
Jenkins x GitLab CI
Jenkins x GitLab CI
Git and Github basic with SourceTree
Git and Github basic with SourceTree
從 GitHub Copilot 到 Enterprise Copilot:打造符合企業需求的智能開發助手之路 | .NET Conf 2023 Taiwan
從 GitHub Copilot 到 Enterprise Copilot:打造符合企業需求的智能開發助手之路 | .NET Conf 2023 Taiwan
Git and git hub
Git and git hub
Git 入門與實作
Git 入門與實作
COSCUP 2015 開源之道-Git工作坊教學簡報
COSCUP 2015 開源之道-Git工作坊教學簡報
[students AI workshop] Pytorch
[students AI workshop] Pytorch
Go
Go
Go
Go
How to integrate GitLab CICD into B2B service
How to integrate GitLab CICD into B2B service
Visual Studio 開發密技大補帖 | Study4.TW 2021 小聚#2
Visual Studio 開發密技大補帖 | Study4.TW 2021 小聚#2
Python 于 webgame 的应用
Python 于 webgame 的应用
不妥協的河蟹之道
不妥協的河蟹之道
大獅子與小獅子的分享
大獅子與小獅子的分享
[3]投影片 futurewad樹莓派研習會 141204
[3]投影片 futurewad樹莓派研習會 141204
Build Your Own Android Toolchain from scratch
Build Your Own Android Toolchain from scratch
Cocoa on Rails 4th
Cocoa on Rails 4th
Continuous Delivery with Ansible x GitLab CI
Continuous Delivery with Ansible x GitLab CI
Plus de Andy Dai
Grpc + python.key
Grpc + python.key
Andy Dai
該怎麼樣(認真的)部署你的 Python Web 應用程式?
該怎麼樣(認真的)部署你的 Python Web 應用程式?
Andy Dai
Search search search
Search search search
Andy Dai
Django channels
Django channels
Andy Dai
Django Third party packages
Django Third party packages
Andy Dai
Practical django secuirty
Practical django secuirty
Andy Dai
總之來講講 Search
總之來講講 Search
Andy Dai
Python web meetup 11 18
Python web meetup 11 18
Andy Dai
Django in heavy load environment
Django in heavy load environment
Andy Dai
電腦不只會幫你選土豆,還會幫你選新聞
電腦不只會幫你選土豆,還會幫你選新聞
Andy Dai
用 Python 打造你自己的 summly
用 Python 打造你自己的 summly
Andy Dai
Tradeoffs of replacing core components
Tradeoffs of replacing core components
Andy Dai
ElastiCache
ElastiCache
Andy Dai
Dynamo db
Dynamo db
Andy Dai
Django deploy
Django deploy
Andy Dai
Build your own trello witihin 100 LOC (with Meteor)
Build your own trello witihin 100 LOC (with Meteor)
Andy Dai
Boost your django admin with Grappelli
Boost your django admin with Grappelli
Andy Dai
Plus de Andy Dai
(17)
Grpc + python.key
Grpc + python.key
該怎麼樣(認真的)部署你的 Python Web 應用程式?
該怎麼樣(認真的)部署你的 Python Web 應用程式?
Search search search
Search search search
Django channels
Django channels
Django Third party packages
Django Third party packages
Practical django secuirty
Practical django secuirty
總之來講講 Search
總之來講講 Search
Python web meetup 11 18
Python web meetup 11 18
Django in heavy load environment
Django in heavy load environment
電腦不只會幫你選土豆,還會幫你選新聞
電腦不只會幫你選土豆,還會幫你選新聞
用 Python 打造你自己的 summly
用 Python 打造你自己的 summly
Tradeoffs of replacing core components
Tradeoffs of replacing core components
ElastiCache
ElastiCache
Dynamo db
Dynamo db
Django deploy
Django deploy
Build your own trello witihin 100 LOC (with Meteor)
Build your own trello witihin 100 LOC (with Meteor)
Boost your django admin with Grappelli
Boost your django admin with Grappelli
Power UP your CLI
1.
Power UP Your
CLI Andy Dai daikeren@gmail.com
2.
⾃自我介紹 • Andy • Django,
Python, DevOps 都略略懂略略懂 • 擔任無業遊⺠民中
3.
緣起 • kube-shell • pgcli
4.
CLI • 新⼿手惡惡夢 • 功能都藏起來來了了 •
有 Help 可以⽤用(?) • —help(?) -h(?) help(?) • ⼀一堆指令根本記不起來來
5.
git
6.
django manage.py • 下⾯面哪個是正確的選項? •
make_message • makemessage • makemessages • make_messages
7.
為了了解決這些問題 • alias • zsh
plugins • …
8.
CLI 能不能做得更更好?
9.
⼀一個好的 CLI 會有哪些 功能?
10.
GUI
11.
Auto Complete (tab)
12.
Auto Suggestion (fish)
13.
History (上下鍵)
14.
Syntax Coloring (關鍵字)
15.
要實作這些好像 有點難...
16.
pip install prompt_toolkit
17.
直接來來 DEMO
18.
from prompt_toolkit import
prompt from prompt_toolkit.history import FileHistory from prompt_toolkit.auto_suggest import AutoSuggestFromHistory from prompt_toolkit.contrib.completers import WordCompleter from pygments.lexers.sql import SqlLexer completer = WordCompleter( ['SELECT', 'FROM', 'WHERE', 'IN'], ignore_case=True) while 1: text = prompt('> ', history=FileHistory('history'), auto_suggest=AutoSuggestFromHistory(), completer=completer, lexer=SqlLexer, vi_mode=True, ) print(text)
19.
要做個好 CLI 你可能還 需要這些
20.
click import click @click.command() @click.option('--a', help='a',
type=click.INT) @click.option('--b', help='b', type=click.INT) def add(a, b): click.echo(a+b) if __name__ == '__main__': add()
21.
fuzzyfinder from fuzzyfinder import
fuzzyfinder suggest = fuzzyfinder( 'makemsg', ['makemessages', 'django', ‘compilemessages'] ) print(list(suggest))
22.
Summary • 做個好 CLI
讓⼤大家開⼼心點 • python-prompt-toolkit, click, pygements, fuzzyfinder • https://github.com/jonathanslenders/python-prompt- toolkit/tree/master/examples
23.
⼯工商服務 • UmboCV CV
Team 徵求 Backend Engineer 中 • 請寄給 excusemejoe@gmail.com
Télécharger maintenant