Entonces, principalmente pregunto sobre temas aquí. Cuando hice un tema local personalizado, simplemente entré, cambié CSS/HTML e hice clic en guardar. Bueno, ahora alojo mi tema personalizado en GitHub, pero es muy molesto que para cualquier pequeño cambio que quiera hacer, tengo que hacerlo, enviarlo a GitHub, luego actualizar mi tema en el panel de administración solo para ver los cambios más pequeños que estoy haciendo. ¿Hay alguna forma más fácil?
Echa un vistazo a la CLI de temas de Discourse. Te permite “observar” un directorio en busca de cambios y aplicarlos automáticamente.
Ok, ejecuté todos los comandos y mi PowerShell me dice:
» Observando cambios en C:/Users/User/Documents/SiteStuff/discourse-air-theme...
Por favor, añade lo siguiente a tu Gemfile para evitar sondeos de cambios:
gem 'wdm', '>= 0.1.0' if Gem.win_platform?
Así que supongo que lo hice bien, ¿verdad? Mi pregunta principal ahora es: ¿Tengo que mantener PowerShell abierto para que monitoree esos cambios? Si es así, ¿puedo hacer de alguna manera un contenedor Docker para que se ejecute en mi PC con Windows? Además, ¿dónde está mi archivo gem para poder añadirle esa línea gem 'wdm', '>= 0.1.0' if Gem.win_platform??
Ok, encontré algunos archivos de origen de Gemspec en:
C:\Users\User\.local\share\gem\specs\index.rubygems.org%443\quick\Marshal.4.8\
Pero cuando los abro en Notepad o Visual Studio Code, son caracteres extraños (galimatías). ¿Quizás estos no son los archivos correctos?
EDIT: Ok, encontré más aquí:
C:\\Ruby33-x64\\lib\\ruby\\gems\\3.3.0\\gems\\discourse_theme-2.1.0
Sí veo un Gemfile que dice:
# frozen_string_literal: true
source "https://rubygems.org"
git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }
# Specify your gem's dependencies in discourse_theme.gemspec
gemspec
¿Lo pongo aquí en algún lugar? También hay un archivo “discourse_theme.gemspec” que no son galimatías, que tiene esto:
# 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
¿Es este? Solo necesito saber dónde poner gem 'wdm', '>= 0.1.0' if Gem.win_platform?