崇高なtexteditorでアウトラインビューを取得するにはどうすればよいですか?


117

Windowsの崇高なテキストエディターでアウトラインビューを取得するにはどうすればよいですか?

ミニマップは役に立ちますが、従来のアウトライン(コード内のすべての関数のクイックナビゲーションと方向付けのために表示される順序でのクリック可能なリスト)がありません。

多分プラグイン、アドオンなどがありますか?また、機能させるために必要な手順を簡単に説明できると便利です。

崇高なテキストフォーラムにこの質問の複製があります。


SublimeText 3の機能リクエストを追加しました。自由に投票してください。
名前は、カール2015年

回答:


266

ヒットCTRL+ R、またはCMD+ Rの機能一覧は、Mac用。これはSublime Text 1.3以降で機能します。


いいですね。しかし、ctrl-rを押しても何も起こりません。PHPファイルを開いています。メニューにコマンドを配置できますか?これはプラグインなしで動作しますか?karlthorwald
user89021

6
Ctrl + rは現在のベータ版(sublimetext.com/beta)には存在しますが、1.2 には存在しません
jskinner

1
これは素晴らしく、Eclipseからのアウトラインビューが本当にありませんでした。これは正直に言ってはるかに優れていますが、コールバック/成功関数ではなく、メイン関数のみをプルアップする方法があったらいいのにと思います。
マイケルBW

1
残念ながらリストはソートされていません。関数のソートされたリストを備えたEclipseのアウトラインビューがありません。
蠍座2012

1
EclipseエディターやOxygenエディターで利用できるものなど、実際のアウトラインビューでの追加の進捗状況 ctrl + rに欠けているのは、変数であるか関数であるかが概説されていることを示すものがないことです。
kstubs 2014年

17

フォールドオールアクションを使用します。それはすべてを宣言に最小化し、すべてのメソッド/関数を確認してから、興味のあるものを展開します。


10
ST 3メニューから:Edit-Code Folding-Fold All。ショートカットCtrl + k、1。元に戻すにはCtrl-k、j
wolfstevent

16

アウトラインというプラグインがパッケージコントロールで利用可能です。試してみてください! 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[^{]+{

検索が完了したら、結果をコピーして新しいドキュメントに貼り付けることができます。関数の数によっては、整理に時間がかからないはずです。

特にコメントにword関数(または同等の機能)が含まれている場合は特に、答えは完全とは言えませんが、役立つ答えだと思います。

非常に迅速な編集で、これは私が現在取り組んでいるものを得た結果です。

    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.