在 Visual Studio Code 中使用 PoweShell - CodeShell
一直希望在 Visual Studio Code 中使用 PowerShell,插件 CodeShell 提供了对于 PowerShell 的支持。
安装
首先按 F1,打开命令窗口,输入安装插件的命令。

继续输入 powershell ,将会看到 PowerShell 相关的插件。
选择 CodeShell 插件。

一旦安装完成,Visual Studio Code 会提示你重新启动 Visual Studio Code,以便启用这个插件。
打开 PowerShell 窗口
现在打开 PowerShell 窗口,就可以直接使用快捷键了。

Ctrl + Alt + P 直接在当前项目的目录中打开 PowerShello 窗口。
Ctrl + Alt + U 打开一个非限制的窗口。
编辑
当然了,PowerShell 只能在 Windows 平台执行,在 Mac 平台上,如果你决定开发 PowerShell 代码,你当然不能 Debug 你的 PowerShell 代码,但是,至少你可以做下面的事情:
- 语法高亮和代码片段,安装插件之后,Code 会自动将扩展名为 .ps1 的文件关联为 PowerShell 文件,并且自动高亮代码中不同的语法结构,如果你使用非标准的扩展名,你也可以通过在状态栏的右边选择正确的类型 ( 在这里就是 PowerShell 了),可以激活代码片段窗口,从列表中选择需要的片段,我发现现在有大约 25 种片段,但是,插件是开源的,会有人贡献新的代码片段。

- 基本的智能提示支持,在 Mac 平台上,由于不能获得系统安装的 cmdlet 信息,你不能获得出色的智能提示,很简单,在 Mac 上没有 PowerShell,但是,你仍然可以获得基本的智能提示,例如构造函数,在你的项目中定义的用户定义结构等。对于 Mac 用户来说,比没有要好得多。
- 转到定义和查找引用特性
- 集成在线帮助,CTRL + F1 可以打开浏览器,自动查询光标所在单词的信息。
当然了,在 Windows 系统中,本地的 PowerShell 可以提供更多的支持,你可以在 Code 中访问更多的特性。感谢类似 PowerShell Editor Services and PowerShell Scrip Analyzer 这样的项目,扩展的开发者实现了 Debug 特性和代码分析的特性。下面是 Windows 平台上的特性列表。
- 完全的智能提示支持,Code 可以提供所有已安装模块的支持,所以,你可以轻松访问所有的 Cmdlet。

- 基于角色的分析,基于 PowerShell Analyzer,Code 提供了对于代码中的错误或者不太好代码实践的信息,查看状态条,可以看到实时提供的关于错误和警告的信息,点击信息之后,可以获取更多的关于错误的提示信息。

- 在 Code 中直接调试和执行脚本,如果只是执行简单的几行代码,只需要选中这些行,然后 F8 就可以执行了。如果还想使用调试器来执行 cmdlet,你需要创建 launch.json, 在 Debug 视图中,点击开始按钮,在我的编辑器中,就会得到一个基本的 launch.json, 也可以手工创建这个文件,内容类似如下所示。
{
"version": "0.2.0",
"configurations": [
{
"name": "PowerShell",
"type": "PowerShell",
"program": "DebugTest.ps1"
}
]
}
一旦提供了文件名,就可以执行调试了。

