Utilizzando sprite generate dalla bussola a Middleman, come tralasciare i file di origine sprite dalla build?

StackOverflow https://stackoverflow.com/questions/9339024

  •  27-10-2019
  •  | 
  •  

Domanda

Usando Middleman 2.0.14, utilizzo le funzionalità della bussola per generare alcuni sprite nel mio file CSS con:

@import "companies/*.png";
@include all-companies-sprites;

Questo prende tutti i file da source/images/companies/*.png e genera un singolo file sprite source/images/companies-s45e421528f.png. Fin qui tutto bene.

Quando faccio un middleman build, copia diligentemente sul file di immagine generato, ma include anche il companies/*.png File.

Non è un grosso problema che uno script di distribuzione rimuova questi file extra, ma mi chiedo se ci sia un'opzione che mi manca da qualche parte? (O forse il "quasi pronto a rilasciare mm 3.x" ha una soluzione?) Forse dovrei mettere il companies/*.png file da qualche altra parte nell'albero di origine?

È stato utile?

Soluzione

Suggerisco di ripulirli con una sceneggiatura (o un after_build gancio). Questo è il comportamento predefinito della bussola, per generare immagini in modalità di sviluppo e richiederebbe un po 'di patch di scimmia da modificare (per ora, la beta della bussola ha accesso diretto a queste opzioni).

In 3.0, potresti provare:

configure :build do
  ignore "source/images/companies/*.png"
end

Ma non sono sicuro che Compass non lo soffocerebbe.

Altri suggerimenti

Usando ignore rallentato significativamente la build per me, quindi ho preferito mettere fuori le risorse sprite source/.

In questo modo, gli sprite sono generati sotto source/sprites/, build/sprites e le fonti sono escluse senza ignoreing.

Ecco come impostare questo:

# config.rb

compass_config do |config|
    # tell Compass to load sprites from `project_root/sprites`
    config.sprite_load_path = 
      config.sprite_load_path
      .to_a
      .push(File.join root, 'sprites')
end 
# style.css.scss

@import "..sprites/companies/*.png";
@include all-companies-sprites;
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top