如何:从 Visual Studio 启动工具
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何:从 Visual Studio 启动工具相关的知识,希望对你有一定的参考价值。
参考技术A 例如,可以向“工具”菜单添加项,以启动OLE
View
或
WinDiff
等实用工具。注意对话框中的可用选项以及显示的菜单命令的名称和位置可能会与“帮助”中的描述不同,具体取决于您的当前设置或版本。此帮助页是根据“常规开发设置”而编写的。若要更改设置,请在“工具”菜单上选择“导入和导出设置”。有关更多信息,请参见
Visual
Studio
设置。
若要更多地了解
请参见
为外部工具提供键绑定和快捷键添加快捷键和键绑定外部工具的预定义参数外部工具参数向“工具”菜单中添加外部工具可以向“工具”菜单添加命令以从集成开发环境
(IDE)
中启动另一个应用程序,例如“写字板”。向“工具”菜单添加外部工具在“工具”菜单上选择“外部工具”。在“外部工具”对话框中选择“添加”,并在“标题”框中输入菜单选项的名称。提示在工具名称的某个字母前键入一个“and”符
(&)
可以创建该工具在“工具”菜单上显示的对应命令的快捷键。例如,如果使用“M&y
External
Tool”,字母“y”将是快捷键。在“命令”框中输入要启动的文件的路径,或选择“浏览”定位到相应的文件。可以启动的文件类型有
.exe、.bat、.com、.cmd
和
.pif。
注意如果文件驻留在系统路径上,只输入相应的文件名就可以了。如果没有,则请输入该文件的完整路径。根据需要,选择“使用输出窗口”和“退出时关闭”,然后选择“确定”。
注意
“使用输出窗口”选项只适用于
.bat
和
.com
文件。现在,一条与该工具对应的命令就会显示在“工具”菜单上,此命令使用您输入的文本作为标题。选择新的菜单命令启动该工具。注意将某个外部工具添加到“工具”菜单中并不会将相应的应用程序注册为打开此类型文件的默认工具。例如,如果您希望使用自己喜爱的外部编辑器修改
html
标记,可从“选项”对话框
->“环境”->“Web
浏览器”设置此首选项。还可轻松地创建一个
Visual
Studio
外接程序项目,在启动时通知
IDE
某个外部实用程序将处理类似标记验证或源代码控制集成等任务。将变量传递到外部工具您可以指定在某个命令启动时将传递给该命令某些信息,如用于控制台应用程序的命令行开关。向工具传递变量在“参数”框中输入希望传递给工具的参数,或选择箭头按钮以选择预定义的参数。
注意有关参数语法的更多信息,请参见外部工具参数。如果希望在启动命令时可选择编辑参数,请选择“提示输入参数”。下一次从“工具”菜单启动外部工具时,您选择的参数将会自动传递到该工具。如果选择了“提示输入参数”,则将显示“参数”对话框。指定工作目录您也可以为工具或命令指定工作目录。例如,如果工具从当前目录读取文件系统数据,则工具在启动时要求当前目录中存在某些程序组件。指定工具的工作目录在“初始目录”框中输入工具的工作目录,或选择箭头按钮以选择预定义的目录位置。如果希望在启动命令时可选择指定其他参数,请选择“提示输入参数”。在“输出”窗口中显示
Unicode
输出如果使用的工具提供的输出是
Unicode
形式而不是
ASCII
形式的,则可以选择在“输出”窗口中显示
Unicode。在“输出”窗口中显示
Unicode
输出选择“将输出按
Unicode
处理”。请参见任务如何:向外部工具添加快捷键参考外部工具参数
如何从 Visual Studio Code 运行和调试 Ruby on Rails?
【中文标题】如何从 Visual Studio Code 运行和调试 Ruby on Rails?【英文标题】:How do you run and debug Ruby on Rails from Visual Studio Code? 【发布时间】:2019-01-14 06:28:21 【问题描述】:如何使用内置的 Visual Studio Code 启动/调试功能启动 Ruby on Rails?
如何修复Debugger terminal error: Process failed: spawn rdebug-ide ENOENT
错误?
【问题讨论】:
不是很相关,但万一你还没有它,一定要安装Ruby Solargraph,让生活更轻松。 Ruby 的智能感知是最好的选择,实际上让我从 RubyMine 切换(至少对于编写 C 扩展)。如果使用 Ruby 2.4+,如果收到EventMachine
错误,请阅读说明末尾。
@ForeverZer0 - 谢谢,这真的对我有帮助!试图从臃肿的 RubyMine 中切换出来,但还没有完全实现......
【参考方案1】:
设置和启动
-
在 macOS 或 ctrl 上安装 VS Code Ruby plugin (点击 ⌘+⇧+P +⇧+P 在其他地方输入
ext install
,然后搜索ruby
)
安装一些必需的 Ruby gems
gem install ruby-debug-ide
gem install debase
-
在 Visual Studio Code 中添加 launch configuration(示例配置如下所示)
"name": "Rails server",
"type": "Ruby",
"request": "launch",
"cwd": "$workspaceRoot",
"program": "$workspaceRoot/bin/rails",
"env":
"PATH": "YOUR_PATH_HERE",
"GEM_HOME": "YOUR_GEM_HOME_HERE",
"GEM_PATH": "YOUR_GEM_PATH_HERE",
"RUBY_VERSION": "YOUR_RUBY_VERSION_HERE"
,
"args": [
"server"
]
在某些情况下,您可能不需要指定
env
部分。 在其他情况下,您可以启动 VS Code using the CLI(即从终端),它在某些系统上会自动设置正确的环境变量。
-
快跑!
疑难解答
如果出现以下错误
Debugger terminal error: Process failed: spawn rdebug-ide ENOENT
您的环境变量 (env
) 很可能未设置,插件找不到必要的二进制文件。
-
确保所有 gem 都已安装,如果您使用 bundler,请尝试运行
bundler install --binstubs
。
确保在您的启动配置中设置了env
部分。运行以下 shell 命令以生成您的 env
:
printf "\n\"env\": \n \"PATH\": \"$PATH\",\n \"GEM_HOME\": \"$GEM_HOME\",\n \"GEM_PATH\": \"$GEM_PATH\",\n \"RUBY_VERSION\": \"$RUBY_VERSION\"\n\n\n"
窗口
确保使用 path
变量的正确拼写(和大小写),即 Windows 上的 Path
来源:
https://github.com/rubyide/vscode-ruby/issues/214#issuecomment-393111908 https://www.reddit.com/r/vscode/comments/5w1acs/getting_error_debugger_terminal_error_process/ How to extend $PATH in launch.json in Visual Studio Code?【讨论】:
不确定它在 Rails 上的表现如何,但CodeRunner 也可能用于快速测试运行和调试。 @ForeverZer0 - CodeRunner 非常适合脚本和简单的应用程序。不幸的是,它并不能很好地与更复杂的框架一起使用,这些框架像 Rails 一样进行大量路由和渲染...... 我对 Rails 的假设也差不多,但对于 sn-ps 等仍然有用。只是抛出一个光荣的提及。 :) 对于所有在 Windows 上遇到此错误的人,尽管在 launch.json 中将 PATH 添加到 ENV,但请注意:***.com/a/54993121/717732 - 检查您操作系统上 PATH 的拼写! 刚刚gem install ruby-debug-ide
工作【参考方案2】:
我花了一天的大部分时间来解决这个问题。
我最终将我的 launch.json 配置剥离为以下内容:
"configurations": [
"name": "Rails server",
"type": "Ruby",
"request": "launch",
"cwd": "$workspaceRoot",
"program": "/Users/mitch/.rvm/gems/ruby-2.3.0@gg_portal/bin/rails",
"args": [
"server"
],
"useBundler": true,
"pathToRDebugIDE": "/Users/mitch/.rvm/gems/ruby-2.3.0@gg_portal/gems/ruby-debug-ide-0.6.1",
"pathToBundler": "/Users/mitch/.rvm/gems/ruby-2.3.0@gg_portal/wrappers/bundle",
"showDebuggerOutput": true
]
首先,特别是如果您使用 RVM 并且拥有不同的 Gemset,请确保您的路径与正确的 Gemset 一致。
为我解决问题的是 pathToBundler。
which bundle
/Users/mitch/.rvm/gems/ruby-2.3.0@gg_portal/bin/bundle
在设置 binstubs 捆绑器的路径(如上所示)和从 /wrappers/ 指向的捆绑器(如下所示)方面似乎存在一些不兼容,因此将 pathToBundler 更改为:
"pathToBundler": "/Users/mitch/.rvm/gems/ruby-2.3.0@gg_portal/wrappers/bundle",
解决了问题。
这里有一种相关的讨论:
https://github.com/rails/rails/issues/31193
虽然不是专门讨论 VSCode 和调试,但它谈到了 binstubs。
【讨论】:
谢谢。我还尝试了“~/.rvm/gems....”以便其他用户可以共享,但 VSCode 不喜欢它。 谢谢。大多数答案都需要和缺少“useBundler”。【参考方案3】:如果您使用的是依赖 bash 垫片的 ruby 版本管理器,例如 rbenv,请尝试从终端启动 VS Code。这应该允许 VS Code 获取 rbenv 设置的环境变量。或者,您可以在 launch.json
中设置您的环境变量,但这不是一个非常易于维护的解决方案。
【讨论】:
以上是关于如何:从 Visual Studio 启动工具的主要内容,如果未能解决你的问题,请参考以下文章
安装编译器时如何确保 Visual Studio 更新注册表
如何在 Visual Studio 2012 中更正 wpf datagrid 列名冗余
如何从 Visual Studio Code 中的集成终端打开文件?