개발을 몇 년 하다 보면 오히려 기초를 대충 넘어가게 된다. HTML 태그도 그렇다. 화면에 똑같이 보이니까 아무거나 쓰게 되는데, 사실 각각 의미가 다르다.예전에 정리해뒀던 메모를 다시 꺼내 보충한다.이탤릭체: em vs i : 강조하고 싶은 부분을 이탤릭체로 표시 : 단순히 이탤릭체로 표시둘 다 화면에서는 기울어져 보인다. 차이는 의미가 있느냐다.은 emphasis, 즉 문장에서 강세를 두어 읽어야 할 부분이다. 스크린 리더는 이 부분의 억양을 실제로 다르게 읽는다. "나는 오늘 간다"와 "나는 오늘 간다"는 의미가 다른데, 그 차이를 마크업으로 표현하는 것이다.는 강조가 아니라 결이 다른 텍스트를 나타낸다. 학명, 외국어 단어, 배 이름, 생각을 나타내는 문장 같은 것이다.<!-- 강조: 읽을..
Flutter GetX 패키지를 사용하고 있는데, 그중에 모듈을 자동으로 생성해주는 get_cli를 잘 사용하고 있다.그런데 어느 날 갑자기 아래와 같은 에러가 나왔다.Synchronous waiting using dart:cli waitFor and C API Dart_WaitForEventis deprecated and disabled by default. This feature will be fully removedin Dart 3.4 release. You can currently still enable it by passing--enable_deprecated_wait_for to the Dart VM.See https://dartbug.com/52121원인Dart가 동기 대기(waitFor) ..
DeepL이라는 번역 서비스가 있다. 우리에게는 구글 번역과 파파고가 익숙하지만, 번역 품질만 놓고 보면 DeepL이 최강자라고 생각한다.그동안 DeepL은 한국어 번역은 지원하면서도 개발용 API에서는 한국어를 제공하지 않았다. 그러다 한국어 개발 API가 정식 오픈했고, 그 김에 젯브레인의 번역 플러그인으로 유명한 Translation에 기여를 하게 됐다.별로 한 것도 없는데 기여자 목록에 이름이 표시되니 기분이 좋더라.Translation 플러그인이란JetBrains IDE(IntelliJ, PhpStorm, WebStorm 등)에서 쓰는 번역 플러그인이다. 코드 안에서 단어나 문장을 선택하고 단축키를 누르면 바로 번역이 뜬다.변수명·함수명을 지을 때 적절한 영단어 찾기영문 라이브러리 문서나 주석을..
레거시 시스템에서 넘어온 CSV 수백 개를 열었더니 한글이 전부 깨져 있었다. euc-kr(정확히는 cp949)로 저장된 파일을 utf-8 환경에서 열었을 때 나오는 전형적인 증상이다.파일이 한두 개면 에디터로 열어서 다시 저장하면 되지만, 수백 개는 그렇게 못 한다. iconv와 셸 스크립트로 한 번에 처리한다.기본 스크립트#!/bin/bash# csv 파일 목록을 가져온다csv_files=`ls -1 *.csv`# 변환 결과를 담을 디렉터리mkdir -p utf8for csv_file in $csv_files; do iconv -c -f euc-kr -t utf-8 "$csv_file" > "utf8/$csv_file"done옵션 의미는 이렇다.-f euc-kr : 원본 인코딩-t utf-8 : 변..
IntelliJ 혹은 Android Studio에서 freezed나 drift 같은 패키지를 쓰면 같은 이름으로 확장자가 다르게 여러 파일이 나온다.user.dartuser.freezed.dartuser.g.dart사실 직접 눌러서 볼 일이 거의 없기 때문에, 합쳐서 깔끔하게 보고 싶을 때 쓰는 방법이다.설정 방법IntelliJ 혹은 Android Studio에서 만능찾기인 Shift 연속 2번을 누르고 nest를 검색하면 File Nesting...이 나온다.해당 항목을 선택하여 같은 확장자끼리 묶어주면 하나의 파일로 합쳐져서 나온다.Parent file suffix: .dartChild file suffix: .g.dart; .freezed.dart; .config.dart; .gr.dart이제 하나..
프로젝트별 node version 자동관리에 이어서 이번엔 php 해보려고 한다. 조건 - docker 사용자라면 필요가 없다. - valet 및 php mon 사용자 - composer 사용자 ( shell script 에서 해당 프로젝트의 php 버전을 composer.json 에서 불러온다 ) - zsh 사용자 (shell script를 수정하면 가능할 것 같은데 이번글 zsh 기준으로 작성되어 있다. - mac 사용자 준비단계 - brew 와 zsh 이 이미 설치되어 있다는 조건하에 시작하게습니다. 1. brew 에서 jq 를 설치합니다 나중에 만들어질 shell script 에서 해석용도로 사용됩니다. # jq instsall brew instsll jq 2. php mon의 환경 변수 등록 (..
