├── .frontmatter └── database │ └── taxonomyDb.json ├── .gitattributes ├── .gitignore ├── .vscode └── settings.json ├── LICENSE ├── README.md ├── frontmatter.json ├── modules ├── JDHTools │ ├── build.ps1 │ └── src │ │ ├── Formats │ │ ├── PSFormatView.format.ps1xml │ │ └── WhoIsResult.format.ps1xml │ │ ├── Functions │ │ ├── Convert-CommandToHashtable.ps1 │ │ ├── ConvertTo-PSClass.ps1 │ │ ├── Get-FormatView.ps1 │ │ ├── Get-GitConfig.ps1 │ │ ├── Get-MyAlias.ps1 │ │ ├── Get-WhoIs.ps1 │ │ └── New-PSFormatXML.ps1 │ │ ├── JDHTools.psd1 │ │ └── JDHTools.psm1 ├── PowerCast │ ├── Podcasts.opml │ ├── README.md │ ├── RSSFeeds.opml │ ├── cocktailnation.csv │ ├── feeds.csv │ ├── feeds.db │ ├── feeds.sql │ └── test.ps1 ├── build.ps1 ├── sdwheeler.ADUtils │ ├── sdwheeler.ADUtils.psd1 │ └── sdwheeler.ADUtils.psm1 ├── sdwheeler.ContentUtils │ ├── ArticleInfo.Format.ps1xml │ ├── sdwheeler.ContentUtils.psd1 │ └── sdwheeler.ContentUtils.psm1 ├── sdwheeler.CryptoTools │ ├── sdwheeler.CryptoTools.psd1 │ └── sdwheeler.CryptoTools.psm1 ├── sdwheeler.DataConversion │ ├── sdwheeler.DataConversion.psd1 │ └── sdwheeler.DataConversion.psm1 ├── sdwheeler.EssentialUtils │ ├── HtmlHeaderLink.Types.ps1xml │ ├── MyAsciiData.Format.ps1xml │ ├── ToolData.Format.ps1xml │ ├── ToolData.Types.ps1xml │ ├── ToolInfo.Format.ps1xml │ ├── ascii.csv │ ├── sdwheeler.EssentialUtils.psd1 │ ├── sdwheeler.EssentialUtils.psm1 │ └── tools.jsonc ├── sdwheeler.FileManagement │ ├── sdwheeler.FileManagement.psd1 │ └── sdwheeler.FileManagement.psm1 ├── sdwheeler.GitTools │ ├── sdwheeler.GitTools.psd1 │ └── sdwheeler.GitTools.psm1 ├── sdwheeler.PSUtils │ ├── PipelineValue.Format.ps1xml │ ├── PipelineValue.Types.ps1xml │ ├── sdwheeler.PSUtils.psd1 │ └── sdwheeler.PSUtils.psm1 ├── sdwheeler.ROBTools │ ├── sdwheeler.ROBTools.psd1 │ └── sdwheeler.ROBTools.psm1 ├── sdwheeler.ReleaseInfo │ ├── EolData.Format.ps1xml │ ├── EolData.Types.ps1xml │ ├── PmcData.Format.ps1xml │ ├── PowerShellLifecycle.jsonc │ ├── ReleaseData.Format.ps1xml │ ├── sdwheeler.ReleaseInfo.psd1 │ └── sdwheeler.ReleaseInfo.psm1 ├── sdwheeler.SqliteTools │ ├── sdwheeler.SqliteTools.psd1 │ └── sdwheeler.SqliteTools.psm1 ├── sdwheeler.SystemUtils │ ├── RdpError.Format.ps1xml │ ├── rdpcodes.json │ ├── sdwheeler.SystemUtils.psd1 │ └── sdwheeler.SystemUtils.psm1 └── sdwheeler.Themes │ ├── sdwheeler.Themes.Format.ps1xml │ ├── sdwheeler.Themes.psd1 │ └── sdwheeler.Themes.psm1 └── profile ├── config ├── configstore │ └── update-notifier-npm-check-updates.json ├── gh-dash │ ├── config.yml │ ├── distros.yml │ ├── docs-repos.yml │ ├── docutune.yml │ ├── ps-repos.yml │ └── tools-repos.yml ├── git │ └── gitk ├── icons │ ├── github-32x32.ico │ ├── linux-small.png │ └── msstore-logo-256x256.ico └── micro │ ├── bindings.json │ ├── buffers │ └── history │ └── settings.json ├── datafiles ├── HTTPCodes.csv ├── OnIT-3x3.png ├── bugcheck.csv ├── codes.db ├── ftpcodes.csv ├── rdpcodes.csv └── smtpcodes.csv ├── scripts ├── AllUsersAllHosts.ps1 ├── AllUsersCurrentHost.ps1 ├── CurrentUserAllHosts.ps1 ├── CurrentUserCurrentHost_Conhost.ps1 ├── CurrentUserCurrentHost_ISE.ps1 └── CurrentUserCurrentHost_VSCode.ps1 ├── vale ├── allrules.ini ├── styles │ ├── Google │ │ ├── AMPM.yml │ │ ├── Acronyms.yml │ │ ├── Colons.yml │ │ ├── Contractions.yml │ │ ├── DateFormat.yml │ │ ├── Ellipses.yml │ │ ├── EmDash.yml │ │ ├── EnDash.yml │ │ ├── Exclamation.yml │ │ ├── FirstPerson.yml │ │ ├── Gender.yml │ │ ├── GenderBias.yml │ │ ├── HeadingPunctuation.yml │ │ ├── Headings.yml │ │ ├── Latin.yml │ │ ├── LyHyphens.yml │ │ ├── OptionalPlurals.yml │ │ ├── Ordinal.yml │ │ ├── OxfordComma.yml │ │ ├── Parens.yml │ │ ├── Passive.yml │ │ ├── Periods.yml │ │ ├── Quotes.yml │ │ ├── Ranges.yml │ │ ├── Semicolons.yml │ │ ├── Slang.yml │ │ ├── Spacing.yml │ │ ├── Spelling.yml │ │ ├── Units.yml │ │ ├── We.yml │ │ ├── Will.yml │ │ ├── WordList.yml │ │ ├── meta.json │ │ └── vocab.txt │ ├── Joblint │ │ ├── Acronyms.yml │ │ ├── Benefits.yml │ │ ├── Bro.yml │ │ ├── Competitive.yml │ │ ├── Derogatory.yml │ │ ├── DevEnv.yml │ │ ├── DumbTitles.yml │ │ ├── Gendered.yml │ │ ├── Hair.yml │ │ ├── LegacyTech.yml │ │ ├── Meritocracy.yml │ │ ├── Profanity.yml │ │ ├── README.md │ │ ├── Reassure.yml │ │ ├── Sexualised.yml │ │ ├── Starter.yml │ │ ├── TechTerms.yml │ │ ├── Visionary.yml │ │ └── meta.json │ ├── Microsoft │ │ ├── AMPM.yml │ │ ├── Accessibility.yml │ │ ├── Acronyms.yml │ │ ├── Adverbs.yml │ │ ├── Auto.yml │ │ ├── Avoid.yml │ │ ├── Backend.yml │ │ ├── ComplexWords.yml │ │ ├── Contractions.yml │ │ ├── Dashes.yml │ │ ├── DateFormat.yml │ │ ├── DateNumbers.yml │ │ ├── DateOrder.yml │ │ ├── Ellipses.yml │ │ ├── FirstPerson.yml │ │ ├── Foreign.yml │ │ ├── Gender.yml │ │ ├── GenderBias.yml │ │ ├── GeneralURL.yml │ │ ├── HeadingAcronyms.yml │ │ ├── HeadingColons.yml │ │ ├── HeadingPunctuation.yml │ │ ├── Headings.yml │ │ ├── Hyphens.yml │ │ ├── Negative.yml │ │ ├── Ordinal.yml │ │ ├── OxfordComma.yml │ │ ├── Passive.yml │ │ ├── Percentages.yml │ │ ├── Quotes.yml │ │ ├── RangeFormat.yml │ │ ├── RangeTime.yml │ │ ├── Ranges.yml │ │ ├── Semicolon.yml │ │ ├── SentenceLength.yml │ │ ├── Spacing.yml │ │ ├── Suspended.yml │ │ ├── Terms.yml │ │ ├── URLFormat.yml │ │ ├── Units.yml │ │ ├── Vocab.yml │ │ ├── We.yml │ │ ├── Wordiness.yml │ │ └── meta.json │ ├── PowerShell-Docs │ │ ├── Avoid.yml │ │ ├── Cliches.yml │ │ ├── EmDash.yml │ │ ├── EnDash.yml │ │ ├── EndOfLine.yml │ │ ├── Exclamation.yml │ │ ├── HeadingDepth.yml │ │ ├── InternalLinkCase.yml │ │ ├── InternalLinkExtension.yml │ │ ├── Latin.yml │ │ ├── LyHyphens.yml │ │ ├── MergeConflictMarkers.yml │ │ ├── OptionalPlurals.yml │ │ ├── Parens.yml │ │ ├── Passive.yml │ │ ├── Periods.yml │ │ ├── Repetition.yml │ │ ├── Semicolons.yml │ │ ├── Slang.yml │ │ ├── So.yml │ │ ├── Spacing.yml │ │ ├── Spelling.yml │ │ ├── TODO.yml │ │ ├── TooWordy.yml │ │ ├── Using.yml │ │ ├── Utilize.yml │ │ ├── Weasel.yml │ │ ├── Which.yml │ │ ├── WhichComma.yml │ │ ├── WhichThat.yml │ │ ├── Will.yml │ │ ├── WordList.yml │ │ ├── Wordiness.yml │ │ └── meta.json │ ├── Readability │ │ ├── AutomatedReadability.yml │ │ ├── ColemanLiau.yml │ │ ├── FleschKincaid.yml │ │ ├── FleschReadingEase.yml │ │ ├── GunningFog.yml │ │ ├── LIX.yml │ │ ├── SMOG.yml │ │ └── meta.json │ ├── Vocab │ │ ├── Blog │ │ │ ├── accept.txt │ │ │ └── reject.txt │ │ ├── Docs │ │ │ ├── accept.txt │ │ │ └── reject.txt │ │ └── Marketing │ │ │ ├── accept.txt │ │ │ └── reject.txt │ ├── alex │ │ ├── Ablist.yml │ │ ├── Condescending.yml │ │ ├── Gendered.yml │ │ ├── LGBTQ.yml │ │ ├── Press.yml │ │ ├── Profanity.yml │ │ ├── ProfanityLikely.yml │ │ ├── ProfanityMaybe.yml │ │ ├── ProfanityUnlikely.yml │ │ ├── README.md │ │ ├── Race.yml │ │ ├── Suicide.yml │ │ └── meta.json │ ├── proselint │ │ ├── Airlinese.yml │ │ ├── AnimalLabels.yml │ │ ├── Annotations.yml │ │ ├── Apologizing.yml │ │ ├── Archaisms.yml │ │ ├── But.yml │ │ ├── Cliches.yml │ │ ├── CorporateSpeak.yml │ │ ├── Currency.yml │ │ ├── Cursing.yml │ │ ├── DateCase.yml │ │ ├── DateMidnight.yml │ │ ├── DateRedundancy.yml │ │ ├── DateSpacing.yml │ │ ├── DenizenLabels.yml │ │ ├── Diacritical.yml │ │ ├── GenderBias.yml │ │ ├── GroupTerms.yml │ │ ├── Hedging.yml │ │ ├── Hyperbole.yml │ │ ├── Jargon.yml │ │ ├── LGBTOffensive.yml │ │ ├── LGBTTerms.yml │ │ ├── Malapropisms.yml │ │ ├── Needless.yml │ │ ├── Nonwords.yml │ │ ├── Oxymorons.yml │ │ ├── P-Value.yml │ │ ├── RASSyndrome.yml │ │ ├── README.md │ │ ├── Skunked.yml │ │ ├── Spelling.yml │ │ ├── Typography.yml │ │ ├── Uncomparables.yml │ │ ├── Very.yml │ │ └── meta.json │ └── write-good │ │ ├── Cliches.yml │ │ ├── E-Prime.yml │ │ ├── Illusions.yml │ │ ├── Passive.yml │ │ ├── README.md │ │ ├── So.yml │ │ ├── ThereIs.yml │ │ ├── TooWordy.yml │ │ ├── Weasel.yml │ │ └── meta.json └── vale.ini └── vscode ├── keybindings.json └── settings.json /.frontmatter/database/taxonomyDb.json: -------------------------------------------------------------------------------- 1 | {} -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | 4 | # Custom for Visual Studio 5 | *.cs diff=csharp 6 | 7 | # Standard to msysgit 8 | *.doc diff=astextplain 9 | *.DOC diff=astextplain 10 | *.docx diff=astextplain 11 | *.DOCX diff=astextplain 12 | *.dot diff=astextplain 13 | *.DOT diff=astextplain 14 | *.pdf diff=astextplain 15 | *.PDF diff=astextplain 16 | *.rtf diff=astextplain 17 | *.RTF diff=astextplain 18 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # ========================= 2 | # Build artifacts 3 | # ========================= 4 | **/out 5 | *.nupkg 6 | testResults.xml 7 | 8 | # ========================= 9 | # Windows OS files 10 | # ========================= 11 | # Windows image file caches 12 | Thumbs.db 13 | ehthumbs.db 14 | $RECYCLE.BIN/ 15 | Desktop.ini 16 | 17 | # Windows Installer files 18 | *.cab 19 | *.msi 20 | *.msm 21 | *.msp 22 | 23 | # Windows shortcuts 24 | *.lnk 25 | 26 | # Application specific files 27 | debug.log 28 | 29 | # ========================= 30 | # macOS files 31 | # ========================= 32 | .DS_Store 33 | .AppleDouble 34 | .LSOverride 35 | 36 | # Thumbnails 37 | ._* 38 | 39 | # Files that might appear in the root of a volume 40 | .DocumentRevisions-V100 41 | .fseventsd 42 | .Spotlight-V100 43 | .TemporaryItems 44 | .Trashes 45 | .VolumeIcon.icns 46 | 47 | # Directories potentially created on remote AFP share 48 | .AppleDB 49 | .AppleDesktop 50 | Network Trash Folder 51 | Temporary Items 52 | .apdisk 53 | -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "markdownlint.config": { 3 | "MD028": false, 4 | "MD025": { 5 | "front_matter_title": "" 6 | } 7 | }, 8 | "frontMatter.content.pageFolders": [] 9 | } -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2022 Microsoft Corporation 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 | # tools-by-sean 2 | 3 | This repo contains configuration files, profile scripts, and modules that I use on my personal 4 | machines. I use these tools to make my life easier and more productive. -------------------------------------------------------------------------------- /frontmatter.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://frontmatter.codes/frontmatter.schema.json" 3 | } -------------------------------------------------------------------------------- /modules/JDHTools/build.ps1: -------------------------------------------------------------------------------- 1 | param( 2 | [switch]$publish, 3 | [switch]$test, 4 | [switch]$package, 5 | [switch]$clean, 6 | [switch]$gallery 7 | ) 8 | $moduleName = "JDHTools" 9 | $psd = Import-PowerShellDataFile "$PSScriptRoot/src/${moduleName}.psd1" 10 | $moduleVersion = $psd.ModuleVersion 11 | $moduleDeploymentDir = "${PSScriptRoot}/out/${moduleName}/${moduleVersion}" 12 | 13 | if ( $clean ) { 14 | $null = if (Test-Path "${PSScriptRoot}/out") { 15 | Remove-Item "${PSScriptRoot}/out" -Recurse -Force 16 | } 17 | $null = if (Test-Path "$PsScriptRoot/*.nupkg") { 18 | Remove-Item "$PsScriptRoot/*.nupkg" -Force 19 | } 20 | $null = if (Test-Path "$PsScriptRoot/testResults.xml") { 21 | Remove-Item "$PsScriptRoot/testResults.xml" -Force 22 | } 23 | } 24 | 25 | if ($publish) { 26 | # create directory with version 27 | # copy files to that location 28 | if (-not (Test-Path $moduleDeploymentDir)) { 29 | New-Item -Type Directory -Force -Path $moduleDeploymentDir 30 | } 31 | Copy-Item -Force -Recurse "$PSScriptRoot/src/${moduleName}.psd1" $moduleDeploymentDir 32 | Copy-Item -Force -Recurse "$PSScriptRoot/src/${moduleName}.psm1" $moduleDeploymentDir 33 | Copy-Item -Force -Recurse "$PSScriptRoot/src/Formats" $moduleDeploymentDir 34 | Get-ChildItem "$PSScriptRoot/src/Functions" | ForEach-Object { 35 | Get-Content $_ | Add-Content -Path "$moduleDeploymentDir/${moduleName}.psm1" 36 | Add-Content -Path "$moduleDeploymentDir/${moduleName}.psm1" -Value '#---------------------------' 37 | } 38 | } 39 | 40 | if ( $test ) { 41 | if ( ! $publish ) { 42 | ./build.ps1 -publish 43 | } 44 | # run tests 45 | $psExe = (get-process -id $PID).MainModule.filename 46 | $testCommand = "import-module $PSScriptRoot/out/${moduleName}; Set-Location $PSScriptRoot/test; Invoke-Pester -OutputFormat NUnitXml -OutputFile $PSScriptRoot/testResults.xml" 47 | $psArgs = "-noprofile","-noninteractive","-command",$testCommand 48 | & $psExe $psArgs 49 | } 50 | 51 | if ( $package ) { 52 | if (-not (test-path $moduleDeploymentDir)) { 53 | throw "Could not find '$moduleDeploymentDir'" 54 | } 55 | $repoName = [Guid]::NewGuid().ToString("N") 56 | try { 57 | Register-PSRepository -Name $repoName -SourceLocation $PSScriptRoot 58 | Publish-Module -Path $moduleDeploymentDir -Repository $repoName 59 | } 60 | finally { 61 | Unregister-PSRepository -Name $repoName 62 | } 63 | } 64 | 65 | if ( $gallery ) { 66 | if (-not (test-path $moduleDeploymentDir)) { 67 | throw "Could not find '$moduleDeploymentDir'" 68 | } 69 | Publish-Module -NuGetApiKey $env:PSGALLERY_TOKEN -Path $PSScriptRoot/out/${moduleName} -Repository PSGallery 70 | } -------------------------------------------------------------------------------- /modules/JDHTools/src/Formats/PSFormatView.format.ps1xml: -------------------------------------------------------------------------------- 1 | 2 | 9 | 10 | 11 | 12 | 13 | default 14 | 15 | PSFormatView 16 | 17 | 18 | 19 | if ($host.name -match "console|code|remotehost"){ 20 | "$([char]27)[1;4m$($_.typename)$([char]27)[0m" 21 | } 22 | else { 23 | $_.Typename 24 | } 25 | 26 | 27 | 28 | 29 | 31 | 32 | 33 | 34 | 9 35 | left 36 | 37 | 38 | 39 | 70 40 | left 41 | 42 | 43 | 44 | 45 | 46 | 47 | Format 48 | 49 | 50 | Name 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | -------------------------------------------------------------------------------- /modules/JDHTools/src/Formats/WhoIsResult.format.ps1xml: -------------------------------------------------------------------------------- 1 |  2 | 9 | 10 | 11 | 12 | 13 | default 14 | 15 | WhoIsResult 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 10 24 | left 25 | 26 | 27 | 28 | 10 29 | left 30 | 31 | 32 | 33 | 42 34 | left 35 | 36 | 37 | 38 | 12 39 | left 40 | 41 | 42 | 43 | 23 44 | left 45 | 46 | 47 | 48 | 49 | 50 | 51 | Name 52 | 53 | 54 | IP 55 | 56 | 57 | RegisteredOrganization 58 | 59 | 60 | NetBlocks 61 | 62 | 63 | Updated 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | -------------------------------------------------------------------------------- /modules/JDHTools/src/Functions/Get-FormatView.ps1: -------------------------------------------------------------------------------- 1 | <# 2 | Author = 'Jeff Hicks' 3 | CompanyName = 'JDH Information Technology Solutions, Inc.' 4 | Copyright = '(c) 2017-2022 JDH Information Technology Solutions, Inc.' 5 | ProjectUrl = 'https://github.com/jdhitsolutions/PSScriptTools' 6 | #> 7 | 8 | #display a listing of all defined formatting views 9 | 10 | Function Get-FormatView { 11 | [cmdletbinding()] 12 | [alias("gfv")] 13 | [OutputType("PSFormatView")] 14 | Param( 15 | [Parameter(HelpMessage = "Specify a typename such as System.Diagnostics.Process.",ValueFromPipeline)] 16 | [ValidateNotNullOrEmpty()] 17 | [string]$TypeName = "*", 18 | [Parameter(HelpMessage = "Specify the version of PowerShell this cmdlet uses for the formatting data. Enter a two digit number separated by a period.")] 19 | [system.version]$PowerShellVersion = $PSVersionTable.PSVersion 20 | ) 21 | Begin { 22 | Write-Verbose "[$((Get-Date).TimeOfDay) BEGIN ] Starting $($MyInvocation.MyCommand)" 23 | #a regular expression pattern to match on the format type 24 | [regex]$rx = "Table|List|Wide|Custom" 25 | } #begin 26 | 27 | Process { 28 | Try { 29 | $data = Get-FormatData -Typename $Typename -PowerShellVersion $PowerShellVersion -errorAction Stop | Sort-Object -Property TypeName 30 | } 31 | Catch { 32 | Throw $_ 33 | } 34 | if ($data) { 35 | Write-Verbose "[$((Get-Date).TimeOfDay) PROCESS] Found $($data.count) type definitions" 36 | #$data | Out-String | Write-Verbose 37 | foreach ($item in $data) { 38 | #there might be a collection of TypeNames 39 | foreach ($tn in $item.TypeNames) { 40 | #$tn | out-string | write-verbose 41 | 42 | Write-Verbose "[$((Get-Date).TimeOfDay) PROCESS] Getting formatting view for $($tn)" 43 | foreach ($view in $item.FormatViewDefinition) { 44 | [PSCustomObject]@{ 45 | PSTypename = "PSFormatView" 46 | Format = $rx.Match($view.Control).value 47 | Name = $view.name 48 | Typename = $tn 49 | } 50 | } 51 | } #foreach tn 52 | } #foreach item 53 | } #if data 54 | 55 | } #process 56 | 57 | End { 58 | Write-Verbose "[$((Get-Date).TimeOfDay) END ] Ending $($MyInvocation.MyCommand)" 59 | } #end 60 | 61 | } #close Get-FormatView -------------------------------------------------------------------------------- /modules/JDHTools/src/Functions/Get-MyAlias.ps1: -------------------------------------------------------------------------------- 1 | <# 2 | Author = 'Jeff Hicks' 3 | CompanyName = 'JDH Information Technology Solutions, Inc.' 4 | Copyright = '(c) 2017-2022 JDH Information Technology Solutions, Inc.' 5 | ProjectUrl = 'https://github.com/jdhitsolutions/PSScriptTools' 6 | #> 7 | 8 | Function Get-MyAlias { 9 | [cmdletbinding()] 10 | [alias("gma")] 11 | [OutputType([System.Management.Automation.AliasInfo])] 12 | Param( 13 | [Parameter(HelpMessage = "Only show aliases that DO NOT belong to a module.")] 14 | [switch]$NoModule 15 | ) 16 | Begin { 17 | Write-Verbose "[$((Get-Date).TimeOfDay) BEGIN ] Starting $($MyInvocation.MyCommand)" 18 | $DefaultAliases = $($host.Runspace).InitialSessionState.commands.where( {$_.commandtype -eq 'alias'}).name 19 | Write-Verbose "[$((Get-Date).TimeOfDay) BEGIN ] Detected $($defaultAliases.count) initial aliases." 20 | } #begin 21 | 22 | Process { 23 | Write-Verbose "[$((Get-Date).TimeOfDay) PROCESS] Getting all aliases not part of the initial session." 24 | if ($NoModule) { 25 | Write-Verbose "[$((Get-Date).TimeOfDay) PROCESS] Filtering out aliases that belong to a module." 26 | (Get-Alias).Where( {($DefaultAliases -NotContains $_.name) -AND (-Not $_.Source)}) 27 | } 28 | else { 29 | (Get-Alias).Where({$DefaultAliases -NotContains $_.name}) 30 | } 31 | } #process 32 | 33 | End { 34 | Write-Verbose "[$((Get-Date).TimeOfDay) END ] Ending $($MyInvocation.MyCommand)" 35 | } #end 36 | 37 | } #close Get-MyAlias 38 | -------------------------------------------------------------------------------- /modules/JDHTools/src/Functions/Get-WhoIs.ps1: -------------------------------------------------------------------------------- 1 | <# 2 | Author = 'Jeff Hicks' 3 | CompanyName = 'JDH Information Technology Solutions, Inc.' 4 | Copyright = '(c) 2017-2022 JDH Information Technology Solutions, Inc.' 5 | ProjectUrl = 'https://github.com/jdhitsolutions/PSScriptTools' 6 | #> 7 | 8 | Function Get-WhoIs { 9 | [cmdletbinding()] 10 | [OutputType("WhoIsResult")] 11 | Param ( 12 | [parameter(Position = 0, 13 | Mandatory, 14 | HelpMessage = "Enter an IPV4 address to lookup with WhoIs", 15 | ValueFromPipeline, 16 | ValueFromPipelineByPropertyName)] 17 | [ValidateNotNullOrEmpty()] 18 | [ValidatePattern("^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$")] 19 | [ValidateScript( { 20 | #verify each octet is valid to simplify the regex 21 | $test = ($_.split(".")).where({[int]$_ -gt 255}) 22 | if ($test) { 23 | Throw "$_ does not appear to be a valid IPv4 address." 24 | $false 25 | } 26 | else { 27 | $true 28 | } 29 | })] 30 | [string]$IPAddress 31 | ) 32 | 33 | Begin { 34 | Write-Verbose "Starting $($MyInvocation.MyCommand)" 35 | $baseURL = 'http://whois.arin.net/rest' 36 | #default is XML anyway 37 | $header = @{"Accept" = "application/xml"} 38 | 39 | } #begin 40 | 41 | Process { 42 | Write-Verbose "Getting WhoIs information for $IPAddress" 43 | $url = "$baseUrl/ip/$ipaddress" 44 | Try { 45 | $r = Invoke-Restmethod $url -Headers $header -ErrorAction stop 46 | Write-verbose ($r.net | Out-String) 47 | } 48 | Catch { 49 | $errMsg = "Sorry. There was an error retrieving WhoIs information for $IPAddress. $($_.exception.message)" 50 | $host.ui.WriteErrorLine($errMsg) 51 | } 52 | 53 | if ($r.net) { 54 | Write-Verbose "Creating result" 55 | [PSCustomObject]@{ 56 | PSTypeName = "WhoIsResult" 57 | IP = $ipaddress 58 | Name = $r.net.name 59 | RegisteredOrganization = $r.net.orgRef.name 60 | City = (Invoke-RestMethod $r.net.orgRef.'#text').org.city 61 | StartAddress = $r.net.startAddress 62 | EndAddress = $r.net.endAddress 63 | NetBlocks = $r.net.netBlocks.netBlock | foreach-object {"$($_.startaddress)/$($_.cidrLength)"} 64 | Updated = $r.net.updateDate -as [datetime] 65 | } 66 | } #If $r.net 67 | } #Process 68 | 69 | End { 70 | Write-Verbose "Ending $($MyInvocation.MyCommand)" 71 | } #end 72 | } 73 | -------------------------------------------------------------------------------- /modules/JDHTools/src/JDHTools.psd1: -------------------------------------------------------------------------------- 1 | @{ 2 | RootModule = '.\JDHTools.psm1' 3 | ModuleVersion = '1.0.0' 4 | GUID = '1f40e601-7f2a-44c9-ba90-48fc850f7fdb' 5 | Author = 'Jeff Hicks' 6 | CompanyName = 'JDH Information Technology Solutions, Inc.' 7 | Copyright = '(c) 2017-2022 JDH Information Technology Solutions, Inc.' 8 | Description = 'A collection of tools from Jeff Hicks' 9 | # PowerShellVersion = '' 10 | # TypesToProcess = @() 11 | FormatsToProcess = @( 12 | 'Formats\PSFormatView.format.ps1xml', 13 | 'Formats\WhoIsResult.format.ps1xml' 14 | ) 15 | # NestedModules = @() 16 | FunctionsToExport = @( 17 | 'Convert-CommandToHashtable', 18 | 'ConvertTo-PSClass', 19 | 'Get-FormatView', 20 | 'Get-GitConfig', 21 | 'Get-MyAlias', 22 | 'Get-WhoIs', 23 | 'New-PSFormatXML' 24 | ) 25 | CmdletsToExport = @() 26 | VariablesToExport = @() 27 | AliasesToExport = @() 28 | # FileList = @() 29 | PrivateData = @{ 30 | PSData = @{ 31 | # Tags = @() 32 | # LicenseUri = '' 33 | # ProjectUri = '' 34 | # IconUri = '' 35 | # ReleaseNotes = '' 36 | # Prerelease = '' 37 | # RequireLicenseAcceptance = $false 38 | # ExternalModuleDependencies = @() 39 | } # End of PSData hashtable 40 | } # End of PrivateData hashtable 41 | # HelpInfoURI = '' 42 | } 43 | -------------------------------------------------------------------------------- /modules/JDHTools/src/JDHTools.psm1: -------------------------------------------------------------------------------- 1 | <# 2 | This module is a collection of PowerShell tools written by Jeff Hicks. He has published 3 | these in modules or GitHub Gists. 4 | #> 5 | 6 | -------------------------------------------------------------------------------- /modules/PowerCast/README.md: -------------------------------------------------------------------------------- 1 | 2 | # PowerCast 3 | 4 | A PowerShell Podcast client 5 | 6 | The goal of this project is to create a set of modules to create a podcast client. 7 | 8 | I am starting by building a framework of functions to manage the SQLite database, consume RSS/Atom podcast feeds, and download media enclosures published in the feed. 9 | -------------------------------------------------------------------------------- /modules/PowerCast/feeds.csv: -------------------------------------------------------------------------------- 1 | "title","url","logo","active","lastsync","newestitem","genre","folder" 2 | "Cocktail Nation","http://cocktailnation.podbean.com/feed/","logo.jpg","true",,,"Loung Music","D:\Podcasts\Cocktail Nation\" 3 | -------------------------------------------------------------------------------- /modules/PowerCast/feeds.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sdwheeler/tools-by-sean/a451f6b76799406b268b10da79dae7718b931e18/modules/PowerCast/feeds.db -------------------------------------------------------------------------------- /modules/PowerCast/feeds.sql: -------------------------------------------------------------------------------- 1 | drop table podcasts; 2 | CREATE TABLE podcasts ( 3 | podcastId INTEGER PRIMARY KEY AUTOINCREMENT, 4 | title TEXT NOT NULL, 5 | feedUrl TEXT NOT NULL, 6 | siteUrl TEXT, 7 | logoUrl TEXT, 8 | pubDate TEXT, 9 | lastBuildDate TEXT, 10 | lastSyncDate TEXT, 11 | lastItemDate TEXT, 12 | folder TEXT, 13 | logoFile TEXT, 14 | genre TEXT, 15 | subscribed BOOLEAN, 16 | autodownload BOOLEAN 17 | ); 18 | 19 | drop table episodes; 20 | CREATE TABLE episodes ( 21 | episodeId INTEGER PRIMARY KEY AUTOINCREMENT, 22 | title TEXT NOT NULL, 23 | link TEXT, 24 | pubDate TEXT, 25 | lastSyncDate TEXT, 26 | guid TEXT NOT NULL, 27 | enclosure TEXT, 28 | filesize UNSIGNED BIG INT, 29 | duration TEXT, 30 | filename TEXT, 31 | download BOOLEAN, 32 | feedId INT 33 | ); 34 | 35 | drop table downloads; 36 | CREATE TABLE downloads ( 37 | rowId INTEGER PRIMARY KEY, 38 | JobId TEXT, 39 | podcastId INTEGER, 40 | episodeId INTEGER, 41 | Filename TEXT, 42 | AssetType TEXT 43 | ); -------------------------------------------------------------------------------- /modules/build.ps1: -------------------------------------------------------------------------------- 1 | param( 2 | [string[]]$Module = 'sdwheeler.*', 3 | [switch]$clean, 4 | [switch]$publish 5 | ) 6 | if ( $clean ) { 7 | $null = if (Test-Path "${PSScriptRoot}/out") { 8 | Remove-Item "${PSScriptRoot}/out" -Recurse -Force 9 | } 10 | } 11 | 12 | if ($publish) { 13 | $ModuleList = (dir $Module -dir).BaseName 14 | foreach ($moduleName in $ModuleList) { 15 | $psd = Import-PowerShellDataFile "$PSScriptRoot/${moduleName}/${moduleName}.psd1" 16 | $moduleVersion = $psd.ModuleVersion 17 | $moduleDeploymentDir = "${PSScriptRoot}/out/${moduleName}/${moduleVersion}" 18 | 19 | # create directory with version 20 | # copy files to that location 21 | if (-not (Test-Path $moduleDeploymentDir)) { 22 | New-Item -Type Directory -Force -Path $moduleDeploymentDir 23 | } 24 | Copy-Item -Force -Recurse "$PSScriptRoot/${moduleName}/*" $moduleDeploymentDir 25 | 26 | if (-not (test-path $moduleDeploymentDir)) { 27 | throw "Could not find '$moduleDeploymentDir'" 28 | } 29 | Publish-PSResource -Path $moduleDeploymentDir -Repository LocalPSResource 30 | } 31 | } -------------------------------------------------------------------------------- /modules/sdwheeler.ADUtils/sdwheeler.ADUtils.psd1: -------------------------------------------------------------------------------- 1 | # Module manifest for module 'sdwheeler.ADUtils' 2 | # Generated by: Sean D. Wheeler 3 | # Generated on: 9/10/2021 4 | @{ 5 | RootModule = '.\sdwheeler.ADUtils.psm1' 6 | ModuleVersion = '1.0.0' 7 | GUID = '9f48c392-0ac8-4e08-bbad-055491ab0d0f' 8 | Author = 'Sean D. Wheeler ' 9 | CompanyName = 'Microsoft' 10 | Copyright = '(c) Microsoft. All rights reserved.' 11 | Description = 'Collection of commands to work with Active Directory.' 12 | # PowerShellVersion = '' 13 | # RequiredModules = @() 14 | # RequiredAssemblies = @() 15 | # ScriptsToProcess = @() 16 | # TypesToProcess = @() 17 | # FormatsToProcess = @() 18 | # NestedModules = @() 19 | FunctionsToExport = @( 20 | 'Get-XADUserPasswordExpirationDate', 21 | 'Get-ADUserPhone', 22 | 'Get-LocalGroupMembership', 23 | 'Get-ADUserPhoto', 24 | 'Set-ADUserPhoto' 25 | ) 26 | CmdletsToExport = @() 27 | VariablesToExport = '*' 28 | AliasesToExport = '*' 29 | # List of all files packaged with this module 30 | # FileList = @() 31 | # HelpInfoURI = '' 32 | PrivateData = @{ 33 | PSData = @{ 34 | Tags = @() 35 | LicenseUri = 'https://github.com/sdwheeler/tools-by-sean/blob/main/LICENSE' 36 | ProjectUri = 'https://github.com/sdwheeler/tools-by-sean/modules/sdwheeler.ADUtils' 37 | RequireLicenseAcceptance = $false 38 | } 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /modules/sdwheeler.ContentUtils/ArticleInfo.Format.ps1xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | ArticleInfoTable 10 | 11 | ArticleInfo 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | repo 31 | 32 | 33 | reference 34 | Right 35 | 36 | 37 | conceptual 38 | Right 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /modules/sdwheeler.ContentUtils/sdwheeler.ContentUtils.psd1: -------------------------------------------------------------------------------- 1 | # Module manifest for module 'sdwheeler.ContentUtils' 2 | # Generated by: Sean D. Wheeler 3 | # Generated on: 9/10/2021 4 | @{ 5 | RootModule = '.\sdwheeler.ContentUtils.psm1' 6 | ModuleVersion = '1.0.4' 7 | GUID = 'ada27b77-02b5-4c60-b494-9204ffd6316d' 8 | Author = 'Sean D. Wheeler ' 9 | CompanyName = 'Microsoft' 10 | Copyright = '(c) Microsoft. All rights reserved.' 11 | Description = 'Collection of commands to work with Docs content.' 12 | # PowerShellVersion = '' 13 | # RequiredModules = @() 14 | # RequiredAssemblies = @() 15 | # ScriptsToProcess = @() 16 | # TypesToProcess = @() 17 | FormatsToProcess = @('ArticleInfo.Format.ps1xml') 18 | # NestedModules = @() 19 | FunctionsToExport = @( 20 | 'Edit-PSDoc', 21 | 'Get-ArticleCount', 22 | 'Get-ArticleIssueTemplate', 23 | 'Get-DocsUrl', 24 | 'Get-MDRule', 25 | 'Get-SourceUrl', 26 | 'Get-VersionedContent', 27 | 'Show-Help', 28 | 'Switch-WordWrapSettings' 29 | ) 30 | CmdletsToExport = @() 31 | VariablesToExport = '*' 32 | AliasesToExport = '*' 33 | # List of all files packaged with this module 34 | # FileList = @() 35 | # HelpInfoURI = '' 36 | PrivateData = @{ 37 | PSData = @{ 38 | Tags = @() 39 | LicenseUri = 'https://github.com/sdwheeler/tools-by-sean/blob/main/LICENSE' 40 | ProjectUri = 'https://github.com/sdwheeler/tools-by-sean/modules/sdwheeler.ContentUtils' 41 | RequireLicenseAcceptance = $false 42 | } 43 | } 44 | } -------------------------------------------------------------------------------- /modules/sdwheeler.CryptoTools/sdwheeler.CryptoTools.psd1: -------------------------------------------------------------------------------- 1 | # Module manifest for module 'sdwheeler.CryptoTools' 2 | # Generated by: Sean D. Wheeler 3 | # Generated on: 9/10/2021 4 | @{ 5 | RootModule = '.\sdwheeler.CryptoTools.psm1' 6 | ModuleVersion = '1.0.0' 7 | GUID = 'c66d9a90-4588-4fc2-985b-24385c7e8d26' 8 | Author = 'Sean D. Wheeler ' 9 | CompanyName = 'Microsoft' 10 | Copyright = '(c) Microsoft. All rights reserved.' 11 | Description = 'Collection of tools to work with certificates and hashes.' 12 | # PowerShellVersion = '' 13 | # RequiredModules = @() 14 | # RequiredAssemblies = @() 15 | # ScriptsToProcess = @() 16 | # TypesToProcess = @() 17 | # FormatsToProcess = @() 18 | # NestedModules = @() 19 | FunctionsToExport = @( 20 | 'Get-Hash', 21 | 'Show-Certificate' 22 | ) 23 | CmdletsToExport = @() 24 | VariablesToExport = '*' 25 | AliasesToExport = '*' 26 | # List of all files packaged with this module 27 | # FileList = @() 28 | # HelpInfoURI = '' 29 | PrivateData = @{ 30 | PSData = @{ 31 | Tags = @() 32 | LicenseUri = 'https://github.com/sdwheeler/tools-by-sean/blob/main/LICENSE' 33 | ProjectUri = 'https://github.com/sdwheeler/tools-by-sean/modules/sdwheeler.CyptoTools' 34 | RequireLicenseAcceptance = $false 35 | } 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /modules/sdwheeler.DataConversion/sdwheeler.DataConversion.psd1: -------------------------------------------------------------------------------- 1 | # Module manifest for module 'sdwheeler.DataConversion' 2 | # Generated by: Sean D. Wheeler 3 | # Generated on: 9/10/2021 4 | @{ 5 | RootModule = '.\sdwheeler.DataConversion.psm1' 6 | ModuleVersion = '1.0.2' 7 | GUID = '710d103e-3d99-4766-81e8-701544805286' 8 | Author = 'Sean D. Wheeler ' 9 | CompanyName = 'Microsoft' 10 | Copyright = '(c) Microsoft. All rights reserved.' 11 | Description = 'Collection of command to convert to/from different data formats.' 12 | # PowerShellVersion = '' 13 | # RequiredModules = @() 14 | # RequiredAssemblies = @() 15 | # ScriptsToProcess = @() 16 | # TypesToProcess = @() 17 | # FormatsToProcess = @() 18 | # NestedModules = @() 19 | FunctionsToExport = @( 20 | 'ConvertTo-UrlEncoding', 21 | 'ConvertFrom-UrlEncoding', 22 | 'ConvertTo-HtmlEncoding', 23 | 'ConvertFrom-HtmlEncoding' 24 | ) 25 | CmdletsToExport = @() 26 | VariablesToExport = '*' 27 | AliasesToExport = 'htmldecode', 'htmlencode', 'urldecode', 'urlencode' 28 | # List of all files packaged with this module 29 | # FileList = @() 30 | # HelpInfoURI = '' 31 | PrivateData = @{ 32 | PSData = @{ 33 | Tags = @() 34 | LicenseUri = 'https://github.com/sdwheeler/tools-by-sean/blob/main/LICENSE' 35 | ProjectUri = 'https://github.com/sdwheeler/tools-by-sean/modules/sdwheeler.DataConversion' 36 | RequireLicenseAcceptance = $false 37 | } 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /modules/sdwheeler.DataConversion/sdwheeler.DataConversion.psm1: -------------------------------------------------------------------------------- 1 | #------------------------------------------------------- 2 | #region Data Conversion Functions 3 | #------------------------------------------------------- 4 | function ConvertTo-UrlEncoding($str) { return [system.net.webutility]::UrlEncode($str) } 5 | Set-Alias -Name urlencode -Value ConvertTo-UrlEncoding 6 | #------------------------------------------------------- 7 | function ConvertFrom-UrlEncoding($str) { return [system.net.webutility]::UrlDecode($str) } 8 | Set-Alias -Name urldecode -Value ConvertFrom-UrlEncoding 9 | #------------------------------------------------------- 10 | function ConvertTo-HtmlEncoding($str) { return [system.net.webutility]::HtmlEncode($str) } 11 | Set-Alias -Name htmlencode -Value ConvertTo-HtmlEncoding 12 | #------------------------------------------------------- 13 | function ConvertFrom-HtmlEncoding($str) { return [system.net.webutility]::HtmlDecode($str) } 14 | Set-Alias -Name htmldecode -Value ConvertFrom-HtmlEncoding 15 | #------------------------------------------------------- 16 | #endregion 17 | -------------------------------------------------------------------------------- /modules/sdwheeler.EssentialUtils/HtmlHeaderLink.Types.ps1xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | HtmlHeaderLink 9 | 10 | 11 | PSStandardMembers 12 | 13 | 14 | DefaultDisplayPropertySet 15 | 16 | rel 17 | type 18 | href 19 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /modules/sdwheeler.EssentialUtils/MyAsciiData.Format.ps1xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | MyAsciiDataTable 10 | 11 | MyAsciiData 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | Number 41 | 42 | 43 | Collection 44 | 45 | 46 | Symbol 47 | 48 | 49 | HtmlNumber 50 | 51 | 52 | HtmlName 53 | 54 | 55 | Description 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | -------------------------------------------------------------------------------- /modules/sdwheeler.EssentialUtils/ToolData.Types.ps1xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | ToolData 9 | 10 | 11 | PSStandardMembers 12 | 13 | 14 | DefaultDisplayPropertySet 15 | 16 | Name 17 | InstalledVersion 18 | GitHubTag 19 | GHReleaseDate 20 | WingetVer 21 | InstallType 22 | GitRepo 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /modules/sdwheeler.EssentialUtils/ToolInfo.Format.ps1xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | ToolInfoList 10 | 11 | ToolInfo 12 | 13 | 14 | 15 | 16 | 17 | 18 | Installed 19 | 20 | 21 | Current 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | ToolInfoNotesList 30 | 31 | ToolInfoWithNotes 32 | 33 | 34 | 35 | 36 | 37 | 38 | Installed 39 | 40 | 41 | Current 42 | 43 | 44 | ReleaseNotes 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | -------------------------------------------------------------------------------- /modules/sdwheeler.EssentialUtils/sdwheeler.EssentialUtils.psd1: -------------------------------------------------------------------------------- 1 | # Module manifest for module 'sdwheeler.ContentUtils' 2 | # Generated by: Sean D. Wheeler 3 | # Generated on: 7/25/2023 4 | 5 | @{ 6 | RootModule = './sdwheeler.EssentialUtils.psm1' 7 | ModuleVersion = '1.0.8' 8 | GUID = '15ca876c-30a1-483e-b20b-0a3bc21b6994' 9 | Author = 'Sean D. Wheeler ' 10 | CompanyName = 'Microsoft' 11 | Copyright = '(c) Microsoft. All rights reserved.' 12 | Description = 'My essential tools to load in my profile.' 13 | # PowerShellVersion = '' 14 | # RequiredModules = @() 15 | # RequiredAssemblies = @() 16 | # ScriptsToProcess = @() 17 | TypesToProcess = @( 18 | 'HtmlHeaderLink.Types.ps1xml', 19 | 'ToolData.Types.ps1xml' 20 | ) 21 | FormatsToProcess = @( 22 | 'ToolData.Format.ps1xml', 23 | 'ToolInfo.Format.ps1xml', 24 | 'MyAsciiData.Format.ps1xml' 25 | ) 26 | # NestedModules = @() 27 | FunctionsToExport = @( 28 | 'bc', 29 | 'ed', 30 | 'soma', 31 | 'Edit-Profile', 32 | 'Format-TableAuto', 33 | 'Format-TableWrapped', 34 | 'Get-AsciiTable', 35 | 'Get-AsciiValue', 36 | 'Get-HtmlHeaderLinks', 37 | 'Get-KeyChord' 38 | 'Get-MyHistory', 39 | 'Find-CLI', 40 | 'Find-Tool', 41 | 'New-Directory' 42 | 'Push-MyLocation', 43 | 'Set-EnvironmentVariable', 44 | 'Sync-EnvironmentVariable', 45 | 'Save-History', 46 | 'Save-Profile', 47 | 'Show-Redirects', 48 | 'Update-CLI', 49 | 'Update-Profile', 50 | 'Update-Sysinternals' 51 | ) 52 | 53 | CmdletsToExport = @() 54 | VariablesToExport = '*' 55 | AliasesToExport = '*' 56 | # List of all files packaged with this module 57 | # FileList = @() 58 | # HelpInfoURI = '' 59 | PrivateData = @{ 60 | PSData = @{ 61 | Tags = @() 62 | LicenseUri = 'https://github.com/sdwheeler/tools-by-sean/blob/main/LICENSE' 63 | ProjectUri = 'https://github.com/sdwheeler/tools-by-sean/modules/sdwheeler.EssentialUtils' 64 | RequireLicenseAcceptance = $false 65 | } 66 | } 67 | } -------------------------------------------------------------------------------- /modules/sdwheeler.FileManagement/sdwheeler.FileManagement.psd1: -------------------------------------------------------------------------------- 1 | # Module manifest for module 'sdwheeler.FileManagement' 2 | # Generated by: Sean D. Wheeler 3 | # Generated on: 9/10/2021 4 | @{ 5 | RootModule = '.\sdwheeler.FileManagement.psm1' 6 | ModuleVersion = '1.0.2' 7 | GUID = 'b6b0a4e7-f502-4c3d-aeae-2f54f0e4c08d' 8 | Author = 'Sean D. Wheeler ' 9 | CompanyName = 'Microsoft' 10 | Copyright = '(c) Microsoft. All rights reserved.' 11 | Description = 'Collection of command for working with files and the filesystem.' 12 | # PowerShellVersion = '' 13 | # RequiredModules = @() 14 | # RequiredAssemblies = @() 15 | # ScriptsToProcess = @() 16 | # TypesToProcess = @() 17 | # FormatsToProcess = @() 18 | # NestedModules = @() 19 | FunctionsToExport = @( 20 | 'Get-FileEncoding', 21 | 'Get-FileType', 22 | 'Get-ImageMetadata', 23 | 'Get-MediaInfo', 24 | 'Set-MedaInfo' 25 | ) 26 | CmdletsToExport = @() 27 | VariablesToExport = '*' 28 | AliasesToExport = '*' 29 | # List of all files packaged with this module 30 | # FileList = @() 31 | # HelpInfoURI = '' 32 | PrivateData = @{ 33 | PSData = @{ 34 | Tags = @() 35 | LicenseUri = 'https://github.com/sdwheeler/tools-by-sean/blob/main/LICENSE' 36 | ProjectUri = 'https://github.com/sdwheeler/tools-by-sean/modules/sdwheeler.FileManagement' 37 | RequireLicenseAcceptance = $false 38 | } 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /modules/sdwheeler.GitTools/sdwheeler.GitTools.psd1: -------------------------------------------------------------------------------- 1 | # Module manifest for module 'sdwheeler.GitTools' 2 | # Generated by: Sean D. Wheeler 3 | @{ 4 | RootModule = '.\sdwheeler.GitTools.psm1' 5 | ModuleVersion = '1.4.2' 6 | GUID = '7e0bfe6d-a3a7-44ff-8a04-8b471d2d4f43' 7 | Author = 'Sean D. Wheeler ' 8 | CompanyName = 'Microsoft' 9 | Copyright = '(c) Microsoft. All rights reserved.' 10 | Description = 'Collection of tools to work with Git and GitHub repositories.' 11 | # PowerShellVersion = '' 12 | # RequiredModules = @() 13 | # RequiredAssemblies = @() 14 | # ScriptsToProcess = @() 15 | # TypesToProcess = @() 16 | # FormatsToProcess = @() 17 | # NestedModules = @() 18 | FunctionsToExport = @( 19 | 'Get-BranchInfo', 20 | 'Get-BranchStatus', 21 | 'Get-DevOpsGitHubConnections', 22 | 'Get-DevOpsWorkItem', 23 | 'Get-GitBranchChanges', 24 | 'Get-GitHubLabels', 25 | 'Get-GitMergeBase', 26 | 'Get-GitRemote', 27 | 'Get-Issue', 28 | 'Get-IssueList', 29 | 'Get-LastCommit', 30 | 'Get-MyRepos', 31 | 'Get-PrFiles', 32 | 'Get-PrMerger', 33 | 'Get-RepoData', 34 | 'Get-RepoStatus', 35 | 'Import-GHIssueToDevOps', 36 | 'Import-GitHubLabels', 37 | 'Invoke-GitHubApi', 38 | 'New-DevOpsWorkItem', 39 | 'New-IssueBranch', 40 | 'New-MergeToLive', 41 | 'New-PrFromBranch', 42 | 'New-RepoData', 43 | 'Open-Repo', 44 | 'Remove-Branch', 45 | 'Remove-RepoData', 46 | 'Select-Branch', 47 | 'Sync-AllRepos', 48 | 'Sync-Branch', 49 | 'Sync-Repo', 50 | 'Update-DevOpsWorkItem', 51 | 'Update-RepoData' 52 | ) 53 | CmdletsToExport = @() 54 | VariablesToExport = '' 55 | AliasesToExport = 'goto', 'checkout', 'syncall', 'nib', 'rmbr' 56 | # List of all files packaged with this module 57 | # FileList = @() 58 | # HelpInfoURI = '' 59 | PrivateData = @{ 60 | PSData = @{ 61 | Tags = @() 62 | LicenseUri = 'https://github.com/sdwheeler/tools-by-sean/blob/main/LICENSE' 63 | ProjectUri = 'https://github.com/sdwheeler/tools-by-sean/modules/sdwheeler.GitTools' 64 | RequireLicenseAcceptance = $false 65 | } 66 | } 67 | } 68 | -------------------------------------------------------------------------------- /modules/sdwheeler.PSUtils/PipelineValue.Format.ps1xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | PipelineValueTable 10 | 11 | PipelineValueType 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | Command 40 | 41 | 42 | Name 43 | 44 | 45 | Aliases 46 | 47 | 48 | ParameterType 49 | 50 | 51 | ByValue 52 | 53 | 54 | ByName 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | -------------------------------------------------------------------------------- /modules/sdwheeler.PSUtils/PipelineValue.Types.ps1xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | PipelineValueType 9 | 10 | 11 | PSStandardMembers 12 | 13 | 14 | DefaultDisplayPropertySet 15 | 16 | Command 17 | Name 18 | Aliases 19 | ParameterType 20 | ByValue 21 | ByName 22 | 23 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /modules/sdwheeler.PSUtils/sdwheeler.PSUtils.psd1: -------------------------------------------------------------------------------- 1 | # Module manifest for module 'sdwheeler.PSUtils' 2 | # Generated by: Sean D. Wheeler 3 | # Generated on: 9/10/2021 4 | @{ 5 | RootModule = '.\sdwheeler.PSUtils.psm1' 6 | ModuleVersion = '1.0.5' 7 | GUID = 'd2e623ff-2df3-4fe0-ab87-ec113d40ab89' 8 | Author = 'Sean D. Wheeler ' 9 | CompanyName = 'Microsoft' 10 | Copyright = '(c) Microsoft. All rights reserved.' 11 | Description = 'Collection of tools to work with the PowerShell environment.' 12 | # PowerShellVersion = '' 13 | # RequiredModules = @() 14 | # RequiredAssemblies = @() 15 | # ScriptsToProcess = @() 16 | TypesToProcess = @('PipelineValue.Types.ps1xml') 17 | FormatsToProcess = @('PipelineValue.Format.ps1xml') 18 | # NestedModules = @() 19 | FunctionsToExport = @( 20 | 'Get-Constructors', 21 | 'Get-EnumValues', 22 | 'Get-ExtendedTypeData', 23 | 'Get-FunctionDefinition', 24 | 'Get-InputType', 25 | 'Get-OutputType', 26 | 'Get-PSHelpInfoUri', 27 | 'Get-RuntimeInformation', 28 | 'Get-RuntimeType', 29 | 'Get-TypeAccelerators', 30 | 'Get-TypeHierarchy', 31 | 'Get-TypeMember', 32 | 'Split-Module', 33 | 'Test-Parameter', 34 | 'Uninstall-ModuleAllVersions' 35 | ) 36 | CmdletsToExport = @() 37 | VariablesToExport = '*' 38 | AliasesToExport = '*' 39 | # List of all files packaged with this module 40 | # FileList = @() 41 | # HelpInfoURI = '' 42 | PrivateData = @{ 43 | PSData = @{ 44 | Tags = @() 45 | LicenseUri = 'https://github.com/sdwheeler/tools-by-sean/blob/main/LICENSE' 46 | ProjectUri = 'https://github.com/sdwheeler/tools-by-sean/modules/sdwheeler.PSUtils' 47 | RequireLicenseAcceptance = $false 48 | } 49 | } 50 | } 51 | -------------------------------------------------------------------------------- /modules/sdwheeler.ROBTools/sdwheeler.ROBTools.psd1: -------------------------------------------------------------------------------- 1 | # Module manifest for module 'sdwheeler.ROBTools' 2 | # Generated by: Sean D. Wheeler 3 | # Generated on: 9/10/2021 4 | @{ 5 | RootModule = '.\sdwheeler.ROBTools.psm1' 6 | ModuleVersion = '1.0.0' 7 | GUID = 'bc4d45eb-8c76-4903-91db-2c65a360cfee' 8 | Author = 'Sean D. Wheeler ' 9 | CompanyName = 'Microsoft' 10 | Copyright = '(c) Microsoft. All rights reserved.' 11 | Description = 'Collection of tools use to create montly ROB reports.' 12 | # PowerShellVersion = '' 13 | # RequiredModules = @("$env:USERPROFILE\Documents\PowerShell\modules\Kusto\Kusto.Data.dll") 14 | # RequiredAssemblies = @() 15 | # ScriptsToProcess = @() 16 | # TypesToProcess = @() 17 | # FormatsToProcess = @() 18 | # NestedModules = @() 19 | FunctionsToExport = @( 20 | 'Get-AllIssues', 21 | 'Get-AllPRs', 22 | 'Get-GHIssue', 23 | 'Get-GHPullRequest', 24 | 'Invoke-KustoForGitHubId' 25 | ) 26 | CmdletsToExport = @() 27 | VariablesToExport = '*' 28 | AliasesToExport = '*' 29 | # List of all files packaged with this module 30 | # FileList = @() 31 | # HelpInfoURI = '' 32 | PrivateData = @{ 33 | PSData = @{ 34 | Tags = @() 35 | LicenseUri = 'https://github.com/sdwheeler/tools-by-sean/blob/main/LICENSE' 36 | ProjectUri = 'https://github.com/sdwheeler/tools-by-sean/modules/sdwheeler.CyptoTools' 37 | RequireLicenseAcceptance = $false 38 | } 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /modules/sdwheeler.ReleaseInfo/EolData.Format.ps1xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | EolDataTable 10 | 11 | EolData 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | os 46 | 47 | 48 | cycle 49 | 50 | 51 | latest 52 | 53 | 54 | codename 55 | 56 | 57 | support 58 | 59 | 60 | eol 61 | 62 | 63 | extendedSupport 64 | 65 | 66 | lts 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | -------------------------------------------------------------------------------- /modules/sdwheeler.ReleaseInfo/EolData.Types.ps1xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | EolData 9 | 10 | 11 | PSStandardMembers 12 | 13 | 14 | DefaultDisplayPropertySet 15 | 16 | os 17 | cycle 18 | latest 19 | codename 20 | support 21 | eol 22 | extendedSupport 23 | lts 24 | 25 | 26 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /modules/sdwheeler.ReleaseInfo/PmcData.Format.ps1xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | PmcDataTable 10 | 11 | PmcData 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | distro 37 | 38 | 39 | version 40 | 41 | 42 | channel 43 | 44 | 45 | processor 46 | 47 | 48 | package 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | -------------------------------------------------------------------------------- /modules/sdwheeler.ReleaseInfo/PowerShellLifecycle.jsonc: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "Version": "v7.6", 4 | "EndOfSupport": "", 5 | "Dotnet": ".NET 9.0.0" 6 | }, 7 | { 8 | "Version": "v7.5", 9 | "EndOfSupport": "2026-05-12", 10 | "Dotnet": ".NET 9.0.0" 11 | }, 12 | { 13 | "Version": "v7.4", 14 | "EndOfSupport": "2026-11-10", 15 | "Dotnet": ".NET 8.0.0" 16 | }, 17 | { 18 | "Version": "v7.3", 19 | "EndOfSupport": "2024-05-08", 20 | "Dotnet": ".NET 7.0" 21 | }, 22 | { 23 | "Version": "v7.2", 24 | "EndOfSupport": "2024-11-08", 25 | "Dotnet": ".NET 6.0" 26 | }, 27 | { 28 | "Version": "v7.0", 29 | "EndOfSupport": "2022-12-03", 30 | "Dotnet": ".NET Core 3.1" 31 | }, 32 | { 33 | "Version": "v7.1", 34 | "EndOfSupport": "2022-05-08", 35 | "Dotnet": ".NET 5.0" 36 | }, 37 | { 38 | "Version": "v6.2", 39 | "EndOfSupport": "2020-09-04", 40 | "Dotnet": ".NET Core 2.1" 41 | }, 42 | { 43 | "Version": "v6.1", 44 | "EndOfSupport": "2019-09-28", 45 | "Dotnet": ".NET Core 2.1" 46 | }, 47 | { 48 | "Version": "v6.0", 49 | "EndOfSupport": "2019-02-13", 50 | "Dotnet": ".NET Core 2.0" 51 | } 52 | ] -------------------------------------------------------------------------------- /modules/sdwheeler.ReleaseInfo/ReleaseData.Format.ps1xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | ReleaseInfoTable 10 | 11 | ReleaseInfoData 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | Version 37 | 38 | 39 | Tag 40 | 41 | 42 | ReleaseDate 43 | 44 | 45 | DotnetVersion 46 | 47 | 48 | EndOfSupport 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | -------------------------------------------------------------------------------- /modules/sdwheeler.ReleaseInfo/sdwheeler.ReleaseInfo.psd1: -------------------------------------------------------------------------------- 1 | # Module manifest for module 'sdwheeler.ReleaseInfo' 2 | # Generated by: Sean D. Wheeler 3 | @{ 4 | RootModule = '.\sdwheeler.ReleaseInfo.psm1' 5 | ModuleVersion = '1.0.6' 6 | GUID = 'd2e623ff-2df3-4fe0-ab87-ec113d40ab89' 7 | Author = 'Sean D. Wheeler ' 8 | CompanyName = 'Microsoft' 9 | Copyright = '(c) Microsoft. All rights reserved.' 10 | Description = 'Collection of tools to work with the PowerShell environment.' 11 | # PowerShellVersion = '' 12 | # RequiredModules = @() 13 | # RequiredAssemblies = @() 14 | # ScriptsToProcess = @() 15 | TypesToProcess = @('EolData.Types.ps1xml') 16 | FormatsToProcess = @( 17 | 'EolData.Format.ps1xml' 18 | 'PmcData.Format.ps1xml' 19 | 'ReleaseData.Format.ps1xml' 20 | ) 21 | # NestedModules = @() 22 | FunctionsToExport = @( 23 | 'Find-PmcPackages', 24 | 'Find-DotnetDockerInfo', 25 | 'Find-DockerImages', 26 | 'Get-LinuxDistroStatus', 27 | 'Get-OSEndOfLife', 28 | 'Get-DSCReleaseHistory', 29 | 'Get-PSReleaseHistory', 30 | 'Get-PSReleasePackage' 31 | ) 32 | CmdletsToExport = @() 33 | VariablesToExport = '*' 34 | AliasesToExport = '*' 35 | # List of all files packaged with this module 36 | # FileList = @() 37 | # HelpInfoURI = '' 38 | PrivateData = @{ 39 | PSData = @{ 40 | Tags = @() 41 | LicenseUri = 'https://github.com/sdwheeler/tools-by-sean/blob/main/LICENSE' 42 | ProjectUri = 'https://github.com/sdwheeler/tools-by-sean/modules/sdwheeler.PSUtils' 43 | RequireLicenseAcceptance = $false 44 | } 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /modules/sdwheeler.SqliteTools/sdwheeler.SqliteTools.psd1: -------------------------------------------------------------------------------- 1 | # Module manifest for module 'sdwheeler.SqliteTools' 2 | # Generated by: Sean D. Wheeler 3 | # Generated on: 9/10/2021 4 | @{ 5 | RootModule = '.\sdwheeler.SqliteTools.psm1' 6 | ModuleVersion = '1.0.0' 7 | GUID = '07959b7e-54de-4002-948e-9abdcbf32f35' 8 | Author = 'Sean D. Wheeler ' 9 | CompanyName = 'Microsoft' 10 | Copyright = '(c) Microsoft. All rights reserved.' 11 | Description = 'A module for accessing SQLite databases.' 12 | # PowerShellVersion = '' 13 | # RequiredModules = @() 14 | # RequiredAssemblies = @("$env:ProgramW6432\System.Data.SQLite\netstandard2.0\System.Data.SQLite.dll") 15 | # ScriptsToProcess = @() 16 | # TypesToProcess = @() 17 | # FormatsToProcess = @() 18 | # NestedModules = @() 19 | FunctionsToExport = @( 20 | 'Open-SQLiteDatabase', 21 | 'Close-SQLiteDatabase', 22 | 'Invoke-SQLiteQuery', 23 | 'Get-AreaCode', 24 | 'Get-Code' 25 | ) 26 | CmdletsToExport = @() 27 | VariablesToExport = '*' 28 | AliasesToExport = '*' 29 | # List of all files packaged with this module 30 | # FileList = @() 31 | # HelpInfoURI = '' 32 | PrivateData = @{ 33 | PSData = @{ 34 | Tags = @() 35 | LicenseUri = 'https://github.com/sdwheeler/tools-by-sean/blob/main/LICENSE' 36 | ProjectUri = 'https://github.com/sdwheeler/tools-by-sean/modules/sdwheeler.SqliteTools' 37 | RequireLicenseAcceptance = $false 38 | } 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /modules/sdwheeler.SystemUtils/RdpError.Format.ps1xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | RdpErrorList 10 | 11 | RdpError 12 | 13 | 14 | 15 | 16 | 17 | 18 | Error 19 | 20 | 21 | 22 | ('{0} (0x{0:X8})' -f $_.Code) 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /modules/sdwheeler.SystemUtils/sdwheeler.SystemUtils.psd1: -------------------------------------------------------------------------------- 1 | # Module manifest for module 'sdwheeler.SystemUtils' 2 | # Generated by: Sean D. Wheeler 3 | # Generated on: 9/10/2021 4 | @{ 5 | RootModule = '.\sdwheeler.SystemUtils.psm1' 6 | ModuleVersion = '1.0.2' 7 | GUID = '28710aa7-3458-4ffe-934c-32759454bbc2' 8 | Author = 'Sean D. Wheeler ' 9 | CompanyName = 'Microsoft' 10 | Copyright = '(c) Microsoft. All rights reserved.' 11 | Description = 'A collection of Windows system utilities.' 12 | # PowerShellVersion = '' 13 | # RequiredModules = @() 14 | # RequiredAssemblies = @() 15 | # ScriptsToProcess = @() 16 | # TypesToProcess = @() 17 | FormatsToProcess = @('RdpError.Format.ps1xml') 18 | # NestedModules = @() 19 | FunctionsToExport = @( 20 | 'Get-AssetInfo', 21 | 'Get-ErrorCode', 22 | 'Get-IpsumLorem', 23 | 'Get-LogonEvents', 24 | 'Get-MUHistory', 25 | 'Get-RdpCode', 26 | 'Get-RestartEvents', 27 | 'Get-TcpStatus', 28 | 'Get-User32Reason', 29 | 'Get-WeekNumber' 30 | ) 31 | CmdletsToExport = @() 32 | VariablesToExport = '*' 33 | AliasesToExport = '*' 34 | # List of all files packaged with this module 35 | # FileList = @() 36 | # HelpInfoURI = '' 37 | PrivateData = @{ 38 | PSData = @{ 39 | Tags = @() 40 | LicenseUri = 'https://github.com/sdwheeler/tools-by-sean/blob/main/LICENSE' 41 | ProjectUri = 'https://github.com/sdwheeler/tools-by-sean/modules/sdwheeler.SystemUtils' 42 | RequireLicenseAcceptance = $false 43 | } 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /modules/sdwheeler.Themes/sdwheeler.Themes.psd1: -------------------------------------------------------------------------------- 1 | # Module manifest for module 'sdwheeler.Themes' 2 | # Generated by: sewhee 3 | # Generated on: 4/16/2024 4 | 5 | @{ 6 | RootModule = 'sdwheeler.Themes.psm1' 7 | ModuleVersion = '0.0.1' 8 | # CompatiblePSEditions = @() 9 | GUID = 'f176df32-3e83-4f73-a049-e1ee039d9e4d' 10 | Author = 'sewhee' 11 | CompanyName = 'Microsoft' 12 | Copyright = '(c) sewhee. All rights reserved.' 13 | Description = 'A module for applying colorized themes to the console.' 14 | PowerShellVersion = 5.1 15 | # PowerShellHostName = '' 16 | # PowerShellHostVersion = '' 17 | # DotNetFrameworkVersion = '' 18 | # ClrVersion = '' 19 | # ProcessorArchitecture = '' 20 | # RequiredModules = @() 21 | # RequiredAssemblies = @() 22 | # ScriptsToProcess = @() 23 | # TypesToProcess = @() 24 | FormatsToProcess = @('sdwheeler.Themes.Format.ps1xml') 25 | # NestedModules = @() 26 | FunctionsToExport = @( 27 | 'Get-ShellTheme', 28 | 'Set-ShellTheme', 29 | 'Get-VSCodeThemes', 30 | 'Set-VSCodeTheme', 31 | 'Get-WindowsTerminalThemes', 32 | 'Get-WindowsTerminalProfiles', 33 | 'Set-WindowsTerminalTheme' 34 | ) 35 | CmdletsToExport = @() 36 | VariablesToExport = '*' 37 | AliasesToExport = @() 38 | # DscResourcesToExport = @() 39 | # ModuleList = @() 40 | # FileList = @() 41 | PrivateData = @{ 42 | PSData = @{ 43 | # Tags = @() 44 | # LicenseUri = '' 45 | # ProjectUri = '' 46 | # IconUri = '' 47 | # ReleaseNotes = '' 48 | # Prerelease = '' 49 | # RequireLicenseAcceptance = $false 50 | # ExternalModuleDependencies = @() 51 | } 52 | } 53 | # HelpInfoURI = '' 54 | # DefaultCommandPrefix = '' 55 | } 56 | -------------------------------------------------------------------------------- /profile/config/configstore/update-notifier-npm-check-updates.json: -------------------------------------------------------------------------------- 1 | { 2 | "optOut": false, 3 | "lastUpdateCheck": 1727280521993 4 | } -------------------------------------------------------------------------------- /profile/config/gh-dash/config.yml: -------------------------------------------------------------------------------- 1 | prSections: 2 | - title: My Pull Requests 3 | filters: is:open author:@me 4 | type: null 5 | - title: Needs My Review 6 | filters: is:open review-requested:@me 7 | type: null 8 | - title: Involved 9 | filters: is:open involves:@me -author:@me 10 | type: null 11 | issuesSections: 12 | - title: My Issues 13 | filters: is:open author:@me 14 | - title: Assigned 15 | filters: is:open assignee:@me 16 | - title: Involved 17 | filters: is:open involves:@me -author:@me 18 | repo: 19 | branchesRefetchIntervalSeconds: 30 20 | prsRefetchIntervalSeconds: 60 21 | defaults: 22 | preview: 23 | open: true 24 | width: 50 25 | prsLimit: 20 26 | prApproveComment: LGTM 27 | issuesLimit: 20 28 | view: prs 29 | layout: 30 | prs: 31 | updatedAt: 32 | width: 5 33 | createdAt: 34 | width: 5 35 | repo: 36 | width: 20 37 | author: 38 | width: 15 39 | authorIcon: 40 | hidden: false 41 | assignees: 42 | width: 20 43 | hidden: true 44 | base: 45 | width: 15 46 | hidden: true 47 | lines: 48 | width: 15 49 | issues: 50 | updatedAt: 51 | width: 5 52 | createdAt: 53 | width: 5 54 | repo: 55 | width: 15 56 | creator: 57 | width: 10 58 | creatorIcon: 59 | hidden: false 60 | assignees: 61 | width: 20 62 | hidden: true 63 | refetchIntervalMinutes: 30 64 | keybindings: 65 | universal: [] 66 | issues: [] 67 | prs: [] 68 | branches: [] 69 | repoPaths: {} 70 | theme: 71 | ui: 72 | sectionsShowCount: true 73 | table: 74 | showSeparator: true 75 | compact: false 76 | pager: 77 | diff: "" 78 | confirmQuit: false 79 | showAuthorIcons: true 80 | smartFilteringAtLaunch: true 81 | -------------------------------------------------------------------------------- /profile/config/gh-dash/distros.yml: -------------------------------------------------------------------------------- 1 | # yaml-language-server: $schema=https://dlvhdr.github.io/gh-dash/configuration/gh-dash/schema.json 2 | issuesSections: 3 | - title: Distros 4 | filters: is:open repo:PowerShell/PowerShell label:Distribution-Request,Distribution-Supported,Distribution-Declined 5 | - title: Snap 6 | filters: is:open repo:PowerShell/PowerShell-Snap 7 | - title: Homebrew 8 | filters: is:open repo:PowerShell/Homebrew-Tap 9 | - title: Docker 10 | filters: is:open repo:PowerShell/PowerShell-Docker 11 | prSections: 12 | - title: Distros 13 | filters: is:open repo:PowerShell/PowerShell label:Distribution-Request,Distribution-Supported,Distribution-Declined 14 | - title: Snap 15 | filters: is:open repo:PowerShell/PowerShell-Snap 16 | - title: Homebrew 17 | filters: is:open repo:PowerShell/Homebrew-Tap 18 | - title: Docker 19 | filters: is:open repo:PowerShell/PowerShell-Docker 20 | defaults: 21 | prsLimit: 20 # global limit 22 | issuesLimit: 20 # global limit 23 | preview: 24 | open: true 25 | width: 60 26 | layout: 27 | prs: 28 | repo: 29 | hidden: true 30 | title: 31 | grow: true 32 | issues: 33 | repo: 34 | hidden: true 35 | title: 36 | grow: true 37 | keybindings: 38 | universal: 39 | - key: pgup 40 | builtin: pageUp 41 | - key: pgdown 42 | builtin: pageDown 43 | theme: 44 | ui: 45 | sectionsShowCount: true 46 | table: 47 | compact: false 48 | showSeparator: true 49 | colors: 50 | text: 51 | primary: '#f7f1ff' 52 | secondary: '#5ad4e6' 53 | inverted: '#282a36' 54 | faint: '#ffb86c' 55 | success: '#50fa7b' 56 | warning: '#ff5555' 57 | error: '#ff5555' 58 | background: 59 | selected: '#39386b' 60 | border: 61 | primary: '#383b5b' 62 | secondary: '#39386b' 63 | faint: '#2b2b40' 64 | -------------------------------------------------------------------------------- /profile/config/gh-dash/docs-repos.yml: -------------------------------------------------------------------------------- 1 | # yaml-language-server: $schema=https://dlvhdr.github.io/gh-dash/configuration/gh-dash/schema.json 2 | issuesSections: 3 | - title: PSDocs 4 | filters: is:open repo:MicrosoftDocs/PowerShell-Docs 5 | - title: PSMods 6 | filters: is:open repo:MicrosoftDocs/PowerShell-Docs-Modules 7 | - title: PSGet 8 | filters: is:open repo:MicrosoftDocs/PowerShell-Docs-PSGet 9 | - title: DSC 10 | filters: is:open repo:MicrosoftDocs/PowerShell-Docs-DSC 11 | - title: CSCode 12 | filters: is:open repo:Azure/CloudShell label:Area-documentation 13 | - title: Blog 14 | filters: is:open repo:PowerShell/Community-Blog repo:PowerShell/PowerShell-Blog 15 | - title: WinPS 16 | filters: is:open repo:MicrosoftDocs/windows-powershell-docs 17 | - title: AzPS 18 | filters: is:open repo:MicrosoftDocs/azure-docs-powershell 19 | limit: 20 20 | prSections: 21 | - title: PSDocs 22 | filters: is:open repo:MicrosoftDocs/PowerShell-Docs 23 | - title: PSMods 24 | filters: is:open repo:MicrosoftDocs/PowerShell-Docs-Modules 25 | - title: PSGet 26 | filters: is:open repo:MicrosoftDocs/PowerShell-Docs-PSGet 27 | - title: DSC 28 | filters: is:open repo:MicrosoftDocs/PowerShell-Docs-DSC 29 | - title: PSSDK 30 | filters: is:open repo:MicrosoftDocs/powershell-docs-sdk-dotnet 31 | - title: AzureDocs 32 | filters: is:open repo:MicrosoftDocs/azure-docs-pr repo:MicrosoftDocs/azure-docs label:machine-configuration/svc,cloud-shell/svc 33 | - title: CSCode 34 | filters: is:open repo:Azure/CloudShell 35 | - title: Blog 36 | filters: is:open repo:PowerShell/Community-Blog repo:PowerShell/PowerShell-Blog 37 | - title: WinPS 38 | filters: is:open repo:MicrosoftDocs/windows-powershell-docs 39 | - title: AzPS 40 | filters: is:open repo:MicrosoftDocs/azure-docs-powershell 41 | limit: 20 42 | defaults: 43 | prsLimit: 20 # global limit 44 | issuesLimit: 20 # global limit 45 | preview: 46 | open: true 47 | width: 60 48 | layout: 49 | prs: 50 | repo: 51 | hidden: true 52 | title: 53 | grow: true 54 | issues: 55 | repo: 56 | hidden: true 57 | title: 58 | grow: true 59 | keybindings: 60 | universal: 61 | - key: pgup 62 | builtin: pageUp 63 | - key: pgdown 64 | builtin: pageDown 65 | theme: 66 | ui: 67 | sectionsShowCount: true 68 | table: 69 | compact: false 70 | showSeparator: true 71 | colors: 72 | text: 73 | primary: '#f7f1ff' 74 | secondary: '#5ad4e6' 75 | inverted: '#282a36' 76 | faint: '#ffb86c' 77 | success: '#50fa7b' 78 | warning: '#ff5555' 79 | error: '#ff5555' 80 | background: 81 | selected: '#39386b' 82 | border: 83 | primary: '#383b5b' 84 | secondary: '#39386b' 85 | faint: '#2b2b40' 86 | -------------------------------------------------------------------------------- /profile/config/gh-dash/docutune.yml: -------------------------------------------------------------------------------- 1 | # yaml-language-server: $schema=https://dlvhdr.github.io/gh-dash/configuration/gh-dash/schema.json 2 | issuesSections: 3 | prSections: 4 | - title: azure-docs 5 | filters: is:open repo:MicrosoftDocs/azure-docs-pr Docutune 6 | - title: ai-docs 7 | filters: is:open repo:MicrosoftDocs/azure-ai-docs-pr Docutune 8 | - title: aks-docs 9 | filters: is:open repo:MicrosoftDocs/azure-aks-docs-pr Docutune 10 | - title: compute-docs 11 | filters: is:open repo:MicrosoftDocs/azure-compute-docs-pr Docutune 12 | - title: databases-docs 13 | filters: is:open repo:MicrosoftDocs/azure-databases-docs-pr Docutune 14 | - title: management-docs 15 | filters: is:open repo:MicrosoftDocs/azure-management-docs-pr Docutune 16 | - title: monitor-docs 17 | filters: is:open repo:MicrosoftDocs/azure-monitor-docs-pr Docutune 18 | - title: security-docs 19 | filters: is:open repo:MicrosoftDocs/azure-security-docs-pr Docutune 20 | defaults: 21 | prsLimit: 20 # global limit 22 | issuesLimit: 20 # global limit 23 | preview: 24 | open: true 25 | width: 60 26 | layout: 27 | prs: 28 | repo: 29 | hidden: true 30 | title: 31 | grow: true 32 | issues: 33 | repo: 34 | hidden: true 35 | title: 36 | grow: true 37 | keybindings: 38 | universal: 39 | - key: pgup 40 | builtin: pageUp 41 | - key: pgdown 42 | builtin: pageDown 43 | theme: 44 | ui: 45 | sectionsShowCount: true 46 | table: 47 | compact: false 48 | showSeparator: true 49 | colors: 50 | text: 51 | primary: '#f7f1ff' 52 | secondary: '#5ad4e6' 53 | inverted: '#282a36' 54 | faint: '#ffb86c' 55 | success: '#50fa7b' 56 | warning: '#ff5555' 57 | error: '#ff5555' 58 | background: 59 | selected: '#39386b' 60 | border: 61 | primary: '#383b5b' 62 | secondary: '#39386b' 63 | faint: '#2b2b40' 64 | -------------------------------------------------------------------------------- /profile/config/gh-dash/ps-repos.yml: -------------------------------------------------------------------------------- 1 | # yaml-language-server: $schema=https://dlvhdr.github.io/gh-dash/configuration/gh-dash/schema.json 2 | issuesSections: 3 | - title: WG Issues 4 | filters: is:open repo:PowerShell/PowerShell label:Needs-Triage label:WG-Interactive-IntelliSense,WG-Interactive-Debugging,WG-Interactive-HelpSystem,WG-Interactive-Console,WG-Interactive-PSReadLine 5 | - title: Crescendo 6 | filters: is:open repo:PowerShell/Crescendo 7 | - title: PSSA 8 | filters: is:open repo:PowerShell/PSScriptAnalyzer 9 | - title: PlatyPS 10 | filters: is:open repo:PowerShell/platyPS 11 | - title: PSResourceGet 12 | filters: is:open repo:PowerShell/PSResourceGet 13 | - title: PSReadLine 14 | filters: is:open repo:PowerShell/PSReadLine 15 | - title: WhatsNew 16 | filters: is:open repo:PowerShell/WhatsNew 17 | prSections: 18 | - title: PS PRs 19 | filters: is:open repo:PowerShell/PowerShell 20 | - title: WG PRs 21 | filters: is:open repo:PowerShell/PowerShell label:WG-Interactive-IntelliSense,WG-Interactive-Debugging,WG-Interactive-HelpSystem,WG-Interactive-Console,WG-Interactive-PSReadLine 22 | - title: Crescendo 23 | filters: is:open repo:PowerShell/Crescendo 24 | - title: PSSA 25 | filters: is:open repo:PowerShell/PSScriptAnalyzer 26 | - title: PlatyPS 27 | filters: is:open repo:PowerShell/platyPS 28 | - title: PSResourceGet 29 | filters: is:open repo:PowerShell/PSResourceGet 30 | - title: PSReadLine 31 | filters: is:open repo:PowerShell/PSReadLine 32 | - title: WhatsNew 33 | filters: is:open repo:PowerShell/WhatsNew 34 | defaults: 35 | prsLimit: 20 # global limit 36 | issuesLimit: 20 # global limit 37 | preview: 38 | open: true 39 | width: 60 40 | layout: 41 | prs: 42 | repo: 43 | hidden: true 44 | title: 45 | grow: true 46 | issues: 47 | repo: 48 | hidden: true 49 | title: 50 | grow: true 51 | keybindings: 52 | universal: 53 | - key: pgup 54 | builtin: pageUp 55 | - key: pgdown 56 | builtin: pageDown 57 | theme: 58 | ui: 59 | sectionsShowCount: true 60 | table: 61 | compact: false 62 | showSeparator: true 63 | colors: 64 | text: 65 | primary: '#f7f1ff' 66 | secondary: '#5ad4e6' 67 | inverted: '#282a36' 68 | faint: '#ffb86c' 69 | success: '#50fa7b' 70 | warning: '#ff5555' 71 | error: '#ff5555' 72 | background: 73 | selected: '#39386b' 74 | border: 75 | primary: '#383b5b' 76 | secondary: '#39386b' 77 | faint: '#2b2b40' 78 | -------------------------------------------------------------------------------- /profile/config/gh-dash/tools-repos.yml: -------------------------------------------------------------------------------- 1 | # yaml-language-server: $schema=https://dlvhdr.github.io/gh-dash/configuration/gh-dash/schema.json 2 | issuesSections: 3 | - title: Documentarian 4 | filters: is:open repo:microsoft/Documentarian 5 | - title: ToolModules 6 | filters: is:open repo:sdwheeler/ToolModules 7 | - title: Dash 8 | filters: is:open repo:dlvhdr/gh-dash 9 | - title: GhCLI 10 | filters: is:open repo:cli/cli 11 | - title: Vale 12 | filters: is:open repo:errata-ai/vale 13 | limit: 50 # optional limit per section 14 | prSections: 15 | - title: Documentarian 16 | filters: is:open repo:microsoft/Documentarian 17 | - title: ToolModules 18 | filters: is:open repo:sdwheeler/ToolModules 19 | - title: Dash 20 | filters: is:open repo:dlvhdr/gh-dash 21 | - title: GhCLI 22 | filters: is:open repo:cli/cli 23 | - title: Vale 24 | filters: is:open repo:errata-ai/vale 25 | limit: 50 # optional limit per section 26 | defaults: 27 | prsLimit: 20 # global limit 28 | issuesLimit: 20 # global limit 29 | preview: 30 | open: true 31 | width: 60 32 | layout: 33 | prs: 34 | repo: 35 | hidden: true 36 | title: 37 | grow: true 38 | issues: 39 | repo: 40 | hidden: true 41 | title: 42 | grow: true 43 | keybindings: 44 | universal: 45 | - key: pgup 46 | builtin: pageUp 47 | - key: pgdown 48 | builtin: pageDown 49 | theme: 50 | ui: 51 | sectionsShowCount: true 52 | table: 53 | compact: false 54 | showSeparator: true 55 | colors: 56 | text: 57 | primary: '#f7f1ff' 58 | secondary: '#5ad4e6' 59 | inverted: '#282a36' 60 | faint: '#ffb86c' 61 | success: '#50fa7b' 62 | warning: '#ff5555' 63 | error: '#ff5555' 64 | background: 65 | selected: '#39386b' 66 | border: 67 | primary: '#383b5b' 68 | secondary: '#39386b' 69 | faint: '#2b2b40' 70 | -------------------------------------------------------------------------------- /profile/config/git/gitk: -------------------------------------------------------------------------------- 1 | set mainfont {Helvetica 9} 2 | set textfont {Courier 9} 3 | set uifont {Helvetica 9 bold} 4 | set tabstop 8 5 | set findmergefiles 0 6 | set maxgraphpct 50 7 | set maxwidth 16 8 | set cmitmode patch 9 | set wrapcomment none 10 | set wrapdefault none 11 | set autocopy 0 12 | set autoselect 1 13 | set autosellen 40 14 | set showneartags 1 15 | set maxrefs 20 16 | set visiblerefs {"master"} 17 | set hideremotes 0 18 | set showlocalchanges 1 19 | set datetimeformat {%Y-%m-%d %H:%M:%S} 20 | set limitdiffs 1 21 | set uicolor SystemButtonFace 22 | set want_ttk 1 23 | set bgcolor SystemWindow 24 | set fgcolor SystemWindowText 25 | set uifgcolor SystemButtonText 26 | set uifgdisabledcolor SystemDisabledText 27 | set colors {"#00ff00" red blue magenta darkgrey brown orange} 28 | set diffcolors {"#c30000" "#009800" blue} 29 | set mergecolors {red blue "#00ff00" purple brown "#009090" magenta "#808000" "#009000" "#ff0080" cyan "#b07070" "#70b0f0" "#70f0b0" "#f0b070" "#ff70b0"} 30 | set markbgcolor #e0e0ff 31 | set diffcontext 5 32 | set selectbgcolor SystemHighlight 33 | set foundbgcolor yellow 34 | set currentsearchhitbgcolor orange 35 | set extdifftool meld 36 | set perfile_attrs 0 37 | set headbgcolor #00ff00 38 | set headfgcolor black 39 | set headoutlinecolor black 40 | set remotebgcolor #ffddaa 41 | set tagbgcolor yellow 42 | set tagfgcolor black 43 | set tagoutlinecolor black 44 | set reflinecolor black 45 | set filesepbgcolor #aaaaaa 46 | set filesepfgcolor black 47 | set linehoverbgcolor #ffff80 48 | set linehoverfgcolor black 49 | set linehoveroutlinecolor black 50 | set mainheadcirclecolor yellow 51 | set workingfilescirclecolor red 52 | set indexcirclecolor #00ff00 53 | set circlecolors {white blue gray blue blue} 54 | set linkfgcolor blue 55 | set circleoutlinecolor SystemWindowText 56 | set diffbgcolors {"#fff3f3" "#f0fff0"} 57 | set web_browser {cmd /c start} 58 | set geometry(main) 1226x865+104+104 59 | set geometry(state) normal 60 | set geometry(topwidth) 1226 61 | set geometry(topheight) 426 62 | set geometry(pwsash0) "685 1" 63 | set geometry(pwsash1) "1048 1" 64 | set geometry(botwidth) 650 65 | set geometry(botheight) 434 66 | set permviews {} 67 | -------------------------------------------------------------------------------- /profile/config/icons/github-32x32.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sdwheeler/tools-by-sean/a451f6b76799406b268b10da79dae7718b931e18/profile/config/icons/github-32x32.ico -------------------------------------------------------------------------------- /profile/config/icons/linux-small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sdwheeler/tools-by-sean/a451f6b76799406b268b10da79dae7718b931e18/profile/config/icons/linux-small.png -------------------------------------------------------------------------------- /profile/config/icons/msstore-logo-256x256.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sdwheeler/tools-by-sean/a451f6b76799406b268b10da79dae7718b931e18/profile/config/icons/msstore-logo-256x256.ico -------------------------------------------------------------------------------- /profile/config/micro/bindings.json: -------------------------------------------------------------------------------- 1 | { 2 | "Alt-/": "lua:comment.comment", 3 | "CtrlUnderscore": "lua:comment.comment" 4 | } 5 | -------------------------------------------------------------------------------- /profile/config/micro/buffers/history: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sdwheeler/tools-by-sean/a451f6b76799406b268b10da79dae7718b931e18/profile/config/micro/buffers/history -------------------------------------------------------------------------------- /profile/config/micro/settings.json: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /profile/datafiles/OnIT-3x3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sdwheeler/tools-by-sean/a451f6b76799406b268b10da79dae7718b931e18/profile/datafiles/OnIT-3x3.png -------------------------------------------------------------------------------- /profile/datafiles/codes.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sdwheeler/tools-by-sean/a451f6b76799406b268b10da79dae7718b931e18/profile/datafiles/codes.db -------------------------------------------------------------------------------- /profile/datafiles/smtpcodes.csv: -------------------------------------------------------------------------------- 1 | Class,Code,RFC,Explanation 2 | Success,211,RFC 5321,System status or system help reply 3 | Success,214,RFC 5321,Help message (Information on how to use the receiver or the meaning of a particular non-standard command; this reply is useful only to the human user) 4 | Success,220,RFC 5321, Service ready 5 | Success,221,RFC 5321, Service closing transmission channel 6 | Success,250,RFC 5321,"Requested mail action okay, completed" 7 | Success,251,RFC 5321,User not local; will forward to (See Section 3.4) 8 | Success,252,RFC 5321,"Cannot VRFY user, but will accept message and attempt delivery (See Section 3.5.3)" 9 | Success Pending,354,RFC 5321,Start mail input; end with . 10 | Negative (Transient),421,RFC 5321," Service not available, closing transmission channel (This may be a reply to any command if the service knows it must shut down)" 11 | Negative (Transient),450,RFC 5321,"Requested mail action not taken: mailbox unavailable (e.g., mailbox busy or temporarily blocked for policy reasons)" 12 | Negative (Transient),451,RFC 5321,Requested action aborted: local error in processing 13 | Negative (Transient),452,RFC 5321,Requested action not taken: insufficient system storage 14 | Negative (Transient),455,RFC 5321,Server unable to accommodate parameters 15 | Negative (Permanent),500,RFC 5321,"Syntax error, command unrecognized (This may include errors such as command line too long)" 16 | Negative (Permanent),501,RFC 5321,Syntax error in parameters or arguments 17 | Negative (Permanent),502,RFC 5321,Command not implemented (see Section 4.2.4) 18 | Negative (Permanent),503,RFC 5321,Bad sequence of commands 19 | Negative (Permanent),504,RFC 5321,Command parameter not implemented 20 | Negative (Permanent),550,RFC 5321,"Requested action not taken: mailbox unavailable (e.g., mailbox not found, no access, or command rejected for policy reasons) " 21 | Negative (Permanent),551,RFC 5321,User not local; please try (See Section 3.4) 22 | Negative (Permanent),552,RFC 5321,Requested mail action aborted: exceeded storage allocation 23 | Negative (Permanent),553,RFC 5321,"Requested action not taken: mailbox name not allowed (e.g., mailbox syntax incorrect)" 24 | Negative (Permanent),554,RFC 5321,"Transaction failed (Or, in the case of a connection-opening response, ""No SMTP service here"")" 25 | Negative (Permanent),555,RFC 5321,MAIL FROM/RCPT TO parameters not recognized or not implemented 26 | -------------------------------------------------------------------------------- /profile/scripts/AllUsersAllHosts.ps1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sdwheeler/tools-by-sean/a451f6b76799406b268b10da79dae7718b931e18/profile/scripts/AllUsersAllHosts.ps1 -------------------------------------------------------------------------------- /profile/scripts/AllUsersCurrentHost.ps1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sdwheeler/tools-by-sean/a451f6b76799406b268b10da79dae7718b931e18/profile/scripts/AllUsersCurrentHost.ps1 -------------------------------------------------------------------------------- /profile/scripts/CurrentUserAllHosts.ps1: -------------------------------------------------------------------------------- 1 |  -------------------------------------------------------------------------------- /profile/scripts/CurrentUserCurrentHost_ISE.ps1: -------------------------------------------------------------------------------- 1 | If ([System.Windows.Input.Keyboard]::IsKeyDown('Ctrl') -eq $false) 2 | { 3 | Start-Steroids 4 | } 5 | #endregion 6 | -------------------------------------------------------------------------------- /profile/scripts/CurrentUserCurrentHost_VSCode.ps1: -------------------------------------------------------------------------------- 1 | # Set up the EditorServicesCommandSuite module for VS Code 2 | Import-CommandSuite 3 | 4 | # Load the profile from the shared location 5 | . $HOME\Documents\PowerShell\Microsoft.PowerShell_profile.ps1 -------------------------------------------------------------------------------- /profile/vale/allrules.ini: -------------------------------------------------------------------------------- 1 | StylesPath = styles 2 | MiMinAlertLevel = suggestion 3 | Vocab = Docs 4 | 5 | [*] 6 | BasedOnStyles = Vale, alex, Google, Joblint, Microsoft, PowerShell-Docs, proselint, Readability,write-good 7 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/AMPM.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Use 'AM' or 'PM' (preceded by a space)." 3 | link: 'https://developers.google.com/style/word-list' 4 | level: error 5 | nonword: true 6 | tokens: 7 | - '\d{1,2}[AP]M' 8 | - '\d{1,2} ?[ap]m' 9 | - '\d{1,2} ?[aApP]\.[mM]\.' 10 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/Acronyms.yml: -------------------------------------------------------------------------------- 1 | extends: conditional 2 | message: "Spell out '%s', if it's unfamiliar to the audience." 3 | link: 'https://developers.google.com/style/abbreviations' 4 | level: suggestion 5 | ignorecase: false 6 | # Ensures that the existence of 'first' implies the existence of 'second'. 7 | first: '\b([A-Z]{3,5})\b' 8 | second: '(?:\b[A-Z][a-z]+ )+\(([A-Z]{3,5})\)' 9 | # ... with the exception of these: 10 | exceptions: 11 | - API 12 | - ASP 13 | - CLI 14 | - CPU 15 | - CSS 16 | - CSV 17 | - DEBUG 18 | - DOM 19 | - DPI 20 | - FAQ 21 | - GCC 22 | - GDB 23 | - GET 24 | - GPU 25 | - GTK 26 | - GUI 27 | - HTML 28 | - HTTP 29 | - HTTPS 30 | - IDE 31 | - JAR 32 | - JSON 33 | - JSX 34 | - LESS 35 | - LLDB 36 | - NET 37 | - NOTE 38 | - NVDA 39 | - OSS 40 | - PATH 41 | - PDF 42 | - PHP 43 | - POST 44 | - RAM 45 | - REPL 46 | - RSA 47 | - SCM 48 | - SCSS 49 | - SDK 50 | - SQL 51 | - SSH 52 | - SSL 53 | - SVG 54 | - TBD 55 | - TCP 56 | - TODO 57 | - URI 58 | - URL 59 | - USB 60 | - UTF 61 | - XML 62 | - XSS 63 | - YAML 64 | - ZIP 65 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/Colons.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' should be in lowercase." 3 | link: 'https://developers.google.com/style/colons' 4 | nonword: true 5 | level: warning 6 | scope: sentence 7 | tokens: 8 | - ':\s[A-Z]' 9 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/Contractions.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: "Feel free to use '%s' instead of '%s'." 3 | link: 'https://developers.google.com/style/contractions' 4 | level: suggestion 5 | ignorecase: true 6 | action: 7 | name: replace 8 | swap: 9 | are not: aren't 10 | cannot: can't 11 | could not: couldn't 12 | did not: didn't 13 | do not: don't 14 | does not: doesn't 15 | has not: hasn't 16 | have not: haven't 17 | how is: how's 18 | is not: isn't 19 | it is: it's 20 | should not: shouldn't 21 | that is: that's 22 | they are: they're 23 | was not: wasn't 24 | we are: we're 25 | we have: we've 26 | were not: weren't 27 | what is: what's 28 | when is: when's 29 | where is: where's 30 | will not: won't 31 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/DateFormat.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Use 'July 31, 2016' format, not '%s'." 3 | link: 'https://developers.google.com/style/dates-times' 4 | ignorecase: true 5 | level: error 6 | nonword: true 7 | tokens: 8 | - '\d{1,2}(?:\.|/)\d{1,2}(?:\.|/)\d{4}' 9 | - '\d{1,2} (?:Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)|May|Jun(?:e)|Jul(?:y)|Aug(?:ust)|Sep(?:tember)?|Oct(?:ober)|Nov(?:ember)?|Dec(?:ember)?) \d{4}' 10 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/Ellipses.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "In general, don't use an ellipsis." 3 | link: 'https://developers.google.com/style/ellipses' 4 | nonword: true 5 | level: warning 6 | action: 7 | name: remove 8 | tokens: 9 | - '\.\.\.' 10 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/EmDash.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't put a space before or after a dash." 3 | link: 'https://developers.google.com/style/dashes' 4 | nonword: true 5 | level: error 6 | action: 7 | name: edit 8 | params: 9 | - remove 10 | - ' ' 11 | tokens: 12 | - '\s[—–]\s' 13 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/EnDash.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Use an em dash ('—') instead of '–'." 3 | link: 'https://developers.google.com/style/dashes' 4 | nonword: true 5 | level: error 6 | action: 7 | name: edit 8 | params: 9 | - replace 10 | - '-' 11 | - '—' 12 | tokens: 13 | - '–' 14 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/Exclamation.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't use exclamation points in text." 3 | link: 'https://developers.google.com/style/exclamation-points' 4 | nonword: true 5 | level: error 6 | tokens: 7 | - '\w!(?:\s|$)' 8 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/FirstPerson.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Avoid first-person pronouns such as '%s'." 3 | link: 'https://developers.google.com/style/pronouns#personal-pronouns' 4 | ignorecase: true 5 | level: warning 6 | nonword: true 7 | tokens: 8 | - (?:^|\s)I\s 9 | - (?:^|\s)I,\s 10 | - \bI'm\b 11 | - \bme\b 12 | - \bmy\b 13 | - \bmine\b 14 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/Gender.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't use '%s' as a gender-neutral pronoun." 3 | link: 'https://developers.google.com/style/pronouns#gender-neutral-pronouns' 4 | level: error 5 | ignorecase: true 6 | tokens: 7 | - he/she 8 | - s/he 9 | - \(s\)he 10 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/GenderBias.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: "Consider using '%s' instead of '%s'." 3 | link: 'https://developers.google.com/style/inclusive-documentation' 4 | ignorecase: true 5 | level: error 6 | swap: 7 | (?:alumna|alumnus): graduate 8 | (?:alumnae|alumni): graduates 9 | air(?:m[ae]n|wom[ae]n): pilot(s) 10 | anchor(?:m[ae]n|wom[ae]n): anchor(s) 11 | authoress: author 12 | camera(?:m[ae]n|wom[ae]n): camera operator(s) 13 | chair(?:m[ae]n|wom[ae]n): chair(s) 14 | congress(?:m[ae]n|wom[ae]n): member(s) of congress 15 | door(?:m[ae]|wom[ae]n): concierge(s) 16 | draft(?:m[ae]n|wom[ae]n): drafter(s) 17 | fire(?:m[ae]n|wom[ae]n): firefighter(s) 18 | fisher(?:m[ae]n|wom[ae]n): fisher(s) 19 | fresh(?:m[ae]n|wom[ae]n): first-year student(s) 20 | garbage(?:m[ae]n|wom[ae]n): waste collector(s) 21 | lady lawyer: lawyer 22 | ladylike: courteous 23 | landlord: building manager 24 | mail(?:m[ae]n|wom[ae]n): mail carriers 25 | man and wife: husband and wife 26 | man enough: strong enough 27 | mankind: human kind 28 | manmade: manufactured 29 | manpower: personnel 30 | men and girls: men and women 31 | middle(?:m[ae]n|wom[ae]n): intermediary 32 | news(?:m[ae]n|wom[ae]n): journalist(s) 33 | ombuds(?:man|woman): ombuds 34 | oneupmanship: upstaging 35 | poetess: poet 36 | police(?:m[ae]n|wom[ae]n): police officer(s) 37 | repair(?:m[ae]n|wom[ae]n): technician(s) 38 | sales(?:m[ae]n|wom[ae]n): salesperson or sales people 39 | service(?:m[ae]n|wom[ae]n): soldier(s) 40 | steward(?:ess)?: flight attendant 41 | tribes(?:m[ae]n|wom[ae]n): tribe member(s) 42 | waitress: waiter 43 | woman doctor: doctor 44 | woman scientist[s]?: scientist(s) 45 | work(?:m[ae]n|wom[ae]n): worker(s) 46 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/HeadingPunctuation.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't put a period at the end of a heading." 3 | link: 'https://developers.google.com/style/capitalization#capitalization-in-titles-and-headings' 4 | nonword: true 5 | level: warning 6 | scope: heading 7 | action: 8 | name: edit 9 | params: 10 | - remove 11 | - '.' 12 | tokens: 13 | - '[a-z0-9][.]\s*$' 14 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/Headings.yml: -------------------------------------------------------------------------------- 1 | extends: capitalization 2 | message: "'%s' should use sentence-style capitalization." 3 | link: 'https://developers.google.com/style/capitalization#capitalization-in-titles-and-headings' 4 | level: warning 5 | scope: heading 6 | match: $sentence 7 | indicators: 8 | - ':' 9 | exceptions: 10 | - Azure 11 | - CLI 12 | - Code 13 | - Cosmos 14 | - Docker 15 | - Emmet 16 | - gRPC 17 | - I 18 | - Kubernetes 19 | - Linux 20 | - macOS 21 | - Marketplace 22 | - MongoDB 23 | - REPL 24 | - Studio 25 | - TypeScript 26 | - URLs 27 | - Visual 28 | - VS 29 | - Windows 30 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/Latin.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: "Use '%s' instead of '%s'." 3 | link: 'https://developers.google.com/style/abbreviations' 4 | ignorecase: true 5 | level: error 6 | nonword: true 7 | action: 8 | name: replace 9 | swap: 10 | '\b(?:eg|e\.g\.)[\s,]': for example 11 | '\b(?:ie|i\.e\.)[\s,]': that is 12 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/LyHyphens.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' doesn't need a hyphen." 3 | link: 'https://developers.google.com/style/hyphens' 4 | level: error 5 | ignorecase: false 6 | nonword: true 7 | action: 8 | name: edit 9 | params: 10 | - replace 11 | - '-' 12 | - ' ' 13 | tokens: 14 | - '\s[^\s-]+ly-' 15 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/OptionalPlurals.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't use plurals in parentheses such as in '%s'." 3 | link: 'https://developers.google.com/style/plurals-parentheses' 4 | level: error 5 | nonword: true 6 | action: 7 | name: edit 8 | params: 9 | - remove 10 | - '(s)' 11 | tokens: 12 | - '\b\w+\(s\)' 13 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/Ordinal.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Spell out all ordinal numbers ('%s') in text." 3 | link: 'https://developers.google.com/style/numbers' 4 | level: error 5 | nonword: true 6 | tokens: 7 | - \d+(?:st|nd|rd|th) 8 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/OxfordComma.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Use the Oxford comma in '%s'." 3 | link: 'https://developers.google.com/style/commas' 4 | scope: sentence 5 | level: warning 6 | tokens: 7 | - '(?:[^,]+,){1,}\s\w+\s(?:and|or)' 8 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/Parens.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Use parentheses judiciously." 3 | link: 'https://developers.google.com/style/parentheses' 4 | nonword: true 5 | level: suggestion 6 | tokens: 7 | - '\(.+\)' 8 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/Passive.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | link: 'https://developers.google.com/style/voice' 3 | message: "In general, use active voice instead of passive voice ('%s')." 4 | ignorecase: true 5 | level: suggestion 6 | raw: 7 | - \b(am|are|were|being|is|been|was|be)\b\s* 8 | tokens: 9 | - '[\w]+ed' 10 | - awoken 11 | - beat 12 | - become 13 | - been 14 | - begun 15 | - bent 16 | - beset 17 | - bet 18 | - bid 19 | - bidden 20 | - bitten 21 | - bled 22 | - blown 23 | - born 24 | - bought 25 | - bound 26 | - bred 27 | - broadcast 28 | - broken 29 | - brought 30 | - built 31 | - burnt 32 | - burst 33 | - cast 34 | - caught 35 | - chosen 36 | - clung 37 | - come 38 | - cost 39 | - crept 40 | - cut 41 | - dealt 42 | - dived 43 | - done 44 | - drawn 45 | - dreamt 46 | - driven 47 | - drunk 48 | - dug 49 | - eaten 50 | - fallen 51 | - fed 52 | - felt 53 | - fit 54 | - fled 55 | - flown 56 | - flung 57 | - forbidden 58 | - foregone 59 | - forgiven 60 | - forgotten 61 | - forsaken 62 | - fought 63 | - found 64 | - frozen 65 | - given 66 | - gone 67 | - gotten 68 | - ground 69 | - grown 70 | - heard 71 | - held 72 | - hidden 73 | - hit 74 | - hung 75 | - hurt 76 | - kept 77 | - knelt 78 | - knit 79 | - known 80 | - laid 81 | - lain 82 | - leapt 83 | - learnt 84 | - led 85 | - left 86 | - lent 87 | - let 88 | - lighted 89 | - lost 90 | - made 91 | - meant 92 | - met 93 | - misspelt 94 | - mistaken 95 | - mown 96 | - overcome 97 | - overdone 98 | - overtaken 99 | - overthrown 100 | - paid 101 | - pled 102 | - proven 103 | - put 104 | - quit 105 | - read 106 | - rid 107 | - ridden 108 | - risen 109 | - run 110 | - rung 111 | - said 112 | - sat 113 | - sawn 114 | - seen 115 | - sent 116 | - set 117 | - sewn 118 | - shaken 119 | - shaven 120 | - shed 121 | - shod 122 | - shone 123 | - shorn 124 | - shot 125 | - shown 126 | - shrunk 127 | - shut 128 | - slain 129 | - slept 130 | - slid 131 | - slit 132 | - slung 133 | - smitten 134 | - sold 135 | - sought 136 | - sown 137 | - sped 138 | - spent 139 | - spilt 140 | - spit 141 | - split 142 | - spoken 143 | - spread 144 | - sprung 145 | - spun 146 | - stolen 147 | - stood 148 | - stridden 149 | - striven 150 | - struck 151 | - strung 152 | - stuck 153 | - stung 154 | - stunk 155 | - sung 156 | - sunk 157 | - swept 158 | - swollen 159 | - sworn 160 | - swum 161 | - swung 162 | - taken 163 | - taught 164 | - thought 165 | - thrived 166 | - thrown 167 | - thrust 168 | - told 169 | - torn 170 | - trodden 171 | - understood 172 | - upheld 173 | - upset 174 | - wed 175 | - wept 176 | - withheld 177 | - withstood 178 | - woken 179 | - won 180 | - worn 181 | - wound 182 | - woven 183 | - written 184 | - wrung 185 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/Periods.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't use periods with acronyms or initialisms such as '%s'." 3 | link: 'https://developers.google.com/style/abbreviations' 4 | level: error 5 | nonword: true 6 | tokens: 7 | - '\b(?:[A-Z]\.){3,}' 8 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/Quotes.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Commas and periods go inside quotation marks." 3 | link: 'https://developers.google.com/style/quotation-marks' 4 | level: error 5 | nonword: true 6 | tokens: 7 | - '"[^"]+"[.,?]' 8 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/Ranges.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't add words such as 'from' or 'between' to describe a range of numbers." 3 | link: 'https://developers.google.com/style/hyphens' 4 | nonword: true 5 | level: warning 6 | tokens: 7 | - '(?:from|between)\s\d+\s?-\s?\d+' 8 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/Semicolons.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Use semicolons judiciously." 3 | link: 'https://developers.google.com/style/semicolons' 4 | nonword: true 5 | scope: sentence 6 | level: suggestion 7 | tokens: 8 | - ';' 9 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/Slang.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't use internet slang abbreviations such as '%s'." 3 | link: 'https://developers.google.com/style/abbreviations' 4 | ignorecase: true 5 | level: error 6 | tokens: 7 | - 'tl;dr' 8 | - ymmv 9 | - rtfm 10 | - imo 11 | - fwiw 12 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/Spacing.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' should have one space." 3 | link: 'https://developers.google.com/style/sentence-spacing' 4 | level: error 5 | nonword: true 6 | tokens: 7 | - '[a-z][.?!] {2,}[A-Z]' 8 | - '[a-z][.?!][A-Z]' 9 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/Spelling.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "In general, use American spelling instead of '%s'." 3 | link: 'https://developers.google.com/style/spelling' 4 | ignorecase: true 5 | level: warning 6 | tokens: 7 | - '(?:\w+)nised?' 8 | - '(?:\w+)logue' 9 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/Units.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Put a nonbreaking space between the number and the unit in '%s'." 3 | link: 'https://developers.google.com/style/units-of-measure' 4 | nonword: true 5 | level: error 6 | tokens: 7 | - \d+(?:B|kB|MB|GB|TB) 8 | - \d+(?:ns|ms|s|min|h|d) 9 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/We.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Try to avoid using first-person plural like '%s'." 3 | link: 'https://developers.google.com/style/pronouns#personal-pronouns' 4 | level: warning 5 | ignorecase: true 6 | tokens: 7 | - we 8 | - we'(?:ve|re) 9 | - ours? 10 | - us 11 | - let's 12 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/Will.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Avoid using '%s'." 3 | link: 'https://developers.google.com/style/tense' 4 | ignorecase: true 5 | level: warning 6 | tokens: 7 | - will 8 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/WordList.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: "Use '%s' instead of '%s'." 3 | link: 'https://developers.google.com/style/word-list' 4 | level: warning 5 | ignorecase: false 6 | action: 7 | name: replace 8 | swap: 9 | '(?:API Console|dev|developer) key': API key 10 | '(?:cell ?phone|smart ?phone)': phone|mobile phone 11 | '(?:dev|developer|APIs) console': API console 12 | '(?:e-mail|Email|E-mail)': email 13 | '(?:file ?path|path ?name)': path 14 | '(?:kill|terminate|abort)': stop|exit|cancel|end 15 | '(?:OAuth ?2|Oauth)': OAuth 2.0 16 | '(?:ok|Okay)': OK|okay 17 | '(?:WiFi|wifi)': Wi-Fi 18 | '[\.]+apk': APK 19 | '3\-D': 3D 20 | 'Google (?:I\-O|IO)': Google I/O 21 | 'tap (?:&|and) hold': touch & hold 22 | 'un(?:check|select)': clear 23 | above: preceding 24 | account name: username 25 | action bar: app bar 26 | admin: administrator 27 | Ajax: AJAX 28 | Android device: Android-powered device 29 | android: Android 30 | API explorer: APIs Explorer 31 | application: app 32 | approx\.: approximately 33 | authN: authentication 34 | authZ: authorization 35 | autoupdate: automatically update 36 | cellular data: mobile data 37 | cellular network: mobile network 38 | chapter: documents|pages|sections 39 | check box: checkbox 40 | check: select 41 | CLI: command-line tool 42 | click on: click|click in 43 | Cloud: Google Cloud Platform|GCP 44 | Container Engine: Kubernetes Engine 45 | content type: media type 46 | curated roles: predefined roles 47 | data are: data is 48 | Developers Console: Google API Console|API Console 49 | disabled?: turn off|off 50 | ephemeral IP address: ephemeral external IP address 51 | fewer data: less data 52 | file name: filename 53 | firewalls: firewall rules 54 | functionality: capability|feature 55 | Google account: Google Account 56 | Google accounts: Google Accounts 57 | Googling: search with Google 58 | grayed-out: unavailable 59 | HTTPs: HTTPS 60 | in order to: to 61 | ingest: import|load 62 | k8s: Kubernetes 63 | long press: touch & hold 64 | network IP address: internal IP address 65 | omnibox: address bar 66 | open-source: open source 67 | overview screen: recents screen 68 | regex: regular expression 69 | SHA1: SHA-1|HAS-SHA1 70 | sign into: sign in to 71 | sign-?on: single sign-on 72 | static IP address: static external IP address 73 | stylesheet: style sheet 74 | synch: sync 75 | tablename: table name 76 | tablet: device 77 | touch: tap 78 | url: URL 79 | vs\.: versus 80 | World Wide Web: web 81 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "feed": "https://github.com/errata-ai/Google/releases.atom", 3 | "vale_version": ">=1.0.0" 4 | } 5 | -------------------------------------------------------------------------------- /profile/vale/styles/Google/vocab.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sdwheeler/tools-by-sean/a451f6b76799406b268b10da79dae7718b931e18/profile/vale/styles/Google/vocab.txt -------------------------------------------------------------------------------- /profile/vale/styles/Joblint/Acronyms.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: Use '%s' instead of '%s' 3 | description: "Tech people know their acronyms; you come across as not very tech-savvy if you expand them." 4 | ignorecase: true 5 | level: warning 6 | action: 7 | name: replace 8 | swap: 9 | 'cascading[ -]?style[ -]?sheets': CSS 10 | 'hyper[ -]?text(?:[ -]?mark[ -]?up(?:[ -]?language)?)?': HTML 11 | -------------------------------------------------------------------------------- /profile/vale/styles/Joblint/Benefits.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Avoid using '%s'" 3 | description: "Benefits such as '%s' are not bad in themselves, but their appearance in a job post often disguises the fact that there are few real benefits to working for a company." 4 | ignorecase: true 5 | level: warning 6 | tokens: 7 | - 'ales?' 8 | - 'beers?' 9 | - 'brewskis?' 10 | - 'coffee' 11 | - '(?:foos|fuss)[ -]*ball' 12 | - 'happy[ -]*hours?' 13 | - 'keg(erator)?s?' 14 | - 'lagers?' 15 | - 'nerf[ -]*guns?' 16 | - 'ping[ -]*pong?' 17 | - 'pints?' 18 | - 'pizzas?' 19 | - 'play\\s*stations?' 20 | - 'pool[ -]*table|pool' 21 | - 'rock[ -]*walls?' 22 | - 'table[ -]*football' 23 | - 'table[ -]*tennis' 24 | - 'wiis?' 25 | - 'xbox(?:es|s)?' 26 | - 'massages?' 27 | -------------------------------------------------------------------------------- /profile/vale/styles/Joblint/Bro.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Avoid using '%s'" 3 | description: "Bro culture terminology can really reduce the number of people likely to show interest." 4 | ignorecase: true 5 | level: error 6 | tokens: 7 | - 'brogramm(?:er|ers|ing)' 8 | - 'crank' 9 | - 'crush' 10 | - 'hard[ -]*core' 11 | - 'hella' 12 | - 'mak(?:e|ing) it rain' 13 | - 'skillz' 14 | -------------------------------------------------------------------------------- /profile/vale/styles/Joblint/Competitive.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Avoid using '%s'" 3 | description: "Competition can be healthy, but for a lot of people a heavily competitive environment can be a strain." 4 | ignorecase: true 5 | level: suggestion 6 | tokens: 7 | - 'compete' 8 | - 'competition' 9 | - 'competitive' 10 | - 'cutting[ -]edge' 11 | - 'fail' 12 | - 'fore[ -]*front' 13 | - 'super[ -]*stars?' 14 | - 'the best' 15 | - 'reach the top' 16 | - 'top of .{2,8} (?:game|class)' 17 | - 'win' 18 | -------------------------------------------------------------------------------- /profile/vale/styles/Joblint/Derogatory.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Avoid using '%s'" 3 | description: "When you use '%s,' you're being discriminatory." 4 | ignorecase: true 5 | level: error 6 | tokens: 7 | - 'bia?tch(?:es)?' 8 | - 'bimbos?' 9 | - 'hoes?' 10 | - 'hunks?' 11 | - 'milfs?' 12 | - 'slags?' 13 | - 'sluts?' 14 | - 'stallions?' 15 | - 'studs?' 16 | -------------------------------------------------------------------------------- /profile/vale/styles/Joblint/DevEnv.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't specify a development environment unless absolutely necessary." 3 | ignorecase: true 4 | level: suggestion 5 | tokens: 6 | - 'atom' 7 | - 'bb[ -]*edit' 8 | - 'dream[ -]*weaver' 9 | - 'eclipse' 10 | - 'emacs' 11 | - 'net[ -]*beans' 12 | - 'note[ -]*pad' 13 | - 'sublime[ -]*text' 14 | - 'text[ -]*wrangler' 15 | - 'text[ -]*mate' 16 | - 'vim?' 17 | - 'visual[ -]*studio' 18 | -------------------------------------------------------------------------------- /profile/vale/styles/Joblint/DumbTitles.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Avoid using '%s'" 3 | description: "Referring to tech people as '%s' devalues the work that they do and shows a lack of respect and professionalism." 4 | ignorecase: true 5 | level: warning 6 | tokens: 7 | - 'gurus?' 8 | - 'hero(?:es|ic)?' 9 | - 'ninjas?' 10 | - 'rock[ -]*stars?' 11 | - 'super[ -]*stars?' 12 | - 'badass(?:es)?' 13 | - 'BAMF' 14 | -------------------------------------------------------------------------------- /profile/vale/styles/Joblint/Gendered.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Avoid using '%s'" 3 | description: "Use of '%s' could indicate that you're discriminating in favour of a certain gender." 4 | ignorecase: true 5 | level: error 6 | tokens: 7 | - 'boys?' 8 | - 'bros?' 9 | - 'broth(?:a|er)s?' 10 | - 'chicks?' 11 | - 'dads?' 12 | - 'dudes?' 13 | - 'fathers?' 14 | - 'females?' 15 | - 'gentlem[ae]n' 16 | - 'girls?' 17 | - 'grandfathers?' 18 | - 'grandmas?' 19 | - 'grandmothers?' 20 | - 'grandpas?' 21 | - 'gran' 22 | - 'grann(?:y|ies)' 23 | - 'guys?' 24 | - 'husbands?' 25 | - 'lad(y|ies)?' 26 | - 'm[ae]n' 27 | - 'm[ou]ms?' 28 | - 'males?' 29 | - 'momm(?:y|ies)' 30 | - 'mommas?' 31 | - 'mothers?' 32 | - 'papas?' 33 | - 'sist(?:a|er)s?' 34 | - 'wi(?:fe|ves)' 35 | - 'wom[ae]n' 36 | - he 37 | - her 38 | - him 39 | - his 40 | - she 41 | -------------------------------------------------------------------------------- /profile/vale/styles/Joblint/Hair.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Avoid using '%s'" 3 | description: "The use of '%s' indicates that you're only looking for male developers." 4 | ignorecase: true 5 | level: error 6 | tokens: 7 | - 'beard(?:ed|s|y)?' 8 | - 'grizzl(?:ed|y)' 9 | -------------------------------------------------------------------------------- /profile/vale/styles/Joblint/LegacyTech.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Avoid using '%s'" 3 | description: "Legacy technologies can reduce the number of people interested in a job." 4 | ignorecase: true 5 | level: suggestion 6 | tokens: 7 | - 'cobol' 8 | - 'cvs' 9 | - 'front[ -]*page' 10 | - 'rcs' 11 | - 'sccs' 12 | - 'source[ -]*safe' 13 | - 'vb\\s*6' 14 | - 'visual[ -]*basic\\s*6' 15 | - 'vbscript' 16 | -------------------------------------------------------------------------------- /profile/vale/styles/Joblint/Meritocracy.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Reevaluate the use of '%s'" 3 | ignorecase: true 4 | level: suggestion 5 | tokens: 6 | - 'meritocra(?:cy|cies|tic)' 7 | -------------------------------------------------------------------------------- /profile/vale/styles/Joblint/Profanity.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Remove '%s'" 3 | ignorecase: true 4 | level: warning 5 | tokens: 6 | - 'bloody' 7 | - 'bugger' 8 | - 'cunt' 9 | - 'damn' 10 | - 'fuck(?:er|ing)?' 11 | - 'piss(?:ing)?' 12 | - 'shit' 13 | - 'motherfuck(?:ers?|ing)' 14 | -------------------------------------------------------------------------------- /profile/vale/styles/Joblint/README.md: -------------------------------------------------------------------------------- 1 | Based on [Joblint](https://github.com/rowanmanning/joblint). 2 | 3 | > Test tech job posts for issues with sexism, culture, expectations, and recruiter fails. 4 | 5 | ``` 6 | Copyright (c) 2015, Rowan Manning 7 | 8 | Permission is hereby granted, free of charge, to any person obtaining a copy 9 | of this software and associated documentation files (the "Software"), to deal 10 | in the Software without restriction, including without limitation the rights 11 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 12 | copies of the Software, and to permit persons to whom the Software is 13 | furnished to do so, subject to the following conditions: 14 | 15 | The above copyright notice and this permission notice shall be included in 16 | all copies or substantial portions of the Software. 17 | 18 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 19 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 20 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 21 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 22 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 23 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 24 | THE SOFTWARE. 25 | ``` 26 | -------------------------------------------------------------------------------- /profile/vale/styles/Joblint/Reassure.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Avoid using '%s'" 3 | description: "Something feels off when you need to reassure someone of something that should definitely not be an issue in any workplace." 4 | ignorecase: true 5 | level: suggestion 6 | tokens: 7 | - 'drama[ -]*free' 8 | - 'stress[ -]*free' 9 | -------------------------------------------------------------------------------- /profile/vale/styles/Joblint/Sexualised.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Avoid using '%s'" 3 | description: "Terms like '%s' are often used if the person writing a post doesn't know what they are talking about." 4 | ignorecase: true 5 | level: warning 6 | tokens: 7 | - gay for 8 | - sexy 9 | - hawt 10 | - phat 11 | -------------------------------------------------------------------------------- /profile/vale/styles/Joblint/Starter.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Avoid using '%s'" 3 | description: "Terms like '%s' and others can indicate that the person writing a job post is unaware of the time and effort involved in preparing a new starter for work." 4 | ignorecase: true 5 | level: suggestion 6 | tokens: 7 | - 'hit[ -]the[ -]ground[ -]running' 8 | - 'juggle' 9 | - 'tight deadlines?' 10 | -------------------------------------------------------------------------------- /profile/vale/styles/Joblint/TechTerms.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: Use '%s' instead of '%s' 3 | ignorecase: true 4 | level: error 5 | action: 6 | name: replace 7 | swap: 8 | 'java[ -]?scripts?': JavaScript 9 | ruby on rail: Ruby on Rails 10 | -------------------------------------------------------------------------------- /profile/vale/styles/Joblint/Visionary.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Avoid using '%s'" 3 | description: "Terms like '%s' often indicate that a non technical person (perhaps a CEO or stakeholder) has been involved in writing the post." 4 | ignorecase: true 5 | level: warning 6 | tokens: 7 | - 'blue[ -]*sk(?:y|ies)' 8 | - 'enlighten(?:ed|ing)?' 9 | - 'green[ -]*fields?' 10 | - 'incentivi[sz]e' 11 | - 'paradigm' 12 | - 'producti[sz]e' 13 | - 'reach(?:ed|ing)? out' 14 | - 'synerg(?:y|ize|ise)' 15 | - 'visionar(?:y|ies)' 16 | -------------------------------------------------------------------------------- /profile/vale/styles/Joblint/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "feed": "https://github.com/errata-ai/Joblint/releases.atom", 3 | "vale_version": ">=1.0.0" 4 | } 5 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/AMPM.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: Use 'AM' or 'PM' (preceded by a space). 3 | link: https://docs.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/term-collections/date-time-terms 4 | level: error 5 | nonword: true 6 | tokens: 7 | - '\d{1,2}[AP]M' 8 | - '\d{1,2} ?[ap]m' 9 | - '\d{1,2} ?[aApP]\.[mM]\.' 10 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/Accessibility.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't use language (such as '%s') that defines people by their disability." 3 | link: https://docs.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/term-collections/accessibility-terms 4 | level: suggestion 5 | ignorecase: true 6 | tokens: 7 | - a victim of 8 | - able-bodied 9 | - affected by 10 | - an epileptic 11 | - crippled 12 | - disabled 13 | - dumb 14 | - handicapped 15 | - handicaps 16 | - healthy 17 | - lame 18 | - maimed 19 | - missing a limb 20 | - mute 21 | - normal 22 | - sight-impaired 23 | - stricken with 24 | - suffers from 25 | - vision-impaired 26 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/Acronyms.yml: -------------------------------------------------------------------------------- 1 | extends: conditional 2 | message: "'%s' has no definition." 3 | link: https://docs.microsoft.com/en-us/style-guide/acronyms 4 | level: suggestion 5 | ignorecase: false 6 | # Ensures that the existence of 'first' implies the existence of 'second'. 7 | first: '\b([A-Z]{3,5})\b' 8 | second: '(?:\b[A-Z][a-z]+ )+\(([A-Z]{3,5})\)' 9 | # ... with the exception of these: 10 | exceptions: 11 | - API 12 | - ASP 13 | - CLI 14 | - CPU 15 | - CSS 16 | - CSV 17 | - DEBUG 18 | - DOM 19 | - DPI 20 | - DSC 21 | - FAQ 22 | - GCC 23 | - GDB 24 | - GET 25 | - GPU 26 | - GTK 27 | - GUI 28 | - HTML 29 | - HTTP 30 | - HTTPS 31 | - IDE 32 | - JAR 33 | - JSON 34 | - JSX 35 | - LESS 36 | - LLDB 37 | - NET 38 | - NOTE 39 | - NVDA 40 | - OSS 41 | - PATH 42 | - PDF 43 | - PHP 44 | - POST 45 | - RAM 46 | - REPL 47 | - RSA 48 | - SCM 49 | - SCSS 50 | - SDK 51 | - SQL 52 | - SSH 53 | - SSL 54 | - SVG 55 | - TBD 56 | - TCP 57 | - TIP 58 | - TODO 59 | - URI 60 | - URL 61 | - USB 62 | - UTF 63 | - XML 64 | - XSS 65 | - YAML 66 | - ZIP 67 | - SYNOPSIS 68 | - SYNTAX 69 | - DESCRIPTION 70 | - EXAMPLES 71 | - PARAMETERS 72 | - INPUTS 73 | - OUTPUTS 74 | - NOTES 75 | - LINKS 76 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/Auto.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "In general, don't hyphenate '%s'." 3 | link: https://docs.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/a/auto 4 | ignorecase: true 5 | level: error 6 | action: 7 | name: convert 8 | params: 9 | - simple 10 | tokens: 11 | - 'auto-\w+' 12 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/Avoid.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't use '%s'. See the A-Z word list for details." 3 | # See the A-Z word list 4 | link: https://docs.microsoft.com/en-us/style-guide 5 | ignorecase: true 6 | level: error 7 | tokens: 8 | - abortion 9 | - and so on 10 | - app(?:lication)?s? (?:developer|program) 11 | - app(?:lication)? file 12 | - backbone 13 | - backend 14 | - contiguous selection 15 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/Backend.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: "Use '%s' instead of '%s'." 3 | level: warning 4 | 5 | link: https://docs.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/b/back-end 6 | # Use 'back end' (noun) or 'back-end' (adj). 7 | pos: 'back-end/NN|backend/(?:JJ|NN)|back/\w+ end/JJ|back/(?:JJ|RB) end/\w+' 8 | ignorecase: true 9 | action: 10 | name: replace 11 | swap: 12 | back-end: back end 13 | back end: back-end 14 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/Contractions.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: "Use '%s' instead of '%s'." 3 | link: https://docs.microsoft.com/en-us/style-guide/word-choice/use-contractions 4 | level: error 5 | ignorecase: true 6 | action: 7 | name: replace 8 | swap: 9 | are not: aren't 10 | cannot: can't 11 | could not: couldn't 12 | did not: didn't 13 | do not: don't 14 | does not: doesn't 15 | has not: hasn't 16 | have not: haven't 17 | how is: how's 18 | is not: isn't 19 | it is: it's 20 | should not: shouldn't 21 | that is: that's 22 | they are: they're 23 | was not: wasn't 24 | we are: we're 25 | we have: we've 26 | were not: weren't 27 | what is: what's 28 | when is: when's 29 | where is: where's 30 | will not: won't 31 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/Dashes.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Remove the spaces around '%s'." 3 | link: https://docs.microsoft.com/en-us/style-guide/punctuation/dashes-hyphens/emes 4 | ignorecase: true 5 | nonword: true 6 | level: error 7 | action: 8 | name: edit 9 | params: 10 | - remove 11 | - ' ' 12 | tokens: 13 | - '[—–]\s|\s[—–]' 14 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/DateFormat.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: Use 'July 31, 2016' format, not '%s'. 3 | link: https://docs.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/term-collections/date-time-terms 4 | ignorecase: true 5 | level: error 6 | nonword: true 7 | tokens: 8 | - '\d{1,2} (?:Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)|May|Jun(?:e)|Jul(?:y)|Aug(?:ust)|Sep(?:tember)?|Oct(?:ober)|Nov(?:ember)?|Dec(?:ember)?) \d{4}' 9 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/DateNumbers.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't use ordinal numbers for dates." 3 | link: https://docs.microsoft.com/en-us/style-guide/numbers#numbers-in-dates 4 | level: error 5 | nonword: true 6 | ignorecase: true 7 | raw: 8 | - \b(?:Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)|May|Jun(?:e)|Jul(?:y)|Aug(?:ust)|Sep(?:tember)?|Oct(?:ober)|Nov(?:ember)?|Dec(?:ember)?)\b\s* 9 | tokens: 10 | - first 11 | - second 12 | - third 13 | - fourth 14 | - fifth 15 | - sixth 16 | - seventh 17 | - eighth 18 | - ninth 19 | - tenth 20 | - eleventh 21 | - twelfth 22 | - thirteenth 23 | - fourteenth 24 | - fifteenth 25 | - sixteenth 26 | - seventeenth 27 | - eighteenth 28 | - nineteenth 29 | - twentieth 30 | - twenty-first 31 | - twenty-second 32 | - twenty-third 33 | - twenty-fourth 34 | - twenty-fifth 35 | - twenty-sixth 36 | - twenty-seventh 37 | - twenty-eighth 38 | - twenty-ninth 39 | - thirtieth 40 | - thirty-first 41 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/DateOrder.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Always spell out the name of the month." 3 | link: https://docs.microsoft.com/en-us/style-guide/numbers#numbers-in-dates 4 | ignorecase: true 5 | level: error 6 | nonword: true 7 | tokens: 8 | - '\b\d{1,2}/\d{1,2}/(?:\d{4}|\d{2})\b' 9 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/Ellipses.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "In general, don't use an ellipsis." 3 | link: https://docs.microsoft.com/en-us/style-guide/punctuation/ellipses 4 | nonword: true 5 | level: warning 6 | action: 7 | name: remove 8 | tokens: 9 | - '\.\.\.' 10 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/FirstPerson.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Use first person (such as '%s') sparingly." 3 | link: https://docs.microsoft.com/en-us/style-guide/grammar/person 4 | ignorecase: true 5 | level: warning 6 | nonword: true 7 | tokens: 8 | - (?:^|\s)I\s 9 | - (?:^|\s)I,\s 10 | - \bI'd\b 11 | - \bI'll\b 12 | - \bI'm\b 13 | - \bI've\b 14 | - \bme\b 15 | - \bmy\b 16 | - \bmine\b 17 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/Foreign.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: "Use '%s' instead of '%s'." 3 | link: https://docs.microsoft.com/en-us/style-guide/word-choice/use-us-spelling-avoid-non-english-words 4 | ignorecase: true 5 | level: error 6 | nonword: true 7 | action: 8 | name: replace 9 | swap: 10 | '\b(?:eg|e\.g\.)[\s,]': for example 11 | '\b(?:ie|i\.e\.)[\s,]': that is 12 | 13 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/Gender.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't use '%s'." 3 | link: https://github.com/MicrosoftDocs/microsoft-style-guide/blob/master/styleguide/grammar/nouns-pronouns.md#pronouns-and-gender 4 | level: error 5 | ignorecase: true 6 | tokens: 7 | - he/she 8 | - s/he 9 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/GenderBias.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: "Consider using '%s' instead of '%s'." 3 | ignorecase: true 4 | level: error 5 | swap: 6 | (?:alumna|alumnus): graduate 7 | (?:alumnae|alumni): graduates 8 | air(?:m[ae]n|wom[ae]n): pilot(s) 9 | anchor(?:m[ae]n|wom[ae]n): anchor(s) 10 | authoress: author 11 | camera(?:m[ae]n|wom[ae]n): camera operator(s) 12 | chair(?:m[ae]n|wom[ae]n): chair(s) 13 | congress(?:m[ae]n|wom[ae]n): member(s) of congress 14 | door(?:m[ae]|wom[ae]n): concierge(s) 15 | draft(?:m[ae]n|wom[ae]n): drafter(s) 16 | fire(?:m[ae]n|wom[ae]n): firefighter(s) 17 | fisher(?:m[ae]n|wom[ae]n): fisher(s) 18 | fresh(?:m[ae]n|wom[ae]n): first-year student(s) 19 | garbage(?:m[ae]n|wom[ae]n): waste collector(s) 20 | lady lawyer: lawyer 21 | ladylike: courteous 22 | landlord: building manager 23 | mail(?:m[ae]n|wom[ae]n): mail carriers 24 | man and wife: husband and wife 25 | man enough: strong enough 26 | mankind: human kind 27 | manmade: manufactured 28 | manpower: personnel 29 | men and girls: men and women 30 | middle(?:m[ae]n|wom[ae]n): intermediary 31 | news(?:m[ae]n|wom[ae]n): journalist(s) 32 | ombuds(?:man|woman): ombuds 33 | oneupmanship: upstaging 34 | poetess: poet 35 | police(?:m[ae]n|wom[ae]n): police officer(s) 36 | repair(?:m[ae]n|wom[ae]n): technician(s) 37 | sales(?:m[ae]n|wom[ae]n): salesperson or sales people 38 | service(?:m[ae]n|wom[ae]n): soldier(s) 39 | steward(?:ess)?: flight attendant 40 | tribes(?:m[ae]n|wom[ae]n): tribe member(s) 41 | waitress: waiter 42 | woman doctor: doctor 43 | woman scientist[s]?: scientist(s) 44 | work(?:m[ae]n|wom[ae]n): worker(s) 45 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/GeneralURL.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "For a general audience, use 'address' rather than 'URL'." 3 | link: https://docs.microsoft.com/en-us/style-guide/urls-web-addresses 4 | level: warning 5 | action: 6 | name: replace 7 | params: 8 | - URL 9 | - address 10 | tokens: 11 | - URL 12 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/HeadingAcronyms.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Avoid using acronyms in a title or heading." 3 | link: https://docs.microsoft.com/en-us/style-guide/acronyms#be-careful-with-acronyms-in-titles-and-headings 4 | level: warning 5 | scope: heading 6 | tokens: 7 | - '[A-Z]{2,4}' 8 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/HeadingColons.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Capitalize '%s'." 3 | link: https://docs.microsoft.com/en-us/style-guide/punctuation/colons 4 | nonword: true 5 | level: error 6 | scope: heading 7 | tokens: 8 | - ':\s[a-z]' 9 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/HeadingPunctuation.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't use end punctuation in headings." 3 | link: https://docs.microsoft.com/en-us/style-guide/punctuation/periods 4 | nonword: true 5 | level: warning 6 | scope: heading 7 | action: 8 | name: edit 9 | params: 10 | - remove 11 | - '.?!' 12 | tokens: 13 | - '[a-z][.?!](?:\s|$)' 14 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/Headings.yml: -------------------------------------------------------------------------------- 1 | extends: capitalization 2 | message: "'%s' should use sentence-style capitalization." 3 | link: https://docs.microsoft.com/en-us/style-guide/capitalization 4 | level: suggestion 5 | scope: heading 6 | match: $sentence 7 | indicators: 8 | - ':' 9 | exceptions: 10 | - Azure 11 | - CLI 12 | - Code 13 | - Cosmos 14 | - Docker 15 | - Emmet 16 | - I 17 | - Kubernetes 18 | - Linux 19 | - macOS 20 | - Marketplace 21 | - MongoDB 22 | - REPL 23 | - Studio 24 | - TypeScript 25 | - URLs 26 | - Visual 27 | - VS 28 | - Windows 29 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/Hyphens.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' doesn't need a hyphen." 3 | link: https://docs.microsoft.com/en-us/style-guide/punctuation/dashes-hyphens/hyphens 4 | level: warning 5 | ignorecase: false 6 | nonword: true 7 | action: 8 | name: edit 9 | params: 10 | - replace 11 | - '-' 12 | - ' ' 13 | tokens: 14 | - '\s[^\s-]+ly-' 15 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/Negative.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Form a negative number with an en dash, not a hyphen." 3 | link: https://docs.microsoft.com/en-us/style-guide/numbers 4 | nonword: true 5 | level: error 6 | action: 7 | name: edit 8 | params: 9 | - replace 10 | - '-' 11 | - '–' 12 | tokens: 13 | - '\s-\d+\s' 14 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/Ordinal.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't add -ly to an ordinal number." 3 | link: https://docs.microsoft.com/en-us/style-guide/numbers 4 | level: error 5 | action: 6 | name: edit 7 | params: 8 | - trim 9 | - ly 10 | tokens: 11 | - firstly 12 | - secondly 13 | - thirdly 14 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/OxfordComma.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Use the Oxford comma in '%s'." 3 | link: https://docs.microsoft.com/en-us/style-guide/punctuation/commas 4 | scope: sentence 5 | level: suggestion 6 | nonword: true 7 | tokens: 8 | - '(?:[^\s,]+,){1,} \w+ (?:and|or) \w+[.?!]' 9 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/Passive.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' looks like passive voice." 3 | ignorecase: true 4 | level: suggestion 5 | raw: 6 | - \b(am|are|were|being|is|been|was|be)\b\s* 7 | tokens: 8 | - '[\w]+ed' 9 | - awoken 10 | - beat 11 | - become 12 | - been 13 | - begun 14 | - bent 15 | - beset 16 | - bet 17 | - bid 18 | - bidden 19 | - bitten 20 | - bled 21 | - blown 22 | - born 23 | - bought 24 | - bound 25 | - bred 26 | - broadcast 27 | - broken 28 | - brought 29 | - built 30 | - burnt 31 | - burst 32 | - cast 33 | - caught 34 | - chosen 35 | - clung 36 | - come 37 | - cost 38 | - crept 39 | - cut 40 | - dealt 41 | - dived 42 | - done 43 | - drawn 44 | - dreamt 45 | - driven 46 | - drunk 47 | - dug 48 | - eaten 49 | - fallen 50 | - fed 51 | - felt 52 | - fit 53 | - fled 54 | - flown 55 | - flung 56 | - forbidden 57 | - foregone 58 | - forgiven 59 | - forgotten 60 | - forsaken 61 | - fought 62 | - found 63 | - frozen 64 | - given 65 | - gone 66 | - gotten 67 | - ground 68 | - grown 69 | - heard 70 | - held 71 | - hidden 72 | - hit 73 | - hung 74 | - hurt 75 | - kept 76 | - knelt 77 | - knit 78 | - known 79 | - laid 80 | - lain 81 | - leapt 82 | - learnt 83 | - led 84 | - left 85 | - lent 86 | - let 87 | - lighted 88 | - lost 89 | - made 90 | - meant 91 | - met 92 | - misspelt 93 | - mistaken 94 | - mown 95 | - overcome 96 | - overdone 97 | - overtaken 98 | - overthrown 99 | - paid 100 | - pled 101 | - proven 102 | - put 103 | - quit 104 | - read 105 | - rid 106 | - ridden 107 | - risen 108 | - run 109 | - rung 110 | - said 111 | - sat 112 | - sawn 113 | - seen 114 | - sent 115 | - set 116 | - sewn 117 | - shaken 118 | - shaven 119 | - shed 120 | - shod 121 | - shone 122 | - shorn 123 | - shot 124 | - shown 125 | - shrunk 126 | - shut 127 | - slain 128 | - slept 129 | - slid 130 | - slit 131 | - slung 132 | - smitten 133 | - sold 134 | - sought 135 | - sown 136 | - sped 137 | - spent 138 | - spilt 139 | - spit 140 | - split 141 | - spoken 142 | - spread 143 | - sprung 144 | - spun 145 | - stolen 146 | - stood 147 | - stridden 148 | - striven 149 | - struck 150 | - strung 151 | - stuck 152 | - stung 153 | - stunk 154 | - sung 155 | - sunk 156 | - swept 157 | - swollen 158 | - sworn 159 | - swum 160 | - swung 161 | - taken 162 | - taught 163 | - thought 164 | - thrived 165 | - thrown 166 | - thrust 167 | - told 168 | - torn 169 | - trodden 170 | - understood 171 | - upheld 172 | - upset 173 | - wed 174 | - wept 175 | - withheld 176 | - withstood 177 | - woken 178 | - won 179 | - worn 180 | - wound 181 | - woven 182 | - written 183 | - wrung 184 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/Percentages.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Use a numeral plus the units." 3 | link: https://docs.microsoft.com/en-us/style-guide/numbers 4 | nonword: true 5 | level: error 6 | tokens: 7 | - '\b[a-zA-z]+\spercent\b' 8 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/Quotes.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: 'Punctuation should be inside the quotes.' 3 | link: https://docs.microsoft.com/en-us/style-guide/punctuation/quotation-marks 4 | level: error 5 | nonword: true 6 | tokens: 7 | - '["“][^"”“]+["”][.,]' 8 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/RangeFormat.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Use an en dash in a range of numbers." 3 | link: https://docs.microsoft.com/en-us/style-guide/numbers 4 | nonword: true 5 | level: error 6 | action: 7 | name: edit 8 | params: 9 | - replace 10 | - '-' 11 | - '–' 12 | tokens: 13 | - '\b\d+\s?[-]\s?\d+\b' 14 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/RangeTime.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Use 'to' instead of a dash in '%s'." 3 | link: https://docs.microsoft.com/en-us/style-guide/numbers 4 | nonword: true 5 | level: error 6 | action: 7 | name: edit 8 | params: 9 | - replace 10 | - '[-–]' 11 | - 'to' 12 | tokens: 13 | - '\b(?:AM|PM)\s?[-–]\s?.+(?:AM|PM)\b' 14 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/Ranges.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "In most cases, use 'from' or 'through' to describe a range of numbers." 3 | link: 'https://docs.microsoft.com/en-us/style-guide/numbers' 4 | nonword: true 5 | level: warning 6 | tokens: 7 | - '\b\d+\s?[-–]\s?\d+\b' 8 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/Semicolon.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Try to simplify this sentence." 3 | link: https://docs.microsoft.com/en-us/style-guide/punctuation/semicolons 4 | nonword: true 5 | scope: sentence 6 | level: suggestion 7 | tokens: 8 | - ';' 9 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/SentenceLength.yml: -------------------------------------------------------------------------------- 1 | extends: occurrence 2 | message: "Try to keep sentences short (< 30 words)." 3 | scope: sentence 4 | level: suggestion 5 | max: 30 6 | token: \b(\w+)\b 7 | 8 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/Spacing.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' should have one space." 3 | link: https://docs.microsoft.com/en-us/style-guide/punctuation/periods 4 | level: error 5 | nonword: true 6 | tokens: 7 | - '[a-z][.?!] {2,}[A-Z]' 8 | - '[a-z][.?!][A-Z]' 9 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/Suspended.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't use '%s' unless space is limited." 3 | link: https://docs.microsoft.com/en-us/style-guide/punctuation/dashes-hyphens/hyphens 4 | ignorecase: true 5 | level: warning 6 | tokens: 7 | - '\w+- and \w+-' 8 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/Terms.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: "Prefer '%s' over '%s'." 3 | level: warning 4 | ignorecase: true 5 | action: 6 | name: replace 7 | swap: 8 | '(?:agent|virtual assistant|intelligent personal assistant)': personal digital assistant 9 | '(?:drive C:|drive C>|C: drive)': drive C 10 | '(?:internet bot|web robot)s?': bot(s) 11 | '(?:microsoft cloud|the cloud)': cloud 12 | '(?:mobile|smart) ?phone': phone 13 | '24/7': every day 14 | 'audio(?:-| )book': audiobook 15 | 'back(?:-| )light': backlight 16 | 'chat ?bots?': chatbot(s) 17 | adaptor: adapter 18 | administrate: administer 19 | afterwards: afterward 20 | alphabetic: alphabetical 21 | alphanumerical: alphanumeric 22 | anti-aliasing: antialiasing 23 | anti-malware: antimalware 24 | anti-spyware: antispyware 25 | anti-virus: antivirus 26 | appendixes: appendices 27 | artificial intelligence: artificial intelligence 28 | assembler: assembly language 29 | bpp: bpp 30 | bps: bps 31 | caap: CaaP 32 | conversation-as-a-platform: conversation as a platform 33 | eb: EB 34 | gb: GB 35 | gbps: Gbps 36 | kb: KB 37 | keypress: keystroke 38 | mb: MB 39 | pb: PB 40 | tb: TB 41 | zb: ZB 42 | viz: namely 43 | ergo: therefore 44 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/URLFormat.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: "Use '%s' instead of '%s'." 3 | ignorecase: true 4 | level: error 5 | action: 6 | name: replace 7 | swap: 8 | URL for: URL of 9 | an URL: a URL 10 | 11 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/Units.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't spell out the number in '%s'." 3 | link: https://docs.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/term-collections/units-of-measure-terms 4 | level: error 5 | raw: 6 | - '[a-zA-Z]+\s' 7 | tokens: 8 | - '(?:centi|milli)?meters' 9 | - '(?:kilo)?grams' 10 | - '(?:kilo)?meters' 11 | - '(?:mega)?pixels' 12 | - cm 13 | - inches 14 | - lb 15 | - miles 16 | - pounds 17 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/Vocab.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Verify your use of '%s' with the A-Z word list." 3 | link: 'https://docs.microsoft.com/en-us/style-guide' 4 | level: suggestion 5 | ignorecase: true 6 | tokens: 7 | - above 8 | - accessible 9 | - actionable 10 | - against 11 | - alarm 12 | - alert 13 | - alias 14 | - allows? 15 | - and/or 16 | - as well as 17 | - assure 18 | - author 19 | - avg 20 | - beta 21 | - ensure 22 | - he 23 | - insure 24 | - sample 25 | - she 26 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/We.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Try to avoid using first-person plural like '%s'." 3 | link: https://docs.microsoft.com/en-us/style-guide/grammar/person#avoid-first-person-plural 4 | level: warning 5 | ignorecase: true 6 | tokens: 7 | - we 8 | - we'(?:ve|re) 9 | - ours? 10 | - us 11 | - let's 12 | -------------------------------------------------------------------------------- /profile/vale/styles/Microsoft/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "feed": "https://github.com/errata-ai/Microsoft/releases.atom", 3 | "vale_version": ">=1.0.0" 4 | } 5 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/Avoid.yml: -------------------------------------------------------------------------------- 1 | --- 2 | extends: substitution 3 | message: Consider using '%s' instead of '%s'. 4 | ignorecase: true 5 | level: warning 6 | action: 7 | name: replace 8 | swap: 9 | by using: using 10 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/EmDash.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | description: "Use an em dash (—) to set off a parenthetical phrase with more emphasis than parentheses provide." 3 | message: "Don't put a space before or after a dash." 4 | link: 'https://learn.microsoft.com/style-guide/punctuation/dashes-hyphens/emes' 5 | nonword: true 6 | level: error 7 | action: 8 | name: edit 9 | params: 10 | - remove 11 | - ' ' 12 | tokens: 13 | - '\s[—–]\s' 14 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/EnDash.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | description: "Use en dash for ranges, negative signs, and hyphenated compounds." 3 | message: "Use an em dash ('—') instead of '–'." 4 | link: 'https://learn.microsoft.com/en-us/style-guide/punctuation/dashes-hyphens/enes' 5 | nonword: true 6 | level: error 7 | action: 8 | name: edit 9 | params: 10 | - replace 11 | - '-' 12 | - '—' 13 | tokens: 14 | - '–' 15 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/EndOfLine.yml: -------------------------------------------------------------------------------- 1 | --- 2 | extends: existence 3 | description: "Spaces on the end of the line can break line continuation or imply `
` for Markdown." 4 | message: "End of Line should not have spaces." 5 | level: warning 6 | scope: raw 7 | raw: 8 | - ' +\n' -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/Exclamation.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | description: "Use exclamation points sparingly. Save them for when they count." 3 | message: "Don't use exclamation points in text." 4 | link: 'https://learn.microsoft.com/en-us/style-guide/punctuation/exclamation-points' 5 | nonword: true 6 | level: error 7 | tokens: 8 | - '\w!(?:\s|$)' 9 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/HeadingDepth.yml: -------------------------------------------------------------------------------- 1 | --- 2 | extends: existence 3 | description: "Markdown is limited to 6 levels, but format differences are lost after 4 levels." 4 | message: 'The subheading "%s" is nested too deeply. Headings deeper than H4 suggest the section or page should be refactored.' 5 | link: https://docs.gitlab.com/ee/development/documentation/styleguide/index.html#headings-in-markdown 6 | level: warning 7 | scope: raw 8 | raw: 9 | - '(?<=\n)#{5,}\s.*' 10 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/InternalLinkCase.yml: -------------------------------------------------------------------------------- 1 | --- 2 | extends: existence 3 | description: "Checks that anchor fragments on internal links are in lower-case." 4 | message: 'Links to subheadings in docs must be in lower-case: "%s"' 5 | link: https://docs.gitlab.com/ee/development/documentation/styleguide/index.html#links-within-the-same-repository 6 | level: error 7 | scope: raw 8 | raw: 9 | - '[^\`]\[[^\[\]]+\]\((https?:){0}[\w\/\.]*?#[^\s]*?[A-Z][^\) ]*\)[^\`]' 10 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/InternalLinkExtension.yml: -------------------------------------------------------------------------------- 1 | --- 2 | extends: existence 3 | description: "Checks that internal links have .md extension" 4 | message: 'Link "%s" must link directly to a file and use the .md file extension.' 5 | link: https://docs.gitlab.com/ee/development/documentation/styleguide/index.html#links-within-the-same-repository 6 | level: error 7 | scope: raw 8 | raw: 9 | - '\[[^\]]+\]\([^:\)]+(\/(#[^\)]+)?\)|\.html(#.+)?\))' 10 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/Latin.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | description: "Don't use Latin abbreviations." 3 | message: "Use '%s' instead of '%s'." 4 | link: 'https://learn.microsoft.com/style-guide/a-z-word-list-term-collections/e/eg' 5 | ignorecase: true 6 | level: error 7 | nonword: true 8 | action: 9 | name: replace 10 | swap: 11 | '\b(?:eg|e\.g\.)[\s,]': for example 12 | '\b(?:ie|i\.e\.)[\s,]': that is 13 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/LyHyphens.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | description: "Don't hyphenate compound words that precede and modify a noun as a unit." 3 | message: "'%s' doesn't need a hyphen." 4 | link: 'https://learn.microsoft.com/style-guide/punctuation/dashes-hyphens/hyphens#noun-modifiers' 5 | level: error 6 | ignorecase: false 7 | nonword: true 8 | action: 9 | name: edit 10 | params: 11 | - replace 12 | - '-' 13 | - ' ' 14 | tokens: 15 | - '\s[^\s-]+ly-' 16 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/MergeConflictMarkers.yml: -------------------------------------------------------------------------------- 1 | --- 2 | extends: existence 3 | description: "Checks for the presence of merge conflict markers." 4 | message: 'Merge conflict marker "%s" found.' 5 | link: https://docs.gitlab.com/ee/development/code_review.html#merging-a-merge-request 6 | level: error 7 | scope: raw 8 | raw: 9 | - '\n<<<<<<< .+\n|\n=======\n|\n>>>>>>> .+\n' 10 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/OptionalPlurals.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | description: "Don't add (s) or (es) to a singular noun to indicate that it can be singular or plural." 3 | message: "Don't use plurals in parentheses such as in '%s'." 4 | link: 'https://learn.microsoft.com/style-guide/a-z-word-list-term-collections/s/s-es' 5 | level: error 6 | nonword: true 7 | action: 8 | name: edit 9 | params: 10 | - remove 11 | - '(s)' 12 | tokens: 13 | - '\b\w+\(s\)' 14 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/Parens.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Use parentheses judiciously." 3 | link: 'https://developers.google.com/style/parentheses' 4 | nonword: true 5 | level: suggestion 6 | tokens: 7 | - '\(.+\)' 8 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/Passive.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | link: 'https://developers.google.com/style/voice' 3 | message: "In general, use active voice instead of passive voice ('%s')." 4 | ignorecase: true 5 | level: suggestion 6 | raw: 7 | - \b(am|are|were|being|is|been|was|be)\b\s* 8 | tokens: 9 | - '[\w]+ed' 10 | - awoken 11 | - beat 12 | - become 13 | - been 14 | - begun 15 | - bent 16 | - beset 17 | - bet 18 | - bid 19 | - bidden 20 | - bitten 21 | - bled 22 | - blown 23 | - born 24 | - bought 25 | - bound 26 | - bred 27 | - broadcast 28 | - broken 29 | - brought 30 | - built 31 | - burnt 32 | - burst 33 | - cast 34 | - caught 35 | - chosen 36 | - clung 37 | - come 38 | - cost 39 | - crept 40 | - cut 41 | - dealt 42 | - dived 43 | - done 44 | - drawn 45 | - dreamt 46 | - driven 47 | - drunk 48 | - dug 49 | - eaten 50 | - fallen 51 | - fed 52 | - felt 53 | - fit 54 | - fled 55 | - flown 56 | - flung 57 | - forbidden 58 | - foregone 59 | - forgiven 60 | - forgotten 61 | - forsaken 62 | - fought 63 | - found 64 | - frozen 65 | - given 66 | - gone 67 | - gotten 68 | - ground 69 | - grown 70 | - heard 71 | - held 72 | - hidden 73 | - hit 74 | - hung 75 | - hurt 76 | - kept 77 | - knelt 78 | - knit 79 | - known 80 | - laid 81 | - lain 82 | - leapt 83 | - learnt 84 | - led 85 | - left 86 | - lent 87 | - let 88 | - lighted 89 | - lost 90 | - made 91 | - meant 92 | - met 93 | - misspelt 94 | - mistaken 95 | - mown 96 | - overcome 97 | - overdone 98 | - overtaken 99 | - overthrown 100 | - paid 101 | - pled 102 | - proven 103 | - put 104 | - quit 105 | - read 106 | - rid 107 | - ridden 108 | - risen 109 | - run 110 | - rung 111 | - said 112 | - sat 113 | - sawn 114 | - seen 115 | - sent 116 | - set 117 | - sewn 118 | - shaken 119 | - shaven 120 | - shed 121 | - shod 122 | - shone 123 | - shorn 124 | - shot 125 | - shown 126 | - shrunk 127 | - shut 128 | - slain 129 | - slept 130 | - slid 131 | - slit 132 | - slung 133 | - smitten 134 | - sold 135 | - sought 136 | - sown 137 | - sped 138 | - spent 139 | - spilt 140 | - spit 141 | - split 142 | - spoken 143 | - spread 144 | - sprung 145 | - spun 146 | - stolen 147 | - stood 148 | - stridden 149 | - striven 150 | - struck 151 | - strung 152 | - stuck 153 | - stung 154 | - stunk 155 | - sung 156 | - sunk 157 | - swept 158 | - swollen 159 | - sworn 160 | - swum 161 | - swung 162 | - taken 163 | - taught 164 | - thought 165 | - thrived 166 | - thrown 167 | - thrust 168 | - told 169 | - torn 170 | - trodden 171 | - understood 172 | - upheld 173 | - upset 174 | - wed 175 | - wept 176 | - withheld 177 | - withstood 178 | - woken 179 | - won 180 | - worn 181 | - wound 182 | - woven 183 | - written 184 | - wrung 185 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/Periods.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | description: "Don't use periods with acronyms or initialisms" 3 | message: "Don't use periods with acronyms or initialisms such as '%s'." 4 | link: 'https://developers.google.com/style/abbreviations#periods' 5 | level: error 6 | nonword: true 7 | tokens: 8 | - '\b(?:[A-Z]\.){3,}' 9 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/Repetition.yml: -------------------------------------------------------------------------------- 1 | --- 2 | extends: repetition 3 | description: "Checks for duplicate words, like `the the` or `and and`." 4 | message: '"%s" is repeated.' 5 | level: error 6 | alpha: true 7 | tokens: 8 | - '[^\s]+' 9 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/Semicolons.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | description: "Sentences that contain semicolons are often complex. Try to simplify the sentence—break it into multiple sentences or a list—to eliminate the semicolon." 3 | message: "Use semicolons judiciously." 4 | link: 'https://learn.microsoft.com/style-guide/punctuation/semicolons' 5 | nonword: true 6 | scope: sentence 7 | level: suggestion 8 | tokens: 9 | - ';' 10 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/Slang.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | description: "Internet slang and abbreviations are unprofessional." 3 | message: "Don't use internet slang abbreviations such as '%s'." 4 | link: 'https://developers.google.com/style/abbreviations' 5 | ignorecase: true 6 | level: error 7 | tokens: 8 | - 'tl;dr' 9 | - ymmv 10 | - rtfm 11 | - imo 12 | - fwiw 13 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/So.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | description: "Don't start a sentence with 'So'." 3 | message: "Consider striking '%s' or replacing it with 'Therefore'." 4 | level: error 5 | raw: 6 | - '(?:[;-]\s)so[\s,]|\bSo[\s,]' 7 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/Spacing.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' should have one space." 3 | link: https://docs.microsoft.com/en-us/style-guide/punctuation/periods 4 | level: error 5 | nonword: true 6 | tokens: 7 | - '[a-z][.?!] {2,}[A-Z]' 8 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/Spelling.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | description: "When the spelling of English words varies by locale, use the US spelling. See http://www.tysto.com/uk-us-spelling-list.html for a comprehensive list." 3 | message: "In general, use American spelling instead of '%s'." 4 | link: 'https://learn.microsoft.com/style-guide/word-choice/use-us-spelling-avoid-non-english-words' 5 | ignorecase: true 6 | level: warning 7 | tokens: 8 | - '(?:\w+)isabl[ey]?' 9 | - '(?:\w+)ising?' 10 | - '(?:\w+)isation?' 11 | - '(?:\w+)ise[drs]?' 12 | - '(?:\w+)logue' 13 | - 'armour' 14 | - 'behaviour' 15 | - 'colour' 16 | - 'endeavour' 17 | - 'favour' 18 | - 'honour' 19 | - 'neighbour' 20 | - 'labour' 21 | exceptions: 22 | - '[Oo]therwise' 23 | - '[Dd]isable' 24 | - '[Rr]ising' 25 | - '[Cc]ompromis(e|ing)' 26 | - '[Rr]aises' 27 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/TODO.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | description: "Make sure all temporary markers have been removed before publishing." 3 | message: "'%s' left in text." 4 | ignorecase: false 5 | level: error 6 | tokens: 7 | - XXX 8 | - FIXME 9 | - TODO 10 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/Using.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | description: "Make every word count. Concise, clear sentences save space, are easy to understand, and facilitate scanning." 3 | message: "Consider using '%s' instead of '%s'." 4 | link: https://docs.microsoft.com/style-guide/word-choice/use-simple-words-concise-sentences 5 | ignorecase: true 6 | level: warning 7 | action: 8 | name: replace 9 | swap: 10 | by using: using 11 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/Utilize.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | description: "`use` can always be used, but `utilize` should only be used when indicating a creative use." 3 | message: "Consider using '%s' instead of '%s'." 4 | link: https://eliteediting.com/resources/use-vs-utilize/ 5 | ignorecase: true 6 | level: warning 7 | action: 8 | name: replace 9 | swap: 10 | utilize: use 11 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/Weasel.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | description: "Weasel words are not precise and weaken your prose." 3 | link: https://withoutbullshit.com/blog/how-to-fix-weasel-words 4 | message: "'%s' is a weasel word!" 5 | ignorecase: true 6 | level: warning 7 | tokens: 8 | - additionally 9 | - approximately 10 | - awkwardly 11 | - badly 12 | - barely 13 | - beautifully 14 | - blindly 15 | - boldly 16 | - busily 17 | - currently 18 | - definitely 19 | - deliberately 20 | - elegantly 21 | - enormously 22 | - equally 23 | - especially 24 | - eventually 25 | - exceedingly 26 | - extremely 27 | - fairly 28 | - faithfully 29 | - inadequately 30 | - interestingly 31 | - largely 32 | - likely 33 | - literally 34 | - loosely 35 | - mildly 36 | - mostly 37 | - mysteriously 38 | - neatly 39 | - normally 40 | - occasionally 41 | - particularly 42 | - poorly 43 | - powerfully 44 | - promptly 45 | - quickly 46 | - rapidly 47 | - rarely 48 | - really 49 | - regularly 50 | - remarkably 51 | - relatively 52 | - rightfully 53 | - roughly 54 | - sensibly 55 | - seriously 56 | - shortly 57 | - significantly 58 | - simply 59 | - substantially 60 | - timely 61 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/Which.yml: -------------------------------------------------------------------------------- 1 | --- 2 | extends: existence 3 | link: 'https://owl.purdue.edu/owl/general_writing/grammar/that_vs_which.html' 4 | message: "Always use a comma before '%s'." 5 | ignorecase: true 6 | level: warning 7 | tokens: 8 | - '[^,\n]\s?(which)' 9 | exceptions: 10 | - of which 11 | - on which 12 | - to which 13 | - for which 14 | - from which 15 | - with which 16 | - about which 17 | -------------------------------------------------------------------------------- /profile/vale/styles/PowerShell-Docs/WhichComma.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | description: "Use 'that' for restrictive clauses. Use ', which' for non-restrictive clauses." 3 | link: 'https://owl.purdue.edu/owl/general_writing/grammar/that_vs_which.html' 4 | message: "Use a comma before 'which'." 5 | nonword: true 6 | ignorecase: true 7 | level: warning 8 | raw: 9 | - '(?=1.0.0" 4 | } -------------------------------------------------------------------------------- /profile/vale/styles/Readability/AutomatedReadability.yml: -------------------------------------------------------------------------------- 1 | extends: metric 2 | message: "Try to keep the Automated Readability Index (%s) below 8." 3 | link: https://en.wikipedia.org/wiki/Automated_readability_index 4 | 5 | formula: | 6 | (4.71 * (characters / words)) + (0.5 * (words / sentences)) - 21.43 7 | 8 | condition: "> 8" 9 | -------------------------------------------------------------------------------- /profile/vale/styles/Readability/ColemanLiau.yml: -------------------------------------------------------------------------------- 1 | extends: metric 2 | message: "Try to keep the Coleman–Liau Index grade (%s) below 19." 3 | link: https://en.wikipedia.org/wiki/Coleman%E2%80%93Liau_index 4 | 5 | formula: | 6 | (0.0588 * (characters / words) * 100) - (0.296 * (sentences / words) * 100) - 15.8 7 | 8 | condition: "> 9" 9 | -------------------------------------------------------------------------------- /profile/vale/styles/Readability/FleschKincaid.yml: -------------------------------------------------------------------------------- 1 | extends: metric 2 | message: "Try to keep the Flesch–Kincaid grade level (%s) below 8." 3 | link: https://en.wikipedia.org/wiki/Flesch%E2%80%93Kincaid_readability_tests 4 | 5 | formula: | 6 | (0.39 * (words / sentences)) + (11.8 * (syllables / words)) - 15.59 7 | 8 | condition: "> 8" 9 | -------------------------------------------------------------------------------- /profile/vale/styles/Readability/FleschReadingEase.yml: -------------------------------------------------------------------------------- 1 | extends: metric 2 | message: "Try to keep the Flesch reading ease score (%s) above 70." 3 | link: https://en.wikipedia.org/wiki/Flesch%E2%80%93Kincaid_readability_tests 4 | 5 | formula: | 6 | 206.835 - (1.015 * (words / sentences)) - (84.6 * (syllables / words)) 7 | 8 | condition: "< 70" 9 | -------------------------------------------------------------------------------- /profile/vale/styles/Readability/GunningFog.yml: -------------------------------------------------------------------------------- 1 | extends: metric 2 | message: "Try to keep the Gunning-Fog index (%s) below 10." 3 | link: https://en.wikipedia.org/wiki/Gunning_fog_index 4 | 5 | formula: | 6 | 0.4 * ((words / sentences) + 100 * (complex_words / words)) 7 | 8 | condition: "> 10" 9 | -------------------------------------------------------------------------------- /profile/vale/styles/Readability/LIX.yml: -------------------------------------------------------------------------------- 1 | extends: metric 2 | message: "Try to keep the LIX score (%s) below 35." 3 | 4 | link: https://en.wikipedia.org/wiki/Lix_(readability_test) 5 | # Very Easy: 20 - 25 6 | # 7 | # Easy: 30 - 35 8 | # 9 | # Medium: 40 - 45 10 | # 11 | # Difficult: 50 - 55 12 | # 13 | # Very Difficult: 60+ 14 | formula: | 15 | (words / sentences) + ((long_words * 100) / words) 16 | 17 | condition: "> 35" 18 | -------------------------------------------------------------------------------- /profile/vale/styles/Readability/SMOG.yml: -------------------------------------------------------------------------------- 1 | extends: metric 2 | message: "Try to keep the SMOG grade (%s) below 10." 3 | link: https://en.wikipedia.org/wiki/SMOG 4 | 5 | formula: | 6 | 1.0430 * math.sqrt((polysyllabic_words * 30.0) / sentences) + 3.1291 7 | 8 | condition: "> 10" 9 | -------------------------------------------------------------------------------- /profile/vale/styles/Readability/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "feed": "https://github.com/errata-ai/Readability/releases.atom", 3 | "vale_version": ">=2.13.0" 4 | } -------------------------------------------------------------------------------- /profile/vale/styles/Vocab/Blog/accept.txt: -------------------------------------------------------------------------------- 1 | img 2 | pageinfo -------------------------------------------------------------------------------- /profile/vale/styles/Vocab/Blog/reject.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sdwheeler/tools-by-sean/a451f6b76799406b268b10da79dae7718b931e18/profile/vale/styles/Vocab/Blog/reject.txt -------------------------------------------------------------------------------- /profile/vale/styles/Vocab/Docs/accept.txt: -------------------------------------------------------------------------------- 1 | PowerShell 2 | IntelliSense 3 | Authenticode 4 | CentOS 5 | Contoso 6 | CoreOS 7 | Debian 8 | Ubuntu 9 | openSUSE 10 | RHEL 11 | JavaScript 12 | .NET 13 | NuGet 14 | VS Code 15 | Newtonsoft -------------------------------------------------------------------------------- /profile/vale/styles/Vocab/Docs/reject.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sdwheeler/tools-by-sean/a451f6b76799406b268b10da79dae7718b931e18/profile/vale/styles/Vocab/Docs/reject.txt -------------------------------------------------------------------------------- /profile/vale/styles/Vocab/Marketing/accept.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sdwheeler/tools-by-sean/a451f6b76799406b268b10da79dae7718b931e18/profile/vale/styles/Vocab/Marketing/accept.txt -------------------------------------------------------------------------------- /profile/vale/styles/Vocab/Marketing/reject.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sdwheeler/tools-by-sean/a451f6b76799406b268b10da79dae7718b931e18/profile/vale/styles/Vocab/Marketing/reject.txt -------------------------------------------------------------------------------- /profile/vale/styles/alex/Condescending.yml: -------------------------------------------------------------------------------- 1 | --- 2 | extends: existence 3 | message: Using '%s' may come across as condescending. 4 | link: https://css-tricks.com/words-avoid-educational-writing/ 5 | level: error 6 | ignorecase: true 7 | tokens: 8 | - obvious 9 | - obviously 10 | - simple 11 | - simply 12 | - easy 13 | - easily 14 | - of course 15 | - clearly 16 | - everyone knows 17 | -------------------------------------------------------------------------------- /profile/vale/styles/alex/LGBTQ.yml: -------------------------------------------------------------------------------- 1 | --- 2 | extends: substitution 3 | message: Consider using '%s' instead of '%s'. 4 | ignorecase: true 5 | level: warning 6 | action: 7 | name: replace 8 | swap: 9 | bathroom bill: non-discrimination law|non-discrimination ordinance 10 | bi: bisexual 11 | biologically female: assigned female at birth|designated female at birth 12 | biologically male: assigned male at birth|designated male at birth 13 | born a man: assigned male at birth|designated male at birth 14 | born a woman: assigned female at birth|designated female at birth 15 | dyke: gay 16 | fag: gay 17 | faggot: gay 18 | gay agenda: gay issues 19 | gay lifestyle: gay lives|gay/lesbian lives 20 | gay rights: equal rights|civil rights for gay people 21 | gender pronoun: pronoun|pronouns 22 | gender pronouns: pronoun|pronouns 23 | genetically female: assigned female at birth|designated female at birth 24 | genetically male: assigned male at birth|designated male at birth 25 | hermaphrodite: person who is intersex|person|intersex person 26 | hermaphroditic: intersex 27 | heshe: transgender person|person 28 | homo: gay 29 | homosexual: gay|gay man|lesbian|gay person/people 30 | homosexual agenda: gay issues 31 | homosexual couple: couple 32 | homosexual lifestyle: gay lives|gay/lesbian lives 33 | homosexual marriage: gay marriage|same-sex marriage 34 | homosexual relations: relationship 35 | homosexual relationship: relationship 36 | preferred pronoun: pronoun|pronouns 37 | preferred pronouns: pronoun|pronouns 38 | pseudo hermaphrodite: person who is intersex|person|intersex person 39 | pseudo hermaphroditic: intersex 40 | pseudohermaphrodite: person who is intersex|person|intersex person 41 | pseudohermaphroditic: intersex 42 | sex change: transition|gender confirmation surgery 43 | sex change operation: sex reassignment surgery|gender confirmation surgery 44 | sexchange: transition|gender confirmation surgery 45 | sexual preference: sexual orientation|orientation 46 | she male: transgender person|person 47 | shehe: transgender person|person 48 | shemale: transgender person|person 49 | sodomite: gay 50 | special rights: equal rights|civil rights for gay people 51 | tranny: transgender 52 | transgendered: transgender 53 | transgenderism: being transgender|the movement for transgender equality 54 | transgenders: transgender people 55 | transvestite: cross-dresser 56 | -------------------------------------------------------------------------------- /profile/vale/styles/alex/Press.yml: -------------------------------------------------------------------------------- 1 | --- 2 | extends: substitution 3 | message: Consider using '%s' instead of '%s'. 4 | ignorecase: true 5 | level: warning 6 | action: 7 | name: replace 8 | swap: 9 | islamist: muslim|person of Islamic faith|fanatic|zealot|follower of islam|follower 10 | of the islamic faith 11 | islamists: muslims|people of Islamic faith|fanatics|zealots 12 | -------------------------------------------------------------------------------- /profile/vale/styles/alex/README.md: -------------------------------------------------------------------------------- 1 | Based on [alex](https://github.com/get-alex/alex). 2 | 3 | > Catch insensitive, inconsiderate writing 4 | 5 | ``` 6 | (The MIT License) 7 | 8 | Copyright (c) 2015 Titus Wormer 9 | 10 | Permission is hereby granted, free of charge, to any person obtaining a copy 11 | of this software and associated documentation files (the "Software"), to deal 12 | in the Software without restriction, including without limitation the rights 13 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 14 | copies of the Software, and to permit persons to whom the Software is 15 | furnished to do so, subject to the following conditions: 16 | 17 | The above copyright notice and this permission notice shall be included in 18 | all copies or substantial portions of the Software. 19 | 20 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 21 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 22 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 23 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 24 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 25 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 26 | THE SOFTWARE. 27 | ``` 28 | -------------------------------------------------------------------------------- /profile/vale/styles/alex/Suicide.yml: -------------------------------------------------------------------------------- 1 | --- 2 | extends: substitution 3 | message: When referring to a person, consider using '%s' instead of '%s'. 4 | ignorecase: true 5 | level: warning 6 | action: 7 | name: replace 8 | swap: 9 | commit suicide: die by suicide 10 | committed suicide: died by suicide 11 | complete suicide: die by suicide 12 | completed suicide: died by suicide 13 | epidemic of suicides: rise in suicides 14 | failed attempt: suicide attempt|attempted suicide 15 | failed suicide: suicide attempt|attempted suicide 16 | hang: the app froze|the app stopped responding|the app stopped responding to events|the 17 | app became unresponsive 18 | hanged: the app froze|the app stopped responding|the app stopped responding to events|the 19 | app became unresponsive 20 | successful suicide: die by suicide 21 | suicide epidemic: rise in suicides 22 | suicide failure: suicide attempt|attempted suicide 23 | suicide note: a note from the deceased 24 | suicide pact: rise in suicides 25 | -------------------------------------------------------------------------------- /profile/vale/styles/alex/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "feed": "https://github.com/errata-ai/alex/releases.atom", 3 | "vale_version": ">=1.0.0" 4 | } -------------------------------------------------------------------------------- /profile/vale/styles/proselint/Airlinese.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' is airlinese." 3 | ignorecase: true 4 | level: error 5 | tokens: 6 | - enplan(?:e|ed|ing|ement) 7 | - deplan(?:e|ed|ing|ement) 8 | - taking off momentarily 9 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/AnimalLabels.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: "Consider using '%s' instead of '%s'." 3 | level: error 4 | action: 5 | name: replace 6 | swap: 7 | (?:bull|ox)-like: taurine 8 | (?:calf|veal)-like: vituline 9 | (?:crow|raven)-like: corvine 10 | (?:leopard|panther)-like: pardine 11 | bird-like: avine 12 | centipede-like: scolopendrine 13 | crab-like: cancrine 14 | crocodile-like: crocodiline 15 | deer-like: damine 16 | eagle-like: aquiline 17 | earthworm-like: lumbricine 18 | falcon-like: falconine 19 | ferine: wild animal-like 20 | fish-like: piscine 21 | fox-like: vulpine 22 | frog-like: ranine 23 | goat-like: hircine 24 | goose-like: anserine 25 | gull-like: laridine 26 | hare-like: leporine 27 | hawk-like: accipitrine 28 | hippopotamus-like: hippopotamine 29 | lizard-like: lacertine 30 | mongoose-like: viverrine 31 | mouse-like: murine 32 | ostrich-like: struthionine 33 | peacock-like: pavonine 34 | porcupine-like: hystricine 35 | rattlesnake-like: crotaline 36 | sable-like: zibeline 37 | sheep-like: ovine 38 | shrew-like: soricine 39 | sparrow-like: passerine 40 | swallow-like: hirundine 41 | swine-like: suilline 42 | tiger-like: tigrine 43 | viper-like: viperine 44 | vulture-like: vulturine 45 | wasp-like: vespine 46 | wolf-like: lupine 47 | woodpecker-like: picine 48 | zebra-like: zebrine 49 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/Annotations.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' left in text." 3 | ignorecase: false 4 | level: error 5 | tokens: 6 | - XXX 7 | - FIXME 8 | - TODO 9 | - NOTE 10 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/Apologizing.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Excessive apologizing: '%s'" 3 | ignorecase: true 4 | level: error 5 | action: 6 | name: remove 7 | tokens: 8 | - More research is needed 9 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/Archaisms.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' is archaic." 3 | ignorecase: true 4 | level: error 5 | tokens: 6 | - alack 7 | - anent 8 | - begat 9 | - belike 10 | - betimes 11 | - boughten 12 | - brocage 13 | - brokage 14 | - camarade 15 | - chiefer 16 | - chiefest 17 | - Christiana 18 | - completely obsolescent 19 | - cozen 20 | - divers 21 | - deflexion 22 | - fain 23 | - forsooth 24 | - foreclose from 25 | - haply 26 | - howbeit 27 | - illumine 28 | - in sooth 29 | - maugre 30 | - meseems 31 | - methinks 32 | - nigh 33 | - peradventure 34 | - perchance 35 | - saith 36 | - shew 37 | - sistren 38 | - spake 39 | - to wit 40 | - verily 41 | - whilom 42 | - withal 43 | - wot 44 | - enclosed please find 45 | - please find enclosed 46 | - enclosed herewith 47 | - enclosed herein 48 | - inforce 49 | - ex postfacto 50 | - foreclose from 51 | - forewent 52 | - for ever 53 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/But.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Do not start a paragraph with a 'but'." 3 | level: error 4 | scope: paragraph 5 | action: 6 | name: remove 7 | tokens: 8 | - ^But 9 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/CorporateSpeak.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' is corporate speak." 3 | ignorecase: true 4 | level: error 5 | tokens: 6 | - at the end of the day 7 | - back to the drawing board 8 | - hit the ground running 9 | - get the ball rolling 10 | - low-hanging fruit 11 | - thrown under the bus 12 | - think outside the box 13 | - let's touch base 14 | - get my manager's blessing 15 | - it's on my radar 16 | - ping me 17 | - i don't have the bandwidth 18 | - no brainer 19 | - par for the course 20 | - bang for your buck 21 | - synergy 22 | - move the goal post 23 | - apples to apples 24 | - win-win 25 | - circle back around 26 | - all hands on deck 27 | - take this offline 28 | - drill-down 29 | - elephant in the room 30 | - on my plate 31 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/Currency.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Incorrect use of symbols in '%s'." 3 | ignorecase: true 4 | raw: 5 | - \$[\d]* ?(?:dollars|usd|us dollars) 6 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/Cursing.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Consider replacing '%s'." 3 | level: error 4 | ignorecase: true 5 | tokens: 6 | - shit 7 | - piss 8 | - fuck 9 | - cunt 10 | - cocksucker 11 | - motherfucker 12 | - tits 13 | - fart 14 | - turd 15 | - twat 16 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/DateCase.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: With lowercase letters, the periods are standard. 3 | ignorecase: true 4 | level: error 5 | nonword: true 6 | tokens: 7 | - '\d{1,2} ?[ap]m\b' 8 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/DateMidnight.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Use 'midnight' or 'noon'." 3 | ignorecase: true 4 | level: error 5 | nonword: true 6 | tokens: 7 | - '12 ?[ap]\.?m\.?' 8 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/DateRedundancy.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'a.m.' is always morning; 'p.m.' is always night." 3 | ignorecase: true 4 | level: error 5 | nonword: true 6 | tokens: 7 | - '\d{1,2} ?a\.?m\.? in the morning' 8 | - '\d{1,2} ?p\.?m\.? in the evening' 9 | - '\d{1,2} ?p\.?m\.? at night' 10 | - '\d{1,2} ?p\.?m\.? in the afternoon' 11 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/DateSpacing.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "It's standard to put a space before '%s'" 3 | ignorecase: true 4 | level: error 5 | nonword: true 6 | tokens: 7 | - '\d{1,2}[ap]\.?m\.?' 8 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/DenizenLabels.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: Did you mean '%s'? 3 | ignorecase: false 4 | action: 5 | name: replace 6 | swap: 7 | (?:Afrikaaner|Afrikander): Afrikaner 8 | (?:Hong Kongite|Hong Kongian): Hong Konger 9 | (?:Indianan|Indianian): Hoosier 10 | (?:Michiganite|Michiganian): Michigander 11 | (?:New Hampshireite|New Hampshireman): New Hampshirite 12 | (?:Newcastlite|Newcastleite): Novocastrian 13 | (?:Providencian|Providencer): Providentian 14 | (?:Trentian|Trentonian): Tridentine 15 | (?:Warsawer|Warsawian): Varsovian 16 | (?:Wolverhamptonite|Wolverhamptonian): Wulfrunian 17 | Alabaman: Alabamian 18 | Albuquerquian: Albuquerquean 19 | Anchoragite: Anchorageite 20 | Arizonian: Arizonan 21 | Arkansawyer: Arkansan 22 | Belarusan: Belarusian 23 | Cayman Islander: Caymanian 24 | Coloradoan: Coloradan 25 | Connecticuter: Nutmegger 26 | Fairbanksian: Fairbanksan 27 | Fort Worther: Fort Worthian 28 | Grenadian: Grenadan 29 | Halifaxer: Haligonian 30 | Hartlepoolian: Hartlepudlian 31 | Illinoisian: Illinoisan 32 | Iowegian: Iowan 33 | Leedsian: Leodenisian 34 | Liverpoolian: Liverpudlian 35 | Los Angelean: Angeleno 36 | Manchesterian: Mancunian 37 | Minneapolisian: Minneapolitan 38 | Missouran: Missourian 39 | Monacan: Monegasque 40 | Neopolitan: Neapolitan 41 | New Jerseyite: New Jerseyan 42 | New Orleansian: New Orleanian 43 | Oklahoma Citian: Oklahoma Cityan 44 | Oklahomian: Oklahoman 45 | Saudi Arabian: Saudi 46 | Seattlite: Seattleite 47 | Surinamer: Surinamese 48 | Tallahassean: Tallahasseean 49 | Tennesseean: Tennessean 50 | Trois-Rivièrester: Trifluvian 51 | Utahan: Utahn 52 | Valladolidian: Vallisoletano 53 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/Diacritical.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: Consider using '%s' instead of '%s'. 3 | ignorecase: true 4 | level: error 5 | action: 6 | name: replace 7 | swap: 8 | beau ideal: beau idéal 9 | boutonniere: boutonnière 10 | bric-a-brac: bric-à-brac 11 | cafe: café 12 | cause celebre: cause célèbre 13 | chevre: chèvre 14 | cliche: cliché 15 | consomme: consommé 16 | coup de grace: coup de grâce 17 | crudites: crudités 18 | creme brulee: crème brûlée 19 | creme de menthe: crème de menthe 20 | creme fraice: crème fraîche 21 | creme fresh: crème fraîche 22 | crepe: crêpe 23 | debutante: débutante 24 | decor: décor 25 | deja vu: déjà vu 26 | denouement: dénouement 27 | facade: façade 28 | fiance: fiancé 29 | fiancee: fiancée 30 | flambe: flambé 31 | garcon: garçon 32 | lycee: lycée 33 | maitre d: maître d 34 | menage a trois: ménage à trois 35 | negligee: négligée 36 | protege: protégé 37 | protegee: protégée 38 | puree: purée 39 | my resume: my résumé 40 | your resume: your résumé 41 | his resume: his résumé 42 | her resume: her résumé 43 | a resume: a résumé 44 | the resume: the résumé 45 | risque: risqué 46 | roue: roué 47 | soiree: soirée 48 | souffle: soufflé 49 | soupcon: soupçon 50 | touche: touché 51 | tete-a-tete: tête-à-tête 52 | voila: voilà 53 | a la carte: à la carte 54 | a la mode: à la mode 55 | emigre: émigré 56 | 57 | # Spanish loanwords 58 | El Nino: El Niño 59 | jalapeno: jalapeño 60 | La Nina: La Niña 61 | pina colada: piña colada 62 | senor: señor 63 | senora: señora 64 | senorita: señorita 65 | 66 | # Portuguese loanwords 67 | acai: açaí 68 | 69 | # German loanwords 70 | doppelganger: doppelgänger 71 | Fuhrer: Führer 72 | Gewurztraminer: Gewürztraminer 73 | vis-a-vis: vis-à-vis 74 | Ubermensch: Übermensch 75 | 76 | # Swedish loanwords 77 | filmjolk: filmjölk 78 | smorgasbord: smörgåsbord 79 | 80 | # Names, places, and companies 81 | Beyonce: Beyoncé 82 | Bronte: Brontë 83 | Champs-Elysees: Champs-Élysées 84 | Citroen: Citroën 85 | Curacao: Curaçao 86 | Lowenbrau: Löwenbräu 87 | Monegasque: Monégasque 88 | Motley Crue: Mötley Crüe 89 | Nescafe: Nescafé 90 | Queensryche: Queensrÿche 91 | Quebec: Québec 92 | Quebecois: Québécois 93 | Angstrom: Ångström 94 | angstrom: ångström 95 | Skoda: Škoda 96 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/GenderBias.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: Consider using '%s' instead of '%s'. 3 | ignorecase: true 4 | level: error 5 | action: 6 | name: replace 7 | swap: 8 | (?:alumnae|alumni): graduates 9 | (?:alumna|alumnus): graduate 10 | air(?:m[ae]n|wom[ae]n): pilot(s) 11 | anchor(?:m[ae]n|wom[ae]n): anchor(s) 12 | authoress: author 13 | camera(?:m[ae]n|wom[ae]n): camera operator(s) 14 | chair(?:m[ae]n|wom[ae]n): chair(s) 15 | congress(?:m[ae]n|wom[ae]n): member(s) of congress 16 | door(?:m[ae]|wom[ae]n): concierge(s) 17 | draft(?:m[ae]n|wom[ae]n): drafter(s) 18 | fire(?:m[ae]n|wom[ae]n): firefighter(s) 19 | fisher(?:m[ae]n|wom[ae]n): fisher(s) 20 | fresh(?:m[ae]n|wom[ae]n): first-year student(s) 21 | garbage(?:m[ae]n|wom[ae]n): waste collector(s) 22 | lady lawyer: lawyer 23 | ladylike: courteous 24 | landlord: building manager 25 | mail(?:m[ae]n|wom[ae]n): mail carriers 26 | man and wife: husband and wife 27 | man enough: strong enough 28 | mankind: human kind 29 | manmade: manufactured 30 | men and girls: men and women 31 | middle(?:m[ae]n|wom[ae]n): intermediary 32 | news(?:m[ae]n|wom[ae]n): journalist(s) 33 | ombuds(?:man|woman): ombuds 34 | oneupmanship: upstaging 35 | poetess: poet 36 | police(?:m[ae]n|wom[ae]n): police officer(s) 37 | repair(?:m[ae]n|wom[ae]n): technician(s) 38 | sales(?:m[ae]n|wom[ae]n): salesperson or sales people 39 | service(?:m[ae]n|wom[ae]n): soldier(s) 40 | steward(?:ess)?: flight attendant 41 | tribes(?:m[ae]n|wom[ae]n): tribe member(s) 42 | waitress: waiter 43 | woman doctor: doctor 44 | woman scientist[s]?: scientist(s) 45 | work(?:m[ae]n|wom[ae]n): worker(s) 46 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/GroupTerms.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: Consider using '%s' instead of '%s'. 3 | ignorecase: true 4 | action: 5 | name: replace 6 | swap: 7 | (?:bunch|group|pack|flock) of chickens: brood of chickens 8 | (?:bunch|group|pack|flock) of crows: murder of crows 9 | (?:bunch|group|pack|flock) of hawks: cast of hawks 10 | (?:bunch|group|pack|flock) of parrots: pandemonium of parrots 11 | (?:bunch|group|pack|flock) of peacocks: muster of peacocks 12 | (?:bunch|group|pack|flock) of penguins: muster of penguins 13 | (?:bunch|group|pack|flock) of sparrows: host of sparrows 14 | (?:bunch|group|pack|flock) of turkeys: rafter of turkeys 15 | (?:bunch|group|pack|flock) of woodpeckers: descent of woodpeckers 16 | (?:bunch|group|pack|herd) of apes: shrewdness of apes 17 | (?:bunch|group|pack|herd) of baboons: troop of baboons 18 | (?:bunch|group|pack|herd) of badgers: cete of badgers 19 | (?:bunch|group|pack|herd) of bears: sloth of bears 20 | (?:bunch|group|pack|herd) of bullfinches: bellowing of bullfinches 21 | (?:bunch|group|pack|herd) of bullocks: drove of bullocks 22 | (?:bunch|group|pack|herd) of caterpillars: army of caterpillars 23 | (?:bunch|group|pack|herd) of cats: clowder of cats 24 | (?:bunch|group|pack|herd) of colts: rag of colts 25 | (?:bunch|group|pack|herd) of crocodiles: bask of crocodiles 26 | (?:bunch|group|pack|herd) of dolphins: school of dolphins 27 | (?:bunch|group|pack|herd) of foxes: skulk of foxes 28 | (?:bunch|group|pack|herd) of gorillas: band of gorillas 29 | (?:bunch|group|pack|herd) of hippopotami: bloat of hippopotami 30 | (?:bunch|group|pack|herd) of horses: drove of horses 31 | (?:bunch|group|pack|herd) of jellyfish: fluther of jellyfish 32 | (?:bunch|group|pack|herd) of kangeroos: mob of kangeroos 33 | (?:bunch|group|pack|herd) of monkeys: troop of monkeys 34 | (?:bunch|group|pack|herd) of oxen: yoke of oxen 35 | (?:bunch|group|pack|herd) of rhinoceros: crash of rhinoceros 36 | (?:bunch|group|pack|herd) of wild boar: sounder of wild boar 37 | (?:bunch|group|pack|herd) of wild pigs: drift of wild pigs 38 | (?:bunch|group|pack|herd) of zebras: zeal of wild pigs 39 | (?:bunch|group|pack|school) of trout: hover of trout 40 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/Hedging.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' is hedging." 3 | ignorecase: true 4 | level: error 5 | tokens: 6 | - I would argue that 7 | - ', so to speak' 8 | - to a certain degree 9 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/Hyperbole.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' is hyperbolic." 3 | level: error 4 | nonword: true 5 | tokens: 6 | - '[a-z]+[!?]{2,}' 7 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/Jargon.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' is jargon." 3 | ignorecase: true 4 | level: error 5 | tokens: 6 | - in the affirmative 7 | - in the negative 8 | - agendize 9 | - per your order 10 | - per your request 11 | - disincentivize 12 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/LGBTOffensive.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' is offensive. Remove it or consider the context." 3 | ignorecase: true 4 | tokens: 5 | - fag 6 | - faggot 7 | - dyke 8 | - sodomite 9 | - homosexual agenda 10 | - gay agenda 11 | - transvestite 12 | - homosexual lifestyle 13 | - gay lifestyle 14 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/LGBTTerms.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: "Consider using '%s' instead of '%s'." 3 | ignorecase: true 4 | action: 5 | name: replace 6 | swap: 7 | homosexual man: gay man 8 | homosexual men: gay men 9 | homosexual woman: lesbian 10 | homosexual women: lesbians 11 | homosexual people: gay people 12 | homosexual couple: gay couple 13 | sexual preference: sexual orientation 14 | (?:admitted homosexual|avowed homosexual): openly gay 15 | special rights: equal rights 16 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/Malapropisms.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' is a malapropism." 3 | ignorecase: true 4 | level: error 5 | tokens: 6 | - the infinitesimal universe 7 | - a serial experience 8 | - attack my voracity 9 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/Nonwords.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: "Consider using '%s' instead of '%s'." 3 | ignorecase: true 4 | level: error 5 | action: 6 | name: replace 7 | swap: 8 | affrontery: effrontery 9 | analyzation: analysis 10 | annoyment: annoyance 11 | confirmant: confirmand 12 | confirmants: confirmands 13 | conversate: converse 14 | crained: cranded 15 | discomforture: discomfort|discomfiture 16 | dispersement: disbursement|dispersal 17 | doubtlessly: doubtless|undoubtedly 18 | forebearance: forbearance 19 | improprietous: improper 20 | inclimate: inclement 21 | inimicable: inimical 22 | irregardless: regardless 23 | minimalize: minimize 24 | minimalized: minimized 25 | minimalizes: minimizes 26 | minimalizing: minimizing 27 | optimalize: optimize 28 | paralyzation: paralysis 29 | pettifogger: pettifog 30 | proprietous: proper 31 | relative inexpense: relatively low price|affordability 32 | seldomly: seldom 33 | thusly: thus 34 | uncategorically: categorically 35 | undoubtably: undoubtedly|indubitably 36 | unequivocable: unequivocal 37 | unmercilessly: mercilessly 38 | unrelentlessly: unrelentingly|relentlessly 39 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/Oxymorons.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' is an oxymoron." 3 | ignorecase: true 4 | level: error 5 | tokens: 6 | - amateur expert 7 | - increasingly less 8 | - advancing backwards 9 | - alludes explicitly to 10 | - explicitly alludes to 11 | - totally obsolescent 12 | - completely obsolescent 13 | - generally always 14 | - usually always 15 | - increasingly less 16 | - build down 17 | - conspicuous absence 18 | - exact estimate 19 | - found missing 20 | - intense apathy 21 | - mandatory choice 22 | - organized mess 23 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/P-Value.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "You should use more decimal places, unless '%s' is really true." 3 | ignorecase: true 4 | level: suggestion 5 | tokens: 6 | - 'p = 0\.0{2,4}' 7 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/RASSyndrome.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' is redundant." 3 | level: error 4 | action: 5 | name: edit 6 | params: 7 | - split 8 | - ' ' 9 | - '0' 10 | tokens: 11 | - ABM missile 12 | - ACT test 13 | - ABM missiles 14 | - ABS braking system 15 | - ATM machine 16 | - CD disc 17 | - CPI Index 18 | - GPS system 19 | - GUI interface 20 | - HIV virus 21 | - ISBN number 22 | - LCD display 23 | - PDF format 24 | - PIN number 25 | - RAS syndrome 26 | - RIP in peace 27 | - please RSVP 28 | - SALT talks 29 | - SAT test 30 | - UPC codes 31 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/README.md: -------------------------------------------------------------------------------- 1 | Copyright © 2014–2015, Jordan Suchow, Michael Pacer, and Lara A. Ross 2 | All rights reserved. 3 | 4 | Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 5 | 6 | 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 7 | 8 | 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 9 | 10 | 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. 11 | 12 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 13 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/Skunked.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' is a bit of a skunked term — impossible to use without issue." 3 | ignorecase: true 4 | level: error 5 | tokens: 6 | - bona fides 7 | - deceptively 8 | - decimate 9 | - effete 10 | - fulsome 11 | - hopefully 12 | - impassionate 13 | - Thankfully 14 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/Spelling.yml: -------------------------------------------------------------------------------- 1 | extends: consistency 2 | message: "Inconsistent spelling of '%s'." 3 | level: error 4 | ignorecase: true 5 | either: 6 | advisor: adviser 7 | centre: center 8 | colour: color 9 | emphasise: emphasize 10 | finalise: finalize 11 | focussed: focused 12 | labour: labor 13 | learnt: learned 14 | organise: organize 15 | organised: organized 16 | organising: organizing 17 | recognise: recognize 18 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/Typography.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: Consider using the '%s' symbol instead of '%s'. 3 | level: error 4 | nonword: true 5 | swap: 6 | '\.\.\.': … 7 | '\([cC]\)': © 8 | '\(TM\)': ™ 9 | '\(tm\)': ™ 10 | '\([rR]\)': ® 11 | '[0-9]+ ?x ?[0-9]+': × 12 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/Uncomparables.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' is not comparable" 3 | ignorecase: true 4 | level: error 5 | action: 6 | name: edit 7 | params: 8 | - split 9 | - ' ' 10 | - '1' 11 | raw: 12 | - \b(?:absolutely|most|more|less|least|very|quite|largely|extremely|increasingly|kind of|mildy|hardly|greatly|sort of)\b\s* 13 | tokens: 14 | - absolute 15 | - adequate 16 | - complete 17 | - correct 18 | - certain 19 | - devoid 20 | - entire 21 | - 'false' 22 | - fatal 23 | - favorite 24 | - final 25 | - ideal 26 | - impossible 27 | - inevitable 28 | - infinite 29 | - irrevocable 30 | - main 31 | - manifest 32 | - only 33 | - paramount 34 | - perfect 35 | - perpetual 36 | - possible 37 | - preferable 38 | - principal 39 | - singular 40 | - stationary 41 | - sufficient 42 | - 'true' 43 | - unanimous 44 | - unavoidable 45 | - unbroken 46 | - uniform 47 | - unique 48 | - universal 49 | - void 50 | - whole 51 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/Very.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Remove '%s'." 3 | ignorecase: true 4 | level: error 5 | tokens: 6 | - very 7 | -------------------------------------------------------------------------------- /profile/vale/styles/proselint/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "author": "jdkato", 3 | "description": "A Vale-compatible implementation of the proselint linter.", 4 | "email": "support@errata.ai", 5 | "lang": "en", 6 | "url": "https://github.com/errata-ai/proselint/releases/latest/download/proselint.zip", 7 | "feed": "https://github.com/errata-ai/proselint/releases.atom", 8 | "issues": "https://github.com/errata-ai/proselint/issues/new", 9 | "license": "BSD-3-Clause", 10 | "name": "proselint", 11 | "sources": [ 12 | "https://github.com/amperser/proselint" 13 | ], 14 | "vale_version": ">=1.0.0", 15 | "coverage": 0.0, 16 | "version": "0.1.0" 17 | } 18 | -------------------------------------------------------------------------------- /profile/vale/styles/write-good/E-Prime.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Try to avoid using '%s'." 3 | ignorecase: true 4 | level: suggestion 5 | tokens: 6 | - am 7 | - are 8 | - aren't 9 | - be 10 | - been 11 | - being 12 | - he's 13 | - here's 14 | - here's 15 | - how's 16 | - i'm 17 | - is 18 | - isn't 19 | - it's 20 | - she's 21 | - that's 22 | - there's 23 | - they're 24 | - was 25 | - wasn't 26 | - we're 27 | - were 28 | - weren't 29 | - what's 30 | - where's 31 | - who's 32 | - you're 33 | -------------------------------------------------------------------------------- /profile/vale/styles/write-good/Illusions.yml: -------------------------------------------------------------------------------- 1 | extends: repetition 2 | message: "'%s' is repeated!" 3 | level: warning 4 | alpha: true 5 | action: 6 | name: edit 7 | params: 8 | - truncate 9 | - " " 10 | tokens: 11 | - '[^\s]+' 12 | -------------------------------------------------------------------------------- /profile/vale/styles/write-good/Passive.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' may be passive voice. Use active voice if you can." 3 | ignorecase: true 4 | level: warning 5 | raw: 6 | - \b(am|are|were|being|is|been|was|be)\b\s* 7 | tokens: 8 | - '[\w]+ed' 9 | - awoken 10 | - beat 11 | - become 12 | - been 13 | - begun 14 | - bent 15 | - beset 16 | - bet 17 | - bid 18 | - bidden 19 | - bitten 20 | - bled 21 | - blown 22 | - born 23 | - bought 24 | - bound 25 | - bred 26 | - broadcast 27 | - broken 28 | - brought 29 | - built 30 | - burnt 31 | - burst 32 | - cast 33 | - caught 34 | - chosen 35 | - clung 36 | - come 37 | - cost 38 | - crept 39 | - cut 40 | - dealt 41 | - dived 42 | - done 43 | - drawn 44 | - dreamt 45 | - driven 46 | - drunk 47 | - dug 48 | - eaten 49 | - fallen 50 | - fed 51 | - felt 52 | - fit 53 | - fled 54 | - flown 55 | - flung 56 | - forbidden 57 | - foregone 58 | - forgiven 59 | - forgotten 60 | - forsaken 61 | - fought 62 | - found 63 | - frozen 64 | - given 65 | - gone 66 | - gotten 67 | - ground 68 | - grown 69 | - heard 70 | - held 71 | - hidden 72 | - hit 73 | - hung 74 | - hurt 75 | - kept 76 | - knelt 77 | - knit 78 | - known 79 | - laid 80 | - lain 81 | - leapt 82 | - learnt 83 | - led 84 | - left 85 | - lent 86 | - let 87 | - lighted 88 | - lost 89 | - made 90 | - meant 91 | - met 92 | - misspelt 93 | - mistaken 94 | - mown 95 | - overcome 96 | - overdone 97 | - overtaken 98 | - overthrown 99 | - paid 100 | - pled 101 | - proven 102 | - put 103 | - quit 104 | - read 105 | - rid 106 | - ridden 107 | - risen 108 | - run 109 | - rung 110 | - said 111 | - sat 112 | - sawn 113 | - seen 114 | - sent 115 | - set 116 | - sewn 117 | - shaken 118 | - shaven 119 | - shed 120 | - shod 121 | - shone 122 | - shorn 123 | - shot 124 | - shown 125 | - shrunk 126 | - shut 127 | - slain 128 | - slept 129 | - slid 130 | - slit 131 | - slung 132 | - smitten 133 | - sold 134 | - sought 135 | - sown 136 | - sped 137 | - spent 138 | - spilt 139 | - spit 140 | - split 141 | - spoken 142 | - spread 143 | - sprung 144 | - spun 145 | - stolen 146 | - stood 147 | - stridden 148 | - striven 149 | - struck 150 | - strung 151 | - stuck 152 | - stung 153 | - stunk 154 | - sung 155 | - sunk 156 | - swept 157 | - swollen 158 | - sworn 159 | - swum 160 | - swung 161 | - taken 162 | - taught 163 | - thought 164 | - thrived 165 | - thrown 166 | - thrust 167 | - told 168 | - torn 169 | - trodden 170 | - understood 171 | - upheld 172 | - upset 173 | - wed 174 | - wept 175 | - withheld 176 | - withstood 177 | - woken 178 | - won 179 | - worn 180 | - wound 181 | - woven 182 | - written 183 | - wrung 184 | -------------------------------------------------------------------------------- /profile/vale/styles/write-good/README.md: -------------------------------------------------------------------------------- 1 | Based on [write-good](https://github.com/btford/write-good). 2 | 3 | > Naive linter for English prose for developers who can't write good and wanna learn to do other stuff good too. 4 | 5 | ``` 6 | The MIT License (MIT) 7 | 8 | Copyright (c) 2014 Brian Ford 9 | 10 | Permission is hereby granted, free of charge, to any person obtaining a copy 11 | of this software and associated documentation files (the "Software"), to deal 12 | in the Software without restriction, including without limitation the rights 13 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 14 | copies of the Software, and to permit persons to whom the Software is 15 | furnished to do so, subject to the following conditions: 16 | 17 | The above copyright notice and this permission notice shall be included in all 18 | copies or substantial portions of the Software. 19 | 20 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 21 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 22 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 23 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 24 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 25 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 26 | SOFTWARE. 27 | ``` 28 | -------------------------------------------------------------------------------- /profile/vale/styles/write-good/So.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't start a sentence with '%s'." 3 | level: error 4 | raw: 5 | - '(?:[;-]\s)so[\s,]|\bSo[\s,]' 6 | -------------------------------------------------------------------------------- /profile/vale/styles/write-good/ThereIs.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't start a sentence with '%s'." 3 | ignorecase: false 4 | level: error 5 | raw: 6 | - '(?:[;-]\s)There\s(is|are)|\bThere\s(is|are)\b' 7 | -------------------------------------------------------------------------------- /profile/vale/styles/write-good/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "feed": "https://github.com/errata-ai/write-good/releases.atom", 3 | "vale_version": ">=1.0.0" 4 | } 5 | -------------------------------------------------------------------------------- /profile/vale/vale.ini: -------------------------------------------------------------------------------- 1 | StylesPath = styles 2 | MiMinAlertLevel = suggestion 3 | Vocab = Docs 4 | 5 | [*.md] 6 | BasedOnStyles = Vale, PowerShell-Docs, Microsoft, alex 7 | 8 | alex.Ablist = NO # Doesn't apply to our content 9 | alex.Profanity = NO # Doesn't apply to our content 10 | alex.ProfanityUnlikely = NO # Doesn't apply to our content 11 | 12 | Microsoft.Spacing = NO # Use PowerShell-Docs rule 13 | # May need to add more exception words in rule or Vocab 14 | Microsoft.GeneralURL = NO # Does not apply for our audience 15 | Microsoft.HeadingAcronyms = NO # Too noisy for our docset 16 | Microsoft.Headings = NO # Too noisy for our docset 17 | Microsoft.Negative = NO # Prefer to not use endash 18 | Microsoft.Passive = NO # Too noisy 19 | Microsoft.RangeFormat = NO # Does not apply for markdown 20 | Microsoft.Ranges = NO # Does not apply for markdown 21 | Microsoft.Vocab = NO # Too noisy 22 | Microsoft.We = NO # Too noisy when we want to use First Person 23 | 24 | PowerShell-Docs.Parens = NO # Too noisy 25 | PowerShell-Docs.Which = NO # Too noisy - use WhichCommand and WhichThat instead 26 | 27 | Vale.Spelling = NO # Use CSpell --------------------------------------------------------------------------------