VScode 一些笔记(菜单中显示 以及一些小心得)

在菜单中显示可选的命令 .json 不允许注释

editorFocus 编辑的面板的焦点

		"keybindings":[
			{
				"command": "extension.insertHeader",
				"key": "ctrl+q",
				"mac":"cmd+f10",
				"when":"editorTextFocus"
			}
		],
		"menus":{
			"editor/context": [
				{
					"when":"editorFocus",  
					"command": "extension.insertHeader",
					"group":"navigation"
				}
			]
		}

menus  定义菜单显示的内容

需要注意的是  它是通过控制command命令来控制菜单显示内容  会自动的去寻找此命令的title

如果需要显示多条内容  因为是数组 在一个对象 修改对应的command 即可

1 插件激活一次以后  就不需要再次激活了 

export function activate(context: ExtensionContext) {  里面的命令就可以使用了 

2 languages的 的注册命令  是通过 语言类型来执行的  

   conmands 的注册命令 是通过 命令来执行的(也可以是点击的title  具体好多执行方法  在package中可以找到)

3  视图(树形图 )

  

"contributes": {
        "viewsContainers": {    //左边活动栏(大视图的内容)
            "activitybar": [  
                {
                    "id": "package-explorer",
                    "title": "Package Explorer",
                    "icon": "resources/package-explorer.svg"
                }
            ]
        },
        "views": {         //左边活动栏的右边 算是二级视图  (看这里的属性与左边活动栏的 ID相对应  可以理解为一级目录二级目录)  其中explorer是vscode 自带的文 //件夹的二级目录

            "package-explorer": [
                {
                    "id": "package-dependencies",
                    "name": "Dependencies"
                },
                {
                    "id": "package-outline",
                    "name": "Outline"
                }
            ]
        }
}

 

提供程序Provider

  刚开始觉得这东西很神秘 什么是提供程序 又该怎么写呢

  后来发现 所谓的提供程序 就是执行什么函数 什么命令  紧接着又发现 每一个API 都有与之对应的提供程序类型 

 我们只需要 let us=new ....  比如 

这里就需要一个TreeDataProvide的提供程序

vscode.window.registerTreeDataProvider('nodeDependencies', nodeDependenciesProvider);  

let nodeDependenciesProvider=new DepNodeProvider(“需要参数 先不管”)

 然后既然new了   肯定有一个类让我们new 这个类的类型 其实vscode都定义好了

export class DepNodeProvider implements vscode.TreeDataProvider { }

 注意这里有一个接口 vscode.TreeDataProvider  已经定义好了 这个类的类型   

我们需要的参数 又是这个类的对象 所以 我们需要的提供程序 也就是这个函数需要什么  已经写好啦 我们只要根据他的需要 给他就可以了

你可能感兴趣的:(VScode 一些笔记(菜单中显示 以及一些小心得))