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
210
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
Testcontainers/2024-11-20-llt32
ottijp
0
57
Pkl/2024-04-17-llt31
ottijp
0
86
JavaScriptのデバッグ/2023-09-04-llt30
ottijp
0
160
CDK for TerraformでAzureリソースをデプロイする/2023-05-15-llt29
ottijp
1
280
TWELITEへの誘い/2022-12-27-llt28
ottijp
0
160
ビルドツールBazelを触ってみた/2022-09-28-llt27
ottijp
0
170
HashiCorp Vaultを使ったシークレットのセキュアな一元管理 〜Ansibleを添えて〜/2022-07-12-llt26
ottijp
0
150
AWSインフラのデプロイをCDKでカイゼンする/2022-03-23-llt25
ottijp
0
89
Amazon Timestreamでデータ補間/2021-12-27-llt24
ottijp
0
100
Other Decks in Programming
See All in Programming
Langfuseと歩む生成AI活用推進
licux
3
300
一人でAIプロダクトを作るための工夫 〜技術選定・開発プロセス編〜 / I want AI to work harder
rkaga
13
2.8k
Introduction to Git & GitHub
latte72
0
120
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
170
大規模FlutterプロジェクトのCI実行時間を約8割削減した話
teamlab
PRO
0
490
DockerからECSへ 〜 AWSの海に出る前に知っておきたいこと 〜
ota1022
5
1.8k
AIレビュアーをスケールさせるには / Scaling AI Reviewers
technuma
2
230
Infer入門
riru
4
1.6k
Kiroの仕様駆動開発から見えてきたAIコーディングとの正しい付き合い方
clshinji
1
140
Honoアップデート 2025年夏
yusukebe
1
840
decksh - a little language for decks
ajstarks
4
21k
UbieのAIパートナーを支えるコンテキストエンジニアリング実践
syucream
2
700
Featured
See All Featured
Imperfection Machines: The Place of Print at Facebook
scottboms
268
13k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
Documentation Writing (for coders)
carmenintech
73
5k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
890
For a Future-Friendly Web
brad_frost
179
9.9k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
1k
Gamification - CAS2011
davidbonilla
81
5.4k
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