-
Notifications
You must be signed in to change notification settings - Fork 13.2k
Open
Labels
Experience EnhancementNoncontroversial enhancementsNoncontroversial enhancementsHelp WantedYou can do thisYou can do thisSuggestionAn idea for TypeScriptAn idea for TypeScript
Milestone
Description
Bug Report
🔎 Search Terms
- quick fix
- code action
- jsdoc
🕗 Version & Regression Information
4.7.0-dev.20220216
This is new behavior and not a regression
💻 Repo
- For the TypeScript:
/**
* @param c
* @param d
*/
function add(a, b) { }- Trigger the
rename @param tagquick fix oncinside the JSDoc.
🙁 Actual behavior
In VS Code, the cursor shifts to the start of the doc block. This is because the returned code action regenerates the entire start of the JSDoc block
{
"fixName": "renameUnmatchedParameter",
"description": "Rename '@param' tag name 'c' to 'a'",
"changes": [
{
"fileName": "/Users/matb/projects/san/index.ts",
"textChanges": [
{
"start": {
"line": 1,
"offset": 1
},
"end": {
"line": 5,
"offset": 1
},
"newText": ""
},
{
"start": {
"line": 5,
"offset": 1
},
"end": {
"line": 5,
"offset": 1
},
"newText": "/**\n * @param a\n * @param d\n */\n"
}
]
}
]
}
🙂 Expected behavior
Instead we should try to generate a more minimal edit so that editors can better preserve user's cursor position
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
Experience EnhancementNoncontroversial enhancementsNoncontroversial enhancementsHelp WantedYou can do thisYou can do thisSuggestionAn idea for TypeScriptAn idea for TypeScript