Итак, вопрос в основном о темах. Когда я создавал локальную пользовательскую тему, я просто заходил, менял CSS/HTML и нажимал «Сохранить». Теперь же я размещаю свою тему на GitHub, но это невероятно утомительно: для любого, даже самого мелкого изменения мне нужно внести правку, отправить её в GitHub, а затем обновить тему в панели администратора, чтобы увидеть результат. Есть ли какой-то более простой способ?
Ознакомьтесь с утилитой командной строки Discourse Theme CLI. Она позволяет «отслеживать» изменения в каталоге и автоматически применять их.
Хорошо, я выполнил все команды, и PowerShell выдает следующее:
» Отслеживание изменений в C:/Users/User/Documents/SiteStuff/discourse-air-theme...
Пожалуйста, добавьте следующее в ваш Gemfile, чтобы избежать опроса изменений:
gem 'wdm', '>= 0.1.0' if Gem.win_platform?
Так что, я полагаю, я всё сделал правильно? Теперь мой главный вопрос: обязательно ли держать PowerShell открытым для отслеживания этих изменений? Если да, можно ли как-то создать Docker-контейнер для этого, чтобы он работал на моём ПК с Windows? Также, где именно находится мой файл Gemfile, чтобы я мог добавить туда строку gem 'wdm', '>= 0.1.0' if Gem.win_platform??
Хорошо, я нашёл некоторые файлы Gemspec по адресу:
C:\Users\User.local\share\gem\specs\index.rubygems.org%443\quick\Marshal.4.8
Но когда я открываю их в Блокноте или Visual Studio Code, там отображаются посторонние символы (бессмыслица). Возможно, это не те файлы?
РЕДАКТИРОВАНИЕ: Хорошо, нашёл ещё кое-что здесь:
C:\Ruby33-x64\lib\ruby\gems\3.3.0\gems\discourse_theme-2.1.0
Я вижу файл Gemfile со следующим содержимым:
# frozen_string_literal: true
source "https://rubygems.org"
git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }
# Укажите зависимости вашего gem в файле discourse_theme.gemspec
gemspec
Мне нужно добавить что-то сюда? Также есть файл “discourse_theme.gemspec”, который не содержит бессмыслицы, и в нём написано:
# frozen_string_literal: true
lib = File.expand_path("../lib", __FILE__)
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
require "discourse_theme/version"
Gem::Specification.new do |spec|
spec.name = "discourse_theme"
spec.version = DiscourseTheme::VERSION
spec.authors = ["Sam Saffron"]
spec.email = ["sam.saffron@gmail.com"]
spec.summary = "CLI helper for creating Discourse themes"
spec.description = "CLI helper for creating Discourse themes"
spec.homepage = "https://github.com/discourse/discourse_theme"
spec.license = "MIT"
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
spec.bindir = "bin"
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
spec.require_paths = ["lib"]
spec.required_ruby_version = ">= 3.0.0"
spec.add_runtime_dependency "minitar", "~> 0.6"
spec.add_runtime_dependency "listen", "~> 3.1"
spec.add_runtime_dependency "multipart-post", "~> 2.0"
spec.add_runtime_dependency "tty-prompt", "~> 0.18"
spec.add_runtime_dependency "rubyzip", "~> 2.3"
spec.add_runtime_dependency "selenium-webdriver", "> 4.11"
spec.add_development_dependency "bundler"
spec.add_development_dependency "rake"
spec.add_development_dependency "minitest"
spec.add_development_dependency "guard"
spec.add_development_dependency "guard-minitest"
spec.add_development_dependency "webmock"
spec.add_development_dependency "rubocop-discourse", "~> 3.6.0"
spec.add_development_dependency "m"
spec.add_development_dependency "syntax_tree"
spec.add_development_dependency "mocha"
end
Это тот файл? Мне просто нужно знать, куда добавить gem 'wdm', '>= 0.1.0' if Gem.win_platform?.