Есть как минимум эти две опции:
"Console_Log_Test": {
"prefix": "clg",
"body": [
"//Debugging (remove)",
"console.log('Line #${1:${TM_LINE_NUMBER}}');"
// "console.log('Line #${TM_LINE_NUMBER}');"
]
}
С учетом вышеизложенного, по крайней мере, номер строки выбран, и вы можете легко изменить его самостоятельно.
Более интересно сделать этов " макрос ", который будет выполнять именно то, что вы хотите.
Вам понадобится что-то вроде мультикомандного расширения .
Измените приведенный выше фрагмент на:
"Console_Log_Test": {
"prefix": "clg",
"body": [
"console.log('Line #${TM_LINE_NUMBER}');"
]
}
, поэтому теперь фрагмент печатает только строку с TM_LINE_NUMBER
.
В ваших пользовательских настройках:
"multiCommand.commands": [
{
"command": "multiCommand.lineNumber",
"sequence": [
{
"command": "type",
"args": {
"text": "//Debugging (remove)\n"
}
},
{
"command": "editor.action.insertSnippet",
"args": {
// "langId": "csharp",
"name": "Console_Log_Test"
}
}
]
}
Теперь фрагмент фактически запускается на нужном номере строки.
В вашем keybindings.json:
{
"key": "ctrl+alt+l",
"command": "multiCommand.lineNumber"
},
Сейчас Ctrl - Alt - L делает именно то, что вы хотите сделать.Это небольшая работа по настройке, но довольно мощный метод обучения.
[EDIT]
Мне было интересно, есть ли способ получить некоторые emmet математика для работы и, что удивительно, это делает.
Использование этого фрагмента:
"log line number on second line": {
"prefix": "clg",
"body": [
"//Debugging (remove)",
"console.log('Line #${TM_LINE_NUMBER}"
]
},
Этот фрагмент содержит все, кроме окончательного ');
Теперь этот макрос:
{
"command": "multiCommand.lineNumber",
"sequence": [
{
"command": "editor.action.insertSnippet",
"args": {
"name": "log line number on second line"
}
},
"editor.emmet.action.incrementNumberByOne",
{
"command": "type",
"args": {
"text": "');\n"
}
}
]
},
будет работать !!Номер строки будет увеличен на единицу, а затем ');\n
будет добавлено в конец этой строки.
И вы можете сделать более интересную математику, используя "editor.emmet.action.evaluateMathExpression"
вместо команды incrementNumberByOne
.
Чтобы добавить 10 к номерам строк, используйте
"console.log('Line #${TM_LINE_NUMBER}+11"
вфрагмент и "editor.emmet.action.evaluateMathExpression"
вместо "editor.emmet.action.incrementNumberByOne"
в макросе с несколькими командами.