Sublime text build что это: Sublime Text 3, автоматический выбор Build System? — Хабр Q&A

Содержание

Панель выбора build-вариантов Build System в Sublime Text 2. (или как изобретался велосипед)

Идея и реализация: жмем в SublimeText2 сочетание клавиш, получаем панель со списком build-вариантов, автоматически сформированным по файлу выбранной Build System, выбираем нужный вариант и наблюдаем как непосредственно в интерфейсе Sublime Text 2 отображается процесс сборки проекта.

Сразу скажу, что здесь я делюсь своим бесценным опытом совместной разработки плагина ProjectBuild для Sublime Text 2, потому что в результате только опыт и был получен, поскольку, как оказалось, необходимости в реализации данного плагина не было, и весь этот процесс оказался изобретением велосипеда. Печально, но опыт все же бесценен. Повествование будет таким, что о «велосипеде» будет сказано только в конце.

Вступление

Итогом ранее написанной статьи

«Автоматизация сборки проекта в Sublime Text 2 c использованием Ant»

была возможность вызова в Sublime Text 2 различных build-вариантов выбранной Build System (на примере Ant) c использованием назначенных сочетаний клавиш для них. (сейчас бы я использовал в теме того поста еще и слово «настройка»)

Что мне не нравилось в этом подходе:

  1. У различных Build System могли быть совершенно разные имена их вариантов, а сочетания клавиш уже явно были привязаны к конкретным именам вариантов, которых могло и не быть в другой Build System. Моим допущением было то, что большинству разработчиков не приходится часто переключаться между несколькими Build System, и в основном разработчик работает с одной Build System. И если захочет разработчик, то изменит сочетания клавиш заново. Но согласитесь, это немного напрягает. И об этом нужно помнить. И в продолжение, также
  2. Нужно помнить все назначенные вами сочетания клавиш. Понятно, что есть основные «F7», «Ctrl+B», «Ctrl+Shift+B» — но для каждого вашего варианта будет еще одно сочетание. Это значит, что нужно либо переопределить сочетание клавиш, которое уже имеется, либо отыскать незадействованное, которое было бы удобно и для пальцев и для мозга. Я пробовал найти удобные незанятые, но остановился на переопределении. И это тоже удручает, так как потенциально может лишить вас первоначальных возможностей данных сочетаний при их переопределении. А также ограничить в последующем, когда вам понадобятся новые комбинации клавиш для новых плагинов, а удобные уже задествованы для вызовов разных build-вариантов.

И тут я попробовал отписанный мне в комментариях плагин ProjectBuild для Sublime Text 2 от snegovikufa. Что мне очень-очень понравилось, так это выпадающая панель со списком команд. Выбрав элемент из представленного списка, можно было запустить соответствующую команду. Все настройки этого плагина хранились в отдельном файле, доступ к которому был из меню самого Sublime Text 2, там можно было перечислить список именований и соответствующих им команд. Проще говоря, этот плагин мог быть настроен для запуска «сторонней программы» непосредственно из интерфейса Sublime Text 2. И в частности его можно было использовать для запуска Ant c именами необходимых целей. Я в лоб прикрутил ProjectBuild к своему «AntProjectBuilder.sublime-build». Таким образом, это решило вторую проблему. Назначаем одно сочетание клавиш (да хоть тоже «Ctrl+Shift+B»), оно формирует панель плагина ProjectBuild в интерфейсе Sublime Text 2, где можно выбрать и запустить нужную команду в соответствии с конфигурацией ProjectBuild.

Но плагин работал так, что вызывая «стороннюю программу» хотя и не блокировал интерфейс самого Sublime Text 2, но не оставлял следов об успешности или неуспешности вызова. Например, у меня вызывалась командная строка, в ней отрабатывал Ant, и она пропадала. В консоли самого Sublime Text 2 следов не оставалось. А этого удалось добиться только с блокировкой интерфейса Sublime Text 2. То есть вызвали команду, интерфес Sublime Text 2 подвисал, а отработав этот процесс выплевывал весь свой output в консоль Sublime Text 2. Весь процесс «по ходу» наблюдать не удавалось.

И при таком использовании, когда ProjectBuild должен реализовывать функционал именно build-механизма Sublime Text 2, не решалась первая проблема — явного указания вариантов, причем так же существовало излишнее конфигурирование. Приходилось конфигурировать ProjectBuild для того, чтоб сформировать список вариантов для панели, хотя этот список вариантов уже есть непосредственно в самом «*.sublime-build» файле выбранной Build System. Я связался с snegovikufa, он быстро ввел меня в курс дела, как работать с GitHub, и я приступил к изменению плагина.

Оффтоп о процессе переделки плагина ProjectBuild

GitHub

Mеня очень порадовала эта система «учета кода» (конечно же я утрирую), я никогда ранее не работал c git, но на то, чтоб разобраться с ней ушло менее получаса, тем более, что есть исчерпывающее руководство по git как для Linux, так и для Windows пользователей на самом GitHub. Я написал рабочий код,

snegovikufa

его качественно переработал на предмет нотации Python, и так далее, поправляя друг друга и списываяь, получили результат, вылизанный рабочий итог сейчас в

dev ветке

Вещь! Мое первое впечатление, совместная разработка и git (GitHub в частности) — созданы друг для друга.

API Sublime Text 2 и Python

Есть

официальная

и

неофициальная

документации. Вначале казалось, что возможности API у Sublime Text 2 не так уж и велик

и

, но их вполне хватило. Чего не хватило, реализовалось на Python. Как сказал ранее, я не знаю Python, но для разработки задуманного функционала плагина больш

и

х знаний и не потребовалось. Да и

snegovikufa

оперативно поправил потенциально непонятные для третьих лиц моменты. Единственное, что я хотел ради интереса найти, но так и не смог, так это список всех возможных ключей и значений Settings, которые существуют у Sublime Text 2 по умолчанию, хотя может плохо искал.

По формату файла «*.sublime-workspace» в документации сказано, что это формат JSON, но было выяснено, что при json-парсинге этого файла может вылетать ошибка. Дело в том, что json-ключ в его данных может быть пустым, но это было проигнорировано плагином ProjectBuild так:

... json.load (f, strict = False)

Еще у Sublime Text 2 в «*.sublime-build» файле может быть задействована переменная с «$project_path», и мне совершенно не понятно, почему разработчики Sublime Text 2 не предусмотрели ее (и других) использование в путях у сочетаний клавиш, где, например, вызываются «сторонние» для Sublime программы. Может это в целях безопасности, чтоб какой-нибудь плагин по сработавшему сочетанию клавиш что-нибудь не упёр что-то «себе» из проекта, но все же.

Итоговый код плагина

Спойлер

import sublime
import sublime_plugin
import json
import sys
import os

class ProjectBuildCommand (sublime_plugin.TextCommand) :
    def run (self, edit = None) :
        # Save file if dirty
        if self.view.is_dirty () :
            self.view.run_command ('save')

        ############################################
        #
        # Определяем файл .sublime-workspace
        # он должен быть размещен в одной из корневых директорий
        # проекта и должен быть единственным
        #
        workspace_file = None
        root_folders = self.view.window ().folders ()
        for dir_ in root_folders :
            for dir_item in os.listdir (dir_) :
                if dir_item.endswith ('.sublime-workspace') :
                    if workspace_file == None :
                        workspace_file = os.path.join (os.path.normpath(dir_), dir_item)
                    else :
                        self.showError (
                            'Must be only one ".sublime-workspace" file in project root folder.\n'
                            'Plugin found %s and %s files.' %
                            (workspace_file, os.path.join (dir_, dir_item)))
                        return
        if workspace_file == None :
            self.showError (
                'There are no ".sublime-workspace" file in any root folder of project.')
            return
        self.debug(workspace_file)
        #
        ############################################

        ############################################
        #
        # Получаем относительный путь до файла текущей Build System
        #
        with open (workspace_file) as f :
            try:
                workspace_json_data = json.load (f, strict = False)
            except Exception, e:
                self.showError (
                    'File .sublime-workspace is empty or has incorrect json data')
                return
        if not 'build_system' in workspace_json_data :
            self.showError (
                'There are no "build_system" value in %s file.\n'
                'Choose Build System and save project.' % workspace_file)
            return
        build_filename = workspace_json_data['build_system']
        self.debug(build_filename)
        #
        ############################################
        
        ############################################
        #
        # Определяем наличие файла текущей Build System
        # по полному пути до него
        # 
        build_filename_fullpath = os.path.normpath( os.path.join(os.path.dirname(sublime.packages_path()),build_filename))
        if not(os.path.isfile(build_filename_fullpath)):
            self.showError (
                'Plugin could not find Build System file: "%s".' %
                build_filename_fullpath)
            return
        self.debug(build_filename_fullpath)
        #
        ############################################

        ############################################
        #
        # Загружаем JSON данные
        #
        with open (build_filename_fullpath) as f :
            try:
                json_data = json.load (f)
            except Exception, e:
                self.showError (
                    'File %s is empty or has incorrect json data' %
                    build_filename_fullpath)
                return
        #
        ############################################

        ############################################
        #
        # Формируем словарь build-вариантов текущей Build System
        #
        build_variants = []

        if "cmd" in json_data:
            build_variants.append (['Default', " ".join (json_data["cmd"])])

        for variant in json_data.get ("variants", {}) :
            build_variants.append (
                [variant['name'], " ".join (variant['cmd'])])
        #
        ############################################
 
        ############################################
        #
        # Демонстрируем панель вариантов.
        #
        def run (selected) :
            if (selected >= 0) :
                self.execute_variant (build_variants[selected][0])

        names = [name for name, args in build_variants]
        self.view.window ().show_quick_panel (names, run)
        #
        ############################################

    def execute_variant (self, variant_name) :
        self.view.window ().run_command ("build", {"variant": variant_name})

    def showError (self, err) :
        # демонстрируем сообщение об ошибке через Sublime API 
        # иногда не срабатывало, хотя оно и должно было появляться
        sublime.error_message ('ProjectBuild:\n\n%s' % err)
        
    def debug (self, message) :
        # change True to False or vice versa
        if (False): print message

Выводы

Теперь для ProjectBuild не нужен конфиг. Вам достаточно выбрать необходимую Build System (стандартную систему или вашу собственную, как моя «AntProjectBuilder.sublime-build»). Сохранить проект в Sublime Text 2 таким образом, чтоб в одной из корневых его папок лежал файл манифеста проекта «*.sublime-workspace». Плагином ProjectBuild отслеживается наличие этого файла и его уникальность, так как сведения о текущей Build System берутся именно из него. При изменении Build System в Sublime Text 2 не забудте сохранить проект, чтоб указанный выше файл обновился. Нажимаем назначенное для ProjectBuild сочетание клавиш и видим панель со списком build-вариантов. Список формируется автоматически по существующему в «*.sublime-build» файле описанию вариантов выбранной в Sublime Text 2 системы Build System.

