맥에서 클립보드 히스토리 단축키로 적용하기 변수 활용

일반적으로 클립보드 히스토리Clipboard History를 지원하는 앱은 최근 클립보드에 저장된 기록이 상단에 보여지고 최근 사용한 내용을 기준으로 단축키가 할당되는 방식입니다. 하지만 필자의 경우 스니펫Snipet 등 클립보드 활용이 상당히 많기 때문에 실질적으로 고정으로 사용해야하는 클립보드는 금방 뒤로 밀려 다시 사용하려면 한참 찾아야 하거나 완전히 찾을 수 없게 되어버립니다.

이 경우 저장할 내용을 시스템 클립보드가 아닌 직접 지정한 변수에 할당해두면 Command + C 로 저장되는 시스템 클립보드가 아닌 새로운 임시 공간에 저장되고 이렇게 할당 된 변수에 단축키를 지정해두면 시스템을 재실행하지 않는 한 언제든지 다시 불러와 사용할 수 있습니다.

필자의 경우 하이퍼 키 조합으로 사용중인 Command + Shift + Option 과 숫자 8 을 누르면 임시 변수에 텍스트를 복사해서 저장하고 Option + 8 키 조합으로 저장된 텍스트를 언제든지 불러와서 입력할 수 있게 해 두었고 8 부터 0까지 총 세 개의 단축키를 등록해서 활용2하고 있습니다. 이런 식으로 클립보드를 변수에 할당하는 방식은 다양하게 존재하지만 필자의 경우 해머스푼Hammerspoon이 익숙해 이 방식을 주로 사용하고 있으며 기본적인 설정 과정은 다음과 같습니다.

아래 설명은 comeinsidebox.com 에서 테스트 및 검증 후 작성 된 내용이지만 이것이 본문의 내용의 정확성이나 신뢰성에 대해 보증을 하는 것은 아니니 단순 하게 참고용으로 확인바랍니다.

튜토리얼 환경: macOS Ventura 13.0 (M1), 해머스푼 v0.9.97 (6267)

해머스푼 설치

해머스푼-설치
해머스푼 설치

이번 설명에서는 해머스푼을 이용하는 것이기 때문에 기본적으로 해머스푼을 설치해야 합니다. 해머스푼을 설치하고 세팅하는 기본적인 과정은 해머스푼의 기본적인 사용 방법을 확인하세요.

맥북 DOCK 독 활용 방법 기본은 알고 사용하자 잘 모르는 팁도 추가

클립보드 변수 할당 스크립트

해머스푼을 설치한 뒤 init.lua 파일을 열고 변수를 할당하는 스크립트를 추가 후 다시 로드하면 지정한 단축키로 클립보드를 변수에 할당하고 할당 된 변수를 다시 단축키로 붙여넣기 할 수 있습니다.

Open-Config로-lua-파일-실행
Open Config로 lua 파일 실행
  1. 해머스푼이 실행 된 상태에서 상단 메뉴 막대의 Open Config 메뉴를 통해 init.lua 파일을 열어줍니다.
init-lua-파일에-스크립트-추가
init lua 파일에 스크립트 추가
  1. 아래 스크립트를 Lua 파일에 추가한 뒤 저장합니다. 각 함수 설명은 주석으로 대체하며 키 조합은 필요시 원하는 값으로 수정할 수 있습니다. 그리고 아래 스크립트를 복사해서 하단에 추가하면 변수인 save[1] 값을 save[2], save[3] 와 같이 변경 하면 클립보드가 저장될 변수를 더 등록해서 사용할 수 있습니다. 물론 변수명 자체를 다르게 변경해 사용할 수도 있습니다.
local pasteboard = require("hs.pasteboard")
local save = {}

-- 주석: shift + cmd + option + 8 입력시 복사한 내용을 save[1] 변수에 할당

hs.hotkey.bind({'shift','cmd','option'}, '8', function()
hs.eventtap.keyStroke({'cmd'}, 'c')
hs.timer.doAfter(0.1, function()
save[1] = pasteboard.getContents()

end)
end)


-- 주석: Option + 8 입력시 save[1] 변수에 저장된 내용을 클립보드로 가져와 cmd + v 키로 붙여넣기

hs.hotkey.bind({'Option'}, '8', function()
if save[1] then

pasteboard.setContents(save[1])
hs.eventtap.keyStroke({'cmd'}, 'v')

end
end)
Reload-Config로-재실행
Reload Config로 재실행
  1. 저장 후 Reload 메뉴를 이용해 다시 실행하면 재부팅 과정없이 시스템에 바로 적용됩니다.

이제 원하는 텍스트를 지정한 단축키로 복사해 두면 복사 이후 추가된 클립보드 데이터와 무관하게 시스템을 재부팅하거나 다른 값으로 덮어씌워지기 전까지는 언제든지 재 사용할 수 있습니다.

마치며

이번 포스트에서는 맥에서 해머스푼을 활용해 특정 클립보드 히스토리를 변수에 할당해 단축키로 빠르게 적용하는 방법에 대해 알아보았습니다. 맥이 아닌 윈도우Windows에서는 오토핫키AutoHotKey라는 도구를 활용하면 위와 흡사한 방식으로 특정 클립보드를 변수에 할당해서 재 사용할 수 있습니다.

필자와 같이 시스템 클립보드가 자주 갱신되는 상황이 아니라면 Pasty, Maccy, PasteBot 또는 Clipy 와 같이 기본적으로 제공하는 기능으로 충분히 사용할 수 있지만 그렇지 않은 경우 꽤나 불편할 수 있습니다. 이렇게, 맥에서 특정 텍스트를 시스템 클립보드가 아닌 별도의 변수에 저장해 재사용 하고싶다면 해머스품에 위 스크립트를 추가해서 적용해 보시길 바랍니다.

맥 OS X 스팟라이트 검색 시 특정 파일 및 폴더를 제외 하는 방법

관련 글

댓글로 남기기 어려운 내용은 Contact Form 에서 개별적으로 문의 할 수 있습니다. 해당 글과 연관 된 내용은 Copy를 이용해 현재 페이지의 주소를 복사 후 문의 폼에 입력시 보다 정확한 답을 얻을 수 있습니다.

Leave a Comment