Dans Sublime Text 2, est-il possible de sélectionner instantanément toutes les autres lignes (ou paires impaires/paires) et de placer plusieurs curseurs sur ces lignes?
Merci.
.*\n.*\n
Vous pouvez le faire facilement:
MODIFIER :
(.*(\n|$)){2}
expressionJe cherchais un moyen de sélectionner des lignes alternatives en sublime.
Merci à Joe Daley pour une très bonne réponse. Bien que je me suis rendu compte que, si vous utilisez regex, il ne sélectionnerait pas la dernière ligne du fichier s'il n'y a pas de nouvelle ligne à la fin du fichier.
Je voulais améliorer cette réponse mais je ne semble pas avoir assez de réputation pour le moment pour commenter la réponse ci-dessus.
Vous pouvez utiliser la chaîne de recherche suivante avec l'expression rationnelle activée, puis appuyer sur alt + enter. Suivi d'une flèche gauche. Cela placerait un curseur sur des lignes alternatives (les mêmes étapes que celles décrites par Joe Daley)
^.*\n.*$
Vous pouvez essayer avec 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)
Enregistrez ce fichier dans votre Packages/User
.
Ensuite, ajoutez la liaison de clé pour ce plugin:
{ "keys": ["super+alt+l"], "command": "expand_selection_to_other_lines" }
Cette commande sélectionnera toutes les autres lignes. Lorsque vous avez sélectionné d'autres lignes, vous pouvez utiliser Split selection into lines
commande (Ctrl+Shift+L, Cmd+Shift+L sur Mac).
Si vous voulez avoir tout dans un seul raccourci, vous pouvez modifier le plugin comme ceci:
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})
La dernière ligne sert uniquement à supprimer la sélection, en laissant plusieurs curseurs au début des lignes sélectionnées.