Указанные в самом начале статьи проблемы были успешно решены: задействовано одно сочетание клавиш и оно работает с build-механизмом непосредственно самого Sublime Text 2 и в его интерфейсе без жесткой привязки и явного именования вызываемых build-вариантов.

У плагина осталось пространство для доработки, например, сейчас игнорируется платформо-срецифичные опции, которые могут быть указаны в файле Build System, но лично мне пока и так вполне достаточно, да и необходимо мне именно то, что он сейчас и реализует.

На самом деле сложно сказать, чей вклад больше, да и важно ли это, если в итоге плагин ProjectBuild стал тем, чем, наверно, и должен был быть. И что уж греха таить, я испытываю неописуемое чувство гордости, что вот не было такого в интерфейсе и функционале Sublime Text 2, а теперь такое есть, и что это написано отчасти мной. (тут я еще не знал о «велосипеде», о, горе мне, горе)

Прежний вариант ProjectBuild будет скорее всего переделан в плагин OneHotkey по группировке команд в одно сочетание клавиш, не обязательно build команд, а просто команд запуска «сторонних» для Sublime Text 2 программ и т.п. и там уже пригодится файл настроек, который был раньше у ProjectBuild и оказался для него лишним, так как содержал для build-механизма избыточную информацию.

Обещанный велосипед

Все острова давным давно открыты… Как оказалось, уже изначально в Sublime Text 2 уже есть возможность вызова панели выбора вариантов текущей Build System, вам необходимо просто добавить сочетание клавиш:

{ "keys": ["f8"], "command": "show_overlay", "args": {"overlay": "command_palette", "text": "Build: "} }

И эта панель, как не печально было бы об этом говорить, удобнее, так как не привязывает вас с файлу «*.sublime-workspace» и демонстрирует назначенные сочетания клавиш для каждого варианта, если таковые уже имеются. Однако она не поддерживает их сортировку, а плагин можно доработать на предмет упорядочивания вариантов (хотя может опять я чего не ведаю).

Наверно, все что можно выжать из этого всего, так это вернуться обратно к OneHotkey.

Спасибо за внимание.

Не удается запустить скрипт python в sublime text 3, потому что build (CTRL+B) не работает

я установил sublime text3 и попытался запустить в нем код python.
когда я выбираю python из Build system и пытаюсь запустить код, я получаю эту ошибку :

‘python’ не распознается как внутренняя или внешняя команда,
действующая программа или batch file. [Закончено в 0.1s с кодом выхода 1]
[shell_cmd: python -u «C:\Python26\Lib\py\try66.py»] [реж.:
C:\Python26\Lib\py] [путь: C:\Program Files (x86)\Common
Files\Intel\Shared
Files\cpp\bin\Intel64;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program
Файлы (x86)\Skype\Phone\;C:\Program Файлов
(x86)\AMD\ATI.ACE\Core-Static;C:\Program Файлы (x86)\Microsoft SQL
Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL
Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL
Server\100\DTS\Binn]

поэтому я установил файл sublimeREPL и установил путь к нему.
и я создаю новую систему сборки с именем python26repl.sublime-build с этим контекстом:

> { "target": "run_existing_window_command", "id":  "repl_python_run",
> "file": "config/Python/Main.sublime-menu" }

и я установил Build system на python26repl.sublime-build . теперь Build (CTRL+B) не означает work.i, что они ничего не делают, кроме сохранения кода.
пожалуйста, помогите, в чем проблема? как это исправить?

python

sublimetext3

Поделиться

Источник


Stupid.programmer    

19 марта 2019 в 16:41

2 ответа


  • sublime text 3 ctrl backspace не работает

    sublime text 3 Ctrl + Backspace не работает моя sublime keymap так, но все равно не работает { keys: [ctrl+backspace], command: delete_word, args: { forward: false } },

  • Система Сборки-Sublime Text 3

    У меня есть следующий скрипт под названием build-bat.sublime-build: { cmd: build.bat, working_dir: $project_path, windows : { shell: true } } Сценарий находится в C:\Users\MyName\AppData\Roaming\Sublime тексте 3\Packages Я могу выбрать скрипт в Tools/Build Systems/build-bat, а затем запустить его…



0

Первая проблема, с которой вы столкнулись, заключается в том, что встроенная программа Python.sublime-build пытается выполнить python как команду, но не может найти ее по пути, поэтому Windows генерирует ошибку. Если вы добавите соответствующий путь к python.exe в переменную среды PATH (и перезагрузите Sublime), эта проблема должна исчезнуть. Как вы это сделаете, зависит от того, какую версию windows вы используете.

Вторая проблема, с которой вы столкнулись, заключается в том, что SublimeREPL-это более старый пакет, который не поддерживается, и его команда run_existing_window_command содержит ошибку, из-за которой он не работает на Windows. До появления Sublime Text 3.2 ошибка была замаскирована тем, что Sublime был несколько небрежен в отношении некоторых нарушений API, поэтому, несмотря на ошибку, она все равно работала, но это уже не так.

Вы заметите, что если вместо этого вы используете пункты меню для SublimeREPL, ваша программа будет работать так, как ожидалось (при условии, что вы настроили ее правильно). Если вам нужна система сборки, которая будет работать, вам нужно определить ее примерно так:

{
    "target": "repl_open",
    "type": "subprocess",
    "encoding": "utf8",
    "cmd": ["python", "-i", "-u"],
    "cwd": "$file_path",
    "syntax": "Packages/Python/Python.tmLanguage",
    "external_id": "python",
    "extend_env": {"PYTHONIOENCODING": "utf-8"}
}

Поскольку python не находится на вашем пути, вам, возможно, потребуется настроить его в соответствии с вашими настройками (например, сделать то, что вы делали, когда устанавливали SublimeREPL в первую очередь).

Поделиться


OdatNurd    

19 марта 2019 в 17:57



0

Проблема заключается в настройках пути python. он установлен неправильно

Чтобы установить python в переменную среды Path,

  1. Сначала нажмите на меню Пуск и щелкните правой кнопкой мыши на Моем компьютере, затем свойства

  2. затем нажмите на Предварительные настройки системы

  3. На вкладке Дополнительно выберите Переменные среды…

  4. затем в разделе Системные переменные найдите путь и нажмите кнопку Изменить

  5. а теперь добавьте ;C:\Python37 (независимо от вашего пути) в конце этой строки и сохраните изменения с помощью ok

В командной строке (Win + R, введите cmd, затем ok) введите python, и он покажет вам консоль python, и все. вы можете попробовать свой сценарий в Sublime text, нажав Ctrl+B

если он все еще показывает ошибки , вы можете попробовать удалить его, а затем снова переустановить

при переустановке установите флажок в нижней части интерфейса установщика «Добавить Python3.7 в путь»

Надеюсь, это поможет

Поделиться


Nil Sagor    

19 марта 2019 в 18:04


Похожие вопросы:

Sublime Text 3 команда B не запущена

Я скачал Sublime Text 3 и теперь пытаюсь запустить в нем простой код python. Код, кажется, запустился, когда я запускаю Command + B , но я не вижу никаких выходных данных: Я нахожусь на Mac OS X El…

В Sublime Text 3, как иметь ярлыки для «Build and Run» и «Build only» отдельно, как это было в Sublime Text 2?

В Sublime Text 3, Когда мы нажимаем Ctrl+Shift+B, нам предоставляется возможность либо сделать Build and Run, либо только построить, тогда как Ctrl+B выполняет ранее выбранную операцию из двух. Но я…

Python 3 не работает с Sublime Text 2

