From b257bbcf7825c69fc3a6d00cf825e4c250f85031 Mon Sep 17 00:00:00 2001 From: InigoGutierrez Date: Mon, 18 May 2020 23:53:31 +0200 Subject: mapGen.sh now can read from stdin. --- mapGen/README.md | 32 +++++++++++++++++++++----------- 1 file changed, 21 insertions(+), 11 deletions(-) (limited to 'mapGen/README.md') diff --git a/mapGen/README.md b/mapGen/README.md index c64a940..3af03f0 100644 --- a/mapGen/README.md +++ b/mapGen/README.md @@ -1,6 +1,6 @@ # mapGen.sh -A shellscript to make grid maps from text files. +A shellscript to make grid maps from text input. ![Simple map example](examples/simpleBig.jpg) @@ -20,17 +20,17 @@ xxxxx ## Motivation -The want for Vim to be a map maker. +Using Vim as a map maker. ## Concept -Given a text file in which each character represents a cell, have a script draw that map. +Given a text input in which each character represents a cell, have a script draw that map. -`mapGen.sh` takes as input a text file which ideally has a block of characters of any size but of -rectangular shape with no missing ones. It also takes a folder in which tile images are supposed to -be. For each character in the file it randomly takes one image in that folder which name starts -with that character and composes it into the map image with the help of the `convert` command from -ImageMagick. +`mapGen.sh` takes as input a text file or standard input which ideally has a block of characters of +any size but of rectangular shape with no missing ones. It also takes a folder in which tile images +are supposed to be. For each character in the input it randomly takes one image in that folder which +name starts with that character and composes it into the map image with the help of the `convert` +command from ImageMagick. ## Examples @@ -70,13 +70,21 @@ XXXXXXXXXooXXXXXXXXX ``` Note that for the second image a different folder with some missing tiles where used (no tiles -starting by D or S). The script puts a red pixel there and the cyan background is seen, indicating -this absence. +starting by D or S). Absent tiles are skipped. This allows for different inputs to be used as +layers: one could have the map and other add annotations to cells by using tiles with transparency, +for example. Note that the target file will only be created if it did not exist and will be drawn on +top if it did exist. + +![Unix rules! example](examples/banner.jpg) + +``` +figlet -f banner 'Unix Rules!' | tr ' #' 'Xo' | mapGen.sh -f dg +``` ## Usage ``` -mapGen.sh [-s SIZE] [-f TILE_FOLDER] [-o OUTPUT_FILE] SOURCE_FILE +mapGen.sh [-s SIZE] [-f TILE_FOLDER] [-o OUTPUT_FILE] [SOURCE_FILE] ``` Where @@ -86,6 +94,8 @@ Where - `OUTPUT_FILE` is the path to the resulting image (default `out.jpg`), - and `SOURCE_FILE` is the text file with the layout of the map. +If `SOURCE_FILE` is not provided standard input will be used. + ## Possibilities The direct mapping of characters in text file to beginning of tile image name gives flexibility to -- cgit v1.2.1