Luajit - Nvim Lsp Config

์†Œ๊ฐœ ๋ฆฌ๋ˆ…์Šค ํ™˜๊ฒฝ(Alpine Linux)์—์„œ lua-language-server ์„ค์น˜ํ•˜๊ณ  nvim์—์„œ ์„ค์ • ๋ฐ ํ™œ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ •๋ฆฌํ•ด ๋ณธ๋‹ค. alpine 3.2x ๊ธฐ์ค€์œผ๋กœ ์„ค๋ช…ํ•œ๋‹ค. ๊ณผ๊ฑฐ alpine ๋ฒ„์ „๋“ค์€ lua-language-server๊ฐ€ ์—†๊ฑฐ๋‚˜ nvim์˜ ๋ฒ„์ „์ด ๋‚ฎ์•„ ํ”Œ๋Ÿฌ๊ทธ์ธ ์ง€์›์— ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๋‹ค. ํ˜„์žฌ ์‹œ์ ์„ ๊ธฐ์ค€์œผ๋กœ ๋ชจ๋‘ ์ ์ ˆํ•œ ๋ฒ„์ „์„ ์ง€์›ํ•˜๊ณ  ํŒจํ‚ค์ง€๋„ ๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์†Œ์Šค ์ปดํŒŒ์ผ ๋“ฑ์˜ ๋ถ€๋‹ด์ด ์—†์–ด์กŒ๋‹ค. ์„ค์น˜ luajit๋ฐ lua-language-server ๊ทธ๋ฆฌ๊ณ  neovim๊ด€๋ จ ํŒจํ‚ค์ง€ ์„ค์น˜ ์•„๋ž˜์˜ ๊ฒฝ์šฐ nvim(neovim) ์„ค์น˜์‹œ lfs.so,penlight๋“ฑ์ด ๊ธฐ๋ณธ ํฌํ•จํ•˜๊ฒŒ ๋œ๋‹ค. (์ถ”๊ฐ€ ์„ค์น˜ ๋ถˆํ•„์š”) apk add --no-cache luajit luajit-dev lua-language-server ldoc apk add --no-cache neovim neovim-doc nvim-treesitter \ tree-sitter tree-sitter-cli tree-sitter-lua tree-sitter-bash \ tree-sitter-c tree-sitter-markdown tree-sitter-vimdoc ์„ค์ • ~/.config/nvim/init.lua์— ๋‹ค์Œ ์„ค์ •์„ ์ถ”๊ฐ€ my_project_path๋Š” ๊ฐœ๋ณ„ ๋ชจ๋“ˆ์„ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒฝ์šฐ์ด๋‹ค. workspace์˜ library ๋ฒ”์œ„๊ฐ€ ํฌ๋ฉด ๋ถ€ํ•˜๊ฐ€ ์ปค์ง€๋ฏ€๋กœ ์ ๋‹นํžˆ ์กฐ์ ˆํ•ด ์ฃผ์–ด์•ผ nvim์—์„œ ๋ฌด๋ฆฌ๊ฐ€ ์—†๋‹ค. ์•„๋ž˜ ์ฃผ์„ ํ‘œ์‹œ๋œ ๋ถ€๋ถ„์„ ์ฃผ์˜ํ•ด์„œ ํ™•์ธํ•˜๊ณ  ์ž์‹ ์—๊ฒŒ ๋งž๋Š” ํ™˜๊ฒฝ์„ ์„ค์ •ํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ณผ๊ฑฐ sumneko๋ผ๋Š” ์‹์œผ๋กœ ์„ค์ •ํ–ˆ๋Š”๋ฐ ํ˜„์žฌ lspconfig.lua_ls.setup์œผ๋กœ ๋ฐ”๋€Œ์—ˆ๋‹ค. -- Now set capabilities on your LSP servers local lspconfig = require'lspconfig' local my_project_path = os.getenv('HOME') .. '/.local/lib/lua' print(my_project_path) lspconfig.lua_ls.setup { --capabilities = capabilities, root_dir = lspconfig.util.root_pattern(".git", ".luarc.json", ".luarc.js"), settings = { Lua = { runtime = { version = 'Luajit', path = vim.split(package.path, ";"), }, diagnostics = { globals = {'vim'}, update_in_insert = false, }, workspace = { library = { --// ๊ธฐ๋ณธ vim ๋Ÿฐํƒ€์ž„ ํ™˜๊ฒฝ ๋ชจ๋“ˆ ์ถ”๊ฐ€ [vim.env.VIMRUNTIME] = true, --// ๋ชจ๋“  vim์˜ ๋Ÿฐํƒ€์ž„ ํ™˜๊ฒฝ ๋ชจ๋“ˆ ์ถ”๊ฐ€ --[vim.api.nvim_get_runtime_file("", true)] = true, --// my project ๋ชจ๋“ˆ ์ถ”๊ฐ€ [vim.fn.expand(my_project_path)] = true, }, --// ์ œ3์˜ ๋ชจ๋“ˆ ์ œ์™ธ checkThirdParty = false, }, telemetry = { enable = false, }, }, }, } ์ฐธ๊ณ  lua-language-server - Getting Started https://github.com/sumneko/lua-language-server/wiki/Getting-Started#command-line

2025-07-27 ยท 241 words

Windows WSL Alpine Linux - Docker - Git ์„ค์น˜ ๋ฐ ํ™˜๊ฒฝ

์†Œ๊ฐœ ๊ธฐ์กด์— ์“ฐ๋˜ ๋ฐฉ๋ฒ•์€ ๋ฒ„์ „์ด ๋„ˆ๋ฌด ์˜ค๋ž˜๋˜์—ˆ๊ฑฐ๋‚˜ ์ž์‹ ์˜ ํ™˜๊ฒฝ์— ๋งž๊ฒŒ ์„ค์น˜ํ•˜๊ธฐ๊ฐ€ ์–ด๋ ค์› ๋‹ค. Windows 10, 11 ์—์„œ WSL2๋ฅผ ์ด์šฉํ•œ Alpine ์„ค์น˜๋ฅผ ์ตœ์ข… ์ •๋ฆฌํ•œ๋‹ค. ์„ค์น˜ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ํ•„์š”ํ•œ ํ™˜๊ฒฝ(docker, git ๋“ฑ)์„ ์ž๋™์œผ๋กœ ๊ตฌ์„ฑํ•˜๋„๋ก ํ•œ๋‹ค. ๊ธฐ๋ณธ์ ์ธ ํ…Œ์ŠคํŠธ๋ฅผ ํ•˜๊ณ  ์ถ”๊ฐ€ ํŒจํ‚ค์ง€๋ฅผ ๋ณด์™„ํ•œ ํ›„ ์ด๋ฏธ์ง€๋ฅผ ๋ฐฑ์—…ํ•œ๋‹ค. ์ถ”ํ›„ Windows๋ฅผ ์žฌ์„ค์น˜ํ•˜๊ฑฐ๋‚˜ ๊ธฐํƒ€ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ๊ฒฝ์šฐ ๋ฐฑ์—… ์ด๋ฏธ์ง€๋ฅผ ๋ณต์›ํ•œ๋‹ค. ๋˜๋Š” ๋‹ค๋ฅธ PC๋กœ ๋ฐฑ์—… ์ด๋ฏธ์ง€๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ๋„ ์œ ์šฉํ•˜๋‹ค. ์ตœ์†Œ์„ค์น˜๋งŒ ์ ์šฉํ•ด์„œ ์„ค์น˜ํŒŒ์ผ์ด๋‚˜ ๋ฐฑ์—…ํŒŒ์ผ์„ ๋งŒ๋“ค์–ด ๋‘๋ฉด ๋น ๋ฅธ ๋ฐฑ์—…, ๋ณต๊ตฌ๋ฅผ ํ•  ์ˆ˜ ์žˆ๋‹ค. ...

2025-06-24 ยท (updated 2025-06-25) ยท 552 words

Windows WSL2 Alpine Install

Intro minimum ์ˆ˜๋™ ์„ค์น˜ ๋ฐฉ๋ฒ•์ด ์žˆ์œผ๋‚˜ ๋ฐ๋ชฌ ์„œ๋น„์Šค, docker ์„ค์น˜ ๋“ฑ์— ์–ด๋ ค์›€์ด ์žˆ๋‹ค. ์—ฌ๊ธฐ์—์„œ๋Š” ๋‹ค์Œ ๋‘ ๊ฐ€์ง€ ์„ค์น˜ ๋ฐฉ๋ฒ•์„ ์ •๋ฆฌํ•œ๋‹ค. Microsoft Store - Alpine WSL Install, 2. Github - AlpineWSL Install ํŠน์ด์‚ฌํ•ญ: default shell: ash (ํ•„์š”ํ•˜๋ฉด bash๋ฅผ ์ถ”๊ฐ€ ์„ค์น˜: apk add bash bash-completion) grep: busybox grep (๊ณ ์„ฑ๋Šฅ์˜ grep์ด ํ•„์š”ํ•˜๋‹ค๋ฉด ์ถ”๊ฐ€ ์„ค์น˜: apk add grep) sudo: doas (ํ•„์š”ํ•˜๋ฉด ์ถ”๊ฐ€ ์„ค์น˜: apk add doas) openssh: openssh (ํ•„์š”ํ•˜๋ฉด ์„ค์น˜: apk add openssh) curl: wget์€ ๊ธฐ๋ณธ ์„ค์น˜ (ํ•„์š”ํ•˜๋ฉด ์ถ”๊ฐ€์„ค์น˜: apk add curl) Microsoft Store - Alpine WSL Install ์ฐธ๊ณ  ์‚ฌํ•ญ ...

2023-12-30 ยท (updated 2025-06-21) ยท 711 words

Alpine Devel - ์•ŒํŒŒ์ธ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ

Setup build-base ์„ค์น˜ binutils file gcc g++ make libc-dev fortify-headers patch # Install build-base doas apk add build-base # Check gcc --version make --version

2023-12-30 ยท 24 words

Alpine Linux

last updated: {{ โ€œ1718885075โ€ | date: โ€œ%Y-%m-%d %H:%Mโ€ }} Intro Docker์—์„œ ๋งŽ์ด ์‚ฌ์šฉ๋˜์–ด ์œ ๋ช…ํ•ด์กŒ๋‹ค. ๋‹ค์Œ์€ ์•ŒํŒŒ์ธ ๋ฆฌ๋ˆ…์Šค์˜ ์„ธ๊ฐ€์ง€ ํŠน์ง•์ด์ž ์ฒ ํ•™์ด๋‹ค. Small: musl libc + busybox (container: 8MB, Minimal Disk Install: 130MB) Simple: package manager apk, Init System OpenRC and Fast Secure: Position Independent Executables(PIE) INSTALL alpine_install - ์„ค์น˜ alpine_upgrade - ์—…๊ทธ๋ ˆ์ด๋“œ alpine_devel - ๊ฐœ๋ฐœํ™˜๊ฒฝ alpine_wsl2 - ์œˆ๋„์šฐ์ฆˆ WSL2์—์„œ alpine ์„ค์น˜ REFERENCE docker-busybox Alpine FAQ: https://wiki.alpinelinux.org/wiki/Alpine_Linux:FAQ Alpine Tutorial and Howtos: https://wiki.alpinelinux.org/wiki/Tutorials_and_Howtos

2023-08-08 ยท (updated 2025-06-16) ยท 70 words