Я использую Sublime Text 2 уже более года и недавно начал использовать его для Python. Sublime имеет встроенную сборку it для Python, которую я пробовал использовать (встроенная-для 2.7.3 или что-то…

sublime text 3 ctrl backspace не работает

sublime text 3 Ctrl + Backspace не работает моя sublime keymap так, но все равно не работает { keys: [ctrl+backspace], command: delete_word, args: { forward: false } },

Система Сборки-Sublime Text 3

У меня есть следующий скрипт под названием build-bat.sublime-build: { cmd: build.bat, working_dir: $project_path, windows : { shell: true } } Сценарий находится в…

Ctrl + U не работает для отмены выбора в Sublime Text 3

В Sublime Text 2 при использовании функции Ctrl + D для выбора нескольких одинаковых элементов вы можете использовать Ctrl + U для возврата к одному из них. Это не работает в Sublime Text 3. Есть…

Выполнить Python в Sublime Text 3

Как я могу выполнить код Python 2.7 с помощью Sublime Text 3 на Windows 10? Когда я использую контекстное Ctrl+B он говорит ‘python’ is not recognized as an internal or external command, operable…

Sublime Text 3 custom build ничего не происходит

Я новичок в том, чтобы возиться с настройками Sublime Text 3 и тому подобным. Я учусь создавать свою собственную систему сборки, и сейчас я просто хочу сделать простую систему сборки Python 3,…

.sublime-файлы сборки отсутствуют после установки Sublime Text 3

После установки Sublime Text 2 и запуска нескольких файлов .py с CTRL+B я могу найти этот файл в файловой системе: C:\Users\User\AppData\Roaming\Sublime Text 2\Packages\Python\Python.sublime-build…

Sublime Text 3 Python3 build не работает?

Я только что установил последнюю версию Sublime Text 3 на свой Linux Pop_!Компьютер OS, но я не могу запустить файл python. Когда я пытаюсь построить файл с python с CTRL-B , он выдает мне ошибку в…

Система Сборки-Sublime Text 3 — CodeRoad

У меня есть следующий скрипт под названием » build-bat.sublime-build»:

{
  "cmd": "build.bat",
  "working_dir": "$project_path",
  "windows" : {
      "shell": true
  }
}

Сценарий находится в C:\Users\MyName\AppData\Roaming\Sublime тексте 3\Packages

Я могу выбрать скрипт в Tools/Build Systems/build-bat, а затем запустить его с помощью CTRL+B или вручную выбрать его в Tools/Build

Это происходит ровно ничего. Я ничего не вижу, я не получаю никаких ошибок.

Он должен запустить файл с именем: build.bat в текущем каталоге, где находится файл, над которым я работаю. Но этого не происходит.

Почему?

batch-file

build

cmd

sublimetext3

Поделиться

Источник


Simon S.    

17 июня 2014 в 14:24

3 ответа


  • Пользовательская система сборки для QML в Sublime Text 3

    Я создал систему сборки для QML в sublime, поэтому, выбрав эту систему сборки и выполнив ctrl+B, Я создаю код qml для себя. Но каждый раз, когда я переключаюсь между файлами разных типов (например, файл .py и файл .qml) Я должен изменить систему сборки с QML на автоматическую и наоборот. Что я…

  • Node.js система сборки в Sublime Text 2

    Я просто начал изучать JavaScript. Делая это, я устал встраивать свой код JavaScript в документ HTML, чтобы запустить его в браузере. Я подумал, что было бы неплохо просто запустить мои сценарии прямо в консоли Sublime, чтобы мне не пришлось покидать редактор. Поэтому я пытался создать систему…



4

После добавления новой системы сборки в sublime text 3 вам необходимо перезапустить sublime text 3. После этого приведенный выше код работает.

Поделиться


Simon S.    

18 июня 2014 в 07:17



0

Вы можете переименовать build.bat в make.bat и выбрать систему сборки Make в ST. Просто нажмите Ctrl+B , и ST попытается запустить команду make , и make.bat будет выполнен. Вывод будет показан в консоли ST.

Поделиться


viktor-zin    

21 августа 2016 в 16:47



0

Это сработало для меня:


Он работает с путями и файлами с whitespaces , добавляя аргументы с "arg" , , такие как:

[..., "/C", "START", "${file_path}", "${file_name}"]


Вставьте это в свой файл Batch.sublime-build.

{
    "file_patterns": ["*.bat"],
    "selector": "source.Batch",
    // This runs the batch file in cmds' console
    "cmd": ["cmd", "/C", "START", "${file_path}", "${file_name}"]
}

Затем ваш batch file можно запустить в CMDs’ CLI. Я полагаю, что можно также передавать аргументы, но это может быть отправной точкой для вас.

Выше будет запущен cmd.exe и запустите код в своей собственной консоли. Это будет принимать ваши входные данные файла .bat.


Вот сборка, которую можно сохранить как BatchStConsole.sublime-build

{
    "file_patterns": ["*.bat"],
    "selector": "source.Batch",
    // This outputs to Sublime Texts' console
    "cmd": ["cmd", "/C", "${file}"]
}

Вышеописанный код будет запущен в консоли Sublime Texts. Это не будет принимать ваши входные данные файла .bat. Но все равно полезно для отладки, поскольку он передает любые аргументы, такие как собственный CLI, но просто не взаимодействует.


Соответствующая помощь:

START https://ss64.com/nt/start.html

https://docs.sublimetext.io/руководство/использование/сборка-systems.html

https://www.sublimetext.com/docs/3/build_systems.html

Поделиться


Ste    

15 мая 2019 в 16:48


Похожие вопросы:

Sublime Text 3: удаление систем сборки

Это кажется такой простой задачей, но я потратил последние 40 минут на поиски ответа. Я хотел бы удалить систему сборки из Sublime Text 3. Я искал, где ST3 хранит их*. sublime-build. Я не могу найти…

Редактирование системы сборки в Sublime Text 3

Как я могу отредактировать систему сборки в Sublime Text 3, независимо от того, является ли она родной или установленной с помощью управления пакетами? Например, для пакета сборки Sass он недавно…

Verilog система сборки для Sublime Text 3

Я пытаюсь реализовать простую систему сборки для Verilog в Sublime Text, но при сборке получаю следующую ошибку: [Errno 2] No such file or directory: ‘iverilog’ [cmd: [‘iverilog’, ‘-o’,…

Пользовательская система сборки для QML в Sublime Text 3

Я создал систему сборки для QML в sublime, поэтому, выбрав эту систему сборки и выполнив ctrl+B, Я создаю код qml для себя. Но каждый раз, когда я переключаюсь между файлами разных типов (например,…

Node.js система сборки в Sublime Text 2

Я просто начал изучать JavaScript. Делая это, я устал встраивать свой код JavaScript в документ HTML, чтобы запустить его в браузере. Я подумал, что было бы неплохо просто запустить мои сценарии…

Sublime Text 3 Найдите системы сборки по умолчанию в OS X

Я не могу понять, где найти стандартные системы сборки Sublime Text 3. Я хотел бы посмотреть, как выглядит система сборки C++ по умолчанию, чтобы создать из нее C++11 -совместимую. В Sublime 2 файлы…

Система сборки Sublime Text и echo

Я пытаюсь настроить свою собственную систему сборки в Sublime text, но у меня возникли проблемы с командой echo: cmd : [echo -n ‘some_text’ > ~/some_file] и я получаю это в файле результатов: -n…

Python 3.4 на Sublime Text 3

Я выполнил эти шаги, чтобы запустить Python 3 на Sublime Text 3. Выберите меню Сервис > сборка > новая система сборки, и я ввел следующее: { cmd: [python3, $file] , selector: source.python ,…

Как изменить версию сборки в Sublime Text 3

Похоже, что Sublime Text 3 использует OSX-версию по умолчанию Ruby в режиме сборки. Я хотел бы изменить версию, так как использую более новую. Я нашел несколько ответов для приватной версии sublime:…

Python 3 функция ввода и система сборки Sublime Text

У меня есть вопрос по Sublimetext3 системам сборки. У меня есть следующий код (ниже), который принимает ответ от пользователя. У меня установлен Python3, и я использую его в качестве системы сборки….

Sublime Text Build System, которая просто «делает»,

Я пытаюсь создать свой проект, просто выполнив make в верхнем каталоге. Однако, когда я это делаю, я получаю следующую ошибку:

[Errno 2] No such file or directory
[cmd:  [u'make']]
[dir:  /Users/jonathanong/Workspace/template]
[path: /usr/local/bin]
[Finished]

Это после настройки конфигурации сборки на make.

Я на Sublime Text 2.0.1, OS X 10.8.2. My Makefile состоит из исполняемых в глобальном масштабе двоичных файлов node.js. Что мне нужно сделать?

Ответ 1

Это потому, что make не находится в вашем PATH. Если вы можете построить терминал, используйте which make, чтобы выяснить путь к make, а затем добавьте его в путь для сборки. Вы можете отредактировать систему сборки makefile, чтобы добавить свой путь.:]*):([0-9]+):?([0-9]+)?:? (.*)$»,
«working_dir»: «${project_path:${folder:${file_path}}}»,
«selector»: «source.makefile»,
«path»: «/usr/local/bin:/Applications/Xcode.app/Contents/Developer/usr/bin»,
«variants»:
[
{
«name»: «Clean»,
«cmd»: [«make», «clean»]
},
{
«name»: «Test»,
«cmd»: [«make», «test»]
}
]
}

В основном это целевой объект make по умолчанию, но я добавил в PATH и (конечно) тестовую цель. Возможно, вам придется расширить PATH, чтобы найти gcc, ifort или все, что вы используете для компиляции. Используйте : для разделения каталогов на Linux и Mac и ; в Windows. Вы также можете изменить другие переменные среды, мне пришлось установить DYLD_LIBRARY_PATH и CPATH, чтобы мои библиотеки и включенные каталоги были доступны.

Он должен быть сохранен как Make (OSX).sublime-build в каталоге пользователя ваших предпочтений Sublime. (OSX) гарантирует, что этот файл используется только на Mac, поэтому, когда вы копируете свои настройки на не-mac-компьютер, вы не будете развязывать путь.

Ответ 2

Самым предпочтительным решением является IMO для настройки PATH в плагине, поэтому вы должны установить его только один раз для всех систем сборки и всех плагинов, вызывающих внешние команды.

Вы можете просто сделать

import os
os.environ['PATH'] += os.pathsep + '/my/extra/path'

Пример реального мира живет в https://github.com/schlamar/ST3User/blob/master/preferences.py

python — Файлы .sublime-build отсутствуют после установки Sublime Text 3

Были ли файлы конфигурации .sublime-build упакованы в другой файл / пакет

Технически говоря, ответ на ваш вопрос отрицательный; файл Python.sublime-build по-прежнему находится в том же самом Python.sublime-package, что и всегда, но в отличие от ST2, ST3 может читать содержимое файлов sublime-package, не извлекая их предварительно.

В ST2 Sublime выполняет шаг под названием «Установка пакета» при каждом запуске, посредством чего он извлекает содержимое файлов sublime-package в папку Packages (когда файл пакета был изменен или версия папки не изменилась). существует). Если вы проверите верхнюю часть консоли ST2, вы можете увидеть сообщения о том, считает ли он, что нужно выполнить настройку или нет.

В ST3 Sublime может считывать ресурсы пакета непосредственно из файлов sublime-package, и поэтому он больше не выполняет этап извлечения пакета, к которому он привык.

Итак, в то время как в ST2 вы могли зайти в папку Packages, чтобы посмотреть содержимое пакета, теперь вам нужно либо заглянуть внутрь файла sublime-package (это просто zip-файл с другим расширением ) или используйте команду View Package File из палитры команд, которая позволит вам увидеть и открыть любой ресурс пакета из любого пакета.

почему, если это делает редактирование намного менее удобным?

Одна из основных причин этого изменения — сделать редактирование ресурсов пакета более безопасным. Раньше, если вы редактировали извлеченное содержимое пакета, если этот пакет когда-либо обновлялся, Sublime повторно извлекал бы новый файл пакета, что могло бы стереть ваши изменения.

Чтобы пакеты обновлялись без этого, ST3 поддерживает идею overrides для пакетов и ресурсов; по сути, идея, что вы предоставляете внешний файл и говорите Sublime: «Используйте этот файл вместо этого»; таким образом, даже если файл sublime-package изменится, ваши изменения останутся нетронутыми.

Это может происходить двумя разными способами:

  • Если вы поместите файл sublime-package в папку Installed Packages и пакет с таким же названием появится в папке Packages в каталоге установки Sublime , то версия в { {X3}} используется, а тот, с которым поставляется Sublime, игнорируется. Это позволяет заменять пакеты, поставляемые с Sublime.

  • Если в папке Packages в области конфигурации пользователя есть папка, которая имитирует имя файла sublime-package (например, Python.sublime-package и Python/ ), то содержимое папки считается частью файла sublime-package, что позволяет вам расширить пакет.

    Кроме того, если какие-либо файлы появляются с тем же именем и относительным путем в версии папки, они будут использоваться вместо файла в файле sublime-package (в некоторых случаях может иметь значение регистр имени файла и пути, так что лучше всего его имитировать). Это позволяет безопасно изменять содержимое пакетов.

В обоих случаях это дает вам право изменять пакеты по своему усмотрению, при этом гарантируя, что независимо от того, какие обновления произойдут, ваши изменения останутся на месте. Таким образом, важно отметить, что вам следует никогда изменять файл sublime-package (если это не вы сделали), потому что при обновлении пакет файл будет заменен, и ваши обновления будут потеряны.

Предостережение здесь в том, что когда overrides на месте, Sublime всегда без вопросов использует их. Таким образом, если вы переопределяете файл пакета и автор также обновляет пакет, ваш измененный файл все равно будет использоваться.

Пакет OverrideAudit (отказ от ответственности: я являюсь автором) отслеживает, когда обновляется файл sublime-package таким образом, что ваши локальные изменения могут быть замаскированы и предупредить вас об этом. Он также содержит команду, позволяющую легко создавать переопределения и видеть, чем они отличаются от файлов, которые они переопределяют.

Более подробную информацию о том, как пакеты работают в ST3 (включая различные места, где могут существовать файлы пакетов), можно найти в Демистификация пакетов в Sublime Текст видео.


Примеры переопределений

Для ясности, вот несколько примеров переопределения с использованием вышеуказанного механизма. Во всех случаях мы будем использовать следующие термины:

  • $DATA: место, где Sublime хранит вашу пользовательскую конфигурацию. Для переносимых сборок это каталог Data, который вы получаете при распаковке сборки; во всех остальных случаях он находится в папке где-нибудь в вашем домашнем каталоге. Используйте Preferences > Browse Packages и перейдите на один уровень папки вверх, чтобы найти это место, независимо от вашей ОС или метода установки.

  • Shipped Packages: это папка с именем Packages, которая существует внутри каталога установки самого Sublime (т.е. там, где находится двоичный файл). Он содержит все файлы sublime-package, которые по умолчанию поставляются с Sublime.

  • Installed Packages: это папка в $DATA. Package Control устанавливает здесь файлы sublime-package, и вы также можете разместить файлы пакетов здесь вручную. Пакеты, содержащиеся в этой папке (включая подпапки), будут видны Sublime.

  • Unpacked Packages: это папка Packages в $DATA, где хранятся распакованные пакеты. Preferences > Browse Packages всегда приводит вас сюда, и именно там хранится ваш пакет User.

Порядок загрузки пакетов диктует, что Sublime сначала загружает все пакеты Shipped, затем все пакеты Installed и, наконец, пакеты Unpacked. При загрузке файла sublime-package переопределения в папке Unpacked Packages загружаются как часть этого этапа, а все оставшиеся файлы загружаются позже.

В пределах определенного порядка пакеты сортируются лексически так, чтобы они загружались по порядку, за исключением того, что Default всегда загружается первым, а User всегда загружается последним. Переопределения вступают в силу в момент, когда Sublime пытается загрузить конкретный пакет или ресурс из этого пакета.

Полное переопределение

Переопределения этого типа заставляют Sublime полностью игнорировать один файл sublime-package в пользу другого; вы можете использовать это, чтобы повлиять на изменения в пакете в целом, включая возможность удалять файлы из пакета, что в противном случае невозможно. Этот механизм применяется только к пакетам Shipped и используется не очень часто.

  • Добавление пустого Python.sublime-package (zip-файла, не содержащего файлов) в папку Installed Packages приведет к тому, что пакет будет казаться пустым, поэтому поддержка Python будет удалена.

  • Добавление версии Python.sublime-package в папку Installed Packages, из которой удалены все файлы sublime-snippet, оставит поддержку Python без изменений при удалении всех фрагментов.

  • Добавление Sample.sublime-package в папку Installed Packages не является переопределением, поскольку папка Shipped Packages не содержит пакета с таким именем. Таким образом, это обычная установка пакета.

Переопределения ресурсов

Переопределения этого типа заставляют Sublime отдавать предпочтение свободному файлу ресурсов пакета в папке Unpacked Packages по сравнению с файлом с таким же именем в файле sublime-package (независимо от того, как этот пакет установлен). Это более распространенный механизм, который вы могли бы использовать для корректировки содержимого файла пакета без непосредственного изменения самого файла sublime-package.

  • Создание файла с именем $DATA/Packages/Python/Python.sublime-build переопределит файл с таким же именем в Python.sublime-package, так что, что касается Sublime, этот файл является частью файла sublime-package.

  • Создание файла с именем $DATA/Packages/Python/Snippets/if.sublime-snippet будет делать то же самое; имя файла в папке Python имеет тот же относительный путь и имя, что и версия в файле sublime-package, поэтому Sublime использует его вместо этого.

  • Создание файла с именем $DATA/Packages/python/python.sublime-build будет рассматриваться как первый пример, если вы используете Windows или MacOS с файловой системой без учета регистра, но будет рассматриваться как новый пакет, содержащий новую систему сборки в Linux, потому что регистр имен файлов и / или папки не соответствуют имени файла sublime-package.

Определение того, является ли ресурс переопределением или нет, напрямую коррелирует с тем, существует ли файл с идентичным именем в правильном месте; все, что не соответствует, рассматривается как новый пакет или новый ресурс пакета.

Так, например, создание $DATA/Packages/User/Python.sublime-build не отменяет систему сборки Python по умолчанию, потому что сборка по умолчанию находится в пакете Python, а не в пакете User. В этом случае это добавит вторую (с таким же именем) систему сборки.

Поскольку случай файлов и папок имеет значение, обычно лучше использовать какой-либо пакет (например, PackageResourceViewer или OverrideAudit), чтобы создать переопределение для вас, чтобы убедиться, что все верно.

Хотя я пристрастен, я обычно рекомендую OverrideAudit для этого использования, потому что PackageResourceViewer имеет команду для извлечения всего пакета в папку Packages. Если бы вы случайно запустили эту команду, вы бы фактически переопределили все содержимое всего пакета сразу, что заблокировало бы его постоянное обновление и могло бы вызвать проблемы, которые иначе трудно отследить.

1

OdatNurd
25 Ноя 2019 в 22:37

Пошаговый мануал по простой настройке Sublime Text 3 для pawn | Pawno-Info.Ru

Мануал обновлен и полностью актуален для Sublime Text build 3211

Доброго времени суток. В группе ВК все больше и больше вижу посты с проблемами с редактором Visual Studio Code, лично мне этот редактор не нравится. В этой теме я расскажу как избавится от проблем и перейти на Sublime Text. На форуме уже есть подобная тема, однако ее содержание «скопируйте это и вставьте сюда», здесь я подробно и доступно расскажу как настроить редактор. Давайте начнем пошагово.

Шаг 1. Для начала необходимо скачать и установить Sublime Text 3. Скачать его можно на официальном сайте sublimetext.com

Шаг 2. После установки нам необходимо установить менеджер пакетов Package Control. Сделать это довольно просто, открываем Sublime Text и нажимаем сочетание клавиш Ctrl + Shift + P, у вас появится строка с поиском, введите в нее «Install package control», и выберите этот пункт. После чего в нижней части у вас появится прогресс установки, дождитесь завершения и переходите к следующему шагу. Если у Вас уже есть Sublime Text и установлен Package Control, переходите к следующему шагу.

Шаг 3. Теперь после установки менеджера пакетов нам необходимо установить поддержку синтаксиса pawn для нашего редактора. Так же в комплекте с подсветкой синтаксиса вы получите автозаполнение функций. Для установки опять нажмите сочетание клавиш Ctrl + Shift + P и введите «Install package», выберите этот пунктПосле этого, внизу экрана Вы так же увидите загрузку и надпись «Loading repositories», после окончания загрузки у Вас опять откроется строка поиска, это поиск по темам, дополнениям, цветовым схемам и прочем, вводим в поиск «Pawn syntax»Выбираем этот пункт и ждем окончания установкиПосле этих шагов Вы уже можете просматривать и редактировать Ваш мод, осталось только настроить компиляцию.Шаг 4. Настройка компилятора. В меню сверху выбираем пункт «Preferences» (Настройки), затем «Package Setting» (настройки дополнений), затем «Pawn Compiller Setting» (Настройки компилятора) и выбираем пункт «Generate Build Setting File» (Сгенерировать настройки для компиляции). Снизу экрана у Вас появится поле для ввода, где необходимо указать расположение компилятора pawncc.exe. Необходимо указывать тот компилятор, который лежит в одной папке с вашим модом, иначе некоторые инклуды не будут подключены и мод не скомпилируется (Исправить можно редактируя файл настроек компиляции, дальше покажу как). Введите в нее расположение вашей папки pawno, в которой лежит компилятор pawncc.exeОбратите внимание, что директория не должна содержать русских букв, а так же иметь обратные слеши, вместо обычных. После ввода нажмите клавишу Enter. Sublime Text предложит сохранить файл с настройками компиляции, сохраните куда Вам удобно, данный файл в дальнейшем нам понадобится лишь один раз, чтобы скопировать из него настройки. После сохранения нам необходимо указать редактору, что мы хотим компилировать язык pawn, для этого в верхнем меню выберите вкладку «Tools» (Инструменты), затем «Build system» (Система сборки) и выберите пункт «New build system» (Новая система сборки)
У вас откроется новый файл
Вставьте в него сгенерированный файл настроек, который мы делали выше. Если при компиляции вы не хотите видеть размер стека и другую полезную информацию, удалите строку 8 («-d3»)
Теперь нам нужно сохранить этот файл. В верхнем меню нажмите «File» (Файл), затем «Save» (сохранить), либо нажмите сочетание клавиш Ctrl + S
Сохраняйте именно в предложенную папку, иначе редактор не увидит файла. После сохранения файла, в верхнем меню опять выберите пункт «Tools», затем «Build System» и в этом меню теперь Вы увидите «Pawn», либо то, как вы назвали файл настроек. Выбираем этот пункт.
Теперь Вы можете компилировать файлы, для этого выберите в верхнем меню пункт «Tools», а затем нажмите «Build». Внизу экрана откроется консоль, где Вы можете видеть результат компиляции. Чтобы закрыть консоль, нажмите Esc. Однако компилировать таким образом не удобно, гораздо привычней делать это клавишей F5. Для этого переходим к следующему шагу.
Шаг 5. Назначение клавиши F5 для компиляции. Для начала в верхнем меню выберите пункт «Preferences» (Настройки), а затем «Key binding» (Назначение клавиш)
В открывшемся окне, в правую часть вставляем следующий код (не забудьте про квадратные скобки на 1 и 3 строке, вставить код нужно между ними).

JSON:

{ "keys": ["f5"], "command": "build" }

В итоге получим следующее
В верхнем меню выбираем пункт «File», затем «Save», либо нажимаем сочетание клавиш Ctrl + S, тем самым сохраняя. Можно закрыть это окно. Теперь нажав клавишу F5 запустится компиляция. На этом мануал подошел к концу. Думаю, подробней объяснить просто невозможно, однако если будут какие-либо вопросы — пишите в тему.

Так-же стоит предупредить людей о том, что им обязательно надо знать с какой кодировкой они работают и поставить ее основной, а иначе ребята без бекапа потеряют интерес к жизни…))

