이맥스 – 텍스트 정렬하기

날씨 탓일까요? 뭔가 막혀있는 느낌이 자꾸 드네요. 이럴 땐 역시나 무엇인가에 몰두하는게 가장 좋더라고요.

이맥스 – 텍스트 정렬하기

이건 왜 몰랐을까? 아래와 같이 정렬되지 않은 텍스트를 일정한 규칙에 의해서 정렬할때 align-regexp기능을 사용할 수 있습니다.

rooney = 21
haha = 20
ray = 17

만약 문자 “=” 을 기준으로 정렬을 하고 싶다면, align-regexp을 치고 문자로 “=”을 입력해주세요.

결과는 아래와 같이 정렬된 것을 볼 수 있습니다.

rooney = 21
haha   = 20
ray    = 17

약간 고급스럽게 아래와 같이 사용 할 수 있습니다.

California 423,970 km²
Taiwan 36,008 km²
Japan 377,944 km²
Germany 357,021 km²
Iraq 438,317 km²
Iran 1,648,195 km²
Korea (North+South) 219,140 km²
Mexico 1,964,375 km²

위에 것을 아래와 같이

Taiwan                 36,008 km²
Korea (North+South)   219,140 km²
Japan                 377,944 km²
Germany               357,021 km²
California            423,970 km²
Iraq                  438,317 km²
Iran                1,648,195 km²
Mexico              1,964,375 km²

먼저 전체 텍스트를 영역 지정하고, CTRL+u 그리고 나서 align-regex명령을 입력합니다. 정규식 입력 란에

.* \([0-9,]+\).*

을 입력하고, 그룹에 대해서는

-1

, 공백은

1

을 입력합니다. 반복 실행은

n

을 입력해줍니다.

위와 동일한 효과를 가질 수 있는 두가지 명렁어가 더 있습니다.

  • sort-regexp-fields
  • sort-columns

급하게 잡힌 약속에 나가봐야해서 이만 쓰겠습니다.