콘텐츠로 건너뛰기
Home » 도구와 팁

도구와 팁

Notepad++ – 특정 패턴의 단어나 문구만 추출하여 정리하기

  • 기준

최근에 텍스트로 된 CSV, JSON 파일과 엑셀을 모두 사용하면서 지난한 작업을 많이 하고 있는데, 다시금 Notepad++의 덕을 많이 보고 있습니다. 단순히 데이터를 포맷팅하거나, 단순한 찾기/바꾸기 외에도 제품바코드 번호나 주문번호 같은 특정 규격의 정보를 큰 파일에서 추출한다거나, 엑셀 파일에서 칼럼을 복사해와서 컴마로 연결하거나 하는 일을 주로 하게 됩니다. 오늘은 이런 일들을 처리하면서 평소에 잘 쓰지 않다가 익숙해진 몇 가지 기능들을 소개하려고 합니다. Notepad++는 정규식을 사용하여 검색이나 치환을 할 수 있는 강력한 기능을 갖고 있습니다. 정규식은 보통 특정 패턴에 매치되는 부분을 찾거나… 더 보기 »Notepad++ – 특정 패턴의 단어나 문구만 추출하여 정리하기

숫자키패드를 활용하는 오토핫키 팁

  • 기준
  • ,

키보드를 선택할 때, 숫자 키패드 영역이 있는 풀배열 키보드를 선택하는 사람은 “숫자를 입력할 일이 많은” 사람일 것입니다. 주로 엑셀이나 계산기를 사용할 일이 많은 경우에 숫자 키배드를 사용하는 것은 분명 편리함이 있습니다. 하지만 숫자를 입력할 일이 많다고 해서 항상 숫자 키패드가 유용한 것은 아닙니다. 1, 2, 3,.. 과 같이 숫자와 함께 콤마를 입력해야 하는 경우라면 이야기가 달라지죠. , 키 역시 오른손으로 눌러야 하는 영역에 있기 때문에, 숫자 키패드를 사용해야 한다면 오히려 손이 왔다 갔다 하면서 입력이 불편해집니다.

더 보기 »숫자키패드를 활용하는 오토핫키 팁

스페이스 키를 두 번 연타하여 엔터키로 만들기

  • 기준
  • ,

작가와 같이 일반인들과 비교도 할 수 없을만큼 많은 글을 타이핑하는 분들은 흔히 오른쪽 새끼 손가락의 통증을 호소하는 분들이 많습니다. 아무래도 한글의 경우, 오른쪽 쉬프트 키의 사용이 잦은데다 엔터키도 많이 누르게 되니 오른손 새끼 손가락을 그만큼 많이 혹사하게 되는 것이죠. 그래서 스페이스 바를 두 번 연타하면 엔터로 작동하면 좋겠다는 생각을 하시는 분들이 종종 있는 것 같습니다. 그래서 오늘은 오토핫키를 사용해서 스페이스 키를 두 번 연타하여 엔터키로 만드는 방법에 대해서 알아보도록 하겠습니다.

더 보기 »스페이스 키를 두 번 연타하여 엔터키로 만들기

NU Shell에서 여러 인자를 외부 명령에 전달하기

  • 기준
  • ,

컴파일러 명령과 같이 많은 양의 인자를 전달해야 하는 명령을 Nu shell 스크립트에서 호출할 때, 명령들을 변수에 저장하여 호출하면 하나의 변수가 하나의 인자로 취급되어 예상했던 대로 작동하지 않는 문제가 있다. 예를 들어 vim을 빌드할 때 명령줄에서는 다음과 같이 실행한다. 이 때 각 인자를 하나의 변수에 넣고 실행하면? $build_opt 의 값이 따옴표로 묶인 것처럼 하나의 인자로 전달되어 제대로 컴파일이 되지 않는다. 이 경우에는 문자열 변수를 split row 명령으로 분해하여 파이프를 통해 넘겨준다. $in 은 파이프라인으로 넘겨받은 값을 가리키는 변수로 위와 같은 경우외에… 더 보기 »NU Shell에서 여러 인자를 외부 명령에 전달하기

AutoHotkey 한영 상태 감지하기

  • 기준

오토핫키에서 키보드 매크로(hot string)는 키보드의 한/영 상태를 고려하지 않고 작동하기 때문에, 한/영 상태에 따라서 다른 핫스트링을 정의해야 하는 경우가 있다. 이를 위한 함수 코드가 여러 커뮤니티나 블로그를 통해서 공유되고 있는 걸 줏어서 소개한다. (물론 구글에서 검색해보면 이 글보다는 다른 글들이 먼저 보이니까, 이 글을 보시는 분들은 아마 보셨던 코드일 것이다.)

