[gimp] icons, tools: allow newlines in the icon lists.
- From: Jehan <jehanp src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gimp] icons, tools: allow newlines in the icon lists.
- Date: Thu, 27 Jan 2022 15:20:41 +0000 (UTC)
commit 6e9b137f5026a3dc709621e7ad606491322cca09
Author: Jehan <jehan girinstud io>
Date: Thu Jan 27 16:18:55 2022 +0100
icons, tools: allow newlines in the icon lists.
This is nicer for icon organization, allowing to group them by
categories (Freedesktop, GTK and GIMP namespace icons).
icons/Color/icon-list.mk | 12 ++++++++++++
icons/Color/meson.build | 2 +-
icons/Symbolic/icon-list.mk | 12 ++++++++++++
icons/Symbolic/meson.build | 6 +++---
icons/icon-lists/bitmap_128.list | 1 +
icons/icon-lists/bitmap_16.list | 2 ++
icons/icon-lists/bitmap_22.list | 1 +
icons/icon-lists/bitmap_24.list | 2 ++
icons/icon-lists/bitmap_256.list | 1 +
icons/icon-lists/bitmap_48.list | 1 +
icons/icon-lists/scalable.list | 2 ++
icons/icon-lists/vector_24.list | 2 ++
tools/generate-icon-makefiles.py | 22 ++++++++++++++++++----
13 files changed, 58 insertions(+), 8 deletions(-)
---
diff --git a/icons/Color/icon-list.mk b/icons/Color/icon-list.mk
index 94cb8659d1..4c6d396688 100644
--- a/icons/Color/icon-list.mk
+++ b/icons/Color/icon-list.mk
@@ -68,6 +68,7 @@ scalable_images = \
scalable/zoom-in.svg \
scalable/zoom-original.svg \
scalable/zoom-out.svg \
+ \
scalable/gtk-cancel.svg \
scalable/gtk-edit.svg \
scalable/gtk-no.svg \
@@ -75,6 +76,7 @@ scalable_images = \
scalable/gtk-select-color.svg \
scalable/gtk-select-font.svg \
scalable/gtk-yes.svg \
+ \
scalable/gimp-anchor.svg \
scalable/gimp-attach.svg \
scalable/gimp-business-card.svg \
@@ -369,7 +371,9 @@ vector24_images = \
24/document-print.svg \
24/media-floppy.svg \
24/media-optical.svg \
+ \
24/gtk-select-color.svg \
+ \
24/gimp-business-card.svg \
24/gimp-center.svg \
24/gimp-channel.svg \
@@ -607,6 +611,7 @@ icons16_images = \
16/zoom-in.png \
16/zoom-original.png \
16/zoom-out.png \
+ \
16/gtk-cancel.png \
16/gtk-edit.png \
16/gtk-no.png \
@@ -614,6 +619,7 @@ icons16_images = \
16/gtk-select-color.png \
16/gtk-select-font.png \
16/gtk-yes.png \
+ \
16/gimp-anchor.png \
16/gimp-business-card.png \
16/gimp-cap-butt.png \
@@ -846,6 +852,7 @@ icons22_images = \
22/format-justify-fill.png \
22/format-justify-left.png \
22/format-justify-right.png \
+ \
22/gimp-char-picker.png \
22/gimp-dynamics.png \
22/gimp-histogram.png \
@@ -908,7 +915,9 @@ icons24_images = \
24/format-text-direction-rtl.png \
24/media-floppy.png \
24/media-optical.png \
+ \
24/gtk-select-color.png \
+ \
24/gimp-attach.png \
24/gimp-business-card.png \
24/gimp-center.png \
@@ -1062,6 +1071,7 @@ icons32_images = \
icons48_images = \
48/folder.png \
+ \
48/gimp-channel-alpha.png \
48/gimp-channel-blue.png \
48/gimp-channel-gray.png \
@@ -1136,6 +1146,7 @@ icons96_images = \
icons128_images = \
128/folder.png \
+ \
128/gimp-wilber.png \
128/gimp-wilber-outline.png
@@ -1145,6 +1156,7 @@ icons192_images = \
icons256_images = \
256/folder.png \
+ \
256/gimp-wilber.png \
256/gimp-wilber-outline.png
diff --git a/icons/Color/meson.build b/icons/Color/meson.build
index defc9be77d..e2dcdf1ba7 100644
--- a/icons/Color/meson.build
+++ b/icons/Color/meson.build
@@ -53,7 +53,7 @@ foreach source, out : source_icons
icon_list = '../icon-lists/@0@.list'.format(source)
cmd = run_command('python3', '-c',
- 'print(",".join(["@0@/" + line.strip() + "@1@" for line in open("@2@")]))'.format(indir,
suffix, icon_list),
+ 'print(",".join(["@0@/" + line.strip() + "@1@" for line in open("@2@") if line.strip()
!= ""]))'.format(indir, suffix, icon_list),
check: true)
source_icons = cmd.stdout().strip().split(',')
install_data(source_icons, install_dir: gimpiconsdir / theme / outdir / 'apps')
diff --git a/icons/Symbolic/icon-list.mk b/icons/Symbolic/icon-list.mk
index 24326a7a9a..d302c21030 100644
--- a/icons/Symbolic/icon-list.mk
+++ b/icons/Symbolic/icon-list.mk
@@ -68,6 +68,7 @@ scalable_images = \
scalable/zoom-in-symbolic.svg \
scalable/zoom-original-symbolic.svg \
scalable/zoom-out-symbolic.svg \
+ \
scalable/gtk-cancel-symbolic.svg \
scalable/gtk-edit-symbolic.svg \
scalable/gtk-no-symbolic.svg \
@@ -75,6 +76,7 @@ scalable_images = \
scalable/gtk-select-color-symbolic.svg \
scalable/gtk-select-font-symbolic.svg \
scalable/gtk-yes-symbolic.svg \
+ \
scalable/gimp-anchor-symbolic.svg \
scalable/gimp-attach-symbolic.svg \
scalable/gimp-business-card-symbolic.svg \
@@ -369,7 +371,9 @@ vector24_images = \
24/document-print-symbolic.svg \
24/media-floppy-symbolic.svg \
24/media-optical-symbolic.svg \
+ \
24/gtk-select-color-symbolic.svg \
+ \
24/gimp-business-card-symbolic.svg \
24/gimp-center-symbolic.svg \
24/gimp-channel-symbolic.svg \
@@ -607,6 +611,7 @@ icons16_images = \
16/zoom-in-symbolic.symbolic.png \
16/zoom-original-symbolic.symbolic.png \
16/zoom-out-symbolic.symbolic.png \
+ \
16/gtk-cancel-symbolic.symbolic.png \
16/gtk-edit-symbolic.symbolic.png \
16/gtk-no-symbolic.symbolic.png \
@@ -614,6 +619,7 @@ icons16_images = \
16/gtk-select-color-symbolic.symbolic.png \
16/gtk-select-font-symbolic.symbolic.png \
16/gtk-yes-symbolic.symbolic.png \
+ \
16/gimp-anchor-symbolic.symbolic.png \
16/gimp-business-card-symbolic.symbolic.png \
16/gimp-cap-butt-symbolic.symbolic.png \
@@ -846,6 +852,7 @@ icons22_images = \
22/format-justify-fill-symbolic.symbolic.png \
22/format-justify-left-symbolic.symbolic.png \
22/format-justify-right-symbolic.symbolic.png \
+ \
22/gimp-char-picker-symbolic.symbolic.png \
22/gimp-dynamics-symbolic.symbolic.png \
22/gimp-histogram-symbolic.symbolic.png \
@@ -908,7 +915,9 @@ icons24_images = \
24/format-text-direction-rtl-symbolic.symbolic.png \
24/media-floppy-symbolic.symbolic.png \
24/media-optical-symbolic.symbolic.png \
+ \
24/gtk-select-color-symbolic.symbolic.png \
+ \
24/gimp-attach-symbolic.symbolic.png \
24/gimp-business-card-symbolic.symbolic.png \
24/gimp-center-symbolic.symbolic.png \
@@ -1062,6 +1071,7 @@ icons32_images = \
icons48_images = \
48/folder-symbolic.symbolic.png \
+ \
48/gimp-channel-alpha-symbolic.symbolic.png \
48/gimp-channel-blue-symbolic.symbolic.png \
48/gimp-channel-gray-symbolic.symbolic.png \
@@ -1136,6 +1146,7 @@ icons96_images = \
icons128_images = \
128/folder-symbolic.symbolic.png \
+ \
128/gimp-wilber-symbolic.symbolic.png \
128/gimp-wilber-outline-symbolic.symbolic.png
@@ -1145,6 +1156,7 @@ icons192_images = \
icons256_images = \
256/folder-symbolic.symbolic.png \
+ \
256/gimp-wilber-symbolic.symbolic.png \
256/gimp-wilber-outline-symbolic.symbolic.png
diff --git a/icons/Symbolic/meson.build b/icons/Symbolic/meson.build
index 5bdc4f0b48..bec1989c52 100644
--- a/icons/Symbolic/meson.build
+++ b/icons/Symbolic/meson.build
@@ -15,14 +15,14 @@ else
foreach size : sizes
icon_list = '../icon-lists/bitmap_@0@.list'.format(size)
cmd = run_command('python3', '-c',
- 'print(",".join([line.strip() for line in open("@0@")]))'.format(icon_list),
+ 'print(",".join([line.strip() for line in open("@0@") if line.strip() !=
""]))'.format(icon_list),
check: true)
source_icons = cmd.stdout().strip().split(',')
if size == '64'
icon_list = '../icon-lists/bitmap_64-system.list'
cmd = run_command('python3', '-c',
- 'print(",".join([line.strip() for line in open("@0@")]))'.format(icon_list),
+ 'print(",".join([line.strip() for line in open("@0@") if line.strip() !=
""]))'.format(icon_list),
check: true)
source_icons += cmd.stdout().strip().split(',')
endif
@@ -53,7 +53,7 @@ foreach source, out : source_icons
icon_list = '../icon-lists/@0@.list'.format(source)
cmd = run_command('python3', '-c',
- 'print(",".join(["@0@/" + line.strip() + "@1@" for line in open("@2@")]))'.format(indir,
suffix, icon_list),
+ 'print(",".join(["@0@/" + line.strip() + "@1@" for line in open("@2@") if line.strip()
!= ""]))'.format(indir, suffix, icon_list),
check: true)
source_icons = cmd.stdout().strip().split(',')
install_data(source_icons, install_dir: gimpiconsdir / theme / outdir / 'apps')
diff --git a/icons/icon-lists/bitmap_128.list b/icons/icon-lists/bitmap_128.list
index 55459fe635..0f6dbdcb44 100644
--- a/icons/icon-lists/bitmap_128.list
+++ b/icons/icon-lists/bitmap_128.list
@@ -1,3 +1,4 @@
folder
+
gimp-wilber
gimp-wilber-outline
diff --git a/icons/icon-lists/bitmap_16.list b/icons/icon-lists/bitmap_16.list
index 67576d9c59..b342d29ae2 100644
--- a/icons/icon-lists/bitmap_16.list
+++ b/icons/icon-lists/bitmap_16.list
@@ -52,6 +52,7 @@ zoom-fit-best
zoom-in
zoom-original
zoom-out
+
gtk-cancel
gtk-edit
gtk-no
@@ -59,6 +60,7 @@ gtk-ok
gtk-select-color
gtk-select-font
gtk-yes
+
gimp-anchor
gimp-business-card
gimp-cap-butt
diff --git a/icons/icon-lists/bitmap_22.list b/icons/icon-lists/bitmap_22.list
index b06b8e5803..c04dd2bcd1 100644
--- a/icons/icon-lists/bitmap_22.list
+++ b/icons/icon-lists/bitmap_22.list
@@ -4,6 +4,7 @@ format-justify-center
format-justify-fill
format-justify-left
format-justify-right
+
gimp-char-picker
gimp-dynamics
gimp-histogram
diff --git a/icons/icon-lists/bitmap_24.list b/icons/icon-lists/bitmap_24.list
index 9470775a1e..dce1b01e89 100644
--- a/icons/icon-lists/bitmap_24.list
+++ b/icons/icon-lists/bitmap_24.list
@@ -7,7 +7,9 @@ format-text-direction-ltr
format-text-direction-rtl
media-floppy
media-optical
+
gtk-select-color
+
gimp-attach
gimp-business-card
gimp-center
diff --git a/icons/icon-lists/bitmap_256.list b/icons/icon-lists/bitmap_256.list
index 55459fe635..0f6dbdcb44 100644
--- a/icons/icon-lists/bitmap_256.list
+++ b/icons/icon-lists/bitmap_256.list
@@ -1,3 +1,4 @@
folder
+
gimp-wilber
gimp-wilber-outline
diff --git a/icons/icon-lists/bitmap_48.list b/icons/icon-lists/bitmap_48.list
index 5e9a61c059..dae04897ec 100644
--- a/icons/icon-lists/bitmap_48.list
+++ b/icons/icon-lists/bitmap_48.list
@@ -1,4 +1,5 @@
folder
+
gimp-channel-alpha
gimp-channel-blue
gimp-channel-gray
diff --git a/icons/icon-lists/scalable.list b/icons/icon-lists/scalable.list
index cdfaa01096..ae2d38cdc9 100644
--- a/icons/icon-lists/scalable.list
+++ b/icons/icon-lists/scalable.list
@@ -59,6 +59,7 @@ zoom-fit-best
zoom-in
zoom-original
zoom-out
+
gtk-cancel
gtk-edit
gtk-no
@@ -66,6 +67,7 @@ gtk-ok
gtk-select-color
gtk-select-font
gtk-yes
+
gimp-anchor
gimp-attach
gimp-business-card
diff --git a/icons/icon-lists/vector_24.list b/icons/icon-lists/vector_24.list
index 145cb9f248..13bea1cd8d 100644
--- a/icons/icon-lists/vector_24.list
+++ b/icons/icon-lists/vector_24.list
@@ -5,7 +5,9 @@ dialog-warning
document-print
media-floppy
media-optical
+
gtk-select-color
+
gimp-business-card
gimp-center
gimp-channel
diff --git a/tools/generate-icon-makefiles.py b/tools/generate-icon-makefiles.py
index 7f5be9f493..344082b0be 100755
--- a/tools/generate-icon-makefiles.py
+++ b/tools/generate-icon-makefiles.py
@@ -37,18 +37,32 @@ def print_icons(indir, filenames, max_len, prefix, suffix, outfile, endlist=True
icon_list = os.path.join(indir, filename)
with open(icon_list, mode='r') as f:
icons += [line.strip() for line in f]
+ # Strip empty lines in extremities.
+ while icons[-1] == '':
+ icons.pop()
+ while icons[0] == '':
+ icons.pop(0)
if max_len is None:
max_len = len(max(icons, key=len)) + len(prefix + suffix)
+ prev_empty = False
+
# Using tabs, displayed as 8 chars in our coding style. Computing
# needed tabs for proper alignment.
needed_tabs = int(max_len / 8) + (1 if max_len % 8 != 0 else 0)
for icon in icons[:-1]:
- icon_path = prefix + icon + suffix
- tab_mult = needed_tabs - int(len(icon_path) / 8) + 1
- icon_path = "\t{}{}\\".format(icon_path, "\t" * tab_mult)
- print(icon_path, file=outfile)
+ if icon == '':
+ # Only keep one empty line.
+ if not prev_empty:
+ print("\t\\", file=outfile)
+ prev_empty = True
+ else:
+ icon_path = prefix + icon + suffix
+ tab_mult = needed_tabs - int(len(icon_path) / 8) + 1
+ icon_path = "\t{}{}\\".format(icon_path, "\t" * tab_mult)
+ print(icon_path, file=outfile)
+ prev_empty = False
else:
if endlist:
icon_path = "\t{}".format(prefix) + icons[-1] + suffix
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]