6

*Markdown ファイルのアスタリスク ( ) 文字を自動的に閉じようとしています。
私はすべての言語設定ファイルを調べてきましたが、例として使用できるものは何も見つかりません。スニペットも書いてみましたが、非効率的であることがわかりました (選択範囲をラップしません)。

私は周りを検索してBracketHighlighter(カスタムの自動クローズペアリングを許可すると主張している)を見つけましたが、運がありませんでした(Package Controlを介してインストールされ、再起動されました).

どこから始めるべきか、または何が間違っているかについてのアイデアはありますか?


解決策(@skurodaに感謝)

スクロダの答えはうまくいくでしょう-しかし、私は彼らの答えに追加したいいくつかの調整を行いました:

{ "keys": ["*"], "command": "insert_snippet", "args": {"contents": "$0**"}, "context":
    [
        { "key": "selection_empty", "operator": "equal", "operand": true, "match_all": true },
        { "key": "preceding_text", "operator": "regex_contains", "operand": "\\*\\*", "match_all": true },
        { "key": "selector", "operator": "equal", "operand": "text.html.markdown", "match_all": true }

    ]
}

**アスタリスク キーが先行する 2 つのアスタリスクの隣で押されると、2 つ追加されます (たとえば、カーソルの場所**|***|なります。これは、テキストを強調するのに大いに役立ちます。**|**|

4

3 に答える 3

3

コンテキストを微調整する必要があるかもしれませんが、これが出発点です。これは、組み込みブラケットの自動ペア キー バインディングに基づいています。

{ "keys": ["*"], "command": "insert_snippet", "args": {"contents": "*$0*"}, "context":
    [
        { "key": "selection_empty", "operator": "equal", "operand": true, "match_all": true },
        { "key": "following_text", "operator": "regex_contains", "operand": "^(?:\t| |\\)|]|;|\\}|$)", "match_all": true },
        { "key": "selector", "operator": "equal", "operand": "text.html.markdown", "match_all": true }

    ]
},
{ "keys": ["*"], "command": "insert_snippet", "args": {"contents": "*${0:$SELECTION}*"}, "context":
    [
        { "key": "selection_empty", "operator": "equal", "operand": false, "match_all": true },
        { "key": "selector", "operator": "equal", "operand": "text.html.markdown", "match_all": true }
    ]
},
{ "keys": ["*"], "command": "move", "args": {"by": "characters", "forward": true}, "context":
    [
        { "key": "selection_empty", "operator": "equal", "operand": true, "match_all": true },
        { "key": "following_text", "operator": "regex_contains", "operand": "^\\*", "match_all": true },
        { "key": "selector", "operator": "equal", "operand": "text.html.markdown", "match_all": true }
    ]
}
于 2013-04-16T00:18:37.687 に答える
2

これを使って

{ "keys": ["*"], "command": "insert_snippet", "args": {"name": "Packages/User/my-snippet.sublime-snippet" }}

[設定] > [パッケージの参照] に移動し、[ユーザー フォルダー] に移動して、ファイルを作成します。

my-snippet.sublime-snippet

内部で次のコードを使用します

<snippet><content><![CDATA[
*${0:$SELECTION}*
]]></content></snippet>

幸運を

于 2015-05-16T04:28:46.507 に答える