ํ”Œ๋Ÿฌ๊ทธ์ธ ์—†์ด vim์„ ์ตœ์†Œ ์„ค์ •์œผ๋กœ ์‚ฌ์šฉํ•˜๊ธฐ

์›๊ฒฉ์ง€์—์„œ vi(m)์„ ์‚ฌ์šฉํ•  ๋•Œ ๊ฐ„๋‹จํ•œ ํŽธ์ง‘์€ ๊ดœ์ฐฎ์œผ๋‚˜ ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ํ•  ๋•Œ์—๋Š” ๋ถˆํŽธํ•˜๋‹ค. ํ•˜์ง€๋งŒ ํ”Œ๋Ÿฌ๊ทธ์ธ๊ณผ ๋งŽ์€ ์„ค์ •์„ ํ•  ๊ฒฝ์šฐ ๋ฒˆ๊ฑฐ๋กญ๊ธฐ๋„ ํ•˜๊ณ  ๋ฌด๊ฑฐ์›Œ์ง€๊ธฐ๋„ ํ•œ๋‹ค. ํ•œ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์€ ๋กœ์ปฌ์˜ ํ™˜๊ฒฝ์—์„œ scp๋ฅผ ์ด์šฉํ•ด ํŽธ์ง‘ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค. nvim scp ์ฐธ์กฐ. ๋˜ ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์€ ์•„์ฃผ ๋ถˆํŽธํ•˜์ง€ ์•Š๋Š” ์„ ์—์„œ ํ™˜๊ฒฝ์„ ์„ค์ •ํ•˜๊ณ  ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค. ์ด ๊ฒฝ์šฐ ํ”Œ๋Ÿฌ๊ทธ์ธ ์‚ฌ์šฉ์„ ํ•˜์ง€ ์•Š๊ณ , ์ตœ์†Œํ•œ์˜ ์„ค์ •๋งŒ ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ์žฅ์ ์€ ๊ฐ€๋ณ๊ณ  ๋น ๋ฅด๋ฉด์„œ ํ™˜๊ฒฝ์„ค์ •๋„ ์ตœ์†Œํ•œ์œผ๋กœ ํ•  ์ˆ˜ ์žˆ์–ด ํŽธ๋ฆฌํ•˜๋‹ค. ํŠนํžˆ ์›๊ฒฉ์ง€๊ฐ€ ์ €์‚ฌ์–‘ ์ปดํ“จํ„ฐ์ด๊ฑฐ๋‚˜ ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด ๋“ฑ์ผ ๋•Œ ์ ๋‹นํ•˜๋‹ค. Setup how to setup # Install vim or nvim sudo apt install vim # Setup for (v)vim vi ~/.vimrc # Use vi ~/myproject/myfile.c .vimrc " " minimal vimrc with no (extra) plugins " "load system defaults if filereadable(expand('$VIMRUNTIME/defaults.vim')) unlet! g:skip_defaults_vim source $VIMRUNTIME/defaults.vim endif "regular settings "---------------- " ui set number set ruler set wildmenu set showcmd set showmatch " encoding/format set encoding=utf-8 set fileformats=unix,dos,mac " searching set hlsearch set incsearch set ignorecase set smartcase " indent set shiftwidth=4 set tabstop=4 set softtabstop=4 set autoindent " key timeout values set esckeys set ttimeoutlen=20 set timeoutlen=1000 " allow syntax and filetype plugins syntax enable filetype plugin indent on runtime macros/matchit.vim " autocmds "--------- augroup general autocmd! "keep equal proportions when windows resized autocmd VimResized * wincmd = "save cursor position in a file autocmd BufReadPost * if line("'\"") > 1 && line("'\"") \ <= line("$") | exe "normal! g'\"" | endif augroup END augroup languages autocmd! autocmd BufNewFile,BufRead *.bash set syntax=sh autocmd FileType python xnoremap <leader>r <esc>:'<,'>:w !python3<CR> autocmd FileType go set noexpandtab autocmd FileType html :syntax sync fromstart autocmd FileType html,javascript,css,json,yaml,sh \ setlocal ts=2 sts=2 sw=2 expandtab augroup END REFERENCE A minimal Vimrc - https://madjam.dev/posts/a-minimal-vimrc/

