Mostra lo stesso file in entrambe le colonne di una finestra di testo sublime


Risposte:


307

Si, puoi. Quando un file è aperto, fai clic su File -> New View Into File. È quindi possibile trascinare la nuova scheda nell'altro riquadro e visualizzare il file due volte.

Esistono diversi modi per creare un nuovo riquadro. Come descritto in altre risposte, su Linux e Windows, è possibile utilizzare AltShift2( Option ⌥Command ⌘2su OS X), che corrisponde a View → Layout → Columns: 2nel menu. Se avete l'ottimo Origamiplug-in installato, è possibile utilizzare View → Origami → Pane → Create → Right, o CtrlK, Ctrlcorda su Windows / Linux (sostituire Ctrlcon su OS X).


12
Ctrl + Maiusc + 2 scorciatoia per schermo diviso e trascina il file sopra
zadubz

Puoi anche usare Windows + Ctrl + tasto freccia per disporre le finestre.
Shital Shah,

Il cmd nel prossimo post funziona - MAIUSC + ALT + 2 per dividere in 2 schermate, non questa qui sotto.
LED Fantom

@LEDFantom Quando dici che questa risposta non funziona, cosa intendi? L'OP sapeva già come creare finestre divise, motivo per cui non ho spiegato come farlo nella mia risposta. Non sono sicuro a cosa serva il downvote.
MattDMo

@MattDMo, capisco cosa intendevi ora. Come rimuovo il voto negativo?
LED Fantom,

93

È Shift+ Alt+ 2per dividere in 2 schermate. Altre opzioni sono disponibili nella voce di menu Visualizza -> Layout.
Una volta divisa la schermata, puoi aprire i file usando le scorciatoie:
1. Ctrl+ P(Da directory esistenti all'interno di un sublime) o
2. Ctrl+ O(Sfoglia directory)


2
Per espandere, CTRL + P ti permetterà di "aprire" lo stesso file più di una volta.
jayflo,

65

All'interno dell'editor sublime, trova la scheda denominata View,

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

1
View --> Layout --> "select your need" seleziona le tue esigenze = [singole, colonne, righe, griglie]. Quindi questo significa che le opzioni disponibili quando vai su Layout. Prima uscita, Testato in Sublime 2.
sg28

apprezzare la navigazione nei menu anziché solo una scorciatoia che funziona per alcuni utenti e non spiega quale funzione sublime è in uso - che il menu definisce chiaramente. :)
appassionato

Questo dovrebbe essere l'unico accettato, questo è ciò che ha funzionato per me. Quello accettato non funziona più. Probabilmente non funziona nelle versioni attuali.
Va

10

Ecco un semplice plugin per "aprire / chiudere uno splitter" nel file corrente, come si trova in altri editor:

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]]
            })

Salvalo come Packages/User/split_pane.pye associalo ad alcuni tasti di scelta rapida:

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

Se si desidera passare alla divisione verticale, cambiare come segue

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

6

Lavoro regolarmente sullo stesso file in 2 posizioni diverse. Ho risolto questo problema in Sublime Text 3 usando origami e chain con qualche configurazione aggiuntiva.

Il mio flusso di lavoro è Ctrl+ k+ 2suddivide la vista del file in due riquadri (orizzontali) con quello inferiore attivo. Usa Ctrl+ k+ oper alternare tra i riquadri. Al termine, assicurarsi che il riquadro inferiore sia attivo e premere Ctrl+ F4per chiudere la vista duplicata e il riquadro.

In sublimi settaggi globali (non settaggi origami!) Aggiungi

"origami_auto_close_empty_panes": true,

Aggiungi le seguenti scorciatoie

  { "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" },

per far funzionare il chaincomando (visto nel collegamento), avrai anche bisogno del pacchetto Chain of Command installato.
wehal3001,

@ wehal3001 Grazie, aggiornato (anche aggiornate le impostazioni globali, dove è stata incollata l'impostazione errata).
mrtnlrsn,

2

Ti consiglierei di usare Origami . È un ottimo plugin per dividere lo schermo. Per ulteriori informazioni sulle scorciatoie da tastiera, installalo e dopo aver riavviato il testo Sublime apri Preferenze ->Impostazioni pacchetto Associazioni tasti ->Origami ->- Predefinito

Per la tua specifica domanda ti suggerirei di vedere le scorciatoie relative alla clonazione di file nel file sopra menzionato.



2

Visualizza -> Layout -> Scegli un'opzione o usa il collegamento

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

inserisci qui la descrizione dell'immagine


1

Un po 'tardi, ma ho cercato di estendere la risposta di @ Tobia per impostare il layout "orizzontale" o "verticale" guidato dall'argomento comando ad es.

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

Codice plugin:

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]]
            })
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.