원리는 대충 윈도 API를 통해 어떤 응용 프로그램 내의 컨트롤에 ‘메시지’를 보내어 원격으로 어떤 기능을 실행할 수 있게 하는 것이 기본적인 아이디어이다. 현재 활성화된 창에서 기본 IME의 상태창을 열도록, 응용 프로그램의 기본 IME 창에게 메시지를 보낸다. 만약 현재 한글 IME가 선택된 경우에는, 이 요청을 처리하지 못하고 에러가 반환되기 때문에 이 메시지의 결과가 실패라면 한글로 선택되어 있다고 상정할 수 있는 것이다.

더 보기 »AutoHotkey 한영 상태 감지하기

AutoHotkey – 한영키와 CapsLock 키를 하나로 사용하기

  • 기준

최근 버전의 MacOS는 CapsLock 키와 한/영키를 하나의 키로 사용한다. 짧게 한 번 누르면 한/영 전환을 하고 약간 길게 (약 0.2~0.3초)가량 누르고 있으면 CapsLock으로 작동한다. 이를 윈도에서 흉내내기 위해서 AutoHotkey를 사용할 수 있고, 이와 관련된 스크립트가 소개된 것들이 있는데 아주 부드럽게 작동하지는 않더라. 이는 CapsLock 키는 눌렸다 떼는 시점이 아니라 누르는 시점에 대문자 고정으로 작동하기 때문에, 한/영 전환을 하려는 시점에 CapsLock으로 작동하기가 일쑤이다. 그래서 반대로, 한/영 키를 누르고 있으면 CapsLock 키처럼 작동하도록 했더니 특별히 이상하게 작동하지 않고 어느 정도 기대하는 대로 작동하는 것 같다.

더 보기 »AutoHotkey – 한영키와 CapsLock 키를 하나로 사용하기

파일 탐색 유틸리티 fd 사용법

  • 기준
  • ,

이 블로그에서 GNU find의 사용법에 대한 글을 올린 적이 있는데, 오늘은 이 GNU find를 대체할 수 있는 fd 라는 툴의 사용법에 대해서 간단히 정리해보고자 한다. fd는 이름부터 ‘find’를 50%줄여서 더 빠르게 쓴다는 취지로 개발되었으나, GNU find를 ‘완전히’ 대체하는 것을 목표로 하지는 않는다. 대신에 옵션명을 보다 직관적으로 현대화(?)하고 더 빠르게 동작할 수 있는데 중점을 두고 개발되었다. 개발자에 따르면 find 유틸이 제공하는 전체 기능의 80% 정도를 커버할 수 있으며, 성능은 대략 9배이상 빠른 것으로 본다고 한다. 무엇보다 윈도환경에서 사용이 가능하다. (msys 같은… 더 보기 »파일 탐색 유틸리티 fd 사용법

Vim에서 팝업 사용하기

  • 기준
  • ,

vim8부터 popup 기능이 새롭게 도입되었다. 이제 vim script에서 팝업을 만들어서 대화 상자나 메뉴 혹은 그외의 UI들을 팝업 레이어로 만들어서 편집기 위로 띄울 수 있게 되었다. 특히 비동기로 외부 job을 실행하는 함수를 작성하는 경우에 그 결과를 사용자에게 알려주는 용도로 사용하기에 용이하다. 이 기능을 어떻게 사용하는지 살펴보도록 하자.

더 보기 »Vim에서 팝업 사용하기

vim 플러그인의 키맵과 함수 이름

  • 기준
  • ,

vim 플러그인을 작성하는 것을 간단히 요약하면 어떤 기능을 수행하는 함수를 작성하고, 이 함수를 호출할 수 있는 방법을 제공해주는 것이라 할 수 있다. 이 때 고려해야하는 중요한 요소 중 하나는 사용자는 내가 작성하는 플러그인 말고도 엄청나게 많은 다른 플러그인을 사용하고 있을 것이라는 것이다. 따라서 함수의 이름이나 사용자 정의 명령의 이름, 키 맵핑등이 온전히 내가 원하는대로 사용자가 쓸 수 있을 것이라는 생각을 하는 것은 위험하다.

더 보기 »vim 플러그인의 키맵과 함수 이름