ПОСЛЕДНЕЕ И САМОЕ ВАЖНОЕ ЧТО ВАМ НУЖНО СДЕЛАТЬ. Чтобы в Sublime Text не слетала кодировка и Вы не видели кракозябры — зайдите в меню Preferences -> Settings и добавьте в правую часть следующее:

JSON:

"default_encoding": "Cyrillic (Windows 1251)",
"fallback_encoding": "Cyrillic (Windows 1251)",

Сохраните и закройте окно с настройками. На этом настройка Sublime Text завершена. Чтобы удобно работать с сервером — нажмите File -> Open folder, выберите папку с сервером и нажмите «Выбор папки». Теперь слева у вас будет список файлов сервера.

После того, как освоитесь, можете поднять свою производительность выучив фишки редактора, гуглите «Шпаргалка ниндзя Sublime Text 3»

Если хотите цветовую схему, похожую на Pawno — нажмите Ctrl + Shift + P, введите Install package, дождитесь загрузки и введите «Retro Computers Color Schemes», дождитесь установки, затем нажмите «Preferences», затем «Color scheme» и выберите «Amiga Rebel Light»

Мой Sublime Text. Тема Monokai Pro. Цветовая схема Monokai Pro Filter Spectrum. Шрифт Hack.
P.S. Админы, как прикажете делать пошаговые мануалы с картинками с лимитом в 20 картинок?!
P.S.S. Еще и не все картинки отображаются. Ummmmmmmm nice.

