Skip to content
Snippets Groups Projects
Commit d8a7e9a3 authored by Taddeüs Kroes's avatar Taddeüs Kroes
Browse files

Updated README and upgraded source to latest compiler version

parent 52324c62
No related branches found
No related tags found
No related merge requests found
......@@ -45,7 +45,8 @@ Generation of shorthand properties
font-family: sans-serif; |
Any existing shorthands are first unfolded into their non-shorthand
counterparts, after which the last value is used for shorthand generation:
counterparts to be folded back later. This means that if `--duplicates` is
enabled, the last value is used for shorthand generation, merging separate :
font: normal 12px/15px sans-serif; | font: bold 12px/15px sans-serif;
font-weight: bold; |
......@@ -72,7 +73,7 @@ Command-line interface
======================
Output of `mincss -h`:
Usage: ./mincss [<options>] [<file> ...]
Usage: mincss [<options>] [<file> ...]
Generic options:
-h, --help Show this help message
......@@ -80,16 +81,16 @@ Output of `mincss -h`:
-o <file> Output file (defaults to stdout)
<file> ... Input files (default is to read from stdin)
Optimization flags (if none are specified, all are enabled):
Optimization flags (default is -w -c -s -d):
-w, --whitespace Eliminate unnecessary whitespaces (has the greatest effect, omit for pretty-printing)
-c, --simple Shorten colors and font weights
-c, --simple Shorten colors, font weights and nth-child
-s, --shorthands Generate shorthand properties
-d, --duplicates Prune duplicate properties (WARNING: may affect cross-browser hacks)
-p, --pretty Shorthand for -c -s -d
-e, --echo Just parse and pretty-print, no optimizations
Formatting options:
--sort Sort declarations in each selector group
-r, --sort Sort declarations in each ruleset (always on when --shorthands is enabled)
-e, --echo Just parse and pretty-print, no optimizations
Building mincss
......@@ -100,15 +101,22 @@ Dependencies are [OCaml](https://ocaml.org/docs/install.html) 4.0 and
Bootstrapping on a Debian system can be done as follows:
$ sudo apt-get install ocaml opam git
$ opam init
$ opam switch 4.01.0
$ opam install menhir
$ sudo apt-get install ocaml menhir git
$ git clone git@github.com:taddeus/mincss.git
$ cd mincss
$ make
$ ./mincss --help
I prefer to use [Opam](https://opam.ocaml.org/) myself because it offers more
flexibility:
$ sudo apt-get install opam
$ opam init
$ eval `opam config env`
$ opam switch 4.02.0
$ opam update
$ opam install menhir
TODO / bugs
===========
......
......@@ -20,7 +20,7 @@ let rec filter_none = function
let input_all ic =
let n = in_channel_length ic in
let buf = String.create n in
let buf = Bytes.create n in
really_input ic buf 0 n;
close_in ic;
buf
......@@ -32,11 +32,11 @@ let input_buffered ic chunksize =
| nread when nread = bufsize - pos ->
let bufsize = bufsize + chunksize in
let pos = pos + nread in
read_all (buf ^ String.create chunksize) bufsize pos
read_all (buf ^ Bytes.create chunksize) bufsize pos
| nread ->
read_all buf bufsize (pos + nread)
in
read_all (String.create chunksize) chunksize 0
read_all (Bytes.create chunksize) chunksize 0
(** Error printing *)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment