컴퓨터주제/어플리케이션
흘러넘치는 창을 정리하자 - allSnap
Namu(南無)
2004. 11. 27. 22:51
수 없이 넘쳐나는 Windows의 Windows.
끝 없이 열려가는 Windows의 Windows.
이전에 비해서 Windows의 바탕화면이 고해상도로 넘어가면서 화면 가득 창이 넘치게 되었습니다. 거기에 추가로 다중 모니터의 사용이 일상화되면서 넘쳐나는 창을 관리하기 쉽도록 도와줄 툴이 필요하게 되었습니다.
그 첫 시작이라 할 수 있는 것이 Matrox의 비디오 카드 드라이버에 부속된 Matrox PowerDesk입니다. 드라이버 이름이기도 합니다만, 이것에는 다중 모니터에서 창의 위치를 정의하는 Multi-Display Controls와 화면 일부를 확대해서 볼 수 있는 PixelITOUCH, 창과 아이콘 위치를 기억하고 창을 바탕화면에 끝에 자동으로 붙게 하는 Window Positions의 기능이 있습니다. 이것은 이후 nVIDIA의 ForceWare에 부속된 nVIEW, ATi의 Catalyst에 포함된 HydraVision이 있습니다.
해상도에 따른 창의 위치와 크기를 기억하는 기능은 Windows98 이전에는 효용이 있었으나 Windwos 2000, XP 이후로는 OS 자체에서 그 기능을 지원하기 때문에 큰 효용이 떨어집니다. 그에 비해 창의 크기와 위치를 편리하게 조절할 수 있는 기능이 필요하게 됩니다.
Matrox PowerDesk에서는 바탕화면의 끝에 자동으로 붙는 기능이 있습니다. ATi Catalyst HydraVision에는 이 기능이 없습니다. 그리고 nVIDIA nVIEW 2.0에는 이 기능이 더욱 확장되어 다중 모니터의 하나의 화면을 넘지 않도록 하는 기능을 비록하여 창과 창까리 딱 맞게 붙일 수 있는 기능이 있습니다. 이것은 GOM Player나 Adobe Photoshop 등에서 수 많은 창을 서로 옮길 때 서로 붙도록 하는 기능이과 유사한 것으로 창의 이동과 창의 크기를 조절할 때 다른 창과 같이 붙도록 되는 기능입니다. 이 기능은 서로의 창을 가리지 않도록 크기와 위치를 조정할 수 있기 때문에 넓은 바탕 화면을 쓸 때 무척 효용이 높습니다. 그렇기 때문에 nVIDIA의 비디오 카드를 쓰면서 nVIEW 2.0의 덕을 많이 보고 있습니다. 이 기능과 유사한 기능을 해당 어플리케이션에서 구현한 것으로 Adobe Photosop, Winamp, GOM Player 등이 있습니다.
그러나! nVIDA의 비디오 카드가 아니라면? 다행히, 이 기능을 구현하는 소프트웨어가 있습니다. 그것도 Freeware입니다. 그것이 바로 allSnap입니다.
홈페이지: http://ivanheckman.com/allsnap/
최신버전: allSnap 1.33 / allSnap 1.41 Portable
GNU License의 Freeware이며 현재 1.3 버전이 최신 버전이며, 1.31 Beta가 있습니다. 이 중 저는 1.31 Beta를 사용중이며 이 어플리케이션의 소개도 1.31 Beta를 기준으로 하도록 하겠습니다.
인스톨 화면은 일반적인 어플리케이션과 크게 차이 없습니다. 라이센스 확인과 설치 위치 지정, 시작 메뉴에 그룹을 만들 것인가 여부 이후 시작 프로그램에 등록하는 등의 설정을 할 수 있습니다. 일반적인 설정으로 설치를 하시면 됩니다. 단, WindwosXP SP2를 설치한 경우에는 인증서가 없기 때문에 경고를 띄웁니다. 인증서가 없다면 모두 뜨는 경고이므로 무시하도 됩니다.
처음 설치한 뒤 실행하면 allSnap의 기능은 활성화된 상태로 TrayIcon에 등록됩니다.
TrayIcon을 오른쪽 클릭하면 왼쪽 이미지와 같은 메뉴가 나오며, 더블 클릭하면 Settings 창이 뜨게 됩니다.
About allSnap: 어플리케이션 정보
Help: 도움말 창
Settings: 옵션 창
Enable Window Snapping: 프로그램 활성화/비활성화
Open Debug Console: 디버그 콘솔 창
Exit: 프로그램 종료
Enable Window Snapping을 선택하면 왼쪽 이미지처럼 비활성화가 되며 다시 한번 선택하면 활성화가 됩니다.
TrayIcon에서 Settings를 선택하여 allSnap의 설정 가능한 내용을 살펴보겠습니다.
[Preferences]
allSnap의 기본 설정이 가능합니다.
General
Snap to windows at ## pixels: 창을 이동할 때 지정된 수치 이내에 다른 창이 위치할 경우 창이 붙습니다.
Snap to desktop at ## pixels: 창을 이동할 때 지정된 수치 이내 간격으로 바탕화면에 Grid를 설정하고 창은 그 Grid를 따라서 이동합니다.
Toggle Key: 창을 붙이는 기능을 작동하거나 작동하지 않도록 하는 키를 정의합니다. 이 기능은 Advanced 메뉴의 Invert toggle key 메뉴와 연동됩니다.
Snap To
창을 이동할 때 어떤 경우에 창이 붙을 것인지를 정의합니다.
Desktop: 바탕화면의 Grid에 따라 창이 붙습니다. 이것은 PowerPoint, Visio 등에서 Grid를 따라 Object가 움직이는 기능과 유사합니다.
Other windows: 다른 창에 창이 붙습니다.
Old position: 창의 원래 위치에 붙습니다.
Vertical center: 바탕화면의 수직 중앙에 붙습니다.
Horizontal center: 바탕화면의 수평 중앙에 붙습니다.
[Sounds]
프로그램이 동작할 때의 효과음을 설정합니다.
Snap Sounds
붙을 때 효과음을 정의합니다.
Snap sound files: 창이 붙을 때의 효과음을 선택합니다.
Unsnap sound files: 창이 떨어질 때의 효과음을 선택합니다.
Play Sounds: 효과음을 키고 끌 수 있습니다.
[Advanced]
고급 옵션을 설정합니다.
Advanced Settings
고급 옵션의 설정 메뉴입니다.
Desktop icons 'Align to Grid'
- 바탕화면의 아이콘을 바탕화면의 칸에 맞춥니다. 단, 이 기능은 WindowsXP에서는 기본으로 제공되기 때문에 WindowsXP에서는 동작하지 않습니다. WindowsXP에서 바탕화면의 오른쪽 클릭 때 나타나는 아이콘 정렬 순서>줄 맞춤과 같은 기능입니다.
Snap MDI windows
- MDI 창에 붙도록 합니다. MDI창은 어플리케이션의 메인 윈도우에 속해있는 별도 창입니다. 예를 들면 어플리케이션의 설정 창 등입니다.
Don't snap to inside edges
- 창의 내부 끝에는 붙지 않도록 합니다. 이 기능을 키면 창의 내부에도 창이 붙습니다.
Invert toggle key
- Perferences>Toggle Key에서 정의한 키의 동작을 지정합니다. 꺼져있을 때는 설정한 키를 클릭한 상태에서는 allSnap의 기능은 정지됩니다. 켜져있을 때는 반대로 설정한 키를 클릭한 상태에서만 allSnap의 기능이 작동합니다.
Crop top of windows by # pixels
- WindowsXP의 일부 스타일은 창의 상단에 픽셀의 여백이 있습니다. 그 여백을 제외할 수 있는 설정입니다. 지정한 수치만큼 창의 상단은 무시됩니다.
Constrain windows to the screen
- 창을 이동할 때 바탕화면 밖으로 창이 움직이지 않도록 합니다. 다행이 다중 모니터에서도 아주 잘 작동합니다.
Ignore window clipping regions
- 일부 창은 보이지 않는 창의 영역을 갖고 있습니다. 대표적인 것이 MSN Messenger에서 메신저 창을 축소했을 때 실제로는 창의 영역은 그보다 큽니다. 그 영역을 무시할 수 있습니다.
allSnap의 장점은 nVIEW 2.0과 비교했을 때 훨씬 안정적이란 것입니다. nVIEW 2.0은 경우에 따라 프로그램의 동작이 비정상적이거나 작동하지 않는 경우가 있습니다. 그러나 allSnap은 훨씬 안정적입니다. 또한, 설정할 수 있는 항목이 다양합니다.
단점을 꼽자면 단 한가지입니다. nVIEW 2.0에서 창이 하나의 화면 밖으로 나가지 않도록 설정하면, 창의 크기를 화면 크기보다 크게 조절할 경우 자동으로 창을 축소해주는 기능이 있습니다만, 유일하게 이 기능만 없습니다. 개발자에게 건의 메뉴를 보낸 만큼 반영을 기대하고 있습니다. 홈페이지에서도 버그 리포트와 개선 요청에 대해 버그 처리 여부와 개선 여부에 대해 FAQ가 있을 만큼 그에 대해서도 적극적인 것으로 보입니다.
넓은 바탕화면, 넘치는 창. 그 속에서 Windows가 기본 제공하는 가로/세로 바둑판식 창 배열 기능만으로 부족하다고 느낄 경우, 창과 창이 붙도록 하여 넓은 창을 더욱 효율적으로 쓸 수 있는 보조 어플리케이션입니다. 다중 모니터와 고해상도를 선호하는 분에게는 무척 좋을 것입니다. 단, 언제나 전체 화면을 즐기실 경우 아무런 쓸모가 없을 것입니다.
끝 없이 열려가는 Windows의 Windows.
이전에 비해서 Windows의 바탕화면이 고해상도로 넘어가면서 화면 가득 창이 넘치게 되었습니다. 거기에 추가로 다중 모니터의 사용이 일상화되면서 넘쳐나는 창을 관리하기 쉽도록 도와줄 툴이 필요하게 되었습니다.
그 첫 시작이라 할 수 있는 것이 Matrox의 비디오 카드 드라이버에 부속된 Matrox PowerDesk입니다. 드라이버 이름이기도 합니다만, 이것에는 다중 모니터에서 창의 위치를 정의하는 Multi-Display Controls와 화면 일부를 확대해서 볼 수 있는 PixelITOUCH, 창과 아이콘 위치를 기억하고 창을 바탕화면에 끝에 자동으로 붙게 하는 Window Positions의 기능이 있습니다. 이것은 이후 nVIDIA의 ForceWare에 부속된 nVIEW, ATi의 Catalyst에 포함된 HydraVision이 있습니다.
해상도에 따른 창의 위치와 크기를 기억하는 기능은 Windows98 이전에는 효용이 있었으나 Windwos 2000, XP 이후로는 OS 자체에서 그 기능을 지원하기 때문에 큰 효용이 떨어집니다. 그에 비해 창의 크기와 위치를 편리하게 조절할 수 있는 기능이 필요하게 됩니다.
Matrox PowerDesk에서는 바탕화면의 끝에 자동으로 붙는 기능이 있습니다. ATi Catalyst HydraVision에는 이 기능이 없습니다. 그리고 nVIDIA nVIEW 2.0에는 이 기능이 더욱 확장되어 다중 모니터의 하나의 화면을 넘지 않도록 하는 기능을 비록하여 창과 창까리 딱 맞게 붙일 수 있는 기능이 있습니다. 이것은 GOM Player나 Adobe Photoshop 등에서 수 많은 창을 서로 옮길 때 서로 붙도록 하는 기능이과 유사한 것으로 창의 이동과 창의 크기를 조절할 때 다른 창과 같이 붙도록 되는 기능입니다. 이 기능은 서로의 창을 가리지 않도록 크기와 위치를 조정할 수 있기 때문에 넓은 바탕 화면을 쓸 때 무척 효용이 높습니다. 그렇기 때문에 nVIDIA의 비디오 카드를 쓰면서 nVIEW 2.0의 덕을 많이 보고 있습니다. 이 기능과 유사한 기능을 해당 어플리케이션에서 구현한 것으로 Adobe Photosop, Winamp, GOM Player 등이 있습니다.
그러나! nVIDA의 비디오 카드가 아니라면? 다행히, 이 기능을 구현하는 소프트웨어가 있습니다. 그것도 Freeware입니다. 그것이 바로 allSnap입니다.
홈페이지: http://ivanheckman.com/allsnap/
최신버전: allSnap 1.33 / allSnap 1.41 Portable
GNU License의 Freeware이며 현재 1.3 버전이 최신 버전이며, 1.31 Beta가 있습니다. 이 중 저는 1.31 Beta를 사용중이며 이 어플리케이션의 소개도 1.31 Beta를 기준으로 하도록 하겠습니다.



