본문으로 바로가기

서브라임 텍스트의 접기(folding)기능을 유용하게 쓰고 있었습니다만, 종료하고 다음에 서브라임 텍스트를 실행하면 접어둔 곳이 저장되지 않는 불편함이 있었습니다. 이를 보안해주는 플러그인을 찾아서 소개합니다.

BufferScroll 소개

BufferScroll은 선택, 북마크, 접은면(folding), 선택 구문과 커서의 위치, 스크롤을 기억해뒀다가 파일을 열었을때, 이를 복원해주는 플러그인이다. 또한 응용 프로그램에서 파일의 위치에 따라 다른 데이터를 기억한다(예를 들어, 첫번째 창의 파일A와 두번째 창의 파일A의 정보를 각각 기억한다).

특징

  • 환경설정을 통해, 스크롤, 북마크, 접힌면을 실제 창과 복제된 창사이에 동기화를 활성화 할 수 있다. 동기화 설정은 기본적으로 비활성화되어 있다. menu -> Preferences -> Package Settings -> BufferScroll -> Settings Default로 이동해서 직접 활성화해야 한다.
  • 요청에 의해 작업라인이 자동으로 화면의 수직 중심에 위치하도록 만들었다.
  • 접힌면을 열면, 재접기(refold)가 command palette에서 선택할 수 있도록 되어있다.
  • 요청에 의해 접히거나 접히지 않은 지역을 선택하는 옵션이 생겼다.

BufferScroll 설치

  1. 서브라임 텍스트를 실행한 후, 단축키 Ctrl+Shift+P 로 Command Palette를 불러온다.
  2. install을 입력하면 자동완성되는 Package Control: Install Package를 선택하고 엔터를 누른다.
  3. buffer를 입력하여 BufferScroll이 검색되면 선택한 후, 엔터를 눌러 설치한다.

BufferScroll 버그

  • 프로젝트와 창를 열고 닫고 변경하는 것에 대한 이벤트 리스너를 이 애플리케이션이 가지고 있지 않기에 포커스된 파일에 대한 데이터를 저장할 수 없다. By not providing these listeners, this package has suboptimal methods for saving it's data. Such listening change of views, focus lost, file closing, saving, etc.
  • For some reason sublime API is not restoring scroll of xml/html documents, including: xml, tpl, html, xhtml See: http://www.sublimetext.com/forum/viewtopic.php?f=3&t=6237&start=0 Also this will and is causing problems for these that use the build screeen with F4. Also, is causing another problem, that you can't request to sublime to open a file at a given row, because this plugin will overwrite the scrolled line. http://www.sublimetext.com/forum/viewtopic.php?f=5&t=3503&start=20#p22324
  • There is no event listener for when a view is scrolled, then this package, has another suboptimal way of listening for changes of scroll, such tracking the scroll every x time.