# ~/.config/sxhkd/sxhkdrc
alt + {a-z} bash ~/bin/shotcuts/shortcut.sh {a-z}
kde를 주로사용평소 KDE 환경에서 GUI 설정을 통해 단축키를 만들어 사용했지만, 이 분의 SXHKD 설정 파일을 보니 X 윈도우 환경에서도 간편하게 단축키를 정의할 수 있다는 점이 인상적입니다. (
특히 PDF 검색 workflow가 흥미롭습니다. 파일 목록을 SXHKD를 통해 넘겨주면, 가운데 창에서 선택하여 PDF 뷰어로 바로 열람하는 방식인데, 파일 목록을 보여줄 때 미리보기 기능까지 고려했을 가능성이 엿보입니다.
파일 검색에 활용된 rofi
는 fuzzy 검색을 지원하므로, 파일명은 물론 내용, 저자, 특정 저널까지 자유롭게 검색할 수 있다는 장점이 있습니다. 특히 지도교수님이나 본인의 저서를 검색할 때, 연구자 규모를 고려하면 검색 결과가 많지 않을 것이기에 더욱 효과적으로 작동할 것으로 보입니다.
텍스트 노트 작성 환경도 눈여겨볼 만합니다. 이 분은 Vim을 사용하여 LaTeX 문서를 편집하고, ranger
라는 텍스트 기반 파일 관리자를 활용합니다. 필요에 따라 midnight commander
와 같은 다른 툴을 사용하거나, 단순히 해당 디렉토리에서 Bash를 열어 작업할 수도 있습니다.
ranger
가 w3m-img
와 연동하여 이미지를 다운로드하는 것을 보면, HTML 뷰어 기능이 내장되어 있을지도 모르겠습니다. 직접 사용해 보니 macOS의 Finder와 유사한 세 개의 창으로 구성된 파일 관리자입니다. 상위 폴더, 현재 폴더 (파일 목록), 그리고 선택한 폴더의 내용물 (파일이면 미리보기)을 직관적으로 보여줍니다. Alacritty, Zed Warp과 같이 그래픽 지원 터미널(흔히 Kitty Graphics라고 불리는)을 사용하는 점도 주목할 만합니다.
case $key in | |
p ) cd ~/phd/papers; | |
pdf_file="$(ls . | rofi -theme ~/.config/rofi/theme-wide.rasi -i -dmenu)"; | |
[ -z "$pdf_file" ] && exit 0; | |
[ -f "$pdf_file" ] && zathura "$(realpath "$pdf_file")" || sensible-browser "https://google.com/search?q=$pdf_file" ;; | |
r ) $terminal "ranger ~/phd/notes/$(date +"%F")" ;; m ) $terminal "vim ~/phd/notes/master.tex ;; | |
n ) $terminal "cd ~/phd/notes/$(date +"%F"); $vim ~/phd/notes/$(date +"%F")/note.tex" ;; | |
o ) zathura ~/phd/notes/master.pdf ;; | |
x ) open_xournal ;; | |
f ) $node $root/copy-pdf-reference.js ;; | |
esac | |
언뜻 보면 특별한 설정은 아닌 듯하지만, KDE나 GNOME 역시 자체적인 전역 단축키 설정을 지원하기 때문입니다.
SXHKD의 장점은 컴퓨터 시작 시 자동으로 실행되지 않도록 설정하고, 필요할 때만 실행하여 작업할 수 있다는 점입니다. 또는 작업 종류에 따라 전역으로 SXHKD 설정을 전환하며 사용할 수도 있습니다. 실제로 현재 설정도 기본적으로 컴퓨터 시작 시에는 활성화되지 않도록 되어 있습니다.
rofi
를 활용한 fuzzy 검색 기능은 Plasma Runner로도 유사하게 구현할 수 있으며, 결국 모든 기능에는 대안이 존재합니다. 하지만 이 분의 설정처럼 여러 툴을 유기적으로 묶어 마치 하나의 서비스처럼 효율적으로 사용하는 방식은 정말 대단하다고 생각합니다.
참고 링크를 따라가 보면, LaTeX 문서 작업 중 급하게 그림을 그려야 할 때 Inkscape를 실행하고, 키보드 이벤트를 캡처하여 미리 설정된 펜 굵기, 대시 타입, 펜 색상 등으로 그림을 그리고, 그림에 LaTeX 주석까지 쉽게 추가할 수 있도록 설정해 둔 것을 확인할 수 있습니다. 심지어 그림을 저장하고 Vim으로 돌아오면 작성하던 LaTeX 문서에 해당 그림을 바로 삽입할 수 있도록 연동해 놓았습니다.
전반적으로 이 분의 작업 방식은 다양한 툴을 효율적으로 연동하여 개인 작업 환경을 극대화한 좋은 예시라고 생각하며, 각 툴의 강력한 기능을 활용하고 워크플로우에 맞게 통합하는 아이디어를 얻을 수 있었습니다. 특히 단축키를 통해 자주 사용하는 작업을 빠르게 실행하고, 텍스트 기반 툴을 생산적으로 활용하는 점은 저도 제 작업 환경에 적용해 볼 만한 부분입니다.