Что это и как его открыть?

Устранение неполадок при открытии файлов SUBLIME-BUILD

Проблемы при открытии SUBLIME-BUILD-файлов

Sublime Text удален

При двойном щелчке SUBLIME-BUILD-файла может появиться диалоговое окно операционной системы с сообщением о том, что он «Не удается открыть этот тип файла». Как правило, это происходит в %%os%%, поскольку Sublime Text не установлен на вашем компьютере. ОС не будет знать, что делать с вашим SUBLIME-BUILD-файлом, поэтому двойной щелчок для загрузки файла не работает.

Совет: Другая программа, связанная с SUBLIME-BUILD, может быть выбрана, чтобы открыть файл, нажав «Показать приложения» и найдя приложение.

Устаревший Sublime Text

Файл Sublime Text Build Data несовместим с Sublime Text, поскольку возможно, установлена неправильная версия. Если у вас нет правильной версии Sublime Text (или любой из других программ, перечисленных выше), вам может потребоваться попробовать загрузить другую версию или одно из других программных приложений, перечисленных выше. Эта проблема в основном связана с наличием версии файла Sublime Text Build Data, которая была создана более новой версией Sublime Text, чем то, что вы установили на вашем компьютере.

Совет: Иногда вы можете получить подсказку о версии SUBLIME-BUILD-файла, который у вас есть, щелкнув правой кнопкой мыши на файле, а затем нажав на «Свойства» (Windows) или «Получить информацию» (Mac OSX).

В конечном счете, большинство трудностей при открытии SUBLIME-BUILD-файлов связаны с установленной неправильной версией Sublime Text.

Связанные трудности при загрузке SUBLIME-BUILD-файлов

Даже при установке правильной версии Sublime Text вы все равно можете испытывать трудности с открытием SUBLIME-BUILD-файлов. Другие ошибки открытия SUBLIME-BUILD могут быть созданы другими системными проблемами внутри %%os%%. Другие причины, способствующие этому:

  • Ссылки на SUBLIME-BUILD-файлы в реестре Windows нарушены
  • Описание SUBLIME-BUILD-файла в реестре Windows было удалено
  • Неисправная установка программы SUBLIME-BUILD, такой как Sublime Text
  • Ваш SUBLIME-BUILD не может быть загружен должным образом (повреждение файла)
  • SUBLIME-BUILD заражен вирусом
  • Драйверы устройств для оборудования, связанного с SUBLIME-BUILD, устарели
  • Windows не имеет достаточных ресурсов для открытия файла Sublime Text Build Data

Пользовательские системы построения возвышенного текста для популярных инструментов и языков

Sublime Text в настоящее время является предпочтительным текстовым редактором для ряда разработчиков в сообществе разработчиков ПО с открытым исходным кодом. Он сложен, имеет мощную поддержку выбора текста и настройки, а также включает в себя функцию, которой многие не пользуются — систему сборки. В этом посте я хотел бы познакомить вас с системой сборки Sublime и поделиться сценариями сборки для работы со многими языками и инструментами, которые мы используем сегодня.

Сюда входят скрипты для Grunt, CoffeeScript, SASS и других.

Введение

Системы сборки

Sublime Text можно считать упрощенными, но легко настраиваемыми. Основная идея заключается в том, что каждый тип профиля сборки работает с помощью файла «.sublime-build» — JSON-представлений команд, путей и конфигурации, необходимых для создания проекта с использованием определенного инструмента или набора инструментов.

Сборки

можно запускать с помощью сочетания клавиш (Command + B на Mac по умолчанию на Mac или F7 в Windows), через меню «Инструменты» или при сохранении файла.Если проект в настоящее время открыт, система сборки, которую мы выбрали последней (например, grunt), будет запомнена.

Когда Sublime передает ссылки на внешние инструменты / двоичные файлы через файлы «.sublime-build», он может выполнять эти приложения с любыми аргументами или флагами, которые могут быть необходимы. Он также может передавать по конвейеру вывод вызова любого из этих приложений с помощью встроенной консоли в Sublime. Фактически это позволяет нам легко создавать проекты, не покидая редактора.

Добавление собственной системы сборки

Sublime заполняет свое меню Tools / Build System на основе файлов «.sublime-build», хранящихся в каталоге Sublime «Packages». Если нужно его найти, его можно найти в «~ / Library / Application Support / Sublime Text 2 / Packages / User» (при использовании OS X) или в соответствующем каталоге Packages / User на других платформах.

Базовый файл «.sublime-build» может быть представлен в форме «ключ-значение» следующим образом:

 {
    «cmd»: [«команда», «аргумент», «--flag»],
    "селектор": ["источник.js "],
    "путь": "/ usr / local / bin",
    "рабочий_ каталог": "/ проекты /"
}
 

Поддерживаемые ключи

включают:

  • cmd — Массив, содержащий команду для выполнения, ее требуемые аргументы и флаги. Обратите внимание, что Sublime будет искать в вашем PATH любые перечисленные инструменты, если для их указания не использовался абсолютный путь.
  • селектор — Необязательная строка, используемая для поиска лучшего построителя для использования в текущей области файла. Это актуально, только если Tools / Build System / Automatic истинно.
  • путь — Необязательная строка, которая заменяет PATH текущего процесса перед вызовом перечисленных команд.
  • working_dir — Необязательная строка, определяющая каталог, в который нужно переключить текущий каталог перед вызовом любых команд.
  • shell — необязательное логическое значение, которое определяет, должны ли команды запускаться через оболочку (например, bash).
  • file_regex — необязательное регулярное выражение, используемое для захвата вывода ошибок из команд.

Полный список ключей, поддерживаемых в сценариях сборки Sublime, см. В неофициальной документации.

Переменные сборки:

Кроме того, Sublime поддерживает подстановки переменных в файлах сборки, таких как $ file_path (путь к текущему файлу) и другие. К ним относятся:

  • $ file_path — каталог текущего просматриваемого файла
  • $ file_name — только часть имени текущего файла (включая расширение)
  • $ file_base_name — часть имени текущего файла (без расширения)
  • $ project_path — путь к каталогу текущего проекта
  • $ project_name — часть имени текущего проекта

Также доступен полный список поддерживаемых замен.

Группировка задач сборки

Некоторым разработчикам также нравится группировать задачи во внешнем сценарии bash (или его эквиваленте). Например, вот простой сценарий развертывания git-ftp, который вы можете использовать с Sublime, чтобы зафиксировать и отправить последние изменения с помощью git , а затем загрузить последние файлы на FTP.

Пример: фиксация, отправка и загрузка на FTP

deployment.sh:

 #! / Bin / bash
git add. && git commit -m 'deployment' && git push && git ftp init -u имя пользователя -p пароль - ftp: // host.example.com/public_html
 

Deploy.sublime-build:

 {
  "cmd": ["развертывание"],
  "рабочий_ каталог": "$ {путь_проекта: $ {папка}}"
}
 

Если вы раньше не использовали git-ftp, у Alex Fluger есть прочная статья об его использовании, которая может вас заинтересовать.

Платформы таргетинга:

Файлы сборки

Sublime также поддерживают указание данных конфигурации для конкретных платформ (а именно, OS X, Windows и Linux). Таргетинг на платформу можно легко выполнить, указав другой элемент в нашей конфигурации с именем платформы.например,

 {
    "cmd": ...
    ...

    "окна":
    {
        "cmd": ...
    },

    "osx":
    {
            "cmd": ...
    },

    "Linux":
    {
            "cmd": ...
    }
}
 

Файлы сборки для популярных интерфейсных инструментов

Чтобы помочь вам начать работу, я написал коллекцию файлов «.sublime-build» для некоторых интерфейсных инструментов, которые, как мне известно, веб-разработчики используют в эти дни ниже.

Большинство из них будут работать нормально без необходимости указывать путь , но если вы столкнетесь с проблемой с путями, попробуйте включить их в свою конфигурацию (например,g "путь": "/ usr / local / bin" ).

хрюкает:

 {
    «cmd»: [«ворчание», «--no-color»],
    "селектор": ["source.js", "source.less", "source.json"]
}
 

Скрипт сборки узла:

 {
    «cmd»: [«h5bp», «--no-color»],
    "селектор": ["source.js", "source.less", "source.json"]
}
 

CoffeeScript:

 {
    «cmd»: [«кофе», «- c», «$ file»],
    "selector": "source.coffee"
}
 

SASS:

 {
    "cmd": ["sass", "--watch", ".:. "],
    "рабочий_ каталог": "$ file_path",
    "селектор": ["source.scss", "source.sass"]
}
 

В то время как более подробная версия с автоматической минификацией и конфигурацией часов может быть написана:

 {
    «cmd»: [«sass», «--watch», «sass: таблицы стилей», «--style», «сжатый»],
    "working_dir": "$ project_path",
    "селектор": ["source.scss", "source.sass"]
}
 

МЕНЬШЕ:

 {
    "cmd": ["lessc", "-x", "$ file", "$ file_path / $ file_base_name.css", "--verbose"],
    "оболочка": правда,
    "селектор": "источник.css.less "
}
 

Стилус:

 {
    «cmd»: [«стилус», «$ файл»],
    "file_regex": ".",
    "селектор": "source.stylus"
}
 

(более полную версию можно найти в проекте LESS-build-sublime.)

Джейд:

 {
   «cmd»: [«cmd», «/ c», «jade», «$ file»],
   "selector": "source.jade"
}
 

r.js (Оптимизатор RequireJS):

 {
    «cmd»: [«узел», «r.js», «-o», «app.build.js»],
    "working_dir": "$ project_path",
    "селектор": "источник.[] * Файл 
 quot; (... *?) 
 quot ;, строка ([0-9] *) ",
     "селектор": "source.js"
}
 

