2017-02-23 1 views
0

Wie kann ich zu einem zufälligen Zeichen in der vorderen Registerkarte in Sublime Text 2 springen? Gibt es ein Plug-in für diesen Zweck?Sublime Text 2 Plugin für den Sprung zu einem zufälligen Char?

Wenn ich wie unten vorne offen Registerkarte eine Textdatei hatte und die Cursor war am Anfang der ersten Zeile,

► put returns between paragraphs 

► for linebreak add 2 spaces at end 

► _italic_ or **bold** 

► indent code by 4 spaces 

► backtick escapes `like _so_` 

► quote by placing > at start of line 

► to make links 

<http://foo.com> 
[foo](http://foo.com) 
<a href="http://foo.com">foo</a> 

► basic HTML also allowed 

Ich mag würde in diesem Text irgendwo wirklich zufällig springen wie zum zweiten "i" der Zeile "► Zitat durch Platzierung> am Anfang der Zeile".

Antwort

0

Einige Suche von PackageControl scheint nichts zu tun, was aussieht, als würde es dies tun, aber Sie können Ihre eigenen mit etwas einfachem Python-Code rollen.

Das folgende Beispiel ist ein Plugin (funktioniert für Sublime Text 2 und 3), das einen Befehl implementiert, der dies tut. Um dies zu verwenden, wählen Sie entweder Tools > New Plugin... oder Tools > Developer > New Plugin... (abhängig von der Version von Sublime Text, die Sie verwenden) und ersetzen Sie das Standard-Plugin durch den Code hier, dann speichern Sie es als Python-Datei.

import sublime, sublime_plugin 
import random 

class JumpToRandomPositionCommand(sublime_plugin.TextCommand): 
    """ 
    When invoked, randomly select a character in the current 
    file and jump the cursor to that position. Does nothing 
    if the current file is empty or if the current view does 
    not represent a file. 
    """ 
    def run(self, edit): 
     view = self.view 

     if view.size() > 0 and view.settings().get("is_widget", False) == False: 
      view.sel().clear() 

      pos = random.randrange(0, view.size()) 
      view.sel().add(sublime.Region(pos, pos)) 

      view.show(pos) 

Dies implementiert einen Befehl namens jump_to_random_position, die zufällig ein Zeichen in der Datei auswählen werden und die Cursor auf diese Position springen, um sicherzustellen, dass die neue Position auf dem Bildschirm sichtbar ist.

Dadurch wird die Auswahl aufgehoben und die Ansicht in den Einzelauswahlmodus zurückgesetzt (falls dies nicht der Fall war). Es wird auch darauf geachtet, in einer leeren Datei nichts zu tun oder wenn die aktuelle Ansicht ein Widget ist (z. B. der Texteintrag in der Sublime-Konsole).

Je nachdem, wie oft müssen Sie so etwas wie dies zu tun, können Sie entweder einen Schlüssel erstellen für den Befehl Bindung:

{ 
    "keys": ["ctrl+alt+shift+r"], 
    "command": "jump_to_random_position" 
} 

oder Sie können den Befehl von der Sublime Text-Konsole mit dem folgenden Code manuell aufrufen (um die Konsole zu öffnen, wählen Sie View > Show Console aus dem Menü oder drücken Strg + `:

view.run_command("jump_to_random_position") 
Verwandte Themen