2023-09-16 ยท 265 words

keyboard - ํ‚ค๋ณด๋“œ

ํ‚ค๋ณด๋“œ๋Š” ์‚ฌ๋žŒ์ด ์ปดํ“จํ„ฐ์—๊ฒŒ ์ง€์‹œํ•˜๋Š” ์œ ์ผํ•œ ํ†ต๋กœ์ด๋‹ค. ๋ฌผ๋ก  ๋งˆ์šฐ์Šค ๋“ฑ์ด ์žˆ์ง€๋งŒ ํ‚ค๋ณด๋“œ๊ฐ€ ๊ฐ€์žฅ ๋จผ์ €์ด๋ฉด์„œ ์˜ค๋ž˜๋˜์—ˆ๊ณ  ๋˜ํ•œ ์ƒ์„ธํ•˜๊ฒŒ ๋ช…๋ น์„ ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ๋Š” ๋„๊ตฌ์ด๋‹ค. ์‚ฌ๋žŒ์ด ์ง์ ‘์ ์œผ๋กœ ํ™œ๋™ํ•˜๋Š” ๋งค์ฒด๊ฐ€ ํ‚ค๋ณด๋“œ์ด๊ธฐ ๋•Œ๋ฌธ์— ์ข€ ๋” ํŠน๋ณ„ํ•˜๊ธฐ๋„ ํ•˜๋‹ค. ๋˜ํ•œ ์ ‘์ด‰ํ•˜๋Š” ๋งค์ฒด๋กœ์„œ ๊ฑด๊ฐ•๊ณผ ๋А๋‚Œ์ด ๋งŽ์ด ์ž‘์šฉํ•˜๋Š” ๊ฒƒ์ด ํ‚ค๋ณด๋“œ์ด๊ธฐ๋„ ํ•˜๋‹ค. ๊ธ€ ์‹ฃ๋Š” ์ˆœ์„œ ํ•œ๊ธ€ํ‚ค๋ณด๋“œ ์ž…๋ ฅ๋ฐฉ์‹. ์˜๋ฌธํ‚ค๋ณด๋“œ ์ž…๋ ฅ๋ฐฉ์‹. ์†์— ๋ฌด๋ฆฌ๋ฅผ ์ฃผ์ง€ ์•Š์œผ๋ฉด์„œ ํšจ์œจ์ ์ธ ํ‚ค๋ณด๋“œ ์ž…๋ ฅ ๋ฐฉ์‹์€ ๋ฌด์—‡์ธ๊ฐ€. ์•„๋‘์ด๋…ธ๋ฅผ ํ™œ์šฉํ•œ ๋ถ„๋ฆฌํ˜• ํ‚ค๋ณด๋“œ ๋งŒ๋“ค๊ธฐ. ํ‚ค๋ณด๋“œ ์—ฐ์Šต ํƒ€์ดํ•‘์›์Šค - ํ•œ,์˜ ์ง€์›, ๊น”๋”ํ•œ ํ™˜๊ฒฝ๊ณผ ๋””์ž์ธ, ์›น: https://typing.works/ monkeytype - ํ•œ๊ธ€,์˜๋ฌธ ๋ฐ ๋‹ค๊ตญ์–ด ์ง€์›, ํ†ต๊ณ„: https://monkeytype.com/ keybr.com - ์˜๋ฌธ ์—ฐ์Šต, ํ•œ๊ธ€ ๋ฏธ์ง€์›, ํ†ต๊ณ„, qwerty,dvorak,workman,colmak: https://www.keybr.com typeracer.com - ๊ฒŒ์ž„์‹ ํƒ€์ž ์—ฐ์Šต (์ž๋™์ฐจ ๊ฒฝ์ฃผ) colemak club - colemak, colemak-dh ์—ฐ์Šต: https://gnusenpai.net/colemakclub/ ํ•œ๊ธ€ ์žํŒ ๋ฐฐ์—ด ๋‘๋ฒŒ์‹ ์„ธ๋ฒŒ์‹: https://์„ธ๋ฒŒ์‹.kr/ ํƒ€์ž ์—ฐ์Šต ํ”„๋กœ๊ทธ๋žจ ํ•œ์ปด ํƒ€์ž์—ฐ์Šต (์›น, ์œˆ๋„์šฐ์ฆˆ) : https://www.hancomtaja.com/ ๋‚ ๊ฐœ์…‹ ํƒ€์ž์—ฐ์Šต (์œˆ๋„์šฐ์ฆˆ) ์—ด๋ฆฐํƒ€์ž (์œˆ๋„์šฐ์ฆˆ) Taza (macOS) ์†๊ธฐํƒ€์ž: ์„ธ๋ฒŒ์‹ (cas, sorijava) - ๋‘ ๊ฐœ ๋ชจ๋‘ ์žํŒ ๋ฐฐ์—ด์ด ๋‹ค๋ฅด๋‹ค. ์˜๋ฌธ ์žํŒ ๋ฐฐ์—ด qwerty - ํƒ€์ž๊ธฐ์˜ ์›ํ˜•, ์‚ฌ์‹ค์ƒ์˜ ํ‘œ์ค€ dvorak - ๋˜ ๋‹ค๋ฅธ ํ‘œ์ค€ colmak - ๊ฐ€์žฅ ํšจ์œจ์ ์ด๋ฉด์„œ qwerty์™€ ์œ ์‚ฌํ•ด์„œ ์ ์‘๋„ ๋น ๋ฅด๋‹ค. colemak home: https://colemak.com/ Learn : https://colemak.com/Learn (์šฐ์ธก ํ•˜๋‹จ keyboard Mapping: on์œผ๋กœ) workman ํ‚ค๋ณด๋“œ ๋ฐฐ์—ด Staggered: ํ–‰๋งˆ๋‹ค ์ ˆ๋ฐ˜์”ฉ ์—‡๊ฐˆ๋ ค ๋ฐฐ์น˜ Ortholinear: ํ–‰๋งˆ๋‹ค ๋˜‘๊ฐ™์ด ๋ฐฐ์น˜ HARDWARE Key caps ...

