• VSCode使用简介


    编辑

    • Ctrl Shift W 选中单词

    • Ctrl Shift I 在打开的文件中选中所有相同的单词

    • Alt Shift 鼠标左键 光标呈一列;Alt 鼠标左键 取消指定行的光标

    • Alt 左右箭头 递归返回上次浏览的地方

    • Ctrl enter 当前光标所在行的下面创建新的一行

    • Ctrl Shift Enter 当前光标所在行的上一行创建新的一行

    • Ctrl 左右箭头 跳转到单词的开头/末尾,结合 Ctrl Shift 左右箭头 以及 Ctrl Shift 鼠标左键 进行批量操作

    • Ctrl D 选中当前单词,并依次跳转到文件中选中的单词

    • F2 即使未全选,也可直接修改名称

    • F12 转到定义处

    • 对所选单词大小写转换快捷键编辑:ctrl shift p open keyboard shortcus(JSON)

    // Place your key bindings in this file to override the defaults
    [
        {
            "key": "ctrl+shift+u",
            "command": "editor.action.transformToUppercase",
            "when": "editorTextFocus"
        },
        {
            "key": "ctrl+shift+l",
            "command": "editor.action.transformToLowercase",
            "when": "editorTextFocus"
        },
    ]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    如果打开的文件很多,上方活动栏显示不完全时,可以将鼠标停留在该栏,然后使用鼠标滚轮实现文件的快速浏览查找,而不必使用鼠标拖拉选项条。

    运行

    Run Without Debuging

    如果直接在终端中输入上一次的执行命令,提示:

    ConnectionRefusedError: [WinError 10061] 由于目标计算机积极拒绝,无法连接。
    
    • 1

    这是由于上次运行带了一个进程号的,当程序运行结束后,该进程进不存在了,自然无法使用上一次指定的进程号。

    调试

    jupyter

    • 调试的快捷键为:ctrl shift alt enter
    • 如果跨越不同的 cell 进行调试,目前还不能进入,查看不到具体的细节;但是如果是单独的文件,可以通过调试进入。

    普通文本模式下的调试

    • .vscode/launch.json 文件的编写
    {
        // Use IntelliSense to learn about possible attributes.
        // Hover to view descriptions of existing attributes.
        // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
        "version": "0.2.0",
        "configurations": [
            {
                "name": "TEST", // 为当前调试器命名
                "type": "python", // 以哪种解释器执行调试
                "request": "launch", // 修改内容对运行时无效
                "program": "test_global_track.py", // 指定要以调试运行的程序代码
                "console": "integratedTerminal",
                "justMyCode": true, // 指定为true的话会跳过某些代码段
                "args": [
                    "--config",
                    "configs/qg_rcnn_r50_fpn.py",
                    "--load_from",
                    "checkpoints/qg_rcnn_r50_fpn_2x_20181010-443129e1.pth",
                    "--gpus",
                    "3"
                ],
                "env": {
                    // "DISPLAY": "10.17.45.7:0.0"
                    // "DISPLAY": "10.16.61.10:0.0",
                    "PYTHONPATH": "${workspaceFolder}"
                }
            },
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 进入断点调试后,可以在 debug console 进行相关变量的显示等调试步骤,在这里,不能通过 enter 选取提示,只能通过 tab 选择。如果需要换行,比如:
    for x in x:
        print(x.shape)
    torch.Size([1, 256, 192, 336])
    torch.Size([1, 256, 96, 168])
    torch.Size([1, 256, 48, 84])
    torch.Size([1, 256, 24, 42])
    torch.Size([1, 256, 12, 21])
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    换行使用 shift enter

    CALL STACK 栏里可以看到具体的调用流程,在调试的时候如果选择某一个 STACK,会直接进入到调用处,这时就可以打印该调用处中的变量的值等状态信息,直接点击最顶层的 STACK,会回到最终的断点处。

    小细节:当前调试所在的代码行为 黄色 \color{yellow}{黄色} 黄色,指定到某一个 STACK 绿色 \color{green}{绿色} 绿色

    工作区

    worspace
    以上三个状态栏非常有帮助:

    • watch 常用于查看模块的整体结构。
    • call stack 常用于调试的时候,查看程序运行的一个流程,模块之间是如何进行调用的。这里有一个小细节,如果运行的是多线程或者多进程程序,如果设置的断点停留在了某一个 子线程/子进程,这里可以回溯到 main thread,查看具体的调用情况。
    • breakpoints 非常有用,设置的断点可以保留,如果不需要让这个断点生效,只需要取消勾选即可,用于保存调试的状态,方便之后的调试。当然,还可以在设置的断点处设置相应的条件,满足该条件以后就停止运行。

    原本还有一个 variables 状态栏,这里不写的原因是,个人习惯在 debug console 中进行变量的追踪、查询,如果要具体查看某一个变量的值,在当前调试的文件中,鼠标放在上面也可以看到(不太友好的是,有的时候鼠标偏离后就没办法查看到变量的状态了,和 PyCharm 的调试功能还是有差距的,PyCharm 调试后直接在当前行末显示变量的状态信息,非常友好)。

    个性化

    Git

    Unable to watch for file changes in this large workspace folder. Please follow the instructions link to resolve this issue.
    
    • 1

    参考链接:VSCode出现"Visual Studio Code is unable to watch for file changes in this large workspace"警告的解决方法_知行合一2018的博客-CSDN博客

    出现的原因是 监控的文件数量 的超过了 系统预设的限制。解决方法就是修改这个限制的大小,Ubuntu 下默认跟踪的文件数量为 8192,修改为 81920:

    cat /proc/sys/fs/inotify/max_user_watches  # 查看限制的大小
    sudo vim /etc/sysctl.conf  # 修改限制
    fs.inotify.max_user_watches=81920
    
    sudo sysctl -p  # 使配置生效
    fs.inotify.max_user_watches = 81920  # 输出的效果
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
  • 相关阅读:
    论文解读(SCGC)《Simple Contrastive Graph Clustering》
    [附源码]Python计算机毕业设计Django毕业生就业管理系统
    安卓有哪些耳机好用?好用的安卓蓝牙耳机推荐
    三分钟掌控Actor模型和CSP模型
    二叉树的树状打印(Java)
    MySQL面试真题(二十七)——RFM分析法对用户进行分类
    2023年中国乘用车金属冲压件产量、需求量及行业市场规模分析[图]
    面试题解(Day04)
    Flume系列之:Java读取读取flume配置文件,并把配置写入到zookeeper节点,再根据写入到zookeeper中的配置启动flume agent
    SyntaxError: invalid character in identifier
  • 原文地址:https://blog.csdn.net/qq_40750972/article/details/126027750