전체 글 썸네일형 리스트형 Gnome 49 + Wayland, Jetbrains JVM 기반 IDE 한글 입력 gnome 이 최근 버전 업데이트되면서 wayland 를 기반으로 완전히 전환한 느낌입니다.최근 맥OS 환경에서만 개발을 진행하고 있어서, 리눅스는 필요할 때 집에서만 데스크톱 환경을 가끔 사용하고 있어서, arch linux 의 대규모 업데이트가 있을 때마다 설정을 변경해야 하는 부분이 조금씩 생기네요. 최근 Gnome 49 버전 업데이트에 따라 Jetbrains 사의 IDE 들(JVM 환경) 에서 한/영 전환이 정상적으로 처리되지 않는 것을 확인했습니다.wayland native 환경 하에서 ibus 기반의 한영 전환이 정상적으로 이루어지지 않는 것을 아래와 같은 방식으로 해결해보았습니다. ibus, ibus-hangul 은 설치되어 있고, gnome 49, wayland 환경이었습니다. ibus 에.. 더보기 맥에서 하단 Dock 표시 속도 설정하는 방법 아래 설정은 하단 Dock 을 자동 숨김 모드로 사용할 때의 설정입니다.하단바를 자동 숨김 ON, OFF 하는 단축키는 Ctrl + Cmd + D 입니다. 기본 설정값이 상당히 루즈하게 되어 있는 것 같습니다.자동 숨김 상태로 설정한 상태에서, 하단 Dock 부분에 마우스를 이동시키고 약 1초 가량 기다리면 Dock 이 올라옵니다. 너무 오래 걸립니다. 이 설정은 터미널에서 아래와 같은 명령어로 설정이 가능합니다.defaults write com.apple.dock autohide-delay -float 0; killall Dock 위 명령어에서 float 이후의 숫자가 마우스가 화면 하단에 도달한 이후에 Dock 이 표시되기까지의 딜레이입니다. 단위는 초(Sec) 으로 보입니다. 이 숫자를 0으로 바뀌.. 더보기 Mac - Cmd + Q 를 2회 클릭하여 앱 종료하기 맥에서 앱을 종료하지 않고 창만 닫는 키는 Cmd + W 이고, 앱을 완전히 종료하는 키는 Cmd + Q 입니다.W, Q 키는 바로 옆에 붙어 있어 종종 창만 닫으려고 했는데 앱이 종료되는 경우가 있습니다. 하여, Cmd + Q 를 2회 연속 클릭하여 실수로 앱이 종료되는 문제를 해결하는 방법에 대해서 알아보겠습니다. 맥의 기본 설정으로는 해결이 불가능하고, Hammerspoon 이라는 앱을 이용해서 간단히 해결하였습니다.brew 등으로 hammerspoon 을 설치합니다.brew install --cask hammerspoon Hammerspoon 은 앱 구동 시 ~/.hammerspoon/init.lua 라는 파일의 설정을 로딩하여 동작합니다.해당 파일에 lua 스크립트로 Cmd + Q 를 2회 연속.. 더보기 Mac 유용한 앱 - Hidden Bar - 잘 사용하지 않는 메뉴바 아이콘들 숨기기 맥을 구입하고 필요한 앱들을 하나씩 설치해 나가다보면, 앱들 중 상태표시나 접근성을 위해서 메뉴바에 아이콘을 띄우는 프로그램들이 상당히 많습니다. 메뉴바의 아이콘을 거의 사용하지 않는 앱들도 있고, 자주 사용하지는 않지만 가끔 필요한 앱들도 있지요. 하지만 이런 모든 앱들의 메뉴바 아이콘을 활성화해서 사용하면 어느덧 메뉴바에는 10개가 넘는, 순서가 보장되지 않는 아이콘들로 가득 차게 됩니다.물론 설정에서 메뉴바에서 거의 사용하지 않는 아이콘은 숨김 처리도 할 수 있지만, 종종 필요한 앱들은 이걸 숨겨야 할지 보이도록 할지 고민이 됩니다. 이번에 소개할 앱은 이러한 고민을 단번에 해결해 줍니다. 앱스토어 링크 기능은 단순하지만, 강력합니다.일단 정리된 상태를 한번 봅시다.IME 변경을 위한 `한` 아이콘.. 더보기 Spring + Kotlin 요청 파라메터 snake case -> camel case 로 받기 spring + java 로 구현된 레거시 프로젝트를 spring + kotlin 으로 리팩토링하면서 customer_code 같은 형태로 요청 파라메터를 받았던 부분을 request 객체를 통해서 customerCode 같은 property 로 바인딩 하고 싶어졌습니다.한방에 모든 API 의 파라메터를 camel case 로 추가하는 방법은 다른 블로그에서 소개하므로, 여기서는 하나하나 리팩토링하는 과정에서 kotlin 의 생성자 파라메터 명칭을 이용하는 방법이 가장 간단히 구현할 수 있는 방법으로 보여 이를 간단히 설명해 보겠습니다.snake case -> camel case 한방에 : https://m.blog.naver.com/simpolor/221874168491 일단 요청 파라메터는 @Json.. 더보기 Linux 환경에서 Jetbrains IDE + ibus 한글 입력 이슈 한글 입력 시 preedit 입력 창이 별도로 뜨는 경우, Main Menu → Help → Edit Custom VM Options... 를 눌러서 열리는 idea64.vmoptions 파일에 아래 구문을 한줄 추가합니다.-Drecreate.x11.input.method=true 해당 옵션이 없이 한글을 입력하는 경우, 커서 위치에서 글자가 조합되는 것이 아니라, 커서 위치와는 별개로 별도의 작은 말풍선같은 입력창에서 글자가 조합되고 완성되면 커서 위치로 내려왔는데, 위 옵션을 추가한 이후에는 에디터의 커서 위치에서 자연스럽게 한글이 조합되는 것을 확인할 수 있습니다. 훨씬 자연스럽게 입력됩니다. 테스트된 환경은 Manjaro linux(based Arch) + Gnome + ibus(with ibu.. 더보기 Brother HL-L2365DW 드라이버 설치 없이 리눅스에서 사용하기 해당 프린터는 AirPrint 또는 Driverless 기능으로 별도의 드라이버를 설치하지 않고도 IPP 기능으로 연결하여 인쇄할 수 있습니다. 명령어는 아래와 같습니다. sudo lpadmin -p Brother_HL_L2365DW -v ipp://192.168.0.33/ipp/print -E -m everywhere 위 명령어에서 Brother_HL_L2365DW 부분이 프린터 이름이고, 이름은 공백없이 연결된 문자열이어야 합니다.그리고 ipp:// 이후의 IP Address 는 자신의 네트워크 환경에 맞는 프린터 IP 를 넣어주면 됩니다. 저의 경우 리눅스의 GUI 환경은 gnome 인데, 설정의 프린터 상세 정보를 보면 아래와 같습니다.cups 화면에서는 아래와 같이 표시됩니다. 더보기 testcontainers 를 활용한 integration test 환경 인프라 분리 백엔드 개발을 하다보면 개발자 본인 PC 에서 로컬 환경에서 구동하기 위한 데이터베이스를 포함한 각종 인프라가 필요합니다. docker 의 container 를 이용해서 편리하게 인프라를 구성할 수 있고, 각종 자동화 스크립트, 라이브러리를 통해서 인프라의 초기화도 가능합니다. 그런데, 이 로컬 환경의 인프라는 로컬 환경에서 개발을 하기 위한 인프라는 테스트를 위한 인프라로 재사용하기가 상당히 까다롭고 좋은 방법도 아닙니다. 이런 여러가지 사정으로 인해 테스트를 위한 인프라를 별도로 구성해 놓는 것이 가장 좋은 방법입니다. 여기서는 통합 테스트 시 필요한 인프라를 테스트 시작 시 구성, 완료 시 폐기할 수 있는 docker 기반의 라이브러리의 장담점을 소개하고, 간단한 예시로 사용 방법을 안내해 보겠습니.. 더보기 이전 1 2 3 4 ··· 75 다음