2023-09-10 ยท (updated 2023-09-12) ยท 229 words

์„ธ๋ฒŒ์‹

ํ‚ค๋ณด๋“œ์™€ ์žํŒ ๋ฐฐ์—ด์— ๊ด€์‹ฌ์„ ๊ฐ–๊ฒŒ๋œ ์ด์œ : ์†๋ชฉ ํ„ฐ๋„ ์ฆํ›„๊ตฐ, ์˜ค์‹ญ๊ฒฌ, ๋Šฅ๋ฅ  ์•ž์œผ๋กœ ํ•œ๊ธ€๊ณผ ์˜๋ฌธ์— ๋Œ€ํ•ด ์กฐ๊ธˆ์”ฉ ์กฐ์‚ฌํ•˜๊ณ  ์—ฐ๊ตฌํ•  ์ƒ๊ฐ์ด๋‹ค. Intro ์ข€ ๋” ํŽธ์•ˆํ•˜๊ณ  ์ž์—ฐ์Šค๋Ÿฌ์šด ์žํŒ ์ž…๋ ฅ ๋ฐฉ๋ฒ•์„ ์ฐพ์•„ ๋ณด์•˜๋‹ค. ๊ณผ๊ฑฐ 10์—ฌ๋…„ ์ „์— ์‹œ๋„๋ฅผ ํ•œ ์ ์ด ์žˆ์œผ๋‚˜ ๋ช‡ ๋ฒˆ ํ•ด๋ณด๊ณ  ํ์ง€๋ธŒ์ง€ ๋˜์–ด ๋ฒ„๋ ธ๋‹ค. ์„ธ๋ฒŒ์‹์ด ์ข‹์€ ์ด์œ : ๋น ๋ฅด๋‹ค, ํŽธ์•ˆํ•˜๋‹ค. ์˜คํƒ€๊ฐ€ ๋œ ๋‚œ๋‹ค. ์ข…๋ฅ˜๋Š” ๋Œ€ํ‘œ์ ์œผ๋กœ ์„ธ๋ฒŒ์‹ 390, ์„ธ๋ฒŒ์‹ ์ตœ์ข…์˜ ๋‘ ๊ฐ€์ง€๊ฐ€ ์žˆ๋‹ค. ๋‹ค๋ฅธ ๊ฒƒ์œผ๋กœ๋Š” ์•„๋ž˜ REFERENCE๋ฅผ ์ฐธ๊ณ ํ•œ๋‹ค. ์ฝ”๋”ฉ์„ ํ•˜๋Š” ์‚ฌ์šฉ์ž๋ผ๋ฉด ํŠน์ˆ˜๋ฌธ์ž์™€ ๋ฐฐ์—ด์ด ๊ฑฐ์˜ ์ผ์น˜ํ•˜๋Š” 390์„ ์„ ํƒํ•˜๋Š” ๊ฒƒ์ด ์ข‹๊ฒ ๋‹ค. ์‹œ์ž‘ํ•˜๊ธฐ ์•„๋ž˜ํ•œ๊ธ€ ์‚ฌ์šฉ์ž๋Š” ํ•œ์ปดํƒ€์ž์—ฐ์Šต ํ”„๋กœ๊ทธ๋žจ์„ ์ด์šฉํ•œ๋‹ค. ์„ค์ •์—์„œ ํ•œ๊ธ€/์„ธ๋ฒŒ์‹390 ์œผ๋กœ ์„ค์ •ํ•˜๋ฉด ๋ณ„๋„์˜ ์„ค์ •์ด๋‚˜ ํ”„๋กœ๊ทธ๋žจ ์—†์ด ์„ธ๋ฒŒ์‹ ์—ฐ์Šต์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ๋‚ ๊ฐœ์…‹ ํƒ€์ž์—ฐ์Šต ํ”„๋กœ๊ทธ๋žจ์€ ๋‹ค์Œ์„ ์ฐธ๊ณ ํ•œ๋‹ค. http://moogi.new21.org/prg5.html ํ•˜๋ฃจ์— ๋งค์ผ ์‹œ๊ฐ„์„ ์ •ํ•ด ๋†“๊ณ  ์—ฐ์Šต์„ ํ•˜๊ณ  ๊ทธ ๊ฒฝ๊ณผ๋ฅผ ๊ธฐ๋กํ•ด ๋ณด๊ธฐ๋กœ ํ•œ๋‹ค. ์„ธ๋ฒŒ์‹ ํ•œ๊ธ€์ž…๋ ฅ๊ธฐ ์œˆ๋„์šฐ์ฆˆ ...

