Sublime text unity windows

Using Sublime Text as a script editor

Sublime Text is a popular cross-platform text and source code editor. It is extendable and its community has contributed numerous packages (plugins/extensions/addons) for Sublime Text.

Contents

Basic setup

  1. Sublime Text can be found at its official website. Download and install.
  2. Change your External Script Editor to Sublime Text:
    • Windows: In Unity: Edit > Preferences > External Tools > edit «External Script Editor» and navigate to Sublime Text, file subl.exe
    • Mac OS X: Open a Terminal window and run:
      defaults write com.unity3d.UnityEditor5.x kScriptsDefaultApp «/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl»
  3. To make Sublime Text jump to the file and line that causes an error/warning set the External Script Editor Args field to: «$(File)»:$(Line) .
    • Mac OS X: If the previous External Script Editor Args is not available in your version of Unity, there is a workaround using a shell script, save this to a file, make it executable (if required) and set that file as the script editor in Unity (Linux users running the Windows version using Wine may also do this):

Project feature setup

Creating a project file has some advantages:

  • Context — specify your script folder(s) for easy search & navigation between your files
  • Settings — filter out irrelevant files (e.g., .meta files)

To create a project, use File > Open Folder. to open your Unity project folder (parent of the Assets folder). Then, create a My Awesome Game.sublime-project file in your Unity project folder with Project > Save Project As. .

Now edit that .sublime-project file with Project > Edit Project. For example, the following edit will include only the Assets/Scripts folder and exclude .meta and .dll binary files:

Package Control

Package Control is a Sublime Text package that allows for easy package management to find and install other packages. Follow the installation instructions on their site.

To access the Package Control functions:

  • Preferences > Package Control menu (ST3), or
  • Open the Command Palette
    • By one of:
      • Tools > Command Palette menu
      • Mac: Command+Shift+P shortcut
      • Windows/Linux Ctrl+Shift+P shortcut
    • Then start typing in «Package Control» (without the quotes).

Syntax highlighting

Unity C# and JavaScript syntax highlighting

Install the C# package (if not installed already) and the Unity3D Syntax Highlighting package, either by using Package Control or by cloning the package using Git from Github.

Once installed you can select View > Syntax > Unity3D and then either Unity C# or Unity JavaScript. You may also want to select View > Syntax > Open all with current extension as. so that Sublime Text will always use Unity syntax highlighting when viewing C# or JavaScript Files.

Other C# syntax highlighting compatibility

Note that using Unity C# with Open all with current extension as. , Sublime Text will not differentiate between Unity C# files and non-Unity C# files (both use the .cs extension). One way to avoid this is to install the ApplySyntax package and add the following to its settings:

Читайте также:  Увеличиваем виртуальную память windows 10

