web-dev-qa-db-ja.com

Sublime Textウィンドウの両方の列に同じファイルを表示する

Sublime Textウィンドウに2つの列を設定した場合、両方の列に同じファイルを表示できますか?

191
user2777473

はい、できます。ファイルが開いたら、File -> New View Into Fileをクリックしてください。新しいタブをもう一方のペインにドラッグして、ファイルを2回表示することができます。

新しいペインを作成する方法はいくつかあります。他の答えで説明されているように、LinuxとWindowsでは、あなたは使用することができます AltShift2 (Option ⌥Command ⌘2 これは、メニューのView → Layout → Columns: 2に対応します。優れた Origami プラグインがインストールされている場合は、View → Origami → Pane → Create → Right、または CtrlK、 Ctrl Windows/Linuxのコード(置き換え) Ctrl と  OS Xでは).

289
MattDMo

その Shift + Alt + 2 2画面に分割します。メニュー項目[表示] - > [レイアウト]の下に、その他のオプションがあります。
画面が分割されたら、ショートカットを使ってファイルを開くことができます。
1。 Ctrl + P (昇華内の既存のディレクトリから)または
2。 Ctrl + O(ディレクトリを参照)

91
Ramraj

崇高なエディターの中で、Viewという名前のタブを見つけてください。

View --> Layout --> "select your need"
62
sg28

これは、他のエディタで見られるように、現在のファイルに「スプリッタを開く/閉じる」ための簡単なプラグインです。

import sublime_plugin

class SplitPaneCommand(sublime_plugin.WindowCommand):
    def run(self):
        w = self.window
        if w.num_groups() == 1:
            w.run_command('set_layout', {
                'cols': [0.0, 1.0],
                'rows': [0.0, 0.33, 1.0],
                'cells': [[0, 0, 1, 1], [0, 1, 1, 2]]
            })
            w.focus_group(0)
            w.run_command('clone_file')
            w.run_command('move_to_group', {'group': 1})
            w.focus_group(1)
        else:
            w.focus_group(1)
            w.run_command('close')
            w.run_command('set_layout', {
                'cols': [0.0, 1.0],
                'rows': [0.0, 1.0],
                'cells': [[0, 0, 1, 1]]
            })

Packages/User/split_pane.pyという名前で保存して、いくつかのホットキーにバインドします。

{"keys": ["f6"], "command": "split_pane"},

以下のように縦分割に変更したい場合

        "cols": [0.0, 0.46, 1.0],
        "rows": [0.0, 1.0],
        "cells": [[0, 0, 1, 1], [1, 0, 2, 1]]
10
Tobia

私は定期的に2つの異なるポジションで同じファイルに取り組んでいます。 Sublime Text 3では、 折り紙チェーン を使ってこれを解決しました。設定.

私のワークフローはctrl-k 2で、ファイルの表示を2つの(水平)ペインに分割し、下のペインをアクティブにします。ペインを切り替えるにはctrl-k oを使用してください。完了したら、下のペインがアクティブになっていることを確認し、ctrl-f4を押して複製ビューとペインを閉じます。

崇高なグローバル設定(折り紙設定ではありません!)で追加

"origami_auto_close_empty_panes": true,

以下のショートカットを追加してください

  { "keys": ["ctrl+k", "2"], 
    "command": "chain", 
    "args": {
      "commands": [
        ["create_pane", {"direction": "down"}],
        ["clone_file_to_pane", {"direction": "down"}],
      ],
    }
  },

  { "keys": ["ctrl+k", "o"], "command": "focus_neighboring_group" },
6
mrtnlrsn

Origami を使用することをお勧めします。画面分割用の素晴らしいプラグインです。キーボードショートカットの詳細についてはそれをインストールし、Sublimeテキストを再起動した後に開いてくださいPreferences->パッケージ設定-> Origami ->キーバインド - デフォルト

あなたの質問に具体的にするために、私はあなたに上記のファイルのファイルのクローン作成に関連するショートカットを見ることを勧めます。

2
Gautam Singh

分割モードで同じファイルを編集することは可能です。それは、以下のYouTubeビデオで最もよく説明されています。

https://www.youtube.com/watch?v=q2cMEeE1aOk

2
Rahul Varadkar

[表示] - > [レイアウト] - > 1つのオプションを選択するか、ショートカットを使用する

Layout        Shortcut

Single        Alt + Shift + 1
Columns: 2    Alt + Shift + 2
Columns: 3    Alt + Shift + 3
Columns: 4    Alt + Shift + 4
Rows: 2       Alt + Shift + 8
Rows: 3       Alt + Shift + 9
Grid: 4       Alt + Shift + 5

enter image description here

2
Mile Mijatovic

ちょっと遅いですが、コマンド引数によって駆動されるレイアウトを "水平"または "垂直"に設定するために @ Tobia's answer を拡張しようとしました。

{"keys": ["f6"], "command": "split_pane", "args": {"split_type": "vertical"} } 

プラグインコード:

import sublime_plugin


class SplitPaneCommand(sublime_plugin.WindowCommand):
    def run(self, split_type):
        w = self.window
        if w.num_groups() == 1:
            if (split_type == "horizontal"):
                w.run_command('set_layout', {
                    'cols': [0.0, 1.0],
                    'rows': [0.0, 0.33, 1.0],
                    'cells': [[0, 0, 1, 1], [0, 1, 1, 2]]
                })
            Elif (split_type == "vertical"):
                w.run_command('set_layout', {
                    "cols": [0.0, 0.46, 1.0],
                    "rows": [0.0, 1.0],
                    "cells": [[0, 0, 1, 1], [1, 0, 2, 1]]
                })

            w.focus_group(0)
            w.run_command('clone_file')
            w.run_command('move_to_group', {'group': 1})
            w.focus_group(1)
        else:
            w.focus_group(1)
            w.run_command('close')
            w.run_command('set_layout', {
                'cols': [0.0, 1.0],
                'rows': [0.0, 1.0],
                'cells': [[0, 0, 1, 1]]
            })
1
NEO