EthanBrown.SublimeText2.UtilPackages

- Sublime package featuring the best general utility, file manipulation,
   navigation, sidebar enhancements, themes, color schemes, etc
   - AdvancedNewFile, ConsoleExec, EncodingHelper, KeymapManager,
     MoveTab, Navigation History, Open Recent Files, OpenSearchResult,
     RecentActiveFiles, Search Anywhere, SideBarEnhancements,
     Sublime Files, Soda Theme
 - Also includes a custom keybinding package hosted on GitHub
 - Merges in customized settings for User Preferences
 - Fixed minor bug in JSON helpers when adding to a simple map
This commit is contained in:
Iristyle
2013-03-07 21:43:17 -05:00
parent 6f6ef5cb09
commit 4801bdf0fb
6 changed files with 198 additions and 1 deletions

View File

@@ -0,0 +1,97 @@
<?xml version="1.0"?>
<package xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<metadata>
<id>EthanBrown.SublimeText2.UtilPackages</id>
<title>Sublime Text 2 - Utility / Theme Tooling Packages</title>
<version>0.0.1</version>
<authors>Various</authors>
<owners>Ethan Brown</owners>
<summary>A number of packages helpful for increased editor productivity, including Soda theme, a number of file manipulation and/or searching type commands.</summary>
<description>Includes a number of very useful packages for Sublime Text 2.
Included
===========================================================================
- AdvancedNewFile
https://github.com/skuroda/Sublime-AdvancedNewFile
- ConsoleExec
https://github.com/joeyespo/sublimetext-console-exec
- EncodingHelper
https://github.com/SublimeText/EncodingHelper
- KeymapManager
https://github.com/welefen/KeymapManager
- MoveTab
https://github.com/SublimeText/MoveTab
- Navigation History
https://github.com/timjrobinson/SublimeNavigationHistory
- Open Recent Files
https://github.com/spadgos/sublime-OpenRecentFiles
- OpenSearchResult
https://github.com/abrookins/OpenSearchResult
- RecentActiveFiles
https://github.com/jugyo/SublimeRecentActiveFiles
- Search Anywhere
https://github.com/ericmartel/Sublime-Text-2-Search-Anywhere-Plugin
- SideBarEnhancements
https://github.com/titoBouzout/SideBarEnhancements/
- Sublime Files
https://github.com/al63/SublimeFiles
- Theme - Soda
https://github.com/buymeasoda/soda-theme
Disables
===========================================================================
- Caret History
- GotoRecent
- MultiTaskBuild
- Open Related
- QuickFileMove
- SublimeREPL
Customized Key Bindings
===========================================================================
https://github.com/Iristyle/SublimeKeyMap.Util
Additional Package Preferences
===========================================================================
SublimeFiles - Set terminal location, try ConEmu, Console2, Powershell, Cmd
Additional User Preferences
===========================================================================
Rules for
- closing empty window
- highlight modified tabs
- Soda theme
</description>
<projectUrl>http://github.com/Iristyle/ChocolateyPackages/</projectUrl>
<tags>SublimeText package editor</tags>
<!-- Eula is in installer
<licenseUrl></licenseUrl>
-->
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<iconUrl>https://raw.github.com/Iristyle/ChocolateyPackages/master/SublimeText2.app/Sublime_Text.png</iconUrl>
<releaseNotes></releaseNotes>
<dependencies>
<dependency id="PowerShell" version="3.0"/>
<dependency id="SublimeText2.app" />
<dependency id="SourceCodePro" />
</dependencies>
</metadata>
<files>
<file src="tools\**" target="tools" />
<file src="..\core\JsonHelpers.ps1" target="tools" />
<file src="..\core\SublimeHelpers.ps1" target="tools" />
</files>
</package>

View File

@@ -0,0 +1,28 @@
{
"installed_packages":
[
"AdvancedNewFile",
"ConsoleExec",
"EncodingHelper",
"KeymapManager",
"MoveTab",
"Navigation History",
"Open Recent Files",
"OpenSearchResult",
"Package Control",
"RecentActiveFiles",
"Search Anywhere",
"SideBarEnhancements",
"Sublime Files",
"Theme - Soda",
"ZZZ.EthanBrown.SublimeKeyMap.Util"
],
"package_name_map": {
"SublimeKeyMap.Util": "ZZZ.EthanBrown.SublimeKeyMap.Util"
},
"repositories":
[
"https://github.com/abrookins/OpenSearchResult",
"https://github.com/Iristyle/SublimeKeyMap.Util"
]
}

View File

@@ -0,0 +1,14 @@
{
"close_windows_when_empty": true,
"highlight_modified_tabs": true,
"ignored_packages":
[
"Caret History",
"GotoRecent",
"MultiTaskBuild",
"Open Related",
"QuickFileMove",
"SublimeREPL"
],
"theme": "Soda Dark.sublime-theme"
}

View File

@@ -0,0 +1,3 @@
{
"term_command": "{{term_command}}"
}

View File

@@ -0,0 +1,47 @@
$package = 'EthanBrown.SublimeText2.UtilPackages'
function Get-CurrentDirectory
{
$thisName = $MyInvocation.MyCommand.Name
[IO.Path]::GetDirectoryName((Get-Content function:$thisName).File)
}
# simulate the unix command for finding things in path
# http://stackoverflow.com/questions/63805/equivalent-of-nix-which-command-in-powershell
function Which([string]$cmd)
{
Get-Command -ErrorAction "SilentlyContinue" $cmd |
Select -ExpandProperty Definition
}
try {
. (Join-Path (Get-CurrentDirectory) 'JsonHelpers.ps1')
. (Join-Path (Get-CurrentDirectory) 'SublimeHelpers.ps1')
$sublimeUserDataPath = Get-SublimeUserPath
$sublimeFilesFileName = 'SublimeFiles.sublime-settings'
$sublimeFiles = Join-Path (Get-CurrentDirectory) $sublimeFilesFileName
# TODO: this doesn't actually work in the Sublime plugin right now, but might in the future
$ps = (Which powershell)
$psRoot = Split-Path $ps
$escapedPs = $ps -replace '\\', '\\'
([IO.File]::ReadAllText($sublimeFiles)) -replace '{{term_command}}', $escapedPs |
Out-File -FilePath (Join-Path $sublimeUserDataPath $sublimeFilesFileName) -Force -Encoding ASCII
$packageControl = (Join-Path (Get-CurrentDirectory) 'Package Control.sublime-settings')
Merge-PackageControlSettings -FilePath $packageControl
$preferences = (Join-Path (Get-CurrentDirectory) 'Preferences.sublime-settings')
Merge-Preferences -FilePath $preferences
if (Get-Process -Name sublime_text -ErrorAction SilentlyContinue)
{
Write-Warning 'Please close and re-open Sublime Text to force packages to update'
}
Write-ChocolateySuccess $package
} catch {
Write-ChocolateyFailure $package "$($_.Exception.Message)"
throw
}