赞同 7
分享

VSCode平替Pycharm

简介:在经历过限期免费、淘宝购买激活码、定期激活码、永久破解等等,一系列的破解Jetbrains全家桶之路之后,我使用VSCode满足我所有的Python Web开发需求。
  2022.01.05
  Bug Man
  7
  389
  172.17.0.1
  中国.上海
 
 

作为Pycharm的平替,我就以我在Pycharm中开发的习惯作为衡量是否能够成为平替的标准,下面我将一条一条列举出来。

1.辅助插件

上网随便搜,想要什么功能就上网搜一下,我提供一个我参考的一个,仅供参考:2021 年 VS Code 必备 Python 插件!

VS Code官方文档有但不限于python开发使用的小技巧,强烈建议看一看是否有自己不知道功能点,其中调试模块下的justMyCode就是用来断点进入源码的开关。在 VS Code 中使用 Python

推荐一下和同事一起发现的好用的插件:Bracket Pair(让括号成对变色)Tabnine(如果有python snippets片段提示插件要禁用)等。

2.启动Django项目

将Django项目在VSCode中打开,点击左侧活动栏的运行和调试按照下列操作就可启动Django项目:

1.点击左侧活动栏的运行和调试,然后点击运行和调试按钮后选择Python环境; vscode001

2.选择Python环境后,选择Django启动配置; vscode002

3.启动成功可以在终端看到启动信息,然后点击小齿轮再次选择上一步的操作重复选择Django启动配置VS Code就会帮我们在项目根目录下创建launch.json配置文件; vscode003

4.可以看到通过上一步操作就能生成launch.json配置文件,然后遇到具体问题可以上网搜索这个配置文件的写法,下面提供一下我日常开发用到的配置。 vscode004

{
    // 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": "Python: 当前文件",
            "type": "python",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal"
        },
        {
            "name": "Python: Django",
            "type": "python",
            "request": "launch",
            "program": "${workspaceFolder}\\manage.py",
            "args": [
                "runserver",
                "0.0.0.0:8000"
            ],
            "django": true
        }
    ]
}
3.开发调试

1.断点调试查看查看变量值,界面效果类似于chrome的控制台,界面右侧有控制断点的操作控件; vscode005

2.点击底部活动栏的调试控制台切换到调试框,效果类似于Pycharm的evaluate,这个可以说时Pycharm中最好用的功能之一,在VS Code中同样有这样的功能。能够实时调整代码并查看运行后的结果,而不用修改源码然后中心运行,有了这个功能可以做到断点时一次调试多种情况的代码,然后将符合预期的代码修改到源文件中再次启动程序,大大提高了调试代码的效率。 vscode006

4.Python远端环境

上面的功能点已经能够满足日常开发需求,但如果你需要用到更多功能,比如远端环境这种,那就需要额外下载插件来支持访问远程的Python环境。

1.点击左侧活动栏扩展,搜索框输入remote就会发现很多插件,选择安装Remote Development同时会自动给帮你安装Remote - SSHRemote - WSLRemote - Containers这三个组成的插件,根据需求使用不同的远程方式来连接我们的远端,以下我们使用SSH的方式来连接远端; vscode007

2.在VS Code中按快捷键CTRL+SHIFT+P呼出配置搜索框,输入Remote-SSH:Open就能看到刚刚安装的插件对应的配置项,选择后继续选择当前操作系统用户文件路径下~/.ssh/config的配置就可以打开文件开始配置我们的连接信息了; vscode008

3.编辑连接信息,下配置中我没有使用密钥对,所以我需要在后面连接的时候输入密码,下面我会给出两种配置的文本内容。可以注意到侧边活动栏有一个电脑显示屏的图标,这就是我们安装的Remote Development插件,待会儿配置完成后就可以点开这个图片查看我们配置的信息进行远程连接远端了; vscode009