2023-09-10 ยท 149 words

GPG - GNU Privacy Guard

Intro GNU Privacy Guard, is a public key cryptography implementation. Install Alpine $ doas apk add gpg gpg-agent Ubuntu/Debian $ sudo apt-get install gnupg Setup gpg ํ‚ค์ƒ์„ฑ: default๋กœ ์ง„ํ–‰: Real name๊ณผ Email ์ž…๋ ฅ: ๋น„๋ฐ€๋ฒˆํ˜ธ ์ž…๋ ฅ ์•”ํ˜ธํ™”๋ฐฉ์‹: ์ตœ์‹ ์˜ ECC(ed25519) ๋ฐฉ์‹ ์‚ฌ์šฉ $ gpg --full-gen-key Create a Revocation Certificate ๋ฌดํšจํ™” ์ธ์ฆํ‚ค ์ƒ์„ฑ (๋ณด์•ˆํ‚ค๋ถ„์‹ค์‹œ ์‚ฌ์šฉ, ๋”ฐ๋กœ ์ž˜ ๋ณด๊ด€) ํŒŒ์ผ๋ชจ๋“œ๊ฐ€ 600์ธ์ง€ ํ™•์ธ $ gpg --output ~/revocation.crt --gen-revoke your_email@address.com How To Import Other Usersโ€™ Public Keys $ gpg --import name_of_pub_key_file How To Verify and Sign Keys $ gpg --fingerprint your_email@address.com $ gpg --list-keys # ํ‚ค๋ฆฌ์ŠคํŠธ ํ™•์ธ $ gpg --armor --export # public key ํ™•์ธ -----BEGIN PGP PUBLIC KEY BLOCK----- mDMEZPwe2hYJwKYBBAHaRw8BAQdATXg1HK+wZW/sZlDXfs7KEJeEyX6YRKx9a60c P5pj4mwtAPwP2wq1ACEdj+V6VOH/1ZE5KlH7L8UkYlJ8lK+ZdZBK+wEAlknNS5O7 ... -----END PGP PUBLIC KEY BLOCK----- Encrypt and Decrypt Messages with GPG Encrypt Messages $ gpg --encrypt --sing --armor -r <your_email@address.com> <name_of_file> $ ls $ <name_of_file>.asc Decrypt Messages $ gpg <name_of_file>.asc Key Maintenance $ gpg --list-keys # list available GPG keys $ gpg --refresh-keys # update the key information $ gpg --keyserver <key_server> --refresh-keys # pull information from a specific key server Bakcup & Restore backup (์‚ฌ์šฉ์ค‘์ธ PC) # tree๋กœ ~/.gnupg ํ™•์ธ tree ~/.gnupg # ํ˜„์žฌ ์‚ฌ์šฉ์ค‘์ธ ํ‚ค ํ™•์ธ gpg --list-secret-keys --keyid-format LONG # ๋ฐฑ์—… mkdir ~/gpg-backup gpg --export --export-options backup --output ~/gpg-backup/public-key.gpg gpg --export-secret-keys --export-options backup --output ~/gpg-backup/private-key.gpg gpg --export-ownertrust > ~/gpg-backup/trust_key.gpg tar cvf <USB-mount-path>/gpg-backup.tar gpg-backup restore (๋‹ค๋ฅธ PC) # USB mount tar xvf <USB-mount-path>/gpg-backup.tar cd gpg-backup/ # ํ‚ค ๋ณต์› gpg --import public-key.gpg gpg --import private-key.gpg gpg --import-ownertrust trust-key.gpg # ํ‚ค ํ™•์ธ gpg --list-secret-keys --keyid-format LONG PASS(The Standard Unix Password Manager) with gpg pass๋Š” ์œ ๋‹‰์Šค์—์„œ ๊ฐœ์ธ์˜ ํŒจ์Šค์›Œ๋“œ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ํ‘œ์ค€ ํˆด์ด๋‹ค. ...