(The «Unity3D» package might still lay compressed within Sublime Text’s «Installed Packages» folder, which contains «UnityC#.tmLanguage» file that ApplySyntax will be looking for within non-existant «Packages/Unity3D» folder)

Boo syntax highlighting

Unity Shader syntax highlighting

Code completions

For simple, predefined completions, install one or more of:

The above completions, however, are less than satisfying because they do not work across dot notation. Please read the other options below for ST2 and ST3 before deciding what to do.

Advanced C# completions for Sublime Text 2

Instead of—or in addition to—the above Unity-specific completions, you can also install the following package for dynamically reading .dll files for completion data:

Do not install the CompleteSharp version available through Package Control. The one on Package Control is the original one by «quarnster» but the version by «ewilde» (linked above) includes an already-compiled «CompleteSharp.exe» which makes it easier overall to install.

You can install CompleteSharp via Git as described on its Github page, or you can download the Zip files and reassemble the sub-projects into their respective folders:

  • Note that these links are to the latest master version of each project and each contains newer code than what just a Git clone of the top project will get you:
    • CompleteSharp-master.zip — Unzip to Packages\CompleteSharp
    • SublimeCompletionCommon-master.zip — Unzip to Packages\CompleteSharp\sublimecompletioncommon
    • parsehelp-master.zip — Unzip to Packages\CompleteSharp\sublimecompletioncommon\parsehelp

Sublime Text 3 note: If you are trying to get CompleteSharp to work in ST3, you will need the latest code from each sub-project listed above (the latest are already linked for you above). A better option for ST3, however, is described in the next section.

To find your Packages folder to install to, go to Preferences > Browse Packages. .

After CompleteSharp is installed, edit either your user settings or your project settings to add in the Unity assemblies and other libraries your project uses. To edit CompleteSharp settings:

  • If using Sublime Text project feature: Project > Edit Project
  • If not using Sublime Text project feature: Preferences > Settings — User

The code below represents a typical minimal setup. More .dll files can be added if using packages that include them. Make sure, however, that all these files still exist in your project and your version of Unity. This list is outdated regarding the ScriptAssemblies folder. CompleteSharp may not work at all until the list of .dll files is entered without error.

. represents other possible content between JSON elements.

with the path to your Unity folder (double slashed like the rest) such as C:\\Program Files\\Unity\\Editor\\Data .

After saving these settings, this should automatically reload CompleteSharp’s python scripts and have its autocompletion ready. To see any errors, open the console by using Ctrl+` (tilde key).

Advanced C# completions for Sublime Text 3

In ST3, you can replace all of the above completion packages (Unity Completions and CompleteSharp, etc.) with a far better tool that will give Sublime Text capabilities similar to MonoDevelop or Visual Studio—including dynamic interpretation of .cs source files for code completion (but most notably missing are the API documentation excerpts next to the autocomplete hints):

Go to the OmniSharp web page (linked above) and follow their instructions for installing it for Sublime Text. (Currently, this requires two packages available via Package Control, and other settings.)

  • The listed requirement for the Mono Development Kit does not appear to be required (perhaps because Unity is installed).
Читайте также:  Знакомства с объектами windows

Restart ST3 for the OmniSharp local server to start running correctly.

Note that if you are using the Project feature of Sublime Text (strongly recommended), you must add the location of your Unity project .sln file to the .sublime-project file (Project > Edit Project):

OmniSharp adds several commands to the context menu in Sublime Text. Note, however, that when clicking through a bunch of these commands in a row, the OmniSharp server can stop functioning (as of v1.9.6). Thus, be careful and on the lookout for things that may stop the server. Restarting ST3 should restart the server.

#mopsicus

GitHub icon

Настройка Sublime Text для Unity

Эта заметка больше для разработчиков использующих OS X (Mac OS уже). Потому как, разница между Visual Studio и MonoDevelop, просто разительна, как и скорость работы.

Но есть отличное решение — Sublime Text (ST). Установив несколько плагинов, и без того быстрый и многофункциональный ST, прекрасно подойдет для разработки на C# в Unity. После настройки, вы получите:

  • Автодополнение кода — autocompletion
  • Переход к функции — go to definition
  • Подсветка ошибок и синтаксиса
  • Сворачивание фрагментов кода — code folding
  • XML документирование

Установка Mono

Сначала нужно поставить Mono — open-source реализация .NET фреймворка, он нужен для компиляции и запуска C# скриптов на маке. Его можно установить, например, с помощью Brew:

Установка Package Control для Sublime

Если в вашем ST еще не установлен пакетный менеджер, то сделать это очень просто: нужно открыть консоль внутри ST, вставить кусок кода и нажать Enter.

Установка Omnisharp

Основной плагин который позволит ST работать с C#. Для установки: открывает пакетный менеджер (cmd+shift+p → Install Package), ищем Omnisharp и устанавливаем.

Настройка проекта

Теперь надо создать Sublime Project и связать его с Unity проектом. Для этого: открываем в ST корневую папку с проектом и идем в меню Project → Save Project As. . Сохраняем файл проекта рядом с *.sln файлом для удобства.

Открываем только что созданный файл MyProject.sublime-project в текстовом редакторе, можно в том же ST и редактируем его:

Тут немного объясню:

  • path — путь до папки со скриптами, в данном случае корневая папка, но вы можете написать например Scripts, или ту где у вас лежат скрипты
  • file_exclude_patterns — файлы с какими расширениями не показывать в проекте
  • solution_file — самое главное, тут должно быть название вашего SLN файла проекта

Устанавливаем плагины

Для документирования устанавливаем плагин — XmlDocs, для сворачивания кода — SyntaxFold. Устанавливаем также, через пакетный менеджер. Чтобы задокументировать код: вводим три слеша и жмем табуляцию — (/// + tab). А для настройки сворачивания кода, после установки плагина, нажмите shit+f5 и выберите C#.

Последние штрихи

Чтобы автодополнение кода работало не только по ctrl+space, а каждый раз когда вы ставите точку, в конфиг надо добавить правки. Убедитесь, что у вас открыт C# файл, и выбран синтаксис C# (в правом нижнем углу), далее идем в меню: Sublime Text → Preferences → Settings — More → Syntax Specific — User и вставляем этот код:

Если вдруг автодополнение кода не заработало, перезагрузить ваш SLN файл: жмем cmd+shift+p, и выбираем OmniSharpSublime: Reload Solution.

Еще момент: это настройка ST для редактирования уже имеющего проекта. И мы не делаем его редактором по-умолчанию. Т. е. если вы откроете файл двойным кликом из Unity, то Omnisharp сервер не запустится. Для «корректного» открытия проекта, нужно в ST выбрать меню: Project → Open Project. и выбрать MyProject.sublime-project файл.

Готово

Теперь можно быстро и комфортно писать C# код для Unity на маке. Конечно, можно поставить еще плагинов, тут уже на ваше усмотрение. Например, есть плагин со сниппетами для C#, ищется в пакетном менеджере по словам C# Snippets.

Читайте также:  Как форматировать флешку после линукс

Только для любителей Sublime Text 🙂 Удачи!

Настройка Sublime Text для Unity

Эта заметка больше для разработчиков использующих OS X (Mac OS уже). Потому как, разница между Visual Studio и MonoDevelop, просто разительна, как и скорость работы.

Но есть отличное решение — Sublime Text (ST). Установив несколько плагинов, и без того быстрый и многофункциональный ST, прекрасно подойдет для разработки на C# в Unity. После настройки, вы получите:

  • Автодополнение кода — autocompletion
  • Переход к функции — go to definition
  • Подсветка ошибок и синтаксиса
  • Сворачивание фрагментов кода — code folding
  • XML документирование

Установка Mono

Сначала нужно поставить Mono — open-source реализация .NET фреймворка, он нужен для компиляции и запуска C# скриптов на маке. Его можно установить, например, с помощью Brew:

Установка Package Control для Sublime

Если в вашем ST еще не установлен пакетный менеджер, то сделать это очень просто: нужно открыть консоль внутри ST, вставить кусок кода и нажать Enter.

Установка Omnisharp

Основной плагин который позволит ST работать с C#. Для установки: открывает пакетный менеджер (cmd+shift+p → Install Package), ищем Omnisharp и устанавливаем.

Настройка проекта

Теперь надо создать Sublime Project и связать его с Unity проектом. Для этого: открываем в ST корневую папку с проектом и идем в меню Project → Save Project As. . Сохраняем файл проекта рядом с *.sln файлом для удобства.

Открываем только что созданный файл MyProject.sublime-project в текстовом редакторе, можно в том же ST и редактируем его:

Тут немного объясню:

  • path — путь до папки со скриптами, в данном случае корневая папка, но вы можете написать например Scripts , или ту где у вас лежат скрипты
  • file_exclude_patterns — файлы с какими расширениями не показывать в проекте
  • solution_file — самое главное, тут должно быть название вашего SLN файла проекта

Устанавливаем плагины

Для документирования устанавливаем плагин — XmlDocs , для сворачивания кода — SyntaxFold . Устанавливаем также, через пакетный менеджер. Чтобы задокументировать код: вводим три слеша и жмем табуляцию — (/// + tab). А для настройки сворачивания кода, после установки плагина, нажмите shit+f5 и выберите C#.

Последние штрихи

Чтобы автодополнение кода работало не только по ctrl+space, а каждый раз когда вы ставите точку, в конфиг надо добавить правки. Убедитесь, что у вас открыт C# файл, и выбран синтаксис C# (в правом нижнем углу), далее идем в меню: Sublime Text → Preferences → Settings — More → Syntax Specific — User и вставляем этот код:

Если вдруг автодополнение кода не заработало, перезагрузить ваш SLN файл: жмем cmd+shift+p, и выбираем OmniSharpSublime: Reload Solution.

Еще момент: это настройка ST для редактирования уже имеющего проекта. И мы не делаем его редактором по-умолчанию. Т. е. если вы откроете файл двойным кликом из Unity, то Omnisharp сервер не запустится. Для «корректного» открытия проекта, нужно в ST выбрать меню: Project → Open Project. и выбрать MyProject.sublime-project файл.

Готово

Теперь можно быстро и комфортно писать C# код для Unity на маке. Конечно, можно поставить еще плагинов, тут уже на ваше усмотрение. Например, есть плагин со сниппетами для C#, ищется в пакетном менеджере по словам C# Snippets.

Только для любителей Sublime Text 🙂 Удачи!

Все последние обновления этой и других статей, вы можете найти у меня в блоге https://mopsicus.ru

Подписывайтесь, чтобы не пропустить что-то интересное

Оцените статью