# 密码登录使用下面的配置
# Read more about SSH config files: https://linux.die.net/man/5/ssh_config
Host remoted_name  # 远端的别名可以是ip
    HostName ip  # 远端的ip 如:127.0.0.1
    User root  # 登录用户名
    Port 33  # ssh服务监听的端口,默认的是22,我的远端用的就是33
    ForwardAgent yes  # 是否使用远程代理,默认 yes

# 使用密钥登录使用下面的配置
# Read more about SSH config files: https://linux.die.net/man/5/ssh_config
Host remoted_name  # 远端的别名可以是ip
    HostName ip  # 远端的ip 如:127.0.0.1
    User root  # 登录用户名
    Port 33  # ssh服务监听的端口,默认的是22,我的远端用的就是33
    ForwardAgent yes  # 是否使用远程代理,默认 yes
    IdentityFile ~/.ssh/id_rsa  # 登录公钥位置

4.配置好登录信息后点击侧边活动栏远程资源管理器,可以看到有我们刚刚配置好的远端信息,点击右侧小文件夹,会开启新的窗口连接远端服务器。这个时候第一次连接会让你选择平台的类型,这里我们的远端是Linux所以我们选择Linux。选择之后会立即让我们输入远端密码(因为我没有设置登录公钥); vscode010

5.成功连接远端后我们开始选择侧边活动栏的资源管理器,然后点击打开文件夹,然后会弹出一个选择远端服务器路径的选择框,这里我选择的是/tmp/jhhuang/这个路径,因为我的开发代码放在这个路径下。选择完路径之后点击确定,然后继续输入一次密码,然后选择信任远端的文件就可以打开远端的文件,这个时候就可以实时的去编写代码和基于远端解释器来运行程序; vscode011

6.连接成功后开始运行Django运行配置和前面的一项编写,下面的截图是我已经成功运行的截图。需要注意的是要提前检查Python解释器是否选择正确,如果不是远端解释器或者想要查看是否是远端解释器就点击左下角的python字样的小图标就可以呼出选择框,如果在选择框中无法更改选择或者按路径选择也无法选择上,建议关闭窗口重新发连接远端就可以选择成功了。 vscode012

到这里终于告一段落了,恭喜你,熬出头了!!!但是,为了更方便开发是不是还要考虑怎么把代码上传到代码仓库呢?是吧!设想一下,如果我们的代码要推送到Github仓库中去,那么你能保证在远端也能很好的推送到Github吗?所以我们要效仿Pycharm把代码拉到本地来再上传(VS Code远端策略和Pycharm的远端策略有一点不同,VS Code是直接再远端编辑,远端启动服务;Pycharm是本地编辑上传到远端,然后利用通道实现断点。其实本质上差不多,却别就在于Pycharm代码有副本在本地。)。

5.VS Code的上传下载

上面远端配置最后一段讲过原因了,如果你没有这种困扰或需求可以忽略这一步操作,但是为了更好的防患于未然建议还是了解一下。

1.打开一个新的窗口选择本地的项目文件打开,点击左侧活动栏扩展,搜索sftp选择下载量最高开发者liximomo的插件安装; vscode013

2.安装完成之后按快捷键CTRL+SHIFT+P呼出配置搜索框,输入sftp:Config点击选中的的配置,就会生成一下的配置,配置文件如下; vscode014

{
    "name": "My Server",  # 别名
    "host": "localhost",  # 远端地址ip
    "protocol": "sftp",  # 协议
    "port": 22,  # 使用的端口,同ssh端口
    "username": "username",  # 登录用户名
    "remotePath": "/tmp/jhhuang",  # 当前项目和远端的映射路径按照我更改的路径
    "uploadOnSave": true,  # 是否保存立即上传
    "ignore": [
        "**/.vscode/**",
        "**/.git/**",
        "**/.DS_Store"
    ],
    "watcher": {
        "files": "*",
        "autoUpload": false,
        "autoDelete": false
    }
}

3.以上配置完成后,单个文件保存后右键UploadDownload,或者在项目根目录空白处右键批量上传、下载。 vscode015

终于结束了,我的经验都写在这里了,如果觉得对你有用请点赞或分享给你的朋友,感谢!