我使用 Visual Studio Code 來編輯 Markdown 和 Latex 檔案。我將以下條目添加到我的keybindings.json檔案中,以使所選文本變為斜體或粗體:
// Markdown Bold Text when Editor has Selection
{
"key": "cmd b",
"command": "editor.action.insertSnippet",
"when": "editorHasSelection && editorLangId != 'latex'",
"args": {
"snippet": "**${TM_SELECTED_TEXT}**"
}
},
// Latex Bold Text when Editor has Selection
{
"key": "cmd b",
"command": "editor.action.insertSnippet",
"when": "editorHasSelection && editorLangId == 'latex'",
"args": {
"snippet": "\\textbf{${TM_SELECTED_TEXT}}"
}
},
// Markdown Italic Text when Editor has Selection
{
"key": "cmd i",
"command": "editor.action.insertSnippet",
"when": "editorHasSelection && editorLangId != 'latex'",
"args": {
"snippet": "*${TM_SELECTED_TEXT}*"
}
},
// Latex Italic Text when Editor has Selection
{
"key": "cmd i",
"command": "editor.action.insertSnippet",
"when": "editorHasSelection && editorLangId == 'latex'",
"args": {
"snippet": "\\emph{${TM_SELECTED_TEXT}}"
}
}
現在我的問題是是否可以創建一個片段并為其分配一個鍵系結以恢復這些操作,即將選定的斜體或粗體文本轉換為普通文本。
我已經研究過將正則運算式合并到 VSCode 片段中,在 Markdown 的情況下去掉星號,或者在 Latex 的情況下將所有內容保留在花括號內,但找不到任何可轉移到上述用例的方法。
uj5u.com熱心網友回復:
使用擴展名Select By和命令,可以選擇在給定正則運算式的情況下在游標周圍selectby.regex創建選擇。
通過擴展多命令,您可以將其與轉換所選文本的片段結合起來。
對于Markdown Bold它會是這樣的
{
"key": "cmd shift b",
"command": "extension.multiCommand.execute",
"when": "editorHasSelection && editorLangId != 'latex'",
"args": {
"sequence": [
{ "command": "selectby.regex",
"args": { "surround": "\\*\\*.*?\\*\\*" } },
{ "command": "editor.action.insertSnippet",
"args": { "snippet": "${TM_SELECTED_TEXT/\\*\\*(.*?)\\*\\*/$1/}" } }
]
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/435283.html
