From 22cd4f063fe769a8bcdafaa6348c8c051cbc583c Mon Sep 17 00:00:00 2001 From: Kim Date: Fri, 12 Feb 2016 11:53:34 +0100 Subject: [PATCH 1/7] + sublime project with relative path --- UnityBuild.sublime-project | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/UnityBuild.sublime-project b/UnityBuild.sublime-project index b88efe1..24db303 100755 --- a/UnityBuild.sublime-project +++ b/UnityBuild.sublime-project @@ -2,7 +2,7 @@ "folders": [ { - "path": "/C/Users/workstation1-user/AppData/Roaming/Sublime Text 2/Packages/UnityBuild" + "path": "." } ] } From 0a551833b1277c4c0a3ecaf1fe285081107f58ab Mon Sep 17 00:00:00 2001 From: Kim Date: Fri, 12 Feb 2016 11:54:08 +0100 Subject: [PATCH 2/7] * fix: corrected Unity path and solution name on windows --- Unity.sublime-build | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Unity.sublime-build b/Unity.sublime-build index 64c4327..535c3f5 100755 --- a/Unity.sublime-build +++ b/Unity.sublime-build @@ -1,8 +1,8 @@ { "windows": { "cmd": [ - "C:\\Program Files (x86)\\Unity\\Editor\\Data\\Mono\\bin\\xbuild.bat", - "${project_path}\\\\${project_base_name}-csharp.sln", + "C:\\Program Files\\Unity\\Editor\\Data\\Mono\\bin\\xbuild.bat", + "${project_path}\\\\${project_base_name}.sln", "/noconsolelogger", "/logger:${packages}\\Unity3D Build System\\SublimeLogger.dll" ], @@ -22,8 +22,8 @@ "name": "Clean", "windows": { "cmd": [ - "C:\\Program Files (x86)\\Unity\\Editor\\Data\\Mono\\bin\\xbuild.bat", - "${project_path}\\\\${project_base_name}-csharp.sln", + "C:\\Program Files\\Unity\\Editor\\Data\\Mono\\bin\\xbuild.bat", + "${project_path}\\\\${project_base_name}.sln", "/target:Clean", "/noconsolelogger", "/logger:${packages}\\Unity3D Build System\\SublimeLogger.dll" From 2d23dc478365227ff798861c9951776dd881ae69 Mon Sep 17 00:00:00 2001 From: Kim Date: Fri, 12 Feb 2016 15:17:40 +0100 Subject: [PATCH 3/7] + changed logging and catch regex, MacOS path --- README.md | 33 +++---- SublimeLogger-Source/LoggerImpl.cs | 138 +++++++++++++---------------- SublimeLogger.dll | Bin 6144 -> 5632 bytes SublimeLogger.pdb | Bin 13824 -> 0 bytes Unity.sublime-build | 16 ++-- 5 files changed, 85 insertions(+), 102 deletions(-) delete mode 100755 SublimeLogger.pdb diff --git a/README.md b/README.md index 86932fd..428d20b 100755 --- a/README.md +++ b/README.md @@ -1,24 +1,19 @@ -UnityBuild -======== +Unity3D Build +============= -This is an extension of Sublime Text 2 to support Unity 3d builds. +This is an extension of Sublime Text 3 to support Unity3D builds. +This is a fork of https://github.com/fredpointzero/UnityBuild as the original project is no longer maintained. -Use Unity as build system and enjoy ! +Tested with: +* Windows 7 +* Unity 5.3.2p2 +* Sublime Text 3 Build 3103 -Windows -======== +The logger used is based on Jacob Pennock's logger +* [Blog](http://www.jacobpennock.com/Blog/using-sublime-text-2-with-unity3d-2/) +* [Unity3D Forum](http://forum.unity3d.com/threads/using-unity-with-sublime-text-2-how-to-get-everything-set-up.128352/) -If it does not work at the first time, check the xbuild path in UnityBuild.sublime-build (it uses the default location of Unity) -(C:\\Program Files (x86)\\Unity\\Editor\\Data\\Mono\\bin\\) +How to install +============== -OSX -======== - -Make sure you have MonoDevelop 2.10.2 installed on your OSX in the default location. -If get it here : http://download.mono-project.com/archive/2.10.2/macos-10-x86/5.4/MonoFramework-MRE-2.10.2_5.4.macos10.novell.x86.dmg - -If it does not work at the first time, check the xbuild path in UnityBuild.sublime-build (it uses the default location of Unity) -(/Applications/Unity/MonoDevelop.app/Contents/Frameworks/Mono.framework/Commands/xbuild) - - -NB : The logger used is based on Jacob Pennock's logger \ No newline at end of file +Clone this repo into `Sublime Text 3\Packages`. diff --git a/SublimeLogger-Source/LoggerImpl.cs b/SublimeLogger-Source/LoggerImpl.cs index 3ca920e..959230c 100755 --- a/SublimeLogger-Source/LoggerImpl.cs +++ b/SublimeLogger-Source/LoggerImpl.cs @@ -1,75 +1,63 @@ -using System; -using System.Diagnostics; -using System.IO; -using Microsoft.Build.Framework; -using Microsoft.Build.Utilities; - -namespace SublimeLogger -{ - public class LoggerImpl : Logger - { - private int ErrorCount; - private int WarningCount; - private string ProjectDirectory; - - - public override void Initialize(IEventSource eventSource) - { - eventSource.ProjectStarted += ProjectStarted; - eventSource.BuildStarted += BuildStarted; - eventSource.BuildFinished += BuildFinished; - eventSource.ErrorRaised += ErrorRaised; - eventSource.WarningRaised += WarningRaised; - ErrorCount = 0; - WarningCount = 0; - } - - void ProjectStarted(object sender, ProjectStartedEventArgs e) - { - ProjectDirectory = Path.GetDirectoryName(e.ProjectFile); - } - - void BuildFinished(object sender, BuildFinishedEventArgs e) - { - Console.ForegroundColor = ConsoleColor.White; - if (e.Succeeded) - { - Console.ForegroundColor = ConsoleColor.DarkGreen; - Console.WriteLine("Compilation SUCCEEDED! Errors:{0} Warnings:{1}",ErrorCount,WarningCount); - } - else - { - Console.ForegroundColor = ConsoleColor.DarkRed; - Console.WriteLine("Compilation FAILED! Errors:{0} Warnings:{1}",ErrorCount,WarningCount); - } - Console.BackgroundColor = ConsoleColor.Black; - } - - void BuildStarted(object sender, BuildStartedEventArgs e) - { - Console.WriteLine("Sublime Text 2 output logger by Jacob Pennock, Updated by Frédéric Vauchelles"); - } - - void ErrorRaised(object sender, BuildErrorEventArgs e) - { - string fullPath = ProjectDirectory != null ? Path.Combine(ProjectDirectory, e.File) : e.File; - Console.ForegroundColor = ConsoleColor.DarkRed; - Console.WriteLine("{0}({1},{2}) error:{3} {4}", fullPath, e.LineNumber, e.ColumnNumber, e.Code, e.Message); - ErrorCount++; - Console.ForegroundColor = ConsoleColor.White; - } - - void WarningRaised(object sender, BuildWarningEventArgs e) - { - string fullPath = ProjectDirectory != null ? Path.Combine(ProjectDirectory, e.File) : e.File; - Console.ForegroundColor = ConsoleColor.DarkYellow; - if (e.Code != null) - { - Console.WriteLine("{0}({1},{2}) warning:{3} {4}", fullPath, e.LineNumber, e.ColumnNumber, e.Code, e.Message); - WarningCount++; - } - Console.ForegroundColor = ConsoleColor.White; - } - - } -} +using System; +using System.Diagnostics; +using System.IO; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; + +namespace SublimeLogger +{ + public class LoggerImpl : Logger + { + private int m_errorCount; + private string m_projectDirectory; + private int m_warningCount; + + public override void Initialize(IEventSource eventSource) + { + Debug.Assert(eventSource != null, "eventSource != null"); + eventSource.ProjectStarted += HandleProjectStarted; + eventSource.BuildFinished += HandleBuildFinished; + eventSource.ErrorRaised += HandleErrorRaised; + eventSource.WarningRaised += HandleWarningRaised; + m_errorCount = 0; + m_warningCount = 0; + } + + private void HandleProjectStarted(object sender, ProjectStartedEventArgs e) + { + m_projectDirectory = Path.GetDirectoryName(e.ProjectFile); + } + + private void HandleBuildFinished(object sender, BuildFinishedEventArgs e) + { + if (e.Succeeded) + { + Console.WriteLine("Build succeeded. Warnings:{0}", m_warningCount); + } + else + { + Console.WriteLine("Build failed. Errors:{0} Warnings:{1}", m_errorCount, m_warningCount); + } + } + + private void HandleErrorRaised(object sender, BuildErrorEventArgs e) + { + var fullPath = m_projectDirectory != null ? Path.Combine(m_projectDirectory, e.File) : e.File; + //Console.WriteLine("{0}({1},{2}) error:{3} {4}", fullPath, e.LineNumber, e.ColumnNumber, e.Code, e.Message); + Console.WriteLine("{0}:{1}:{2}: Error: {3}", fullPath, e.LineNumber, e.ColumnNumber, e.Message); + m_errorCount++; + } + + private void HandleWarningRaised(object sender, BuildWarningEventArgs e) + { + var fullPath = m_projectDirectory != null ? Path.Combine(m_projectDirectory, e.File) : e.File; + if (e.Code != null) + { + Console.WriteLine("File \"{0}\", line {1} Warning: {2}", fullPath, e.LineNumber, e.Message); + //Console.WriteLine("{0}({1},{2}) warning:{3} {4}", fullPath, e.LineNumber, e.ColumnNumber, e.Code, + // e.Message); + m_warningCount++; + } + } + } +} diff --git a/SublimeLogger.dll b/SublimeLogger.dll index cf498569fc3f7b531447965be500e3b08b4797be..34cf2d727825b066bee7f65a155ac9aa6a277152 100755 GIT binary patch literal 5632 zcmeHLYitzP6+Sb&Ud#qI7=n2jve?i#1aH>HfI}ehV+|N=OuT-O#u3c!UatpcceXRL zfI|sJDl}1=DwP_kRaG@u`NNN@=|d%{luG%Nwi5YKwNHvk8TM}AMGa^)Izl3 z=G)^HZ#SqpexH_vad09&_n&R3<9NF95Ur55?#Imxj$g_w5PU8n>b}IP{5M|*B(qRn zhuvXrbQ7KBL@X>Ph?aq8Z6|74D7zOOC#tWK*MmM-MJGIU)&u>?asXs9)*x z5{~O+K}l@gXz)N~Jg9@xjp!4OvTP`FtaJho+j;;`Rp}<`tsT_5qIN^T!H^>EO6IHzICacH^ig{? zKyN&caKfn2H@xkT9=037Ze0U74+r6Gx5D;X5ZfCaD3*yrnhE9Wij*Yg}hi#aMJ`&JA)rv(BjXE#F;QE&_0BvhyWNz!4u)Ps{ zF+R6-ZP?y4Ppu2v4}zL&jRST497nO{n2bpLhG}e(-_1~+_sf*;H*7bfy?vYW7W_xT zb_*zR>icNLu3{HFe7KNoZPHt}f(uvFn?BU51vAU*1Ro3%dHu7x6$*BK9JmqPc``%sCHt^G!i z&>sbVE_g&|&U(Qef|rH=jP@<`eN6BQI8j;^x*3YmFX&b1PlvDTFu` zhM2!za9VH}7@=466^KEj>uAR`w(uzQIpQS@knnE>y`wJ+?F*>q!xzzdDf|_njrP$v zYradD^sj>RW1%k6kLYFO=-q(oqiGXA;3i_<}Qo0b*r~w$Eb-*Y+3|v9&f{zLI2o4B7CHS>zCiB;?enyqeigJQsDr*ix2TJLO^w=K`Zl#t4}CxnY5jtS=?eWrr0v=` z+8^qZz`q0kj9-`NoS>_sbCqs@b5(TMLY`*eB|-_h58MQ;LT(eZ0iF`@@(17}^cUa` z!N&#rgnwAtX~Aa%v-CG;o}!J~2!&_;m5MY6Wtrr1 zPJ?sMDCR6x%VVtx!zp4bj~J$VN2`{{TK$e=J2g7h9M(AM*e6xiOM8an-7&O)InaMv z6}_}wcCw08RhxtF!yQ0IF{E7A$ouX6rsX#ROG5YAMb`%ZfbvqN1E;n#bHpepns7`{ z4VpzoeRd(k^?|aP>+x_{Wy+qSl**Lzc_U+~c^)*!P1mg9^|-DoWUQG{)2mj!!*-0E zDj3eGc`FqW$2YDV*R+d^g@}8~%$FU*yQ?^*+^l1kYJ~`|WLnZ=L|MjJX}ODSBR{!v z)>|y-vr99MnV-I^s8BMBGxL2$%0fDQhicbejYv8Li+r&_R(1_L!Aq3$8ajLE93|;I(c$X8Q_x~Nm0tbmNw3?+Jk7$;bez?-~PZ`oSK7pn(+pTBLa?7i6&cG=+n2swz+)&6YJTz>&*vW zf8e8+-cNpLQaG+@^`SUvb!ap+Fd1Xe>*BiBw3fLmpB8*p&=6GU5et(Ri=m;{k*>v> zA`}8Pg_dYBFk&LAkFaQC(-I1^tf~ImbCcuiI&ZvK|HhNYFEsovx<`-H>yelk?TN6< zl>>e?Y*xuhG&=3rXIu?>{<~?VM$2n=Ak}G{ zf`>KQvLn~t)wwITyRCEQ&SYC>dv2<&t7DhZwzIQ6YjkCHcTOdD;bTOjCGEIl;>R7i zRKD}rM-$AwfbXgoaOE0Fr_#xXUR$>N@^=qiQ*(d%u(!TFlVdK9*-1WbCR28{ zT)>OPogBjvH6yEkvL?tj|D7{wXHHJy7*&R=Y84WtT!sVrA1c>_Z!`}1Cb#3wet9GOWh_7qF?rDP&#A?hj)_hZ%41gS`TN3RXRM@k?`+tR((tFj_}3%C^7tue@?6wc*%%kDTQ$aZoW#jH59e$p^f^nO=oS%^RTbH%`%2(cx9}s}-Fe)D z=%1I~oPiQ<*Bp7CreWDH+ZO2gGr{kN0{S_)KUcDa|NTf@!+{N+3686h8>V>dgqixZ zT+GL}SMqukwrs@AZziv5g!i&R)G7I_?Yl6m3v=2feR?n&SH{M3HG_@yS^a`EeLkwV T|39OD?fZO$^ZzLRyBYX5OKh%N literal 6144 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 diff --git a/Unity.sublime-build b/Unity.sublime-build index 535c3f5..b7e153f 100755 --- a/Unity.sublime-build +++ b/Unity.sublime-build @@ -4,18 +4,18 @@ "C:\\Program Files\\Unity\\Editor\\Data\\Mono\\bin\\xbuild.bat", "${project_path}\\\\${project_base_name}.sln", "/noconsolelogger", - "/logger:${packages}\\Unity3D Build System\\SublimeLogger.dll" + "/logger:${packages}\\Unity3DBuild\\SublimeLogger.dll" ], - "file_regex": "^([\\d\\w:\\\\\\.-]*)\\((\\d+),(\\d+)\\)\\s*(.*)$" + "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$", }, "osx": { "cmd": [ - "/Applications/Unity/MonoDevelop.app/Contents/Frameworks/Mono.framework/Commands/xbuild", + "/Applications/Unity/MonoDevelop.app/Contents/Frameworks/Mono.framework/Versions/Current/bin/xbuild", "${project_path}/${project_base_name}-csharp.sln", "/noconsolelogger", - "/logger:${packages}/Unity3D Build System/SublimeLogger.dll" + "/logger:${packages}/Unity3DBuild/SublimeLogger.dll" ], - "file_regex": "^([\\d\\w:/\\.-]*)\\((\\d+),(\\d+)\\)\\s*(.*)$" + "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$", }, "variants": [ { @@ -26,16 +26,16 @@ "${project_path}\\\\${project_base_name}.sln", "/target:Clean", "/noconsolelogger", - "/logger:${packages}\\Unity3D Build System\\SublimeLogger.dll" + "/logger:${packages}\\Unity3DBuild\\SublimeLogger.dll" ] }, "osx": { "cmd": [ - "/Applications/Unity/MonoDevelop.app/Contents/Frameworks/Mono.framework/Commands/xbuild", + "/Applications/Unity/MonoDevelop.app/Contents/Frameworks/Mono.framework/Versions/Current/bin/xbuild", "${project_path}/${project_base_name}-csharp.sln", "/target:Clean", "/noconsolelogger", - "/logger:${packages}/Unity3D Build System/SublimeLogger.dll" + "/logger:${packages}/Unity3DBuild/SublimeLogger.dll" ] } } From 737d10d784ace3f7f8f0dd8cb494d31f16803fdf Mon Sep 17 00:00:00 2001 From: Kim Date: Fri, 12 Feb 2016 15:32:37 +0100 Subject: [PATCH 4/7] + improved readme --- README.md | 21 ++++++++++++++++----- UnityBuild.sublime-project | 5 +++-- 2 files changed, 19 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 428d20b..4997ea3 100755 --- a/README.md +++ b/README.md @@ -1,7 +1,6 @@ -Unity3D Build -============= +# Unity3D Build -This is an extension of Sublime Text 3 to support Unity3D builds. +This is a Sublime Text 3 package to support Unity3D builds. This is a fork of https://github.com/fredpointzero/UnityBuild as the original project is no longer maintained. Tested with: @@ -13,7 +12,19 @@ The logger used is based on Jacob Pennock's logger * [Blog](http://www.jacobpennock.com/Blog/using-sublime-text-2-with-unity3d-2/) * [Unity3D Forum](http://forum.unity3d.com/threads/using-unity-with-sublime-text-2-how-to-get-everything-set-up.128352/) -How to install -============== +## How to install Clone this repo into `Sublime Text 3\Packages`. + +## Usage + +### Windows + +`F7` starts the build. +`Ctr+Shift+B` lets you select a between `build` and `clean` +`F4` jumps to the next error or warning +`Shift+F4` jumps to the previous error or warning + +### OSX + +TODO! diff --git a/UnityBuild.sublime-project b/UnityBuild.sublime-project index 24db303..cfaf1bf 100755 --- a/UnityBuild.sublime-project +++ b/UnityBuild.sublime-project @@ -2,7 +2,8 @@ "folders": [ { - "path": "." + "path": ".", + "name": "Unity3D Build" } - ] + ], } From 8bbd1defd78df695da600f6cc188e649bd2229e1 Mon Sep 17 00:00:00 2001 From: Kim Date: Fri, 12 Feb 2016 15:49:47 +0100 Subject: [PATCH 5/7] * fix: warning logger text --- README.md | 10 ++++++++++ SublimeLogger-Source/LoggerImpl.cs | 5 +---- SublimeLogger.dll | Bin 5632 -> 5632 bytes 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 4997ea3..dc993c0 100755 --- a/README.md +++ b/README.md @@ -18,6 +18,11 @@ Clone this repo into `Sublime Text 3\Packages`. ## Usage +1) Create a ST3 project exactly named like the Unity3D project. +2) Select a build system `Tools -> Build System -> Unity` + +Hint: You ST3 project file must have the same name as your project's `.sln` file + ### Windows `F7` starts the build. @@ -28,3 +33,8 @@ Clone this repo into `Sublime Text 3\Packages`. ### OSX TODO! + +## How To Build + +1) Build the Sublime Logger `.dll` from source. +2) Copy the `.dll` next to the `.sublime-build`. diff --git a/SublimeLogger-Source/LoggerImpl.cs b/SublimeLogger-Source/LoggerImpl.cs index 959230c..d4a80de 100755 --- a/SublimeLogger-Source/LoggerImpl.cs +++ b/SublimeLogger-Source/LoggerImpl.cs @@ -43,7 +43,6 @@ private void HandleBuildFinished(object sender, BuildFinishedEventArgs e) private void HandleErrorRaised(object sender, BuildErrorEventArgs e) { var fullPath = m_projectDirectory != null ? Path.Combine(m_projectDirectory, e.File) : e.File; - //Console.WriteLine("{0}({1},{2}) error:{3} {4}", fullPath, e.LineNumber, e.ColumnNumber, e.Code, e.Message); Console.WriteLine("{0}:{1}:{2}: Error: {3}", fullPath, e.LineNumber, e.ColumnNumber, e.Message); m_errorCount++; } @@ -53,9 +52,7 @@ private void HandleWarningRaised(object sender, BuildWarningEventArgs e) var fullPath = m_projectDirectory != null ? Path.Combine(m_projectDirectory, e.File) : e.File; if (e.Code != null) { - Console.WriteLine("File \"{0}\", line {1} Warning: {2}", fullPath, e.LineNumber, e.Message); - //Console.WriteLine("{0}({1},{2}) warning:{3} {4}", fullPath, e.LineNumber, e.ColumnNumber, e.Code, - // e.Message); + Console.WriteLine("{0}:{1}:{2}: Warning: {3}", fullPath, e.LineNumber, e.ColumnNumber, e.Message); m_warningCount++; } } diff --git a/SublimeLogger.dll b/SublimeLogger.dll index 34cf2d727825b066bee7f65a155ac9aa6a277152..c46cacf97014a7388b7a2bd570f0c6fa3ac833e8 100755 GIT binary patch delta 619 zcmYL{PiPZC7{%Z0Zkkw4($YlRB-+$8L@-J*LPRN5vsnK^=o+QCm)M3ir0s5#6b-0J zg@9-RhB+wW#Ry^*6kR-6=s}Ru2vY62r-I-=Fb7XX)Y&D{IsE2(-}jh#FjESb!gp?R zL(ST)9b~;Wcb+_;p`hg^He+8G`O{`9^59V0ieC&WsQ2UTTuHqRF9zcGF9K@r^~#L{@}&! zO?E{fAz}X}pu?z#6DLHri%j?HXM_+*6hLrWxXP#s1;qVqiba&UBJ1d;n#C)WS<=Op zilG7lwm!o-iz+DEP->|(?!$&Zdc)!-qjUJh$ta-6w_z_f;~`@go-%sTU<_b|aW_6Q zMobdeGiL^F8np)93Oq&v7Hnf_blTcQG`(ycw~z>(-{PSzyQ@2b zYo_PGr}xj-mL42?_P6oXwY0EC58D;`!v3~6)Lb}cIE=G=1gNlgt2lrWNtEt7roY^i zvL_#}ysOUlS{|`6Vh80!E|ty6m(^@WKB8%2GM|)3)Z}D(N|B|RixcU|l>cn%O5Pul zY1aTHPEGQ3&u2RBql&V<8y!4nHPpA@B@QjvOZK(uaKtUTV29&7s5`Gk0%0U%v zsCiqyeQdM_osFY_`?4Q>*okH0UK-YiFxH82Y!Xl48}YQ@S;2(xFN@p~yeT+_AJjR4 z2)ERu$6RzbH=xD-#Wd>jf1bCf-uCq-&ci_lX++V38JL)*(;$^0KP&thoWd-R1ot24 zr)o3aY-es&*LsGQIvWdL%q@ps3685O6c*Anz7qU+HC+F2{qKbu1IqNK&)Ocr=8^og5NbkADr i6Er8+n|ZVn>tY*xy?xLNbo`d3UxVK6&hM;Zs(%2=OoRad From 90f99d9d16cfcc37cefffb06b6497f141fe9c956 Mon Sep 17 00:00:00 2001 From: Kim Date: Fri, 12 Feb 2016 15:59:45 +0100 Subject: [PATCH 6/7] * fix: OSX solution name --- README.md | 18 +++++++++--------- Unity.sublime-build | 4 ++-- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index dc993c0..2530814 100755 --- a/README.md +++ b/README.md @@ -14,21 +14,21 @@ The logger used is based on Jacob Pennock's logger ## How to install -Clone this repo into `Sublime Text 3\Packages`. +Clone this repo into `Sublime Text 3/Packages/Unity3DBuild`. ## Usage -1) Create a ST3 project exactly named like the Unity3D project. -2) Select a build system `Tools -> Build System -> Unity` +1. Create a ST3 project exactly named like the Unity3D project. +2. Select the build system `Tools -> Build System -> Unity` Hint: You ST3 project file must have the same name as your project's `.sln` file ### Windows -`F7` starts the build. -`Ctr+Shift+B` lets you select a between `build` and `clean` -`F4` jumps to the next error or warning -`Shift+F4` jumps to the previous error or warning +* `F7` starts the build. +* `Ctr+Shift+B` lets you select a between `build` and `clean` +* `F4` jumps to the next error or warning +* `Shift+F4` jumps to the previous error or warning ### OSX @@ -36,5 +36,5 @@ TODO! ## How To Build -1) Build the Sublime Logger `.dll` from source. -2) Copy the `.dll` next to the `.sublime-build`. +1. Build the Sublime Logger `.dll` from source. +2. Copy the `.dll` next to the `.sublime-build`. diff --git a/Unity.sublime-build b/Unity.sublime-build index b7e153f..7efdd01 100755 --- a/Unity.sublime-build +++ b/Unity.sublime-build @@ -11,7 +11,7 @@ "osx": { "cmd": [ "/Applications/Unity/MonoDevelop.app/Contents/Frameworks/Mono.framework/Versions/Current/bin/xbuild", - "${project_path}/${project_base_name}-csharp.sln", + "${project_path}/${project_base_name}.sln", "/noconsolelogger", "/logger:${packages}/Unity3DBuild/SublimeLogger.dll" ], @@ -32,7 +32,7 @@ "osx": { "cmd": [ "/Applications/Unity/MonoDevelop.app/Contents/Frameworks/Mono.framework/Versions/Current/bin/xbuild", - "${project_path}/${project_base_name}-csharp.sln", + "${project_path}/${project_base_name}.sln", "/target:Clean", "/noconsolelogger", "/logger:${packages}/Unity3DBuild/SublimeLogger.dll" From 39dc7b853b0e6531c396506fe69edb625f167990 Mon Sep 17 00:00:00 2001 From: Kim Date: Sun, 3 Jul 2016 16:29:11 +0200 Subject: [PATCH 7/7] first attempt on Linux build system --- Linux/unity3d-sublime.sh | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100755 Linux/unity3d-sublime.sh diff --git a/Linux/unity3d-sublime.sh b/Linux/unity3d-sublime.sh new file mode 100755 index 0000000..aac29bd --- /dev/null +++ b/Linux/unity3d-sublime.sh @@ -0,0 +1,8 @@ +#!/usr/bin/env bash + +LOCA="$1" + +subl "${LOCA}" +echo "LOCA=${LOCA}" +echo "Opening '$1' on line '$2' column '$3' with Sublime Text" +exit 0