[DevTools] ๊ฐ๋ฐ์ ์นํ์ ์ธ ํฐ๋ฏธ๋ LS — PLS
pls๋ ๊ฐ๋ฐ์ ์นํ์ ์ธ ๊ธฐ๋ฅ์ ๊ฐ์ง ์ด์๊ณ ๊ฐ๋ ฅํ ํฐ๋ฏธ๋ ls
ํด์ด๋ค. pls์์ p
๋ ์๋ ์๋ฏธ๋ฅผ ํฌํจํ๋ค.
- Pretty (the output from
pls
surely looks better) - Powerful (
pls
has lots of features and endless customisation) - Programmer (
pls
is geared towards developers) - Professional (
pls
can be extensively tweaked by the pros) - Python (
pls
is written in Python!)
์ฌ์ด ์ฌ์ฉ๋ฒ, ํด๋/ํ์ผ ์์ด์ฝ ํ์, ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ณ ํ์ผ๋ช
์์ ๊ตฌ๋ถ(*.js
ํ์ผ ๋
ธ๋ฝ์์ผ๋ก ํ์ ๋ฑ), ์ค์ ํ์ผ์ ๊ตต๊ฒ ํน์ ๋ฐ์ค๋ก ํ์, ์ค์ํ์ง ์์ ํ์ผ์ ํ๋ฆฌ๊ฒ ํ์, Git status ํ์ ๋ฑ ๋ค์ํ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค.
๋ฌด์๋ณด๋ค ํ์ผ/ํด๋ ๋ชฉ๋ก์ ๋ ์ง๊ด์ ์ด๊ณ ์ด์๊ฒ ํ์ํ๋ ์ ์ด ๋ง์์ ๋ ๋ค. ์ถํ์ ํ์ ํด๋๋ฅผ ํธ๋ฆฌ ๋ชฉ๋ก์ผ๋ก ๋ณผ ์ ์๋ ๊ธฐ๋ฅ๋ ์ง์ํ๋ค๊ณ ํ๋ค(๋ค๋ฅธ ls ๋๊ตฌ์ธ lsd์์ ์ด๋ฏธ ์ง์ํ๊ณ ์๋ค)
์ค์น
pls๋ pip ํน์ pipx๋ก ์ค์นํ ์ ์๋ค. pip๋ก ์ค์นํ๋ฉด ๊ธ๋ก๋ฒ ๋ค์์คํ์ด์ค์ ์ฌ๋ฌ ํจํค์ง๊ฐ ์ค์น๋๊ธฐ ๋๋ฌธ์ ๊ณต์ ๋ฌธ์์์ pipx๋ก ์ค์นํ๋๊ฑธ ๊ถ์ฅํ๊ณ ์๋ค.
brew install pipx # pipx ์ค์น
pipx install pls # pls ์ค์น
pipx upgrade pls # pls ์
๋ฐ์ดํธ
pipx uninstall pls # pls ์ญ์
pls์์ ์์ด์ฝ์ ํ์ํ๊ธฐ ์ํด Nerd Font๋ฅผ ์ค์นํด์ผ ๋๋ค(์ฐธ๊ณ ๋ก lsd๋ Nerd Font๋ฅผ ์ฌ์ฉํ๋ค). brew๋ฅผ ์ฌ์ฉํ๋ค๋ฉด brew์ ํ์ฅ ๋ฒ์ ์ธ cask๋ฅผ ์ด์ฉํด ์ํ๋ ํฐํธ๋ฅผ ์ค์นํ ์ ์๋ค.
# (ํ์) cask-fonts ์ค์น
brew tap homebrew/cask-fonts
# (์ ํ1) Hack Nerd ํฐํธ (์ถ์ฒ)
brew install --cask font-hack-nerd-font
# (์ ํ2) JetBrains Mono ํฐํธ (์ถ์ฒ)
brew install --cask font-jetbrains-mono-nerd-font
# (์ ํ3) ๋ค๋ฅธ Nerd Font ์ค์น์ ์ผ๋ฐฅ ์ผ์ด์ค๋ก ํฐํธ ์ด๋ฆ ์
๋ ฅ
brew install --cask font-์ผ๋ฐฅ-์ผ์ด์ค-ํฐํธ-์ด๋ฆ-font
์ฌ์ฉ ๋ฐฉ๋ฒ
pls์์ ์ ๊ณตํ๋ ๋ช
๋ น์ด ํ๋๊ทธ ๋ชฉ๋ก์ pls -h
๋ฅผ ์
๋ ฅํ๋ฉด ๋ณผ ์ ์๋ค. Importance, Sorting, Collapse ๋ฑ ๋ค์ํ ์ต์
์ ์ง์ํ๋ค. Nerd ์์ด์ฝ ๋์ ์ด๋ชจ์ง๋ฅผ ํ์ํ๊ฑฐ๋ ์์ ์๋ณด์ด๋๋ก ํ ์๋ ์๋ค. ๊ฐ ํ๋๊ทธ์ ๋ํ ์์ธํ ์ค๋ช
์ ๊ณต์ ๋ฌธ์์์๋ ํ์ธํ ์ ์๋๋ฐ, GitHub Readme๊ฐ ์๋ ๋ณ๋ ํ์ด์ง์์ ์ ๊ณตํ๋ค. ๊ฐ๋
์ฑ์ด ์ ๋ง ์ข๋ค ๐
Importance
์ค์๋ ๊ธฐ์ค(์๊ณ๊ฐ) ์ค์ / ๊ธฐ๋ณธ๊ฐ
0
pls -a 1 # ์ค์๋ ๊ธฐ์ค 1๋ก ์ค์
pls๋ ์ค์ ํ ์ค์๋๋ฅผ ๊ธฐ์ค์ผ๋ก ํ์ผ ํ์ ๋ฐฉ๋ฒ์ ์ด 5๋จ๊ณ๋ก ๋ถ๋ฅํ๋ค. ์จ๊น ํ์ผ์ ํ์ํ๊ณ ์ถ๋ค๋ฉด ์ค์๋ ๊ธฐ์ค์ 1
๋ก ์ค์ ํ๋ค. (์ค์๋ -2
ํ์ผ์ ์จ๊น → ํ๋ฆฌ๊ฒ, ์ค์๋ -1
ํ์ผ์ ํ๋ฆฌ๊ฒ → ์ผ๋ฐ ํ์ผ, …)
Level (์๊ณ๊ฐ) | Significance (์ค์๋) | Appearance (ํ์ ๋ฐฉ์) |
-2 | Least important (๊ฐ์ฅ ๋ ์ค์) | |
-1 | Lower importance (๋ ์ค์) | Dimmed (ํ๋ฆฌ๊ฒ ํ์) |
0 | Neutral importance (์ผ๋ฐ) | Normal |
+1 | Higher importance (์ค์) | Bold |
+2 | Most important (๊ฐ์ฅ ์ค์) | Underline |
๐ก ์ค์๋ ํ๋ณ ๊ธฐ์ค
- ํ์ผ ์ด๋ฆ์
.
์จ์ ์ด ๋ค์ด๊ฐ๋์ง ์ฌ๋ถ - ์ฐ๊ฒฐ๋ ํ์ผ ์คํ(Spec)์ด ์๋์ง ์ฌ๋ถ
Collapse
ํน์ ํ์ผ์ ์ํด ์๋ ์์ฑ๋ ํ์ ํ์ผ(collapsed file)์ ์ด๋ป๊ฒ ํ์ํ ์ง ์ง์ / ๊ธฐ๋ณธ๊ฐ
0
pls -c 0 # collapse ๊ธฐ๋ฅ ํด์ (๊ธฐ๋ณธ๊ฐ)
pls -c 1 # collapsed file์ ๋ถ๋ชจ ํ์ผ ์๋์ชฝ์ ์ค์ฒฉ ๊ตฌ์กฐ๋ก ํ์
pls -c 2 # collapsed file ์จ๊ธฐ๊ธฐ
Details
์ด๋ค ์ธ๋ถ ํญ๋ชฉ์ ํ์ํ ์ง ์ง์ / ๊ธฐ๋ณธ๊ฐ
none
๐ก Git Status ํญ๋ชฉ์ Git Repo ํด๋ ์์์๋ง ํ์๋๋ค. ๋ํ ์์คํ ์ Git์ด ์ค์น๋์ด ์์ด์ผ ํ๋ค.
pls -d none # ์ธ๋ถ ํญ๋ชฉ ํ์ ์ํจ (๊ธฐ๋ณธ๊ฐ)
pls -d std # ํ์ค ์ธ๋ถ ํญ๋ชฉ ํ์ (ํ์
/๊ถํ/์ ์ /๊ทธ๋ฃน)
pls -d std -d mtime # ํ์ค ์ธ๋ถ ํญ๋ชฉ ๋ฐ ์์ ์๊ฐ ํ์
pls -d size -u decimal # ํ์ผ/ํด๋ ์ฌ์ด์ฆ๋ฅผ 10์ง์ ๋จ์๋ก ํ์
pls -d all # ๋ชจ๋ ์ธ๋ถ ํญ๋ชฉ ํ์
Standard | Key | Meaning | Note |
inode | inode | ์๋์ฐ ๋ฏธ์ง์ | |
links | ํด๋น ํ์ผ์ ๊ฐ๋ฆฌํค๋ Link ๊ฐ์ | ์๋์ฐ ๋ฏธ์ง์ | |
โ | type | ํ์
๋ฌธ์์ด (l , d , - , p , s , c , b ) |
|
โ | perms | Permissions | |
โ | user | Owner user | ์๋์ฐ ๋ฏธ์ง์ |
โ | group | Owner group | ์๋์ฐ ๋ฏธ์ง์ |
size | Size | ||
btime | Created at | macOS ์ ์ฉ | |
ctime | Created/Changed at | ||
mtime | Modified at | ||
atime | Accessed at | ||
git | Git status | Git ๋ ํฌ์งํ ๋ฆฌ ์์์๋ง ํ์ |
yml ํ์ผ ์ค์
๊ธฐ๋ณธ์ ์ผ๋ก ์ ์ฉํ๊ณ ์ถ์ pls ์ต์
์ .pls.yml
ํ์ผ์ ๋ฏธ๋ฆฌ ์ง์ ํ ์ ์๋ค. .pls.yml
ํ์ผ์ ์ฌ์ฉ์ ํ ๋๋ ํ ๋ฆฌ(~
)์ ๋ง๋ค๋ฉด ํ์ฌ ์ปดํจํฐ์ ๋ก๊ทธ์ธํ ์ ์ ๋ ๋ฒจ ๋จ์์ ์ ์ฉ๋๊ณ , ํน์ ํ๋ก์ ํธ ํด๋์ ๋ง๋ค๋ฉด ํ๋ก์ ํธ ๋จ์๋ก ์ ์ฉ๋๋ค.
โถ ์์ด์ฝ ๋ณ๊ฒฝ์ Nerd Font Cheat Sheet์์ ์ํ๋ ์์ด์ฝ์ Hex
๊ฐ์ ๋ณต์ฌํ ํ ์์ \u
๋ฅผ ๋ถ์ฌ์ค๋ค. (e.g. f092
→ \uf092
)
- ํฐ๋ฏธ๋์ ์์ด์ฝ์ด ์ ํ์๋๋์ง ํ์ธํ๋ ค๋ฉด
echo "\uf092"
ํํ๋ก ์ ๋ ฅํด๋ณธ๋ค. - Material Design Icon(MDI) ์ฝ๋ ํฌ์ธํธ๊ฐ ์
๋ฐ์ดํธ ๋ผ์
nf-md-*
nf-mdi-*
ํด๋์ค ์ด๋ฆ์ ๊ฐ์ง ์์ด์ฝ์ ๊นจ์ ธ์ ๋์จ๋ค. ๊ธฐ๋ณธ๊ฐ ์์ด์ฝ์คnf-mdi-git
๊ฐ์ ์์ด์ฝ์ ๋ค๋ฅธ๊ฑธ๋ก ๊ต์ฒดํด์ผ ํ๋ค.
โท pls ์์ฒด์ ์ผ๋ก Schema validation์ ์ ๊ณตํ๊ณ ์๋ค. ์ด๋ฅผ ์ด์ฉํ๋ฉด .pls.yml
ํ์ผ ์์ ์ ์ค์๋ฅผ ๋ฐฉ์งํ ์ ์๋ค. VSCode๋ฅผ ์ฌ์ฉํ๋ค๋ฉด YAML ๋ถ๊ฐ๊ธฐ๋ฅ์ ์ค์นํ๊ณ VSCode ์ค์ ํ์ผ์ ์๋ ๋ด์ฉ์ ์ถ๊ฐํ๋ค.
{
// VSCode - settings.json
"yaml.schemas": {
"https://raw.githubusercontent.com/dhruvkb/pls/main/src/pls/data/schema/pls_config.yml": [
".pls.yml"
]
}
}
โธ xml
, iml
, log
ํ์ฅ์์ฒ๋ผ ๊ธฐ๋ณธ์ ์ผ๋ก ์ง์ ๋ ์์ด์ฝ์ด ์๋ ํ์ผ์ ์ง์ ์ถ๊ฐํด์ผ ํ๋ค.
๐ก ์ด๋ค ์์ด์ฝ์ผ๋ก ์ง์ ํ ์ง ๊ณ ๋ฏผ๋๋ค๋ฉด lsd ์์ด์ฝ ๋งคํ ์ฝ๋๋ฅผ ์ฐธ๊ณ ํ๋ฉด ์ข๋ค.
โน ์ฌ๋ณผ๋ฆญ ๋งํฌ(symlink), ํด๋(dir), ์ผ๋ฐ ํ์ผ(file) ๋ฑ์ constants ํ๋กํผํฐ์์ ์ค์ ํ ์ ์๋ค.
Alias ์ค์
# ls๋ฅผ pls ํ๋ฌ๊ทธ์ธ์ผ๋ก ๋ฐ์ธ๋ฉ ๋ฐ ์จ๊น ํ์ผ ํ์ ์ํจ
alias ls="pls -a 0"
# l์ pls ํ๋ฌ๊ทธ์ธ์ผ๋ก ๋ฐ์ธ๋ฉ ๋ฐ ๋ช
์ํ ์ธ๋ถ ํญ๋ชฉ ํ์(std/git/size/mtime/links)
alias l="pls -d std -d git -d size -d mtime -d links"
# la๋ฅผ pls ํ๋ฌ๊ทธ์ธ์ผ๋ก ๋ฐ์ธ๋ฉ ๋ฐ ๋ชจ๋ ์ธ๋ถ ํญ๋ชฉ ํ์
alias la="pls -d all"
'๐ช Programming' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋๊ธ
์ด ๊ธ ๊ณต์ ํ๊ธฐ
-
๊ตฌ๋
ํ๊ธฐ
๊ตฌ๋ ํ๊ธฐ
-
์นด์นด์คํก
์นด์นด์คํก
-
๋ผ์ธ
๋ผ์ธ
-
ํธ์ํฐ
ํธ์ํฐ
-
Facebook
Facebook
-
์นด์นด์ค์คํ ๋ฆฌ
์นด์นด์ค์คํ ๋ฆฌ
-
๋ฐด๋
๋ฐด๋
-
๋ค์ด๋ฒ ๋ธ๋ก๊ทธ
๋ค์ด๋ฒ ๋ธ๋ก๊ทธ
-
Pocket
Pocket
-
Evernote
Evernote
๋ค๋ฅธ ๊ธ
-
[React] ๋ฆฌ์กํธ Render Props ํจํด 2๊ฐ์ง ์ฌ์ฉ ๋ฐฉ๋ฒ
[React] ๋ฆฌ์กํธ Render Props ํจํด 2๊ฐ์ง ์ฌ์ฉ ๋ฐฉ๋ฒ
2024.05.11 -
[TS] ํ์ ์คํฌ๋ฆฝํธ ํ์ ๊ฐ๋ is / asserts ํค์๋ ์ฐจ์ด์
[TS] ํ์ ์คํฌ๋ฆฝํธ ํ์ ๊ฐ๋ is / asserts ํค์๋ ์ฐจ์ด์
2024.05.10 -
[HTML/CSS] ํผ์นจ/์ ํ Transition ํจ๊ณผ์ ์์ ์จ๊น ๋ฐฉ์ ์ฐจ์ด์
[HTML/CSS] ํผ์นจ/์ ํ Transition ํจ๊ณผ์ ์์ ์จ๊น ๋ฐฉ์ ์ฐจ์ด์
2024.05.10 -
[HTML/CSS] ๊ตฌ๊ธ ํฐํธ ์ฌ์ฉ ๋ฐฉ๋ฒ / CSS์์ ์นํฐํธ ์ฌ์ฉํ๊ธฐ
[HTML/CSS] ๊ตฌ๊ธ ํฐํธ ์ฌ์ฉ ๋ฐฉ๋ฒ / CSS์์ ์นํฐํธ ์ฌ์ฉํ๊ธฐ
2024.05.10