About allSnap: 어플리케이션 정보
Help: 도움말 창
Settings: 옵션 창
Enable Window Snapping: 프로그램 활성화/비활성화
Open Debug Console: 디버그 콘솔 창
Exit: 프로그램 종료

TrayIcon에서 Settings를 선택하여 allSnap의 설정 가능한 내용을 살펴보겠습니다.

allSnap의 기본 설정이 가능합니다.
General
Snap to windows at ## pixels: 창을 이동할 때 지정된 수치 이내에 다른 창이 위치할 경우 창이 붙습니다.
Snap to desktop at ## pixels: 창을 이동할 때 지정된 수치 이내 간격으로 바탕화면에 Grid를 설정하고 창은 그 Grid를 따라서 이동합니다.
Toggle Key: 창을 붙이는 기능을 작동하거나 작동하지 않도록 하는 키를 정의합니다. 이 기능은 Advanced 메뉴의 Invert toggle key 메뉴와 연동됩니다.
Snap To
창을 이동할 때 어떤 경우에 창이 붙을 것인지를 정의합니다.
Desktop: 바탕화면의 Grid에 따라 창이 붙습니다. 이것은 PowerPoint, Visio 등에서 Grid를 따라 Object가 움직이는 기능과 유사합니다.
Other windows: 다른 창에 창이 붙습니다.
Old position: 창의 원래 위치에 붙습니다.
Vertical center: 바탕화면의 수직 중앙에 붙습니다.
Horizontal center: 바탕화면의 수평 중앙에 붙습니다.

