In Sublime Text 2, è possibile selezionare istantaneamente ogni altra riga (o dispari / pari) e posizionare più cursori su quelle righe?
Grazie.
In Sublime Text 2, è possibile selezionare istantaneamente ogni altra riga (o dispari / pari) e posizionare più cursori su quelle righe?
Grazie.
Risposte:
.*\n.*\n
(.*\n){10}
per ogni 10 righe
(.*(\n|$)){2}
(.*(\n|$)){2}
soluzione di @ zessx include l'ultima riga
Puoi farlo facilmente:
MODIFICARE :
(.*(\n|$)){2}
espressioneStavo cercando un modo per selezionare linee alternative in sublime.
Grazie a Joe Daley per un'ottima risposta. Anche se mi sono reso conto che, se usi regex, non selezionerebbe l'ultima riga nel file se non ci fosse una nuova riga alla fine del file.
Volevo migliorare quella risposta, ma al momento non ho abbastanza reputazione per commentare la risposta sopra.
È possibile utilizzare la seguente stringa di ricerca con regex attivato, quindi premere alt + invio. Seguito da una freccia sinistra. Questo metterebbe un cursore ciascuno su linee alternate (stessi passaggi spiegati da Joe Daley)
^.*\n.*$
Puoi provare con un plugin: Tools/New Plugin...
import sublime_plugin
class ExpandSelectionToOtherLinesCommand(sublime_plugin.TextCommand):
def run(self, edit):
self.view.window().run_command("expand_selection", {"to": "line"})
start_region = self.view.sel()[0]
self.view.window().run_command("select_all")
self.view.sel().subtract(start_region)
Salva questo file nel tuo Packages/User
.
Quindi, aggiungi l'associazione chiave per quel plugin:
{ "keys": ["super+alt+l"], "command": "expand_selection_to_other_lines" }
Questo comando selezionerà tutte le altre linee. Quando hai selezionato altre linee, puoi usare il Split selection into lines
comando ( Ctrl+ Shift+ L, Cmd+ Shift+ Lsu Mac).
Se vuoi avere tutto in un unico collegamento, puoi modificare il plugin in questo modo:
import sublime_plugin
class ExpandSelectionToOtherLinesCommand(sublime_plugin.TextCommand):
def run(self, edit):
self.view.window().run_command("expand_selection", {"to": "line"})
start_region = self.view.sel()[0]
self.view.window().run_command("select_all")
self.view.sel().subtract(start_region)
self.view.window().run_command("split_selection_into_lines")
self.view.window().run_command("move", {"by": "characters", "forward": False})
L'ultima riga serve solo per rimuovere la selezione, lasciando più cursori all'inizio delle righe selezionate.