https://youtu.be/q4epArkvVnE?si=IQbWAxh8ce76b1dq&t=237
SCRIPT INSPECTOR 3
버전 3.1.11, 2024년 12월
Copyright © 2012-2024, Flipbook Games
Script Inspector 3 - 세계에서 가장 빠른 Unity용 IDE
참고: 버전 히스토리는 이제 SI Changes.txt 파일로 이동했습니다.
1. 설명
SCRIPT INSPECTOR 3는 여러분이 그동안 빠르게 스크립트, 셰이더, 텍스트 에셋 등을 편집하기 위해 사용하던 전설적인 에디터 익스텐션의 최신 대규모 업그레이드 버전입니다. 과거 12년 동안(네, 열두 해입니다 – 오타가 아닙니다) 개발이 이루어지며, 이제는 Unity 에디터에 내장된 강력한 C# IDE로 거듭났습니다!
초창기부터 성능에 중점을 두고, 최고 수준의 품질을 유지하면서 다양한 기능을 꾸준히 추가해 왔으며, 그 결과 Unity에서 코드를 작성하는 가장 빠르고 편안한 솔루션이 되었습니다.
Script Inspector 3는 파일을 즉시 열고, 즉시 편집을 시작할 수 있게 해 줍니다! 외부 에디터를 실행하고, 프로젝트를 로드한 뒤 스크립트를 여는 동안 기다릴 필요가 없습니다. 그동안 처음에 무슨 작업을 하려 했는지도 잊어버리기 쉽죠. :p Script Inspector 3는 도구와 씨름하지 않고 오직 프로그래밍에 집중할 수 있게 도와줍니다. :)
Script Inspector 3의 가장 큰 이점은 Unity와 완벽하게 통합되어 있다는 점입니다. 따라서 프로그래머의 워크플로를 비약적으로 향상시킬 수 있는 최고의 도구입니다! 손쉽게 접근하고 빠른 반복 작업이 가능하다는 장점 덕분에, Script Inspector 3는 많은 Unity 프로그래머(제 자신을 포함하여)들의 선호 IDE가 되었습니다. 그리고 이 놀라운 도구의 개발 또한 Script Inspector 3를 사용하여 진행되었다는 사실! Script Inspector 3는 Unity 확장 중 최초로 자기 자신 안에서 개발된 에셋이 되었습니다. ;)
2. 동기
이전 버전의 Script Inspector들이 놀라울 정도로 큰 인기를 끌었고, 자동 코드 완성 기능을 추가해달라는 요구가 계속되면서, Script Inspector는 강력한 IDE로 변신하게 되었습니다. 이제는 단순히 오탈자를 수정하거나 괄호를 닫는 용도에 그치지 않고, 실제 프로젝트에서 전문 게임 개발에 충분히 활용할 수 있을 만큼 강력하고 탄탄한 IDE입니다.
3. Script Inspector 3 사용 방법
Script Inspector 3를 사용하기 시작하면 가장 먼저 보이는 것은 Unity의 기본 콘솔(Console) 탭 옆에 자동으로 열리고 도킹되는 SI Console 탭일 것입니다. 수동으로 열려면 Window -> Script Inspector Console을 선택하면 되며, 이때도 기존 콘솔 탭 옆에 SI Console 탭이 도킹됩니다. SI Console은 기본 콘솔과 완전히 동일한 방식으로 로그를 표시하지만, 더블클릭 또는 엔터(Enter/Return) 키를 누르면 해당 로그와 관련된 스크립트나 셰이더를 Si3 탭에서 열어줍니다. 외부 IDE에서 로그를 열고 싶다면 기존의 Console 탭을 이용하면 됩니다.
Script Inspector 3가 지원하는 에셋(스크립트, 셰이더, 텍스트 파일 등)을 Unity Editor에서 선택하면, 인스펙터(Inspector) 탭에서 해당 파일 전체 내용을 코드나 텍스트 파일 편집 방식으로 표시해 줍니다. 구문 강조(syntax highlighting), 단어 래핑(옵션), 올바른 탭 확장 및 정렬, (옵션) 라인 번호 표시 등을 지원하며, Script Inspector 3는 전용 창에서 파일을 편집하는 것도 가능합니다.
스크립트, 셰이더, 텍스트 에셋을 전용 편집 탭에서 열기 위해서는 여러 방법이 있습니다. 하나는 SI Console에서 로그 항목을 더블클릭해 따라가는 방법입니다. SI Console에서는 호출 스택(call stack)도 확인할 수 있고, 컨텍스트 팝업 메뉴를 통해 스택의 특정 위치로 바로 이동할 수도 있습니다. 또 다른 방법으로, New Tab 툴바 버튼(왼쪽 상단) 혹은 키보드 단축키 Ctrl+T(Mac에서는 Cmd+T)를 사용하여 새 탭을 열 수 있습니다. 열리는 Si3 창들은 다른 Unity 윈도우와 마찬가지로 자유롭게 도킹, 언도킹, 최대화, 최소화, 혹은 닫을 수 있습니다.
프로젝트 창(Project view)에서 자산(에셋)을 드래그하여 이미 열린 Si3 창에 끌어다 놓으면, 해당 탭 그룹에 스크립트, 셰이더, 텍스트 에셋 등을 추가로 열 수 있습니다. 머티리얼(Material)을 드래그하면 해당 머티리얼이 사용하는 셰이더를 바로 열 수 있고, 씬(장면)에 배치된 게임 오브젝트나 프리팹을 드래그하면 그 오브젝트가 사용하는 MonoBehaviour 스크립트를 열 수도 있습니다. 또한, 인스펙터(Inspector)에서 컴포넌트에 있는 렌치(wrench) 메뉴를 사용해 컴포넌트의 스크립트로 바로 이동할 수도 있습니다. 셰이더 역시 머티리얼의 렌치 메뉴에서 바로 열 수 있습니다.
Script Inspector 3는 (옵션에 따라) 프로젝트 탭에서 더블클릭했을 때 해당 에셋을 Si3에서 열도록 설정할 수 있습니다. 이 옵션은 Si3 뷰의 렌치 메뉴에서 변경 가능합니다. 대신, Enter(맥의 경우 Command+아래 화살표)를 누르면 여전히 외부 IDE에서 열 수 있으므로, 필요한 경우 언제든 외부 에디터와 병행해서 사용할 수 있습니다.
에셋은 여러 Si3 뷰에 동시에 열 수 있으며, 각각 다른 위치(커서 위치나 선택 영역)에서 파일 내용을 확인할 수 있습니다. 편집 내용은 즉시 다른 탭에 동기화되며, Undo/Redo 버퍼 역시 공유되어, 한 탭에서 수정 후 다른 탭에서 되돌리기(Undo)를 할 수도 있습니다.
Script Inspector 3는 각 에셋마다 독립적으로 무제한의 Undo/Redo 버퍼를 관리합니다. 또한 Unity 기본 내장 Undo 버퍼와도 분리되어 있기 때문에, 스크립트 변경과 Unity 내 다른 변경 사항을 서로 독립적으로 되돌리거나 다시 적용할 수 있습니다. 각 Si3 뷰에는 Undo 및 Redo 툴바 버튼이 있으며, 다음 단축키를 통해 사용할 수 있습니다:
- Undo: Ctrl+Z (Mac: Control+Z)
- Redo: Shift+Ctrl+Z (Mac: Shift+Control+Z)
Script Inspector 3는 다양한 마우스, 키보드 입력을 처리하여 현대적인 IDE가 제공하는 대부분의 편집 경험을 제공합니다. 커서 이동, 단어 선택, 전체 라인 선택, 잘라내기/복사/붙여넣기, 드래그 선택, 선택 영역 드래그 이동 혹은 복사, 검색 기능, 빠른 검색 등등을 지원합니다. 자세한 기능 목록은 아래 단축키 섹션을 참고하세요.
4. 저장 및 재로딩
Script Inspector 3는 에디터에서 이뤄지는 모든 변경 사항을 추적합니다. Si3 탭 제목에 표시되는 별표(*)는 아직 저장하지 않은 변경 사항이 있음을 의미합니다. 변경 사항은 툴바의 Save 버튼을 누르거나, 단축키 Ctrl+S(Mac: Control+S)로 저장할 수 있습니다. 에디터에서 게임 모드(Play Mode)로 진입할 때, 수정된 모든 에셋은 자동으로 저장됩니다.
수정한 파일에서 벗어나거나(다른 에셋을 선택) Si3 탭을 닫으려고 하면, 변경 사항을 저장할지, 취소(변경 사항 폐기)할지, 혹은 메모리에 유지한 채 나중에 계속 편집할지를 묻는 경고창이 표시됩니다. Unity 에디터를 종료하거나 다른 Unity 프로젝트를 열 때도 유사한 경고창이 표시되지만, 이 경우에는 변경 내용을 메모리에 유지하는 옵션 없이 저장 또는 폐기만 가능합니다.
Si3에서 수정한 뒤 아직 저장하지 않은 스크립트를 외부에서 리임포트(수동이든 자동이든)하게 되면, Si3는 경고를 표시하고 어느 버전을 유지할지 선택하도록 합니다.
5. 단축키 및 마우스 기능 목록
(Mac의 경우, 다음 중 Ctrl을 Cmd로 대체해 사용합니다. 특별히 표기된 경우는 예외.)
a) 커서 이동 (아무 선택 영역도 없애고 이동)
- 화살표 키: 캐럿(커서) 이동
- 마우스 클릭: 클릭 위치로 커서 이동
- Windows: Ctrl+←, Ctrl+→ / macOS: Alt+←, Alt+→
- 이전/다음 단어(또는 macOS에서는 ‘서브 단어’)로 이동
- Ctrl+↑, Ctrl+↓: 코드 뷰를 한 줄씩 스크롤
- PageUp, PageDown: 커서를 한 페이지씩 이동
- End: 현재 줄 끝으로 이동
- Home: 현재 줄의 처음(비공백 문자 전) 또는 줄 맨 앞 위치로 이동
- Ctrl+Home: 스크립트의 맨 처음으로 이동
- Ctrl+End: 스크립트의 맨 끝으로 이동
b) 커서 이동 & 히스토리
- Ctrl+G (macOS: Cmd+L): 특정 라인으로 이동(Go To Line)
- Alt+← (macOS: Alt+Cmd+←): 뒤로 가기(Go Back)
- Alt+→ (macOS: Alt+Cmd+→): 앞으로 가기(Go Forward)
- Alt+M (macOS: Ctrl+M): 최근 코드 탐색 위치(내비게이션) 표시 메뉴 열기 (C# 파일 전용)
c) 선택
- Shift + (커서 이동 단축키) 또는 마우스 클릭: 텍스트 선택(기존 선택 영역 조정 포함)
- 마우스 더블클릭 또는 Ctrl+마우스 클릭: 단어 전체 선택
- 마우스 클릭 & 드래그: 드래그 영역 선택
- 마우스 더블클릭 & 드래그 또는 Ctrl+마우스 클릭 & 드래그: 단어 단위 드래그 선택
- 라인 번호 클릭: 해당 라인 전체 선택
- 마우스 트리플클릭: 현재 라인 전체 선택
- 라인 번호 영역 클릭 & 드래그: 여러 라인 드래그 선택
- 마우스 트리플클릭 & 드래그: 여러 라인 단위 드래그 선택
- Ctrl+A: 전체 파일 선택(메인 메뉴 Edit -> Select All 또는 컨텍스트 메뉴 Select All과 동일)
- Esc: 선택 영역 해제
d) 편집
- 텍스트 입력: 입력한 문자 삽입(선택 영역이 있다면 그 영역을 대체)
- Backspace: 선택 영역이 있으면 지우고, 없으면 커서 앞의 문자 삭제
- Delete: 선택 영역이 있으면 지우고, 없으면 커서 뒤의 문자 삭제
- Ctrl+Backspace: 선택 영역이 있으면 지우고, 없으면 커서 앞 단어나 일부를 삭제
- Ctrl+Delete: 선택 영역이 있으면 지우고, 없으면 커서 뒤 단어나 일부를 삭제
e) 잘라내기, 복사, 붙여넣기, 복제
- Ctrl+X: 선택 영역 잘라내기 (Edit -> Cut/컨텍스트 메뉴 Cut)
- Ctrl+C: 선택 영역 복사 (Edit -> Copy/컨텍스트 메뉴 Copy)
- Ctrl+V: 붙여넣기(Edit -> Paste/컨텍스트 메뉴 Paste), 선택 영역이 있으면 대체
- 선택 영역을 마우스로 드래그: 선택 영역 이동
- Ctrl+마우스 드래그: 선택 영역 복제(드래그)
- Ctrl+D (macOS: Alt+Cmd+↓도 가능): 현재 라인(또는 선택된 여러 라인) 복제
f) 추가 편집 기능
- Ctrl+Z (macOS: Control+Z): 실행 취소(Undo)
- Shift+Ctrl+Z (macOS: Shift+Control+Z): 다시 실행(Redo)
- Alt+↑/↓: 현재 라인 또는 선택된 라인을 위/아래로 이동 후 자동 재들여쓰기(Re-indent)
- Ctrl+K 또는 Ctrl+/: 현재 라인 또는 선택 라인의 주석 토글(//로 주석 처리/해제)
- (텍스트 에셋 편집 중인 경우는 제외)
- Ctrl+[: 현재 라인 또는 선택 라인의 들여쓰기 수준 감소
- Ctrl+]: 현재 라인 또는 선택 라인의 들여쓰기 수준 증가
- Tab: 선택 영역이 없으면 탭 문자를 삽입, 선택 영역이 있으면 들여쓰기 증가
- Shift+Tab: 캐럿 앞의 탭 문자를 삭제, 또는 선택 영역이 있으면 들여쓰기 감소
g) 자동 완성(C# 전용)
- Esc 또는 Ctrl+Space: 자동 완성 창 열기/다시 열기
- ↑/↓: 자동 완성 목록에서 단어 선택
- 키보드 입력: 자동 완성 목록 필터링
- Enter, Tab 또는 영문/숫자가 아닌 문자를 입력: 현재 선택된 자동 완성 항목을 확정
- Esc: 자동 완성 목록 닫기/취소
h) 검색 & 바꾸기
- F12 (macOS: F12 또는 Cmd+Y): 정의로 이동(Go To Definition)
- Shift+F12 (macOS: Shift+F12 또는 Shift+Cmd+Y): 모든 참조 찾기(Find All References)
- Shift+Ctrl+F: 파일 내 검색(Find in Files)
- Shift+Ctrl+H: 파일 내 바꾸기(Replace in Files)
- Shift+Ctrl+↑: 커서 단어나 선택 영역 단어의 이전 위치 검색
- Shift+Ctrl+↓: 커서 단어나 선택 영역 단어의 다음 위치 검색
- Ctrl+F: 툴바 상단 검색 필드에 입력 포커스 설정
- 검색 필드에서 Esc: 커서 포커스를 다시 코드 에디터로 이동
- 검색 필드에서 Enter: 다음 검색 결과로 이동
- 검색 필드에서 Shift+Enter: 이전 검색 결과로 이동
- 검색 필드의 ↑/↓ 또는 화살표 버튼: 이전/다음 검색 결과로 이동
- F3, Ctrl+G: 다음 검색 결과로 이동
- Shift+F3, Shift+Ctrl+G: 이전 검색 결과로 이동
i) Si3 탭 관련
- Alt+T, 또는 Window -> Toggle Si3 Tabs: 모든 떠 있는(floating) Si3 탭 표시/숨기기 토글
- Ctrl+F4 또는 Ctrl+W (macOS: Cmd+F4 또는 Cmd+Shift+W): 현재 활성화된 Si3 탭 닫기
- Ctrl+Tab / Shift+Ctrl+Tab (macOS: Alt+Tab / Shift+Alt+Tab): 탭 히스토리 내비게이션
- (Ctrl을 누르고 있는 동안 목록이 표시되며, 화살표 키로 이동 가능)
- Ctrl+PageUp 또는 Ctrl+Alt+← (macOS: Cmd+PageUp 또는 Ctrl+Alt+←): 왼쪽 탭 활성화
- Ctrl+PageDown 또는 Ctrl+Alt+→ (macOS: Cmd+PageDown 또는 Ctrl+Alt+→): 오른쪽 탭 활성화
- Shift+Ctrl+Alt+← / Shift+Ctrl+Alt+→: 현재 탭을 도킹 그룹 내에서 왼쪽/오른쪽으로 이동
j) 폰트 크기
- Ctrl+-, Ctrl++(또는 Ctrl+=), Ctrl+마우스 휠, 트랙패드 확대/축소 제스처: 폰트 크기 확대/축소
k) 열기 & 저장, 새 탭, 외부 IDE
- Shift+Ctrl+O (macOS: Shift+Control+O): 파일 열기
- Shift+Alt+O (macOS: Cmd+Alt+O): 임의 폴더에서 파일 열기
- Ctrl+S (macOS: Control+S): 변경 사항 저장
- Ctrl+R (macOS: Cmd+Alt+R): 수정된 모든 파일 저장
- Ctrl+T: 동일한 파일을 새 탭으로 열기
- Ctrl+Enter, 컨텍스트 메뉴 Open at Line: 외부 에디터에서 현재 줄 위치로 파일 열기
6. 지원, 버그, 요청 및 피드백
Flipbook Games(메일: info@flipbookgames.com 또는 http://flipbookgames.com/)으로 언제든지 문의해 주세요. 버그 리포트, 기능 요청, 피드백 등을 환영합니다.
Script Inspector 3를 개발하고 베타 테스트에 참여해 주신 모든 Unity 커뮤니티 구성원들께 진심으로 감사드립니다!!! 여러분이 없었다면 Si3는 존재할 수 없었을 것입니다!!! :D
Script Inspector 3를 구매해 주셔서 감사합니다! 이 도구가 여러분의 작업에 도움이 되길 바라며, 만약 그렇게 느끼신다면 리뷰나 별점 평가(5점 가능!) 등을 통해 앞으로의 발전에 힘을 보태 주시면 감사하겠습니다. :)
- 트위터에서 팔로우하기: http://twitter.com/FlipbookGames
- 페이스북 좋아요 누르기: http://facebook.com/FlipbookGames
- Unity 포럼에서 토론 참여: http://forum.unity3d.com/threads/138329
- 피드백, 버그 리포트, 제안 사항: info@flipbookgames.com
- 더 많은 정보: http://flipbookgames.com/
P.S.: Flipbook Games가 만든 또 다른 훌륭한 Unity 에셋인 Favorites Tab(s)도 확인해 보세요!