因此,你可以简单地使用 Code 作为附带大量特性的 PowerShell 的编辑器,甚至在 Linux 或者 Mac 平台上,也仍然可以提供一些支持特性。
参考:
https://blogs.msdn.microsoft.com/cdndevs/2015/12/11/visual-studio-code-powershell-extension/
在 Visual Studio Code 中使用 PoweShell - CodeShell的更多相关文章
- Visual Studio Code中文文档(一)-快速入门
Visual Studio Code是一个轻量级但是十分强大的源代码编辑器,重要的是它在Windows, OS X 和Linux操作系统的桌面上均可运行.Visual Studio Code内置了对J ...
- Visual Studio Code中文文档
Visual Studio Code中文文档 Visual Studio Code是一个轻量级但是十分强大的源代码编辑器,重要的是它在Windows, OS X 和Linux操作系统的桌面上均可运行. ...
- Visual Studio Code中配置GO开发环境
在Visual Studio Code中配置GO开发环境 一.GO语言安装 详情查看:GO语言下载.安装.配置 二.GoLang插件介绍 对于Visual Studio Code开发工具,有一款优秀的 ...
- SharePoint Framework 在Visual Studio Code中调试你的本地解决方案
博客地址:http://blog.csdn.net/FoxDave Visual Studio Code不知道大家都有没有,界面清爽,编辑快速,是一个非常好的前端开发工具.本文介绍如何使用Goog ...
- 如何在"Visual Studio Code"中使用" Git" 进行版本控制
如何在"Visual Studio Code"中使用" Git" 进行版本控制 本来认为此类教程,肯定是满网飞了.今天首次使用VS Code的Git功能,翻遍了 ...
- Visual Studio Code中C/C++的环境配置
Visual Studio Code 的功能十分强大,但是对我这种小白不是很友好,它和其它的集成开发工具不同,Visual Studio Code (以下简称VS)自身其实仅仅是一个编辑器, 是不具备 ...
- 在Visual Studio Code 中配置Python 中文乱码问题
在Visual Studio Code 中配置Python 中文乱码问题 方法一:直接代码修改字符集 添加前四行代码 import io import sys #改变标准输出的默认编码 sys.std ...
- 在Visual Studio Code中配置GO开发环境
一.GO语言安装 详情查看:GO语言下载.安装.配置 二.GoLang插件介绍 对于Visual Studio Code开发工具,有一款优秀的GoLang插件,它的主页为:https://github ...
- Visual Studio Code 中编写 C++ 的工作流
1. 官网下载 Visual Studio Code ,安装.按提示安装 cpp 插件和 cmake 插件. 官网下载 CMake ,安装. 官网下载 Mingw ,安装. 安装 Mingw 时,注意 ...
随机推荐
- python with语句
作用:处理异常或进行资源清理等工作,让代码更加简练. 基本格式:with statement as statement: do somthing....... statement会有一个返回对象,这 ...
- json对象转换为json字符串
今天浏览网页的时候看到这个题也是一道很经典的题目了 var str ='aaaaaaajsdjdfkdkg'; ,]; var obj={}; ;i<str.length;i++){ if(!o ...
- 深入学习JavaScript: apply 方法 详解(转)——非常好
主要我是要解决一下几个问题: 1. apply和call的区别在哪里 2. 什么情况下用apply,什么情况下用call 3. apply的其他巧妙用法(一般 ...
- js:setTimeout 与 setInterval 比较
在javascript中有两个非常有用的函数:setTimeout 和setInterval ,都是定时器:但是两者存在着一些区别: 1. setTimeout函数 用法:setTimeout(fn, ...
- 关于Oracle10G在库内导数据时,用到的更新语句----ZT
两种方法: -- 方法1. UPDATE 表2 SET 表2.C = (SELECT B FROM 表1 WHERE 表1.A = 表2.A) WHERE EXIST ...
- datawindow 创建操作报表。
最近制作做了几个简单的报表,写下主要的代码.以便各位参考. public void FillDW(DataTable dtbResult) { try { DataRow dtFr; ; , j = ...
- HDU 5876 (大连网赛1009)(BFS + set)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5876 题意:给定一个图(n个顶点m条边),求其补图最短路 思路:集合a表示当前还未寻找到的点,集合b表 ...
- SendInput模拟Win(VK_LWIN)键的问题
使用SendInput模拟按键,代码如下: #include "stdafx.h" #include <windows.h> #include <conio.h& ...
- JavaScript作用域学习笔记
重点知识点摘要 一 函数对象和其它对象一样,拥有可以通过代码访问的属性和一系列仅供JavaScript引擎访问的内部属性 其中一个内部属性是[[Scope]],由ECMA-262标准第三版定义,该内部 ...
- C++中 destory() 和deallocate()以及delete函数的相关性和区别性
这里非常的绕口 需要仔细的来看看: destory(): 显示调用一个对象的析构函数 相当于释放一个对象需要释放的一些动态内存 为下次真正释放对象做准备 deallocate():真正的释放一个内存 ...