web-dev-qa-db-ja.com

崇高なテキストエディターでアウトラインビューを取得する方法は?

sublime text editor Windowsでアウトラインビューを取得するにはどうすればよいですか?

ミニマップは便利ですが、従来のアウトライン(クイックナビゲーションと方向付けのために表示されるコード内のすべての関数のクリック可能なリスト)が欠けています

プラグイン、アドオンなどがありますか?また、どのステップがそれを機能させるために必要であるかを簡単に指定できるといいでしょう。

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

110
user89021

ヒット CTRL+R、 または CMD+R Macの場合、機能リスト用。これはSublime Text 1.3以上で機能します。

254
Cory Petosky

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

15
Enmanuel Rivera

Outlineというプラグインがパッケージコントロールで利用可能です。試してください! https://packagecontrol.io/packages/Outline

14
Elian

SublimeText 3 api を簡単に見て、view.find_by_selector(selector)はリージョンのリストを返すことができるようです。

したがって、ファイルのアウトライン/構造を表示するプラグインが可能だと思います。

次のようなものを表示するプラグイン:

code outline

注:関数名表示プラグイン は、クラス/メソッド名を抽出するためのインスピレーションとして使用するか、または ClassHierarchy アウトライン構造を抽出する

7
Name is carl

アウトラインを印刷または保存できるようにしたい場合、ctr/command + rはあまり役に立ちません。次の単純なfind allを行うことができます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){};
0
Trevor