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
ncurses/2021-05-12-llt21
Search
Satoshi SAKAO
May 12, 2021
Programming
0
150
ncurses/2021-05-12-llt21
社内のLTイベント「えるLT Vol.21 オンライン」で発表した資料です
Satoshi SAKAO
May 12, 2021
Tweet
Share
More Decks by Satoshi SAKAO
See All by Satoshi SAKAO
Pkl/2024-04-17-llt31
ottijp
0
18
JavaScriptのデバッグ/2023-09-04-llt30
ottijp
0
81
CDK for TerraformでAzureリソースをデプロイする/2023-05-15-llt29
ottijp
0
69
TWELITEへの誘い/2022-12-27-llt28
ottijp
0
110
ビルドツールBazelを触ってみた/2022-09-28-llt27
ottijp
0
98
HashiCorp Vaultを使ったシークレットのセキュアな一元管理 〜Ansibleを添えて〜/2022-07-12-llt26
ottijp
0
110
AWSインフラのデプロイをCDKでカイゼンする/2022-03-23-llt25
ottijp
0
53
Amazon Timestreamでデータ補間/2021-12-27-llt24
ottijp
0
60
ghqでソースコードを管理しよう/2021-03-23-llt20
ottijp
0
280
Other Decks in Programming
See All in Programming
Porting mruby/c for the SNES (Super Famicom) - RubyKaigi 2024
gedorinku
0
1.1k
An adventure of Happy Eyeballs
coe401_
1
470
Jetpack Composeとデザインシステム
rmakiyama
0
250
一文字エイリアスのすすめ
fujimura
0
220
TypeScriptの型とパフォーマンス (TSKaigi 2024)
ypresto
15
5.3k
Amazon Aurora Serverless v2が意外と高かった話と、AWS Database Migration Serviceの話
satoshi256kbyte
1
120
教えて!スクラムコーチ品質とスピードのバランスはどうすりゃいいの?
pinboro
0
170
TSKaigi 2024 - 新サービス Progate Path の演習で TypeScript を採用して見えた教材観点からの利点と課題
makotoshimazu
1
230
チーム立ち上げにAWSを活用したらClaudeさんに褒められた話
mkdev10
3
240
The Hotwire Landscape After Turbo 8 @ Helvetic Ruby 2024, Zurich
marcoroth
0
120
勉強会4_アップデートされたAssistantsAPIを試す
milky04
0
1.5k
RuboCop: LSP and Prism
koic
2
150
Featured
See All Featured
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
1
140
Building a Modern Day E-commerce SEO Strategy
aleyda
22
6.5k
The Illustrated Children's Guide to Kubernetes
chrisshort
32
47k
Adopting Sorbet at Scale
ufuk
69
8.6k
BBQ
matthewcrist
80
8.8k
Creatively Recalculating Your Daily Design Routine
revolveconf
211
11k
Git: the NoSQL Database
bkeepers
PRO
423
63k
Pencils Down: Stop Designing & Start Developing
hursman
117
11k
What the flash - Photography Introduction
edds
64
11k
Happy Clients
brianwarren
92
6.4k
Docker and Python
trallard
35
2.7k
Large-scale JavaScript Application Architecture
addyosmani
504
110k
Transcript
ncurses Satoshi SAKAO えるLT Vol.21 2021-05-12 1
話すひと 2 🏢 インフォコム株式会社 品質マネジメント推進室 👨🔧 ソフトウェアエンジニア 🛠 Node.js /
GCP / IoT / iOS (Swift) 💖 猫,テクテクライフ(ランク: 20) Satoshi SAKAO @ottijp
3 motivation
PR to ranger/ranger 4 https://github.com/ranger/ranger/pull/2030
NCURSES Programming HOWTO 5 https://tldp.org/HOWTO/NCURSES-Programming-HOWTO/
6 what’s curses
curses • is a library • realizes GUI like CUI
• provides terminal independent API 7
e.g. ranger (filer) 8
e.g. tig (git client) 9
ncurses • new curses • emulation of the original (System
V) curses • part of GNU project • https://invisible-island.net/ncurses/ 10
11 features
features • screen manipulation • print characters • change format
of characters • interface with the keyboard and the mouse • scrolling • windows 12
sisters • panel • menu • form • CDK (Curses
Development Kit) 13
14 demo https://github.com/ottijp/ncurses-demo-llt21
1. print characters • int mvaddch(int y, int x, const
chtype ch); 15
2. change format of characters • int start_color(void); • int
init_pair(short pair, short f, short b); • int attrset(int attrs); 16
3. interface with the keyboard and the mouse • int
getch(void); • mmask_t mousemask(mmask_t newmask, mmask_t *oldmask); • int getmouse(MEVENT *event); 17
18 in python, node.js and swift
python 19 https://docs.python.org/3/library/curses.html
node.js 20 https://github.com/fresc81/node-curses
node.js 21 https://github.com/chjj/blessed
swift 22 https://github.com/TheCoderMerlin/Curses
23 Appendix
refs • ncurses - Wikipedia https://en.wikipedia.org/wiki/Ncurses • NCURSES Programming HOWTO
https://tldp.org/HOWTO/NCURSES-Programming-HOWTO/ 24