V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
midtin
V2EX  ›  程序员

求教 vscode 有没办法显示依赖库的代码

  •  
  •   midtin · 2020-01-22 12:10:43 +08:00 · 5256 次点击
    这是一个创建于 1766 天前的主题,其中的信息可能已经有所发展或是发生改变。

    就像 PyCharm 那样,我可以打开环境中的 Python 依赖库代码进行浏览查看,google 了很久也没找到相关的方法或者扩展

    第 1 条附言  ·  2020-01-22 14:56:36 +08:00
    上面可能描述得不够清楚,想要的不是代码跳转,而是像 Pycharm 那样可以直接显示环境中依赖库的文件树,我可以直接打开浏览而不需要通过某个代码引用跳转过去
    第 2 条附言  ·  2020-01-22 17:57:11 +08:00

    想要这种效果 效果图

    12 条回复    2020-01-23 12:28:48 +08:00
    2wex
        1
    2wex  
       2020-01-22 13:07:25 +08:00
    在设置里 python.path 填上 python 的路径,重启之后就可以愉快地 F12 了
    midtin
        2
    midtin  
    OP
       2020-01-22 14:49:26 +08:00
    @2wex 用的是虚拟环境,这个有作用么,还是说每个都要指定一次?
    midtin
        3
    midtin  
    OP
       2020-01-22 14:53:21 +08:00
    @2wex 可能描述得不够清楚,我想要的不是代码跳转,而是像 Pycharm 那样能够直接显示环境中的外部依赖的文件目录树
    BreezeInWind
        4
    BreezeInWind  
       2020-01-22 15:01:53 +08:00 via Android
    前端?显示 nodemodules 树没啥意思吧
    CallMeReznov
        5
    CallMeReznov  
       2020-01-22 15:05:16 +08:00
    如果你是用类似于这种语法
    '''
    import sys ,time ,os
    '''
    vscode 是无法查看后两个包的引用的
    你必须
    '''
    import sys
    import time
    import os
    '''

    这样才可以,我个人是这样用的,具体原理和为什么不知.
    midtin
        6
    midtin  
    OP
       2020-01-22 17:52:34 +08:00
    @hedamao9999 后端 Python,因为我有时会直接去看依赖库的代码而不是通过代码引用跳转到源码来看
    midtin
        7
    midtin  
    OP
       2020-01-22 17:55:53 +08:00
    shiran3f
        8
    shiran3f  
       2020-01-22 18:33:04 +08:00 via iPhone
    这树不是依赖吧?只是单纯的你本地或者指定的 python 可执行路径关联的包而已,里面的包可能是缺的也可能是多余的。如果是这样的话,应该找你指定 python 版本路径下已安装包的现实而已,不知道有没有这样的插件,做起来应该不难,只是显示文件树而已。
    no1xsyzy
        9
    no1xsyzy  
       2020-01-22 18:39:26 +08:00
    一个权宜之计( workaround ):内置 venv 或者 符号链接

    可以在插件市场找下。
    no1xsyzy
        10
    no1xsyzy  
       2020-01-22 18:50:53 +08:00
    一个 “半解决方案”( half solution ):在左侧目录树里可以 Add folder to Workspace,会把当前的 folder = workspace 的状态转化为存储在 ~ 下的 workspace 里。

    插件市场原样搜索 “external libraries”,找到这个:
    https://marketplace.visualstudio.com/items?itemName=dannielarriola.extlibraries
    看了下是用符号链接的。而 Windows 下符号链接需要提权,所以作为 VSCode 插件不合适,不如在 terminal 里 elevate mklink 甚至 junction
    midtin
        11
    midtin  
    OP
       2020-01-23 10:20:44 +08:00
    @no1xsyzy 感谢,这个方法已经能满足我大部分的需求了,虽然的确还不是很便利,需要手动往 .gitnore 排除掉这个 symbolic link 避免误提交到项目。我用的 Mac OS 所以还好
    SmiteChow
        12
    SmiteChow  
       2020-01-23 12:28:48 +08:00 via Android
    编辑器和 IDE 差很远 直接使用 pycharm 即可
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1256 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 17:48 · PVG 01:48 · LAX 09:48 · JFK 12:48
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.