프로그램이 동작할 때의 효과음을 설정합니다.
Snap Sounds
붙을 때 효과음을 정의합니다.
Snap sound files: 창이 붙을 때의 효과음을 선택합니다.
Unsnap sound files: 창이 떨어질 때의 효과음을 선택합니다.
Play Sounds: 효과음을 키고 끌 수 있습니다.

고급 옵션을 설정합니다.
Advanced Settings
고급 옵션의 설정 메뉴입니다.
Desktop icons 'Align to Grid'
- 바탕화면의 아이콘을 바탕화면의 칸에 맞춥니다. 단, 이 기능은 WindowsXP에서는 기본으로 제공되기 때문에 WindowsXP에서는 동작하지 않습니다. WindowsXP에서 바탕화면의 오른쪽 클릭 때 나타나는 아이콘 정렬 순서>줄 맞춤과 같은 기능입니다.
Snap MDI windows
- MDI 창에 붙도록 합니다. MDI창은 어플리케이션의 메인 윈도우에 속해있는 별도 창입니다. 예를 들면 어플리케이션의 설정 창 등입니다.
Don't snap to inside edges
- 창의 내부 끝에는 붙지 않도록 합니다. 이 기능을 키면 창의 내부에도 창이 붙습니다.
Invert toggle key
- Perferences>Toggle Key에서 정의한 키의 동작을 지정합니다. 꺼져있을 때는 설정한 키를 클릭한 상태에서는 allSnap의 기능은 정지됩니다. 켜져있을 때는 반대로 설정한 키를 클릭한 상태에서만 allSnap의 기능이 작동합니다.
Crop top of windows by # pixels
- WindowsXP의 일부 스타일은 창의 상단에 픽셀의 여백이 있습니다. 그 여백을 제외할 수 있는 설정입니다. 지정한 수치만큼 창의 상단은 무시됩니다.
Constrain windows to the screen
- 창을 이동할 때 바탕화면 밖으로 창이 움직이지 않도록 합니다. 다행이 다중 모니터에서도 아주 잘 작동합니다.
Ignore window clipping regions
- 일부 창은 보이지 않는 창의 영역을 갖고 있습니다. 대표적인 것이 MSN Messenger에서 메신저 창을 축소했을 때 실제로는 창의 영역은 그보다 큽니다. 그 영역을 무시할 수 있습니다.
allSnap의 장점은 nVIEW 2.0과 비교했을 때 훨씬 안정적이란 것입니다. nVIEW 2.0은 경우에 따라 프로그램의 동작이 비정상적이거나 작동하지 않는 경우가 있습니다. 그러나 allSnap은 훨씬 안정적입니다. 또한, 설정할 수 있는 항목이 다양합니다.
단점을 꼽자면 단 한가지입니다. nVIEW 2.0에서 창이 하나의 화면 밖으로 나가지 않도록 설정하면, 창의 크기를 화면 크기보다 크게 조절할 경우 자동으로 창을 축소해주는 기능이 있습니다만, 유일하게 이 기능만 없습니다. 개발자에게 건의 메뉴를 보낸 만큼 반영을 기대하고 있습니다. 홈페이지에서도 버그 리포트와 개선 요청에 대해 버그 처리 여부와 개선 여부에 대해 FAQ가 있을 만큼 그에 대해서도 적극적인 것으로 보입니다.
넓은 바탕화면, 넘치는 창. 그 속에서 Windows가 기본 제공하는 가로/세로 바둑판식 창 배열 기능만으로 부족하다고 느낄 경우, 창과 창이 붙도록 하여 넓은 창을 더욱 효율적으로 쓸 수 있는 보조 어플리케이션입니다. 다중 모니터와 고해상도를 선호하는 분에게는 무척 좋을 것입니다. 단, 언제나 전체 화면을 즐기실 경우 아무런 쓸모가 없을 것입니다.