Comments (12)
I totally forgot that you could use gulp to achieve this: https://www.npmjs.com/package/gulp-css-purge
from css-purge.
Hey Tyler, not at the moment but I'll consider this as a future feature, thanks for the input.
from css-purge.
Man was just looking for the exact same thing
from css-purge.
So this will process each file individually if you remove the .pipe(concat('main.css'))
var gulp = require('gulp'),
concat = require('gulp-concat'),
purge = require('gulp-css-purge');
gulp.task('default', function() {
return gulp
.src(['./**/*.css']) //input css
.pipe(concat('main.css')) //merge into single css file - remove if you want to process output into separate files
.pipe(purge({
trim : true,
shorten : true,
verbose : true
}))
.pipe(gulp.dest('build/css')) //output folder
});
from css-purge.
used wrong github account up there
I actually went the long way around and exported a third css file with the common selectors to be removed. This was my solution using grunt-postcss:
(() => {
let duplicateStyles = [];
try {
// Strip selectors from file
const file = fs.readFileSync(__dirname +
'/static/css/duplicated_styles.css', 'utf8');
duplicateStyles = file.match(/\.(\.|\w|-|\d|\s)+(?=\{)/g);
} catch (err) {
console.warn(err);
}
const options = {rulesToRemove: duplicateStyles, map: false};
return require('css-byebye')(options)
})()
This was all because the library I have to use exports 50kb of selectors with the required variables making it difficult to export 2 css files.
I might go back to what you've just suggested. Thanks!
from css-purge.
Sorry about that, there is a grunt version of the plugin if that helps: https://github.com/dominikwilkowski/grunt-css-purge
from css-purge.
Oh wait, sorry guys, read your original comment again, it won't remove B from A, just process A and B separately, removing their own duplicates if any from themselves. So it does A reduced and B reduced instead of what you requested A - B = A reduced and B. Please correct me if I'm wrong here.
from css-purge.
Any solution to the original problem yet? Removing duplicates across multiple files ?
from css-purge.
I am also interested in this functionality. Are there any updates?
from css-purge.
hey guys, sorry been really busy these past few months, recovered from the flu too, I'll try my best to take a look at things in the coming weekends
from css-purge.
Hi guys, same problem here... found this thing, maybe it helps (not tried yet, though): postcss-discard
They say:
Diffing stylesheets
postcss(discard({css: 'STYLES TO BE REMOVED'})).process('ORIGINAL CSS').css;
from css-purge.
Reopening, because i'm still searching for a feature like this. @AndrewEQ Any updates?
from css-purge.
Related Issues (20)
- css-purge not removing duplicated css styles HOT 1
- Wrong styles removed HOT 1
- Add short names option
- SyntaxError: Unexpected end of JSON input HOT 1
- bug: removing used code
- bug: the line that's after one with "important" is missed
- Feature Request: support stdin / stdout
- Output includes unwanted selectors
- [Bug] Inside config file, `reduce_declarations_file_location` has no effect
- Wrong file size after and saved HOT 1
- Is there an ES6 Modules (ESM) version of CSS Purge
- After purge, all the hover styles are removed.
- Handle/output CSS files with CRLF eol HOT 2
- Output multiple blank lines
- Is there a way to purge media queries of duplicated rules?
- Empty Rules With Border-Radius And Calc Function
- Can we stop using proccess.exit(1)?
- DOMException [SyntaxError]: 'undefined' is not a valid selector
- Invalid CSS Syntax after purge
- Module Not Found Error After Installing
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from css-purge.