2023-09-09 ยท 381 words

Edge - ์œˆ๋„์šฐ์ฆˆ ๋ธŒ๋ผ์šฐ์ €

์ด๊ฒƒ์„ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ๋Š” ์–ด์ฉ” ์ˆ˜ ์—†์ด ๊ด€๊ณต์„œ๋‚˜ ๊ธˆ์œต๊ถŒ ๋•Œ๋ฌธ์ด๋‹ค. ํ•œ๊ตญ์˜ ํ›„์ง„์ ์ธ ๊ณต์ธ์ธ์ฆ์„œ์ œ๋„์™€ ์œˆ๋„์šฐ์ฆˆ ์ค‘์‹ฌ ์‚ฌ์šฉ์œผ๋กœ ์ธํ•œ ํํ•ด๊ฐ€ ์•„๋‹๊นŒ ํ•œ๋‹ค. ๋‹คํฌ๋ชจ๋“œ Dark mode ๋ณ€๊ฒฝ ๋ชจ์–‘๋ณ€๊ฒฝ: ์„ค์ • > ๋ธŒ๋ผ์šฐ์ € ๋””์Šคํ”Œ๋ ˆ์ด> ๋ชจ์–‘ ์‚ฌ์šฉ์ž ์ง€์ • > ์–ด๋‘ก๊ฒŒ ์›นํŽ˜์ด์ง€๋ณ€๊ฒฝ: ๋ธŒ๋ผ์šฐ์ € ์ฐฝ์— ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ž…๋ ฅ ํ›„ ์žฌ์‹คํ–‰ edge://flags/#enable-force-dark

2023-09-08 ยท 42 words