Pandoc (разметка до HTML):

 {
    "cmd": ["pandoc", "-S", "-s", "-f", "markdown", "-t", "html", "-o", "$ file_base_name.html", " $ file "],
    "селектор": "text.html.markdown"
}
 

(и когда он выйдет, Yeoman):

 {
     "cmd": ["yeoman", "build", "--no-color"],
     «селектор»: [«source.js», «source.scss», «source.sass», «source.html "]
}
 

JS Намек:

Я полагаю, что большинство веб-разработчиков хотели бы запускать JSHint из более широкого процесса сборки, но если вы также хотите запустить его автономно через файл сборки Sublime, в пакете sublime-jshint есть файл сборки, который будет отлично работать с обоими OS X и Windows.

Файлы сборки для определенных языков программирования

Я также подумал, что пока мы изучаем файлы сборки, было бы полезно продемонстрировать, как их можно использовать для сборки / компиляции с некоторыми популярными языками программирования.Ошибка синтаксического анализа:. * В (. *?) В строке ([0-9] *) »,
"селектор": "source.php"
}

Java:

 {
    "cmd": ["javac", "$ file_name", "&&", "java", "$ file_base_name"],
    "working_dir": "$ {project_path: $ {folder}}",
    "селектор": "source.java",
    "оболочка": правда
}
 

.Net (Windows):

 {
    "cmd": ["% WINDIR% \ Microsoft. (... *?): ([0-9] *):? ([0-9] *) »,
    "селектор": "source.haskell"
}
 

Выводы

Системы сборки

Sublime великолепны и могут помочь вам избежать необходимости регулярно вручную переключаться между редактором и внешними инструментами сборки. Как вы, надеюсь, теперь узнали, создание ваших собственных систем сборки - это простой процесс, и я бы рекомендовал попробовать его, если Sublime окажется вашим предпочтительным редактором.

(Техническая проверка Синдре Сорхусом)

sublimetext3 - Как редактировать настройки сборки Sublime Text?

отредактировано

Мой первоначальный ответ работает, но есть гораздо лучший способ сделать это, создав свою собственную систему сборки.Именно этот вариант использования и есть функция.

Перейдите к Инструменты Система сборки Новая система сборки… (полностью внизу) и введите содержимое ниже. Сохраните как C ++ 11 Single File.sublime-build , и теперь он будет доступен в меню системы сборки. Выделите его, нажмите Ctrl B для построения, а затем нажмите Ctrl Shift B , чтобы запустить полученную программу.:] *): ([0-9] +):? ([0-9] +)?:? (. *) $ ",
"working_dir": "$ {file_path}",
"селектор": "source.c, source.c ++",

«варианты»:
[
{
"name": "Беги",
"cmd": ["$ {file_path} / $ {file_base_name}"]
},
{
"name": "Сборка и запуск",
"cmd": ["g ++ -std = gnu ++ 11 $ {file} -o $ {file_path} / $ {file_base_name} && $ {file_path} / $ {file_base_name}"],
"оболочка": правда
}
]
}

Если вам потребуется отредактировать его в будущем, файл находится в папке User пакета Packages .Каталог Packages открывается при выборе Preferences → Browse Packages… :

  • Linux: ~ / .config / sublime-text-3 / Пакеты или ~ / .config / sublime-text / Пакеты
  • OS X: ~ / Библиотека / Поддержка приложений / Sublime Text 3 / Пакеты или ~ / Библиотека / Поддержка приложений / Sublime Text / Пакеты
  • Windows Обычная установка: C: \ Users \ YourUserName \ AppData \ Roaming \ Sublime Text 3 \ Packages или C: \ Users \ YourUserName \ AppData \ Roaming \ Sublime Text \ Packages
  • Windows Portable Install: InstallationFolder \ Sublime Text 3 \ Data \ Packages InstallationFolder \ Sublime Text \ Data \ Packages

Точный путь зависит от версии и от того, обновились ли вы с Sublime Text 3.

Настройка Sublime Text для сборки вашего проекта — Sticky Bits

В течение многих лет в разработке встроенных программ доминировали сложные интегрированные среды разработки (IDE), которые скрывают все неприятные, беспорядочные детали типичного проекта встроенного программного обеспечения.

В последнее время, с быстрым ускорением внедрения гибких методов во встраиваемые системы, произошел переход от интегрированных сред разработки к меньшим, более простым и индивидуальным инструментам.Такие инструменты, как CMake, Rake и SCons, используются для управления конфигурациями сборки. Контейнерные средства, такие как Docker, предоставляют легкие среды для сборки и тестирования. И разработчики могут свободно использовать свой редактор кода по своему выбору (и давайте посмотрим правде в глаза: «лучший редактор» так же близок сердцу разработчика, как «стиль одной истинной скобки»)

И далее. И дальше.

Как следует из названия в этой статье, мы рассмотрим, как интегрировать редактор Sublime Text с инструментом сборки SCons, чтобы сделать разработку более элегантной и цельной.

Sublime Text

Нам нравится Sublime Text в Feabhas. Он прост в использовании, легко настраивается и содержит несколько очень полезных функций для разработки кода C / C ++.

Sublime Text является кроссплатформенным, и его можно загрузить здесь [www.sublimetext.com]

В этой короткой статье мы рассмотрим некоторую базовую конфигурацию Sublime Text для включения сборок (компиляции) в редактор.

Прежде, чем мы начнем

В этом примере у нас уже есть проект на C ++, созданный с использованием SCons (на данный момент наш предпочтительный инструмент для создания программного обеспечения).Содержание этого проекта неважно, но для справки оно выглядит так:

.
├── Отладка
├── SConscript
├── SConstruct
└── src
├── Event.cpp
├── Event.h
├── EventList.cpp
├── EventList.h
├── Filter.cpp
├── Filter.h
├── Pipe.cpp
├── Pipe.h
├── Pipeline.cpp
├── Pipeline.h
├── Buffer.h
└── main.cpp

 

Я могу запустить Sublime Text в качестве редактора, а затем перетащить корневую папку моего проекта на инструмент, что сделает все файлы в проекте видимыми.

Однако на данный момент мне нужно вернуться к командной строке для сборки проекта (не забывая сохранить все перед тем, как это сделать).

Было бы удобнее, если бы я мог строить прямо из Sublime Text. К счастью, в Sublime Text есть функция именно для этой цели.

Использование средства сборки Sublime Text

В меню Sublime Text Tools выберите Build System .

Вы заметите, что некоторые из них уже встроены; но не для SCons.

Давайте добавим.

Выберите вариант New Build System

Sublime Text создаст новый файл с именем untitled.sublime-build. Содержимое этого файла

 {
    "shell_cmd": "сделать"
} 

Таким образом, по умолчанию в вашем проекте запускается make. Мы обновляем этот файл, чтобы вместо этого вызывать SCons.

 {
    "shell_cmd": " scons "
} 

Сохраните файл как нечто значимое, например, scons.возвышенная сборка . (Обратите внимание, вы должны сохранить расширение .sublime-build )

Этот файл следует сохранить в папке Sublime Text ‘User Packages’ (расположение по умолчанию).

Для Sublime Text3 это следующие местоположения:

  • Windows:% APPDATA% \ Sublime Text 3 / Пользователь
  • OS X: ~ / Библиотека / Поддержка приложений / Sublime Text 3 / Пользовательский
  • Linux: ~ / .config / sublime-text-3 / Пользовательский

(Подробнее см. Здесь)

Во-первых, мы должны сделать наш новый скрипт сборки сборкой по умолчанию.В меню Tools выберите Build System , затем выберите свою недавно созданную сборку scons . Для удобства также рекомендуется выбрать опцию Сохранить все в сборке .

Выбираем файл SConstruct нашего проекта и выбираем Build results в нашем проекте, как мы и ожидаем. Успех!

Однако, если мы выберем исходный файл, сценарий сборки не сможет найти файл SConstruct .

Проблема здесь в том, что Sublime Text ищет файл SConstruct в любой текущей папке.

Мы можем решить эту проблему, добавив путь к файлу SConstruct в командный файл bulid.

 {
    "рабочий_ каталог": "/ Пользователи / glennan / workspace / Project /",
    "shell_cmd": "scons"
} 

( Очевидно, ваш путь будет другим )

Теперь проект будет строиться независимо от того, какой файл сейчас в фокусе.

Повышение гибкости с проектами Sublime Text

Вышеупомянутое работает нормально, но мы жестко запрограммировали путь сборки в Sublime Text для одного конкретного проекта. Это явно негибко, если нам нужно поддерживать несколько проектов кода.

Проект Sublime Text содержит конфигурацию редактора для вашего кода. Он состоит из двух файлов: файла .sublime-project , который содержит определения для конкретного проекта; и файл .sublime-workspace , который содержит пользовательские данные, такие как открытые файлы и модификации каждого из них.В этой статье мы рассмотрим только файл .sublime-project .

Мы можем добавить новый проект к существующей структуре кода, просто выбрав Project -> Save Project As…

Выберите корень своей структуры кода (тот же уровень, что и файл SConstruct , чтобы облегчить жизнь)

.
├── Отладка
├──  Project.sublime-project 
├──  Project.sublime-workspace 
├── SConscript
├── SConstruct
└── src 

(Примечание: модель .Файл sublime-workspace не будет отображаться в структуре папок проекта в Sublime Text; но это там)

Теперь у нас есть проект Sublime Text, и мы можем использовать некоторые системные переменные сборки. Мы можем отредактировать наш сценарий сборки следующим образом

 {
    "working_dir": "$ {project_path: $ {folder}}",
    "shell_cmd": "scons"
} 

Здесь говорится: установите рабочий каталог (для сборки) в папку, содержащую файл .sublime-project ; или же первая папка, открытая в текущем проекте.

Если у вас есть файл .sublime-project на том же уровне, что и ваш файл SConstruct , эта команда вызовет SCons с локальным файлом SConstruct . Теперь у нас есть один инструмент сборки, который может создавать несколько проектов.

На данный момент мы добавили глобальный инструмент сборки SCons, который может собрать любой проект Sublime Text с его файлом SConstruct в корневом каталоге проекта кода. Мы можем сделать это более гибким, добавив информацию о здании в файл проекта Sublime Text.

Файлы проекта

Sublime Text имеют формат JSON и поддерживают три раздела верхнего уровня:

  • папки, для входящих в комплект папок,
  • , настройки, для переопределения параметров файла и
  • build_systems , для систем сборки для конкретных проектов.

(В этой статье нас интересуют только настройки системы сборки. Более подробную информацию о параметрах конфигурации проекта можно найти здесь)

