colorschemes: make it easier to add colorschemes
This commit is contained in:
parent
aeffac28c6
commit
d94bc64230
|
@ -0,0 +1,35 @@
|
||||||
|
#!/bin/sh
|
||||||
|
set -e
|
||||||
|
set -u
|
||||||
|
|
||||||
|
COMPRESS=1
|
||||||
|
|
||||||
|
EET=$1
|
||||||
|
shift
|
||||||
|
EET_FILE=$1
|
||||||
|
shift
|
||||||
|
INI=$1
|
||||||
|
shift
|
||||||
|
|
||||||
|
INI2DESC=$(dirname "$0")/ini2desc.py
|
||||||
|
GET_NAME=$(dirname "$0")/get_name.py
|
||||||
|
|
||||||
|
NAME=$($GET_NAME "$INI")
|
||||||
|
|
||||||
|
# generate desc on a temporary file
|
||||||
|
TMP_DESC=$(mktemp "$NAME-DESC-XXXXXX")
|
||||||
|
|
||||||
|
# trap to avoid creating orphan files
|
||||||
|
trap 'rm -f "$TMP_DESC"' INT TERM HUP EXIT
|
||||||
|
|
||||||
|
[ ! -w "$EET_FILE" ] && touch "$EET_FILE"
|
||||||
|
|
||||||
|
NAME=$($GET_NAME "$INI")
|
||||||
|
|
||||||
|
$INI2DESC "$INI" "$TMP_DESC"
|
||||||
|
$EET -e "$EET_FILE" "$NAME" "$TMP_DESC" "$COMPRESS"
|
||||||
|
|
||||||
|
rm "$TMP_DESC"
|
||||||
|
|
||||||
|
# file successfully written, so need to trap to rename temp file
|
||||||
|
trap - INT TERM HUP EXIT
|
|
@ -2,13 +2,11 @@
|
||||||
set -e
|
set -e
|
||||||
set -u
|
set -u
|
||||||
|
|
||||||
COMPRESS=1
|
|
||||||
|
|
||||||
EET=$1
|
EET=$1
|
||||||
shift
|
shift
|
||||||
OUTPUT=$1
|
OUTPUT=$1
|
||||||
shift
|
shift
|
||||||
INI2DESC=$(dirname "$0")/ini2desc.py
|
ADD_COLOR_SCHEME=$(dirname "$0")/add_color_scheme.sh
|
||||||
|
|
||||||
# work on a temporary file till every insertion worked
|
# work on a temporary file till every insertion worked
|
||||||
TMP_EET=$(mktemp "$OUTPUT-XXXXXX")
|
TMP_EET=$(mktemp "$OUTPUT-XXXXXX")
|
||||||
|
@ -18,10 +16,7 @@ trap 'rm -f "$TMP_EET"' INT TERM HUP EXIT
|
||||||
for INI in "$@"
|
for INI in "$@"
|
||||||
do
|
do
|
||||||
# use the name, without extension as key in eet
|
# use the name, without extension as key in eet
|
||||||
KEY=$(basename "$INI" ".ini")
|
$ADD_COLOR_SCHEME "$EET" "$TMP_EET" "$INI"
|
||||||
DESC="${KEY}.desc"
|
|
||||||
$INI2DESC "$INI" "$DESC"
|
|
||||||
$EET -e "$TMP_EET" "$KEY" "$DESC" "$COMPRESS"
|
|
||||||
done
|
done
|
||||||
|
|
||||||
# atomic rename to the expected output file
|
# atomic rename to the expected output file
|
||||||
|
|
|
@ -0,0 +1,21 @@
|
||||||
|
#!/usr/bin/env python3
|
||||||
|
|
||||||
|
import argparse
|
||||||
|
import configparser
|
||||||
|
import sys
|
||||||
|
|
||||||
|
def main():
|
||||||
|
parser = argparse.ArgumentParser(description='Get color scheme name from an INI colorschemes description file.')
|
||||||
|
parser.add_argument('input_file',
|
||||||
|
type=argparse.FileType('r'),
|
||||||
|
help='INI File to convert')
|
||||||
|
args = parser.parse_args()
|
||||||
|
|
||||||
|
cfg = configparser.ConfigParser()
|
||||||
|
cfg.read_file(args.input_file)
|
||||||
|
|
||||||
|
print(cfg.get('Metadata', 'name'))
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
main()
|
|
@ -19,7 +19,7 @@ custom_target('colorschemes.eet',
|
||||||
install:true,
|
install:true,
|
||||||
install_dir: cs_install_dir,
|
install_dir: cs_install_dir,
|
||||||
install_mode: 'rw-r--r--',
|
install_mode: 'rw-r--r--',
|
||||||
depend_files: ['builder.sh', 'ini2desc.py'],
|
depend_files: ['builder.sh', 'ini2desc.py', 'get_name.py', 'add_color_scheme.sh'],
|
||||||
command: cs_builder,
|
command: cs_builder,
|
||||||
input: colorschemes_desc,
|
input: colorschemes_desc,
|
||||||
output: 'colorschemes.eet')
|
output: 'colorschemes.eet')
|
||||||
|
|
Loading…
Reference in New Issue