Software Development Tools

Oracle SQL Developer 다크 테마 만들기

엘호리스 2024. 2. 24. 18:45

DB Client 툴은 정말 쓸만한게 없다.

SI 프로젝트를 다니다보니 SQL 편집기에 지나지 않은 DB Client 툴에서 강점이어야 할 기능들은 자동완성과 SQL코드정렬인데 이걸 만족하는 툴은 Datagrip 정도이다. 그런데 Datagrip도 툴 자체의 무거움과 여러 Database 접속정보를 관리하는 차원 등에서 약간의 아쉬움은 존재한다.

그리고 때로는 라이센스 문제에서 자유롭기 위해선 DBeaver를 사용한다.

이번 프로젝트에선 DBeaver를 공식 툴로 정의하여 사용을 하려고 하는데 하필 PL-SQL 기반의 프로젝트이다.

PL-SQL 디버깅을 하는 방법을 가이드 해달라는 요청에 DBeaver 툴을 이용해 디버깅을 하려고 하니 잘 되지 않는다.

급하게 옛날 익숙함의 기억을 꺼내어 Oracle SQL Developer를 활용하여 디버깅 하는 방법을 가이드 하였다.

거의 5년 가까이 쓰지 않은 툴인데 오랜만에 다운받아 사용해보니 나름 잘 만든 툴인것 같다.

긍정적으로 보게 되는 이유는 사실 라이센스 문제에서 자유로워지기 때문이긴 한데... 그래도 지금 프로젝트처럼 Oracle DBMS만 사용하는 프로젝트에선 해당 툴이 공식 툴이 되는게 어쩌면 더 효율적이지 않을까 생각해본다.

오랜만에 이렇게 오래된 툴을 포스팅 하는 이유는 아쉬운 기능 중에 하나인 테마 변경인데...

코드 에디터 창은 예전에 dtcache.xml 파일을 수정하여 어떻게 적용하였지만 윈도우 창 스타일을 변경하는 것은 시도하지 못하였다. 그런데 완벽하게 어두운 테마를 적용하기 위해선 윈도우 창 스타일도 변경하는게 맞다 생각하여 확인해보니 조금의 노력을 들인다면 변경이 가능할 것으로 보여 작업을 수행해봤다. 자세한 방법은 github 프로젝트에 있으니 시도해봐도 나쁘지 않을 것 같다.

환경

  • OS: Windows
  • SQL Developer version: 21.4.3
  • Build: Apache Ant

ide/themes/creating_themes.html

자신만의 테마를 만드는 가장 쉬운 방법은 Fusion Blue 테마의 콘텐츠를 복사하여 사용자 지정하는 것입니다. jar 도구나 WinZip과 같은 zip 유틸리티를 사용하여 ide/themes/fusionblue.jar. theme.properties이 jar에는 기본적으로 JDeveloper 11g에서 사용되는 모든 이미지와 파일이 포함되어 있습니다 .

테마 만들기 프로젝트

  • fusionblue.jar 파일이 있는 디렉토리 찾기(${SQLDEVELOPER_HOME}/ide/themes)
  • fusionblue.jar 파일 압축해제(ex: C:/workspace/github/sqldeveloper-theme/src)
  • theme.properties 파일의 색상코드들 편집하여 저장(META-INF/theme.properties)
  • build.xml 파일의 deploy-jar-path 경로 값 변경
  • fusionblue.jar 빌드하여 배포

결과물