Вот наш файл проекта по умолчанию:

 {
  "папки":
  [
    {
      "дорожка": "."
    }
  ]
} 

Давайте добавим конфигурации сборки для этого конкретного проекта. Файл проекта редактируется следующим образом

 {
  "папки":
  [
    {
      "дорожка": "."
    }
  ],

  "build_systems":
  [
    {
      "name": "Местное",
      "working_dir": "$ {project_path: $ {folder}}",
      "shell_cmd": "scons"
    },

    {
      "name": "Докер",
      "shell_cmd": "docker run --rm -v $ {project_path}: / usr / project feabhas / gcc7-scons: 1.0"
    }
  ]
} 

ВАЖНО:

Не забудьте поставить запятую между разделами «папки» и «build_systems», иначе вы получите бесполезную ошибку (или ничего!).

В этом примере я добавил две конфигурации сборки: «Локальная» использует набор инструментов компилятора, указанный в локальном файле SConstruct (как и ранее).Вторая конфигурация, «Docker», компилирует код проекта в контейнер Docker (дополнительную информацию о контейнерах Docker см. В нашей статье здесь)

Новые конфигурации сборки теперь добавлены в меню инструментов :

Поздравляем! Теперь вы можете собрать свой проект (из его файла SConstruct ) непосредственно из Sublime Text.

Счастливого строительства!

Гленнан — инженер по встроенным системам и программному обеспечению с более чем 20-летним опытом работы, в основном в системах с высоким уровнем интеграции для оборонной и аэрокосмической промышленности.

Он специализируется на C ++, UML, моделировании программного обеспечения, системном проектировании и разработке процессов.

Последние сообщения от Glennan Carnie (посмотреть все)

Гленнан — инженер по встроенным системам и программному обеспечению с более чем 20-летним опытом работы, в основном в системах с высоким уровнем интеграции для оборонной и аэрокосмической промышленности.

Он специализируется на C ++, UML, моделировании программного обеспечения, системном проектировании и разработке процессов.

Sublime Text 4 Сборка 4121

Разван Сереа
Репортер
Neowin
·

Sublime Text — кроссплатформенный редактор исходного кода.Он изначально поддерживает множество языков программирования и языков разметки, а его функциональные возможности могут быть расширены пользователями с помощью плагинов, обычно создаваемых сообществом и поддерживаемых в рамках лицензий на бесплатное программное обеспечение. Sublime Text построен из пользовательских компонентов, что обеспечивает непревзойденную скорость отклика. От мощного настраиваемого кроссплатформенного инструментария пользовательского интерфейса до непревзойденного механизма подсветки синтаксиса — Sublime Text устанавливает планку производительности. Sublime Text доступен для Mac, Windows и Linux.

Sublime Text 4, сборка 4121, основные моменты выпуска:

  • Новое диалоговое окно обновления, в котором отображаются версии, статус лицензии и ссылки на журнал изменений
  • Различные улучшения подсветки синтаксиса
  • Используйте символ перехода для перехода к определенным файлам в результатах поиска
  • Улучшенный пользовательский интерфейс выбора цветовой схемы / темы
  • Макет больше не запоминается, когда «hot_exit» отключен.Вы можете изменить это, используя «Remember_layout»
  • Правое удаление теперь учитывает параметр use_tab_stops
  • Различные улучшения поведения движущихся листов при изменении макета окна
  • Улучшена производительность рендеринга мини-различий и пробелов под OpenGL
  • Повышена производительность при чтении больших файлов из стандартного ввода
  • Исправлена ​​замена регулярного выражения, не работающая в последнем случае при использовании ретроспективного анализа
  • Исправлен «save_on_focus_lost», который не работал должным образом в диалоговом окне перезагрузки.
  • Исправлены открытые файлы, которые не добавлялись в список последних файлов, когда «hot_exit» отключен.
  • Исправлено завершение фрагмента без соблюдения границ слов
  • Исправлено дополнительное пустое окно, открывающееся при запуске в некоторых случаях
  • Исправлен некорректный выход после приглашения, когда «hot_exit» отключен.
  • Исправлено неожиданное закрытие окна, когда в проекте нет добавленных папок и включен параметр «close_windows_when_empty».
  • Фиксированный стек выбора вкладок в некоторых случаях не обновляется должным образом
  • Исправлены переходные листы, сохраняющиеся при выходе из goto-something
  • Исправлена ​​ошибка, при которой ширина подчеркивания волнистой линией не масштабируется должным образом
  • Неподвижная подсветка линии не работает при отключенном желобе
  • Исправлен случай, когда папки добавлялись в существующие окна вместо открытия в новом окне
  • Исправлено снижение производительности под Windows с нецелым масштабированием DPI
  • Исправлена ​​проблема производительности, связанная с возвратом подсветки синтаксиса
  • Стек отмены теперь очищается при чтении из стандартного ввода
  • Добавлено выделение> Развернуть выделение до блока, которое имеет то же поведение, что и при расширении выделения до абзаца ранее
  • «open_files_in_new_window» теперь учитывается при чтении из стандартного ввода
  • Добавлены параметры «find_scroll_highlights_limit», «find_highlight_matches_max_size» и «find_regex_highlight_matches_max_size», позволяющие настраивать пределы поиска.
  • Добавлено обнаружение и нормализация новой строки при программном изменении настроек
  • Элементы меню Sublime Merge скрыты, если для параметра sublime_merge_path установлено значение null
  • Исправлен неправильный путь, который иногда использовался при просмотре истории файлов в Sublime Merge
  • Исправлена ​​потеря фокуса при закрытии выбранной группы при уменьшении количества групп
  • Параметры отступа для файла теперь сохраняются после перезапуска
  • Исправлены некоторые крайние случаи, связанные с «find_in_files_max_result_size»
  • Исправлено завершение на панели ввода, не использующее доступное пространство окна
  • Исправлено раскрытие выделения, чтобы тег не работал в XML
  • Исправлен текущий переходный лист, неожиданно закрывающийся при использовании goto-something
  • Исправлен сбой, связанный с возвратом синтаксиса и фантомами
  • Исправлена ​​невозможность открыть более одного нового пустого окна
  • Linux: Сделайте выбор после вставки средней кнопкой мыши в соответствии с другими приложениями
  • Linux: исправлено состояние гонки с несколькими одновременными вызовами командной строки
  • Linux: исправлен настраиваемый цвет метки строки заголовка для некоторых тем GTK
  • Windows: исправлен случай потери сеанса при обновлении
  • .

  • Windows: исправлено удаление альтернативных потоков данных NTFS при сохранении
  • Windows: исправлено медленное создание окна при использовании OpenGL
  • .

  • Windows: исправлен неправильный регистр, используемый при открытии файлов из поиска в файлах с включенным gitignore
  • Windows: исправлена ​​гонка выходных данных stdout / stderr при сборке
  • Windows: исправлено зависание модальных диалогов при открытом контекстном меню
  • Mac: изменено поведение перетаскивания текста с учетом NSDragAndDropTextDelay
  • Mac: параметр use_find_clipboard может использоваться для отключения глобальной интеграции с буфером обмена поиска.
  • Mac: исправлена ​​ошибка, из-за которой двойной щелчок не работал в верхней части окна в полноэкранном режиме с настраиваемой строкой заголовка.
  • Mac: исправлено некорректное сообщение об успешном ключевом событии, когда команда не была найдена.
  • Mac: исправлена ​​ошибка, из-за которой окна не восстанавливались должным образом с настройками нескольких мониторов
  • Mac: исправлена ​​проблема макета окна с собственными вкладками при выходе из полноэкранного режима
  • Mac: исправлено, что текст в строке заголовка не исчезает, когда не в фокусе
  • Mac: исправлено чтение stdin, не работающее, когда ни одно окно не открыто
  • API: исправлены всплывающие окна плагинов, иногда неправильно размещенные
  • API: исправлена ​​ошибка, из-за которой плагины не загружались, когда файл.файл версии python находится в пользовательском пакете
  • API: добавлен Buffer.clear_undo_stack ()
  • API: исправлена ​​ошибка, из-за которой View.show и View.show_at_center не работали из обратного вызова on_load

Скачать: Sublime Text 4 Build 4121 | Портативный | ~ 30,0 МБ (условно-бесплатная)
Ссылки: Домашняя страница Sublime Text | Скачать для других операционных систем

Получайте уведомления обо всех обновлениях нашего программного обеспечения в Twitter: @NeowinSoftware

Сообщить о проблеме со статьей

Следуйте @NeowinFeed

Следующая статья

GlassWire 2.3,359

Предыдущая статья

Affinity Suite 1.10.3 (дизайнер, фото, издатель)

