├── .github └── FUNDING.yml ├── ISE_Cew ├── FunctionTests.txt ├── ISE_Cew.Tests.ps1 ├── ISE_Cew.psd1 ├── ISE_Cew.psm1 ├── ModuleTests.txt ├── Private │ └── Placeholder.txt ├── ProfileExample.txt ├── Public │ ├── AlignEquals.ps1 │ ├── CleanWhitespace.ps1 │ ├── Get-AlignedText.ps1 │ ├── Get-CustomCommitMessage.ps1 │ ├── Get-ProxyCode.ps1 │ ├── New-ISETab.ps1 │ ├── Request-YesOrNo.ps1 │ ├── Save-AllNamedFile.ps1 │ ├── Save-AllUnnamedFile.ps1 │ └── Save-CurrentISEFile.ps1 ├── Sample_LICENSE.MD └── Standardpsm1.txt ├── LICENSE ├── README.md └── appveyor.yml /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | github: [kilasuit] 2 | -------------------------------------------------------------------------------- /ISE_Cew/FunctionTests.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kilasuit/ISE_Cew/07bbce08a98279e5f7b4cd0103d6bb1f53b46b01/ISE_Cew/FunctionTests.txt -------------------------------------------------------------------------------- /ISE_Cew/ISE_Cew.Tests.ps1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kilasuit/ISE_Cew/07bbce08a98279e5f7b4cd0103d6bb1f53b46b01/ISE_Cew/ISE_Cew.Tests.ps1 -------------------------------------------------------------------------------- /ISE_Cew/ISE_Cew.psd1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kilasuit/ISE_Cew/07bbce08a98279e5f7b4cd0103d6bb1f53b46b01/ISE_Cew/ISE_Cew.psd1 -------------------------------------------------------------------------------- /ISE_Cew/ISE_Cew.psm1: -------------------------------------------------------------------------------- 1 | #Module#ISE_Cew# 2 | $Here = Split-Path -Parent $MyInvocation.MyCommand.Path 3 | $PublicModules = Get-ChildItem "$here\Public" -Filter '*.ps1' -Recurse | Where-Object {$_.name -NotMatch "Tests.ps1"} 4 | $PrivateModules = Get-ChildItem "$here\Private" -Filter '*.ps1' -Recurse | Where-Object {$_.name -NotMatch "Tests.ps1"} 5 | 6 | foreach($module in $Publicmodules) { . $module.FullName } 7 | 8 | foreach($module in $Privatemodules) { . $module.fullname} 9 | 10 | Export-ModuleMember -Function $PublicModules.BaseName -------------------------------------------------------------------------------- /ISE_Cew/ModuleTests.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kilasuit/ISE_Cew/07bbce08a98279e5f7b4cd0103d6bb1f53b46b01/ISE_Cew/ModuleTests.txt -------------------------------------------------------------------------------- /ISE_Cew/Private/Placeholder.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kilasuit/ISE_Cew/07bbce08a98279e5f7b4cd0103d6bb1f53b46b01/ISE_Cew/Private/Placeholder.txt -------------------------------------------------------------------------------- /ISE_Cew/ProfileExample.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kilasuit/ISE_Cew/07bbce08a98279e5f7b4cd0103d6bb1f53b46b01/ISE_Cew/ProfileExample.txt -------------------------------------------------------------------------------- /ISE_Cew/Public/AlignEquals.ps1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kilasuit/ISE_Cew/07bbce08a98279e5f7b4cd0103d6bb1f53b46b01/ISE_Cew/Public/AlignEquals.ps1 -------------------------------------------------------------------------------- /ISE_Cew/Public/CleanWhitespace.ps1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kilasuit/ISE_Cew/07bbce08a98279e5f7b4cd0103d6bb1f53b46b01/ISE_Cew/Public/CleanWhitespace.ps1 -------------------------------------------------------------------------------- /ISE_Cew/Public/Get-AlignedText.ps1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kilasuit/ISE_Cew/07bbce08a98279e5f7b4cd0103d6bb1f53b46b01/ISE_Cew/Public/Get-AlignedText.ps1 -------------------------------------------------------------------------------- /ISE_Cew/Public/Get-CustomCommitMessage.ps1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kilasuit/ISE_Cew/07bbce08a98279e5f7b4cd0103d6bb1f53b46b01/ISE_Cew/Public/Get-CustomCommitMessage.ps1 -------------------------------------------------------------------------------- /ISE_Cew/Public/Get-ProxyCode.ps1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kilasuit/ISE_Cew/07bbce08a98279e5f7b4cd0103d6bb1f53b46b01/ISE_Cew/Public/Get-ProxyCode.ps1 -------------------------------------------------------------------------------- /ISE_Cew/Public/New-ISETab.ps1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kilasuit/ISE_Cew/07bbce08a98279e5f7b4cd0103d6bb1f53b46b01/ISE_Cew/Public/New-ISETab.ps1 -------------------------------------------------------------------------------- /ISE_Cew/Public/Request-YesOrNo.ps1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kilasuit/ISE_Cew/07bbce08a98279e5f7b4cd0103d6bb1f53b46b01/ISE_Cew/Public/Request-YesOrNo.ps1 -------------------------------------------------------------------------------- /ISE_Cew/Public/Save-AllNamedFile.ps1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kilasuit/ISE_Cew/07bbce08a98279e5f7b4cd0103d6bb1f53b46b01/ISE_Cew/Public/Save-AllNamedFile.ps1 -------------------------------------------------------------------------------- /ISE_Cew/Public/Save-AllUnnamedFile.ps1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kilasuit/ISE_Cew/07bbce08a98279e5f7b4cd0103d6bb1f53b46b01/ISE_Cew/Public/Save-AllUnnamedFile.ps1 -------------------------------------------------------------------------------- /ISE_Cew/Public/Save-CurrentISEFile.ps1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kilasuit/ISE_Cew/07bbce08a98279e5f7b4cd0103d6bb1f53b46b01/ISE_Cew/Public/Save-CurrentISEFile.ps1 -------------------------------------------------------------------------------- /ISE_Cew/Sample_LICENSE.MD: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2016 Ryan Yates 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /ISE_Cew/Standardpsm1.txt: -------------------------------------------------------------------------------- 1 | $Here = Split-Path -Parent $MyInvocation.MyCommand.Path 2 | $PublicModules = Get-ChildItem "$here\Public" -Filter '*.ps1' -Recurse | Where-Object {$_.name -NotMatch "Tests.ps1"} 3 | $PrivateModules = Get-ChildItem "$here\Private" -Filter '*.ps1' -Recurse | Where-Object {$_.name -NotMatch "Tests.ps1"} 4 | 5 | foreach($module in $Publicmodules) { . $module.FullName } 6 | 7 | foreach($module in $Privatemodules) { . $module.fullname} 8 | 9 | Export-ModuleMember -Function $PublicModules.BaseName 10 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2016 Ryan Yates 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # ISE_Cew - Archived 2 | ISE_Cew is an addon for PowerShell ISE that simplifies the workflow for Script & Module Creation. 3 | 4 | CEW stands for Creation Efficency Workflow 5 | 6 | It does so by making use of the following required PSDrives 7 | 8 | Scripts-WIP 9 | 10 | Modules-WIP 11 | 12 | ISE_Cew makes use of Git, Pester & PSScriptAnalyzer and automates the creation of the following 13 | 14 | * Git Repo for the Script or Module that is being worked on - this allows you to then publish (with all the Commit history) to GitHub once you have completed the work on the Script or the Module. 15 | * Creation of a standard suite of Pester tests based on the included ISE_Cew.default.tests.ps1 16 | * A set of simple Keyboard Shortcuts to enhance and simplify the overall Script & Module Creation Workflow 17 | 18 | These include 19 | * Ctrl+Shift+S - Save-AllNamedFiles 20 | * Ctrl+Alt+S - Save-AllUnnamedFiles -GeneralModuleDetails $psd1 21 | * Ctrl+Shift+Alt+S - Save-CurrentISEFile 22 | * F6 - AlignEquals 23 | * F7 - CleanWhitespace 24 | -------------------------------------------------------------------------------- /appveyor.yml: -------------------------------------------------------------------------------- 1 | version: 0.1.11.{build} 2 | build: off 3 | install: 4 | - ps: | 5 | Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force 6 | Install-Module -Name Pester -Repository PSGallery -Force 7 | Install-Module -Name PSScriptAnalyzer -Repository PSGallery -Force 8 | 9 | 10 | test_script: 11 | - ps: | 12 | Get-childItem .\ -recurse 13 | $testResultsFile = ".\TestsResults.xml" 14 | $tempModulePath = (Resolve-Path (join-path $PWD '..')).ProviderPath 15 | $env:PSModulePath = "$env:PSModulePath;$tempModulePath" 16 | $res = Invoke-Pester .\Ise_cew\Ise_cew.tests.ps1 -OutputFormat NUnitXml -OutputFile $testResultsFile -PassThru -verbose 17 | (New-Object 'System.Net.WebClient').UploadFile("https://ci.appveyor.com/api/testresults/nunit/$($env:APPVEYOR_JOB_ID)", (Resolve-Path $testResultsFile)) 18 | if ($res.FailedCount -gt 0) { 19 | throw "$($res.FailedCount) tests failed." 20 | } --------------------------------------------------------------------------------