Sublime TextEditor에서 개요보기를 얻는 방법은 무엇입니까?


117

Windows 용 숭고한 텍스트 편집기 에서 개요보기를 얻으려면 어떻게합니까 ?

미니 맵은 도움이되지만 기존의 개요 (빠른 탐색 및 방향을 위해 표시되는 순서대로 내 코드의 모든 함수를 간단하게 나열한 목록)가 누락되었습니다.

플러그인, 애드온 또는 이와 유사한 것이 있습니까? 작동하는 데 필요한 단계의 이름을 간단히 지정할 수 있다면 좋을 것입니다.

숭고한 텍스트 포럼 에이 질문중복이 있습니다.


SublimeText 3에 대한 기능 요청 을 추가 했습니다. 자유롭게 투표하십시오.
이름은 칼이다

답변:


266

기능 목록을 보려면 CTRL+ R, Mac의 경우 CMD+ R를 누르십시오 . 이것은 Sublime Text 1.3 이상에서 작동합니다.


좋아. 하지만 Ctrl-r을 눌러도 아무 일도 일어나지 않습니다. PHP 파일이 열려 있습니다. 메뉴에서 명령을 찾을 수 있습니까? 플러그인없이 작동합니까? karlthorwald
user89021

6
Ctrl + r은 현재 베타 버전 ( sublimetext.com/beta )에 있지만 1.2에는 없습니다
jskinner

1
이것은 굉장하고 Eclipse에서 아웃 라인 뷰가 정말로 누락되었습니다. 이것은 콜백 / 성공 함수가 아닌 주 함수 만 가져 오는 방법이 있었으면하지만 솔직히 훨씬 낫습니다.
Michael BW

1
불행히도 목록은 정렬되지 않았습니다. 정렬 된 기능 목록이있는 Eclipse의 개요보기가 그립습니다.
scorpiodawg

1
Eclipse 및 Oxygen 편집기에서 사용할 수있는 것과 같은 실제 개요보기 에 대한 추가 진행 이 있습니까? ctrl + r이 부족한 것은 변수인지 함수인지에 대한 설명이 없다는 것입니다.
kstubs

17

나는 모두 접기 동작을 사용합니다. 선언에 대한 모든 것을 최소화하고 모든 메소드 / 함수를 볼 수 있으며 관심있는 것을 확장 할 수 있습니다.


10
ST 3 메뉴에서 : Edit-Code Folding-Fold All. 단축키 Ctrl + k, 1. Ctrl-k, j 실행 취소
wolfstevent

16

Outline 이라는 플러그인 을 패키지 제어에서 사용할 수 있습니다. 사용해보세요! https://packagecontrol.io/packages/Outline

참고 : 다중 행 / 열 모드에서는 작동하지 않습니다. 여러 행 / 열 작업의 경우 다음 포크를 사용하십시오. https://github.com/vlad-wonderkidstudio/SublimeOutline


2
참고 : 개요보기를 종료하려면 개요 탭에서 작은 닫기 버튼을 클릭 한 다음 Shift+ Alt+ 를 누르 1거나보기-> 레이아웃-> 단일로 이동합니다. 백업을 열려면 Ctrl+ Shift+ P를 사용하고 검색Browse Mode: Outline
Gabriel Staples

8

나는 짧게 모양 SublimeText 3 APIview.find_by_selector(selector)지역의 목록을 반환 할 수있을 것으로 보인다.

따라서 파일의 개요 / 구조를 표시하는 플러그인이 가능하다고 생각합니다.

다음과 같은 것을 표시하는 플러그인 :

코드 개요

참고 : 함수 이름 표시 플러그인 클래스 / 메소드 이름을 추출하기 위해 영감을 사용할 수 또는 ClassHierarchy이 윤곽 구조를 추출


0

아웃 라인을 출력하거나 저장하려면 ctr / command + r은 그다지 유용하지 않습니다. 다음 grep 또는 일부 변형 에서 작업중인 언어 및 상황에 맞게 간단한 찾기를 모두 수행 할 수 있습니다 . ^[^\n]*function[^{]+{

모두 찾기를 수행하면 결과를 복사하여 새 문서에 붙여 넣을 수 있으며 기능 수에 따라 정리하는 데 오래 걸리지 않습니다.

대답은 완벽하지 않습니다. 특히 주석에 기능이라는 단어가있는 경우 (또는 이에 상응하는) 경우에 유용하지만 유용한 대답이라고 생각합니다.

매우 빠른 편집을 통해 지금 작업중인 결과를 얻었습니다.

    PathMaker.prototype.start = PathMaker.prototype.initiate = function(point){};
    PathMaker.prototype.path = function(thePath){};
    PathMaker.prototype.add = function(point){};
    PathMaker.prototype.addPath = function(path){};
    PathMaker.prototype.go = function(distance, angle){};
    PathMaker.prototype.goE = function(distance, angle){};
    PathMaker.prototype.turn = function(angle, distance){};
    PathMaker.prototype.continue = function(distance, a){};
    PathMaker.prototype.curve = function(angle, radiusX, radiusY){};
    PathMaker.prototype.up = PathMaker.prototype.north = function(distance){};
    PathMaker.prototype.down = PathMaker.prototype.south = function(distance){};
    PathMaker.prototype.east = function(distance){};
    PathMaker.prototype.west = function(distance){};
    PathMaker.prototype.getAngle = function(point){};
    PathMaker.prototype.toBezierPoints = function(PathMakerPoints, toSource){};
    PathMaker.prototype.extremities = function(points){};
    PathMaker.prototype.bounds = function(path){};
    PathMaker.prototype.tangent = function(t, points){};
    PathMaker.prototype.roundErrors = function(n, acurracy){};
    PathMaker.prototype.bezierTangent = function(path, t){};
    PathMaker.prototype.splitBezier = function(points, t){};
    PathMaker.prototype.arc = function(start, end){};
    PathMaker.prototype.getKappa = function(angle, start){};
    PathMaker.prototype.circle = function(radius, start, end, x, y, reverse){};
    PathMaker.prototype.ellipse = function(radiusX, radiusY, start, end, x, y , reverse/*, anchorPoint, reverse*/ ){};
    PathMaker.prototype.rotateArc = function(path /*array*/ , angle){};
    PathMaker.prototype.rotatePoint = function(point, origin, r){};
    PathMaker.prototype.roundErrors = function(n, acurracy){};
    PathMaker.prototype.rotate = function(path /*object or array*/ , R){};
    PathMaker.prototype.moveTo = function(path /*object or array*/ , x, y){};
    PathMaker.prototype.scale = function(path, x, y /* number X scale i.e. 1.2 for 120% */ ){};
    PathMaker.prototype.reverse = function(path){};
    PathMaker.prototype.pathItemPath = function(pathItem, toSource){};
    PathMaker.prototype.merge = function(path){};
    PathMaker.prototype.draw = function(item, properties){};
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.