2017-02-23 5 views
0

Sublime Text 2のフロントタブのランダムな文字にジャンプするにはどうすればよいですか?その目的のためのプラグインはありますか?崇高なテキスト2ランダムな文字にジャンプするためのプラグインですか?

私は前のタブで開いて以下のようなテキストファイルを持っていたし、カーソルが最初の行の先頭にあった、

► 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 

私は次のように、このテキストのどこかに本当にランダムにジャンプしたい場合►「行の先頭に配置することによって引用する」行の2番目の「i」に移動します。

答えて

0

PackageControlの検索では、このように見えるものは表示されませんが、単純なPythonコードで独自のものを表示できます。

以下は、これを行うコマンドを実装するプラグインの例です(崇高なテキスト2と3で動作します)。これを使用するには、使用するサブライムテキストのバージョンに応じてTools > New Plugin...またはTools > Developer > New Plugin...を選択し、デフォルトのプラグインをここのコードに置き換えてから、Pythonファイルとして保存します。

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) 

これは新しい位置が画面上に表示されていることを確認して、ランダムにファイル内の文字を選択し、その位置にカーソルを移動しますjump_to_random_positionという名前のコマンドを実装しています。

これは、選択されている可能性のあるものをすべて選択解除し、ビューを単一選択モードに戻します(そうでなかった場合)。空のファイルや現在のビューがウィジェット(例:Sublimeコンソールのテキスト入力)の場合は、何もしないでください。

あなたはこのような何かをする必要がどのくらいの頻度によっては、コマンドのキーバインディングを作成することができ、次のいずれか

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

または手動で次のコードを使用して崇高テキストコンソールからコマンドを呼び出すことができますが(メニューからView > Show Consoleを選択し、コンソールを開いたり、押すはCtrl + `

view.run_command("jump_to_random_position") 
関連する問題