当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 周五乐趣:嗯,这是一个很好的待办事项!

作者:精品下载站 日期:2024-12-14 07:49:51 浏览:14 分类:玩电脑

周五乐趣:嗯,这是一个很好的待办事项!


今天的星期五乐趣并不完全具有开创性,但您可能会发现它在 PowerShell 脚本开发过程中很有用。您甚至可能会了解一些有关 PowerShell ISE 的知识,无论如何,这确实是这些文章的重点。有多少次您在编写脚本或 PowerShell 工具时知道必须编写某些代码但现在还没有准备好处理它?希望您至少有足够的悟性插入一条评论来提醒您需要做什么。那么为什么不在 PowerShell ISE 中尽可能简化这个简单的步骤呢?

当我编写脚本时,我的手已经放在键盘上,我希望能够不费力气地完成这样的事情。在这种情况下,我希望能够插入一行 PowerShell,如下所示:

# ToDo: <task here>

就像我说的,这并不令人兴奋,而且我可能可以同样快地打字。当然,文字可以更长,我也希望保持一致。一种解决方案是为 ISE 创建一个代码片段。

New-IseSnippet -Title ToDo -Description "Insert a ToDo comment" -Text "# ToDo: "

这将创建一个我可以使用 Ctrl+J 调出的片段。

[玩转系统] 周五乐趣:嗯,这是一个很好的待办事项!

这显然是有效的,并且是插入固定代码块的好方法。但需要按几次键才能找到该代码片段,将其插入,然后将光标跳到正确的位置,以便我可以插入 ToDo 任务。

作为替代方案,我可以使用 PowerShell ISE 的对象模型并以编程方式将文本插入我的脚本中。我可以运行这样的表达式:

$psise.CurrentFile.Editor.InsertText("# [$((Get-Date).ToShortDateString())] ToDo: ")

该命令将在当前文件中光标当前所在的位置插入注释,其中还将包含日期作为短字符串。我认为知道我何时添加待办事项可能会很方便。当然,每次都要输入很多内容,我显然不会这样做。因此,我将这些命令添加到我的 PowerShell ISE 配置文件脚本中。

$action = { 
    $psise.CurrentFile.Editor.InsertText("# [$((Get-Date).ToShortDateString())] ToDo: ")
    #jump cursor to the end
    $psise.CurrentFile.editor.SetCaretPosition($psise.CurrentFile.Editor.CaretLine,$psise.CurrentFile.Editor.CaretColumn)
}

#add the action to the Add-Ons menu
$psISE.CurrentPowerShellTab.AddOnsMenu.Submenus.Add("ToDo",$Action,"Alt+2" ) | Out-Null

这些命令将使用键盘快捷键 Alt+2 将项目添加到附加组件菜单。

[玩转系统] 周五乐趣:嗯,这是一个很好的待办事项!

现在,每当我需要插入 ToDo 注释时,我都可以按 Alt+2,这将插入注释并将光标跳到行尾,以便我可以继续输入。

[玩转系统] 周五乐趣:嗯,这是一个很好的待办事项!

我发现这些节省时间的小事加起来会让整个过程变得更加愉快。正如您可能想象的那样,如何使用这些技术实际上没有限制。事实上,如果您将此作为自己节省时间的模型,我希望您能分享。

周末愉快!

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