在Eclipse中,有一个非常方便的快捷方式,默认情况下映射到 CTRL + 2 + L 选择一个表达式。它的作用是创建一个新的局部变量来保存表达式的结果。例如......
func info(format string, args ...interface{}) {
_, file, line, _ := runtime.Caller(1)
prefix := fmt.Sprintf("%v:%v: ", path.Base(file), line)
if logger != nil {
logger.Printf(prefix+format+"\n", args...)
}
}
如果鼠标光标位于上面的行上, CTRL + 2 + L 会将该行转换为...
this.doSomeCalculation();
在编写Java时,我发现自己经常使用这个快捷方式。是否可以在 VSCode 中编辑Typescript?
答案 0 :(得分:2)
您可以assign keybinding to refactorings(例如提取常量)。
这是将 ctrl shift e 绑定到提取常量重构的键绑定:
table_name = []
counter=0
for year in ['2017', '2018', '2019']:
table_name.append(f'temp_df_{year}')
print(table_name[counter])
table_name[counter] = pd.merge(table1, table2.loc[table2.loc[:, 'year'] == year, :], left_on='col1', right_on='col1', how='left')
counter += 1
temp_df_2017
此键绑定将在JavaScript和TypeScript(以及具有提取常量重构的任何其他语言)中工作
P.S。这是JS / TS的一个细微变化,它使提取类型和提取常量都可以使用单个键绑定:
{
"key": "ctrl+shift+e",
"command": "editor.action.refactor",
"args": {
"kind": "refactor.extract.constant",
"apply": "first"
}
}
答案 1 :(得分:0)
此链接上的vscode几乎所有类似的东西
https://code.visualstudio.com/docs/java/java-editing
它显示了如何将部分代码提取到局部变量。 这与日食有些不同。在vscode上,它需要“选择”语句,然后按ctrl + shift + R,然后弹出一个窗口,您需要在其中选择要提取到局部变量的窗口。
您可以将键盘快捷键配置为Ctr + 2 l。
真的不是同一回事,但是...
答案 2 :(得分:0)
您可以选择一个表达式,然后:
在Mac中:
Opt + Cmd + V
在Windows中:
Ctrl + Alt + V
答案 3 :(得分:0)
我在keybindings.json
中经过反复试验,设法解决了这个问题。对于您来说,我认为映射将类似于:
[
{
"key": "ctrl+2 ctrl+l",
"command": "editor.action.codeAction",
"args": {
"kind": "refactor.assign.variable"
},
"when": "editorHasCodeActionsProvider && editorTextFocus && !editorReadonly"
}
]
我个人使用的是ctrl
+ alt
+ space
:
[
{
"key": "ctrl+alt+space",
"command": "editor.action.codeAction",
"args": {
"kind": "refactor.assign.variable"
},
"when": "editorHasCodeActionsProvider && editorTextFocus && !editorReadonly"
}
]