Sublime Text build 4121: SublimeText

  • Новое диалоговое окно обновления, в котором отображаются версии, статус лицензии и ссылки на журнал изменений

  • Различные улучшения подсветки синтаксиса

  • Использование символа перехода для перехода к определенным файлам в результатах поиска

  • Улучшенный пользовательский интерфейс выбора цветовой схемы / темы

  • Макет больше не запоминается, когда "hot_exit" отключен.Вы можете изменить это с помощью «Remember_layout»

  • Правое удаление теперь соответствует настройке «use_tab_stops»

  • Различные улучшения поведения движущихся листов при изменении макета окна

  • Улучшенный мини-дифференциал и белый производительность рендеринга пространства под OpenGL

  • Повышена производительность при чтении больших файлов из стандартного ввода

  • Исправлена ​​замена регулярного выражения, не работающая при последнем появлении при использовании ретроспективы

  • Исправлено «save_on_focus_lost» не работает должным образом с диалоговое окно перезагрузки

  • Исправлены открытые файлы, которые не добавлялись в список последних файлов, когда "hot_exit" отключен

  • Исправлено завершение фрагмента без соблюдения границ слов

  • Исправлено дополнительное пустое окно, открывающееся при запуске в некоторых случаях

  • Исправлен некорректный выход g после приглашения, когда "hot_exit" отключен

  • Исправлено неожиданное закрытие окна, когда в проекте нет добавленных папок и "close_windows_when_empty" включен

  • Стек выбора фиксированных вкладок не обновляется должным образом в некоторых случаях

  • Фиксированные переходные листы, сохраняющиеся при выходе из goto-something

  • Фиксированная ширина подчеркивания волнистой линии не масштабируется должным образом

  • Фиксированная подсветка линии не работает, когда желоб отключен

  • Фиксированный случай, когда папки добавлялись к существующим windows вместо открытия в новом окне

  • Исправлено снижение производительности под Windows с нецелочисленным масштабированием DPI

  • Исправлено выделение синтаксиса, связанное с производительностью, связанной с обратным отслеживанием

  • Стек отмены теперь очищается при чтении из стандартного ввода

  • Добавлено Selec ция> Развернуть выделение до блока , который имеет то же поведение, что и Расширить выделение до абзаца раньше имел

  • "open_files_in_new_window" теперь учитывается при чтении из стандартного ввода

  • Добавлено "find_scroll_highlights_limit" find_highlight_matches_max_size « и " find_regex_highlight_matches_max_size "Параметры , позволяющие настраивать пределы поиска

  • Добавлены обнаружение новой строки и нормализация при изменении настроек программным способом

  • Sublime Merge » Sublime Merge «элементы меню скрыты при установке подпути _lime.

  • Исправлен неправильный путь, который иногда использовался при просмотре истории файлов в Sublime Merge

  • Фиксированная потеря фокуса при закрытии выбранной группы при уменьшении количества групп

  • Параметры отступа для файла теперь сохраняются выполняется при перезапусках

  • Исправлены некоторые крайние случаи, связанные с "find_in_files_max_result_size"

  • Исправлено завершение на панели ввода, не использующее доступное пространство окна

  • Исправлено выделение расширения, чтобы тег не работал в XML

  • Исправлено текущий переходный лист неожиданно закрывается при использовании goto-something

  • Исправлен сбой, связанный с возвратом синтаксиса и фантомами

  • Исправлена ​​невозможность открыть более одного нового пустого окна

  • Linux: Сделать выбор после вставки средней кнопкой мыши совместим с другими приложениями

  • Linux: Исправлено состояние гонки с несколькими одновременными вызовами командной строки

  • Linux: Исправлен настраиваемый цвет метки строки заголовка для некоторых тем GTK

  • Windows: Исправлен случай, когда сеанс мог быть потерян, когда модернизация

  • Ветер ows: Исправлено удаление альтернативных потоков данных NTFS при сохранении

  • Windows: Исправлено медленное создание окна при использовании OpenGL

  • Windows: Исправлен неправильный регистр, используемый при открытии файлов из файлов find-in с включенным gitignore

  • Windows: исправлена ​​гонка выходных данных stdout / stderr при сборке

  • Windows: исправлено зависание модальных диалоговых окон при открытом контекстном меню

  • Mac: изменено поведение перетаскивания текста с учетом NSDragAndDropTextDelay

  • Mac: установка «use_find_clipboard» может использоваться для отключения глобальной интеграции буфера обмена поиска

  • Mac: исправлен двойной щелчок, не работающий в верхней части окна в полноэкранном режиме с настраиваемой строкой заголовка

  • Mac: исправлены неверные отчеты успешное ключевое событие, когда команда не была найдена

  • Mac: исправлено неправильное восстановление окон с помощью multi-m Настройки onitor

  • Mac: исправлена ​​проблема с макетом окна с собственными вкладками при выходе из полноэкранного режима

  • Mac: исправлено, что текст строки заголовка не исчезает, когда не в фокусе

  • Mac: исправлено чтение стандартного ввода, не работающего, когда нет окон open

  • API: Исправлены всплывающие окна с плагинами, иногда неправильно размещавшиеся

  • API: Исправлены плагины, которые не загружались, когда файл .Файл python-version находится в пользовательском пакете

  • API: добавлен Buffer.clear_undo_stack ()

  • API: исправлено View.show и View.show_at_center не работает с on_load callback

  • Настройка Sublime Text для предварительного просмотра вашего кода в веб-браузере

    Допустим, вы кодируете HTML в Sublime Text и хотите проверить, как он выглядит в браузере. Некоторые текстовые редакторы (например, BBEdit) имеют функцию, позволяющую открывать страницу в браузере, но Sublime Text - нет.Вот как это сделать в Sublime Text.

    Установите инструмент выбора браузера

    Поскольку вы веб-разработчик, вы собираетесь (а) иметь более одного веб-браузера на вашем компьютере и (б) хотите протестировать свою работу в более чем одном браузере. Чтобы облегчить себе жизнь, вам нужно установить инструмент выбора браузера. В моей книге Mac OS X Snow Leopard для опытных пользователей я объяснил это так:

    У меня на Mac всегда есть несколько веб-браузеров, и я люблю переключаться между ними.На самом деле, иногда я нажимаю ссылку и хочу открыть ее в Safari, потому что я хочу распечатать страницу и считаю, что Safari делает это лучше, чем любой другой браузер, но через несколько минут я нажимаю ссылку и хочу открыть его в Firefox, потому что у меня этот браузер настроен для загрузки музыки и фильмов. В Mac OS X, как и в Windows и Linux, я могу указать браузер по умолчанию для моей системы, но этот браузер используется для всего. Было бы неплохо, если бы я мог выбирать между браузерами "на лету" по мере необходимости?

    С помощью инструмента выбора браузера вы можете! Вот мои рекомендации:

    • Mac OS X: Раньше я действительно любил Choosy, но со времен Mountain Lion он сломался.Итак, теперь я использую MultiBrowser. Это не так гладко, но работает с Mountain Lion, и это бесплатно (хотя я был счастлив заплатить 12 долларов за Choosy)
    • Windows: Я никогда не использовал его, но похоже, что вам нужен Browser Chooser.

    Установите их, настройте для распознавания веб-браузеров на вашем компьютере (Firefox, Chrome, Opera, Safari и IE, если вы используете Windows) и установите их в качестве веб-браузера по умолчанию на вашем компьютере. Как вы это сделаете, зависит от вашей ОС:

    • Mac OS X: откройте Safari и выберите Safari> Настройки> Общие.В качестве веб-браузера по умолчанию выберите MultiBrowser.
    • Windows: щелкните меню «Пуск» (или его эквивалент) и введите «Установить программы по умолчанию» в поле поиска. В появившемся окне выберите Browser Chooser, а затем нажмите Set This Program As Default.

    Метод 1. Установите подключаемый модуль «Просмотр в браузере»

    Это самый простой способ, но я не смог заставить его работать на моем Mac. Обратите внимание: я предполагаю, что вы установили расширение Package Control для Sublime Text.

    1. Нажмите Command-Shift-P (если вы используете Mac) и Ctrl-Shift-P (если вы используете Windows), чтобы открыть палитру команд.

    2. Введите Install Package , пока не увидите, что выбран «Package Control: Install Package». Нажмите Ввод.

    3. В текстовом поле начните вводить Просмотр в браузере , пока этот пакет не будет выбран. Как только это произойдет, нажмите Enter, чтобы установить его.

    4. Перезапустить Sublime Text.

    Теперь, когда у вас открыта веб-страница в Sublime Text, просто нажмите Ctrl-Alt-V, и в вашем браузере должен открыться инструмент выбора, позволяющий вам выбрать, какой браузер открыть.

    Подробнее о пакете «Просмотр в браузере» можно прочитать на GitHub.

    Метод 2: Создание системы сборки

    Это немного больше работы, но вы также получаете больший контроль.

    1. В Sublime Text перейдите в Инструменты> Система сборки> Новая система сборки. В Sublime Text откроется новая вкладка с именем untitled.sublime-build со следующим текстом в ней 1 :

        {
          "cmd": ["make"]
      }
        
    2. Если вы используете Mac, замените его следующим:

        {
          «cmd»: [«открыть», «-a», «/ Applications / MultiBrowser.app "," $ file "]
      }
        

      Если вы используете Windows, замените его следующим:

        {
          "cmd": ["C: \ Program Files \", "$ file"]
      }
        
    3. Сохраните файл. Назовите его . Выберите Browser.sublime-build . Sublime Text должен быть достаточно умным, чтобы поместить его в нужное вам место, но если это не так, сохраните его в следующих местах:

      • Mac OS X: ~ / Библиотека / Поддержка приложений / Sublime Text 2 / Пакеты / Пользовательский
      • Окна:
    4. Перезапустить Sublime Text.

    Теперь, когда вы хотите предварительно просмотреть свою работу в Sublime Text в веб-браузере, выполните одно из следующих действий:

    • Инструменты> Сборка
    • Нажмите Command-B (Mac) 2 или Ctrl-B (Windows)

    Ваш инструмент выбора браузера должен открыться, позволяя выбрать браузер, в котором вы хотите видеть свою веб-страницу.

    Вы можете узнать больше о Build Systems on Sublime Text на http://www.sublimetext.com/docs/build.

    Консоль

    JavaScript в Sublime Text

    Опубликован: | 2 минуты на прочтение

    Изучение JavaScript может оказаться долгим и трудным путешествием. Вы можете читать множество книг и статей, посещать авторитетные конференции и смотреть множество видео, но вы зря тратите время, если не будете практиковать это. Консоль Google Chrome Javascript, безусловно, не самый удобный инструмент. Такие инструменты, как jsbin.com или jsfiddle.net, очень крутые, но позвольте подтвердить, что нет ничего удобнее для написания фрагмента кода, чем ваш любимый редактор. Позвольте мне поделиться с вами, как вы можете протестировать свои сценарии JavaScript и выполнить их с помощью функции систем сборки в Sublime Text 3.

    Build systems позволяет запускать ваши файлы через внешние программы без ручного переключения между редактором кода и Терминалом. Sublime Text имеет несколько предустановленных профилей.

    Наша миссия - добавить новый для JavaScript. Мы собираемся использовать node.js. Убедитесь, что он уже установлен на вашем устройстве.

    Создание системы сборки JavaScript в Sublime Text #

    Каждая построенная система описана в файле JSON с расширением .sublime-build .Чтобы создать новую, выберите Инструменты> Система сборки> Новая система сборки & mldr; Если вы пользователь Mac OS, скопируйте и вставьте этот фрагмент кода:

      {
      "cmd": ["/ usr / local / bin / node", "$ file"],
      "селектор": "source.js"
    }
      

    Пользователи Windows & mldr;

      {
      "cmd": ["C: / Program Files / nodejs / node.exe", "$ file"],
      "селектор": "source.js"
    }
      

    В большинстве случаев одна команда node выполняет задание вместо передачи полного пути к узлу.Однако я нашел этот метод более надежным. Если вы не уверены, где установлен узел, просто введите , какой узел в Терминале (Mac OS) или , где узел в командной строке (пользователи Windows), чтобы получить путь.

    Сохраните этот файл как JavaScript.sublime-build в каталоге «Пользователь» внутри папки настроек Sublime Text.

    Время для веселой части. Создайте и сохраните файл JavaScript (чтобы запустить интерпретатор узла, файл должен быть сохранен), напишите какой-нибудь потрясающий скрипт и нажмите Cmd + B (Mac OS) или F7 (Windows).Эту задачу можно запустить вручную, выбрав Инструменты> Сборка. Sublime Text должен автоматически запускать ваш скрипт через соответствующую систему сборки. Если что-то не работает, перейдите в Инструменты> Сборка системы и убедитесь, что выбран параметр Автоматически или JavaScript. Наслаждаться!

    Оставить комментарий

    .

    Добавить комментарий

    Ваш адрес email не будет опубликован.