summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkarnigen <karnigen@gmail.com>2024-02-09 14:29:06 +0100
committerGitHub <noreply@github.com>2024-02-09 14:29:06 +0100
commite64737382ce749af2db48c9cfd17de7b644429f5 (patch)
treea12d11f15c1de7a9731eeca8bdd3af53ba2164a2
parentb4f1fb8e8c98be02579bc31343784d70c43c4f48 (diff)
parentfdc73762adf3989b6c2a77646dc08da72e6c0681 (diff)
Merge pull request #2715 from inkstitch/kgn/inkstitch-multiversion-support
Kgn/inkstitch multiversion support
-rw-r--r--Makefile3
-rwxr-xr-xbin/generate-inx-files76
-rw-r--r--lib/inx/__init__.py6
-rwxr-xr-xlib/inx/about.py12
-rwxr-xr-xlib/inx/extensions.py7
-rw-r--r--lib/inx/generate.py29
-rwxr-xr-xlib/inx/info.py6
-rwxr-xr-xlib/inx/inputs.py6
-rw-r--r--lib/inx/outputs.py6
-rw-r--r--templates/about.xml4
-rw-r--r--templates/apply_threadlist.xml4
-rw-r--r--templates/auto_run.xml4
-rw-r--r--templates/auto_satin.xml4
-rw-r--r--templates/break_apart.xml4
-rw-r--r--templates/cleanup.xml4
-rw-r--r--templates/commands_scale_symbols.xml4
-rw-r--r--templates/convert_to_satin.xml4
-rw-r--r--templates/convert_to_stroke.xml4
-rw-r--r--templates/cut_satin.xml4
-rw-r--r--templates/cutwork_segmentation.xml4
-rw-r--r--templates/density_map.xml4
-rw-r--r--templates/display_stacking_order.xml4
-rw-r--r--templates/duplicate_params.xml4
-rw-r--r--templates/element_info.xml4
-rw-r--r--templates/embroider.xml4
-rw-r--r--templates/fill_to_stroke.xml4
-rw-r--r--templates/flip.xml4
-rw-r--r--templates/generate_palette.xml4
-rw-r--r--templates/global_commands.xml4
-rw-r--r--templates/gradient_blocks.xml4
-rw-r--r--templates/input.xml4
-rw-r--r--templates/install.xml4
-rw-r--r--templates/install_custom_palette.xml4
-rw-r--r--templates/jump_to_stroke.xml4
-rw-r--r--templates/layer_commands.xml4
-rw-r--r--templates/lettering.xml4
-rw-r--r--templates/lettering_along_path.xml4
-rw-r--r--templates/lettering_custom_font_dir.xml4
-rw-r--r--templates/lettering_force_lock_stitches.xml4
-rw-r--r--templates/lettering_generate_json.xml4
-rw-r--r--templates/lettering_remove_kerning.xml4
-rw-r--r--templates/lettering_update_json_glyphlist.xml4
-rw-r--r--templates/letters_to_font.xml4
-rw-r--r--templates/object_commands.xml4
-rw-r--r--templates/object_commands_toggle_visibility.xml4
-rw-r--r--templates/outline.xml4
-rw-r--r--templates/output.xml4
-rw-r--r--templates/palette_split_text.xml4
-rw-r--r--templates/palette_to_text.xml4
-rw-r--r--templates/params.xml4
-rw-r--r--templates/preferences.xml4
-rw-r--r--templates/print.xml4
-rw-r--r--templates/remove_embroidery_settings.xml4
-rw-r--r--templates/reorder.xml4
-rw-r--r--templates/select_elements.xml4
-rw-r--r--templates/selection_to_guide_line.xml4
-rw-r--r--templates/selection_to_pattern.xml4
-rw-r--r--templates/simulator.xml4
-rw-r--r--templates/stitch_plan_preview.xml4
-rw-r--r--templates/stitch_plan_preview_undo.xml4
-rw-r--r--templates/stroke_to_lpe_satin.xml4
-rw-r--r--templates/test_swatches.xml4
-rw-r--r--templates/troubleshoot.xml4
-rw-r--r--templates/update_svg.xml4
-rw-r--r--templates/zigzag_line_to_satin.xml6
-rw-r--r--templates/zip.xml4
66 files changed, 218 insertions, 163 deletions
diff --git a/Makefile b/Makefile
index c4e21410..a13efed9 100644
--- a/Makefile
+++ b/Makefile
@@ -17,8 +17,7 @@ manual:
.PHONY: inx
inx: version locales
- mkdir -p inx
- python bin/generate-inx-files; \
+ python bin/generate-inx-files;
.PHONY: messages.po
messages.po: inx
diff --git a/bin/generate-inx-files b/bin/generate-inx-files
index 44edea15..553e184d 100755
--- a/bin/generate-inx-files
+++ b/bin/generate-inx-files
@@ -1,19 +1,73 @@
#!/usr/bin/env python
+# Implemented support for multiple diverse versions of Inkstitch extensions in Inkscape.
+# - useful for testing and development
+# - useful for comparing different versions of Inkstitch
+
+
+# this script generates inx files in inx/ directory from xml templates in templates/ directory
+# - added support for alternative id registration and menu names for Inkscape extensions
+# - each xml template should be modified to use the new id_inkstitch and menu_inkstitch:
+# <id>org.inkstitch.....</id> ---> <id>org.{{ id_inkstitch }}.....</id>
+# <submenu name="Ink/Stitch" ---> <submenu name="{{ menu_inkstitch }}"
+# or input/output xml template should be modified to use the filetypename:
+# <filetypename>Ink/Stitch:... ---> <filetypename>{{ menu_inkstitch }}:...
+
+
+# Here's an example of how to use two Inkstitch extensions:
+# - install Inkstitch in two different locations (e.g. inkstitch and inkstitch-k)
+# - check out the Inkstitch repository in two different locations
+# - ensure 'make inx' is executed in both locations
+# - this will generate also inx/locale/ files
+# - generate modified inx files for second location
+# - in the second location:
+# > generate-inx-files -a k
+# - install the inx files in Inkscape extensions directory
+# - symlink .config/inkscape/extensions/inkstitch -> inkstitch
+# - symlink .config/inkscape/extensions/inkstitch-k -> inkstitch-k
+# - modify .config/inkscape/keys/default.xml if necessary
+# - run Inkscape with both Inkstitch extensions enabled
+# - first version: Extensions > Ink/Stitch
+# - second version: Extensions > Ink/Stitch-k
+
import sys
import os
-from os.path import dirname
+from pathlib import Path
+import argparse
+
+# add inkstitch lib dir to python path
+parent_dir = Path(__file__).resolve().parents[1]
+sys.path.append(str(parent_dir)) # we need import from lib/ directory
+
+# find inkex module
+try:
+ import inkex # if it is already in the path, do nothing
+except ImportError: # if not, add inkscape version
+ import subprocess
+ inkscape_path = 'inkscape'
+ # for now assume inkscape is in the path and raise an error if inkscape is not in the path
+ system_path = subprocess.run([inkscape_path, "--system-data-directory"], capture_output=True, text=True).stdout.strip()
+ inkex_path = os.path.join(system_path, "extensions")
+ sys.path.append(inkex_path)
+
+ # possible last attempt to import inkex may be as follows:
+ # sys.path.append(os.path.join("/usr/share/inkscape/extensions"))
+ # default inkex.py location on macOS
+ # sys.path.append("/Applications/Inkscape.app/Contents/Resources/share/inkscape/extensions/")
+
+
+from lib.inx.generate import generate_inx_files
-# add inkstitch libs to python path
-parent_dir = os.path.join(dirname(dirname(__file__)))
-sys.path.append(parent_dir)
+# parse arguments
+# -a, --alter letter a-z: generate inx files for the given alter
+parser = argparse.ArgumentParser(description='Generate INX files, supporting multiple active inkstitch extensions in inkscape.')
+parser.add_argument('-a', '--alter', type=str, help='Letter a-z representing the alter')
+args = parser.parse_args()
-# try find add inkex.py et al. as well
-sys.path.append(os.path.join(parent_dir, "inkscape", "share", "extensions"))
-sys.path.append(os.path.join("/usr/share/inkscape/extensions"))
-# default inkex.py location on macOS
-sys.path.append("/Applications/Inkscape.app/Contents/Resources/share/inkscape/extensions/")
+# print(f"generate_inx_files: alter={args.alter}")
-from lib.inx import generate_inx_files
+inx_path = parent_dir / "inx"
+inx_path.mkdir(parents=True, exist_ok=True)
-generate_inx_files()
+# if -a is not given, args.alter is None - not alternative inx, but generate default inx
+generate_inx_files(args.alter)
diff --git a/lib/inx/__init__.py b/lib/inx/__init__.py
index 6d4846f2..e69de29b 100644
--- a/lib/inx/__init__.py
+++ b/lib/inx/__init__.py
@@ -1,6 +0,0 @@
-# Authors: see git history
-#
-# Copyright (c) 2010 Authors
-# Licensed under the GNU GPL version 3.0 or later. See the file LICENSE for details.
-
-from .generate import generate_inx_files
diff --git a/lib/inx/about.py b/lib/inx/about.py
deleted file mode 100755
index c1ce458f..00000000
--- a/lib/inx/about.py
+++ /dev/null
@@ -1,12 +0,0 @@
-# Authors: see git history
-#
-# Copyright (c) 2010 Authors
-# Licensed under the GNU GPL version 3.0 or later. See the file LICENSE for details.
-
-from .utils import build_environment, write_inx_file
-
-
-def generate_about_inx_file():
- env = build_environment()
- template = env.get_template('about.xml')
- write_inx_file("about", template.render())
diff --git a/lib/inx/extensions.py b/lib/inx/extensions.py
index 30fca4da..cceb40de 100755
--- a/lib/inx/extensions.py
+++ b/lib/inx/extensions.py
@@ -40,7 +40,7 @@ def threadcatalog():
return threadcatalog
-def generate_extension_inx_files():
+def generate_extension_inx_files(alter_data):
env = build_environment()
for extension in extensions:
@@ -48,8 +48,9 @@ def generate_extension_inx_files():
continue
name = extension.name()
- template = env.get_template('%s.xml' % name)
- write_inx_file(name, template.render(formats=pyembroidery_output_formats(),
+ template = env.get_template(f'{name}.xml')
+ write_inx_file(name, template.render(alter_data,
+ formats=pyembroidery_output_formats(),
debug_formats=pyembroidery_debug_formats(),
threadcatalog=threadcatalog(),
font_categories=FONT_CATEGORIES,
diff --git a/lib/inx/generate.py b/lib/inx/generate.py
index e94d22f6..47ca3b6d 100644
--- a/lib/inx/generate.py
+++ b/lib/inx/generate.py
@@ -9,8 +9,27 @@ from .inputs import generate_input_inx_files
from .outputs import generate_output_inx_files
-def generate_inx_files():
- generate_input_inx_files()
- generate_output_inx_files()
- generate_extension_inx_files()
- generate_info_inx_files()
+def generate_inx_files(alter=None):
+ if alter is not None:
+ # Ensure the alter is lowercase and string a-z and one letter long
+ if len(alter) != 1 or not alter[0].isalpha() or not alter[0].islower(): # error
+ raise ValueError(f"Invalid alter '{alter}' for inx files, must be a single letter a-z.")
+
+ if alter is None:
+ id_inkstitch = "inkstitch"
+ menu_inkstitch = "Ink/Stitch"
+ else:
+ id_inkstitch = f"{alter}-inkstitch"
+ menu_inkstitch = f"Ink/Stitch-{alter}"
+
+ # print(f"generate_inx_files: id_inkstitch={id_inkstitch}, menu_inkstitch={menu_inkstitch}")
+
+ alter_data = {
+ 'id_inkstitch': id_inkstitch,
+ 'menu_inkstitch': menu_inkstitch,
+ }
+
+ generate_input_inx_files(alter_data)
+ generate_output_inx_files(alter_data)
+ generate_extension_inx_files(alter_data)
+ generate_info_inx_files(alter_data)
diff --git a/lib/inx/info.py b/lib/inx/info.py
index 3a69adad..dc80c3eb 100755
--- a/lib/inx/info.py
+++ b/lib/inx/info.py
@@ -6,9 +6,9 @@
from .utils import build_environment, write_inx_file
-def generate_info_inx_files():
+def generate_info_inx_files(alter_data):
env = build_environment()
info_inx_files = ['about', 'embroider']
for info in info_inx_files:
- template = env.get_template('%s.xml' % info)
- write_inx_file(info, template.render())
+ template = env.get_template(f'{info}.xml')
+ write_inx_file(info, template.render(alter_data))
diff --git a/lib/inx/inputs.py b/lib/inx/inputs.py
index 3ae0b871..624a8dcc 100755
--- a/lib/inx/inputs.py
+++ b/lib/inx/inputs.py
@@ -14,10 +14,10 @@ def pyembroidery_input_formats():
yield format['extension'], format['description']
-def generate_input_inx_files():
+def generate_input_inx_files(alter_data):
env = build_environment()
template = env.get_template('input.xml')
for format, description in pyembroidery_input_formats():
- name = "input_%s" % format.upper()
- write_inx_file(name, template.render(format=format, description=description))
+ name = f"input_{format.upper()}"
+ write_inx_file(name, template.render(alter_data, format=format, description=description))
diff --git a/lib/inx/outputs.py b/lib/inx/outputs.py
index 3a4ac9d0..21014744 100644
--- a/lib/inx/outputs.py
+++ b/lib/inx/outputs.py
@@ -23,10 +23,10 @@ def pyembroidery_output_formats():
yield format['extension'], description, format['mimetype'], format['category']
-def generate_output_inx_files():
+def generate_output_inx_files(alter_data):
env = build_environment()
template = env.get_template('output.xml')
for format, description, mimetype, category in pyembroidery_output_formats():
- name = "output_%s" % format.upper()
- write_inx_file(name, template.render(format=format, mimetype=mimetype, description=description))
+ name = f"output_{format.upper()}"
+ write_inx_file(name, template.render(alter_data, format=format, mimetype=mimetype, description=description))
diff --git a/templates/about.xml b/templates/about.xml
index 538b3ca8..fc937936 100644
--- a/templates/about.xml
+++ b/templates/about.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>About</name>
- <id>org.inkstitch.about</id>
+ <id>org.{{ id_inkstitch }}.about</id>
<param type="notebook" name="about-tabs" indent="1">
<page name="about" gui-text="About">
<image>{{ image_path }}inkstitch_colour_logo.svg</image>
@@ -21,7 +21,7 @@
<effect needs-live-preview="false" needs-document="false">
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
</submenu>
</effects-menu>
</effect>
diff --git a/templates/apply_threadlist.xml b/templates/apply_threadlist.xml
index 303cb793..4b768449 100644
--- a/templates/apply_threadlist.xml
+++ b/templates/apply_threadlist.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Apply Threadlist</name>
- <id>org.inkstitch.apply_threadlist</id>
+ <id>org.{{ id_inkstitch }}.apply_threadlist</id>
<param name="extension" type="string" gui-hidden="true">apply_threadlist</param>
<param name="options" type="notebook">
<page name="options" gui-text="Options">
@@ -34,7 +34,7 @@
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Thread Color Management" />
</submenu>
</effects-menu>
diff --git a/templates/auto_run.xml b/templates/auto_run.xml
index 4a524b2d..026f2143 100644
--- a/templates/auto_run.xml
+++ b/templates/auto_run.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Auto-Route Running Stitch</name>
- <id>org.inkstitch.auto_run</id>
+ <id>org.{{ id_inkstitch }}.auto_run</id>
<param name="extension" type="string" gui-hidden="true">auto_run</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Tools: Stroke" />
</submenu>
</effects-menu>
diff --git a/templates/auto_satin.xml b/templates/auto_satin.xml
index b95ffab8..e7cf9a7a 100644
--- a/templates/auto_satin.xml
+++ b/templates/auto_satin.xml
@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Auto-Route Satin Columns</name>
- <id>org.inkstitch.auto_satin</id>
+ <id>org.{{ id_inkstitch }}.auto_satin</id>
<param name="trim" type="boolean" gui-text="Trim jump stitches">true</param>
<param name="preserve_order" type="boolean" gui-text="Preserve order of satin columns">false</param>
<param name="extension" type="string" gui-hidden="true">auto_satin</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Tools: Satin" />
</submenu>
</effects-menu>
diff --git a/templates/break_apart.xml b/templates/break_apart.xml
index b084fd8f..1557032e 100644
--- a/templates/break_apart.xml
+++ b/templates/break_apart.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Break Apart Fill Objects</name>
- <id>org.inkstitch.break_apart</id>
+ <id>org.{{ id_inkstitch }}.break_apart</id>
<param name="extension" type="string" gui-hidden="true">break_apart</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Tools: Fill" />
</submenu>
</effects-menu>
diff --git a/templates/cleanup.xml b/templates/cleanup.xml
index 2145b406..e42dec12 100644
--- a/templates/cleanup.xml
+++ b/templates/cleanup.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Cleanup Document</name>
- <id>org.inkstitch.cleanup</id>
+ <id>org.{{ id_inkstitch }}.cleanup</id>
<label>Use this extension to remove small objects from the document.</label>
<param name="rm_fill" type="boolean" gui-text="Remove Small Fill Areas"
gui-description="Removes areas smaller than defined by threshold.">true</param>
@@ -19,7 +19,7 @@
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Troubleshoot" />
</submenu>
</effects-menu>
diff --git a/templates/commands_scale_symbols.xml b/templates/commands_scale_symbols.xml
index 98d17003..8234938d 100644
--- a/templates/commands_scale_symbols.xml
+++ b/templates/commands_scale_symbols.xml
@@ -1,13 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Scale Command Symbols</name>
- <id>org.inkstitch.commands_scale_symbols</id>
+ <id>org.{{ id_inkstitch }}.commands_scale_symbols</id>
<param name="extension" type="string" gui-hidden="true">commands_scale_symbols</param>
<param name="size" type="float" precision="1" min="0" max="2" gui-text="Size" appearance="full">1.0</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Commands">
<submenu name="View" />
</submenu>
diff --git a/templates/convert_to_satin.xml b/templates/convert_to_satin.xml
index aa86ed4c..870883a5 100644
--- a/templates/convert_to_satin.xml
+++ b/templates/convert_to_satin.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Convert Line to Satin</name>
- <id>org.inkstitch.convert_to_satin</id>
+ <id>org.{{ id_inkstitch }}.convert_to_satin</id>
<param name="extension" type="string" gui-hidden="true">convert_to_satin</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Tools: Satin" />
</submenu>
</effects-menu>
diff --git a/templates/convert_to_stroke.xml b/templates/convert_to_stroke.xml
index 4c836750..89ff04fe 100644
--- a/templates/convert_to_stroke.xml
+++ b/templates/convert_to_stroke.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Convert Satin to Stroke</name>
- <id>org.inkstitch.convert_to_stroke</id>
+ <id>org.{{ id_inkstitch }}.convert_to_stroke</id>
<param name="extension" type="string" gui-hidden="true">convert_to_stroke</param>
<label>Converts a satin column into a running stitch.</label>
<param name="keep_satin" type="boolean" gui-text="Keep satin column"
@@ -9,7 +9,7 @@
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Tools: Stroke" />
</submenu>
</effects-menu>
diff --git a/templates/cut_satin.xml b/templates/cut_satin.xml
index 52b972e9..92f0223e 100644
--- a/templates/cut_satin.xml
+++ b/templates/cut_satin.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Cut Satin Column</name>
- <id>org.inkstitch.cut_satin</id>
+ <id>org.{{ id_inkstitch }}.cut_satin</id>
<param name="extension" type="string" gui-hidden="true">cut_satin</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Tools: Satin" />
</submenu>
</effects-menu>
diff --git a/templates/cutwork_segmentation.xml b/templates/cutwork_segmentation.xml
index f20ff082..adc744e5 100644
--- a/templates/cutwork_segmentation.xml
+++ b/templates/cutwork_segmentation.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Cutwork segmentation</name>
- <id>org.inkstitch.cutwork_segmentation</id>
+ <id>org.{{ id_inkstitch }}.cutwork_segmentation</id>
<param name="extension" type="string" gui-hidden="true">cutwork_segmentation</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no" />
+ <submenu name="{{ menu_inkstitch }}" translatable="no" />
</effects-menu>
</effect>
<param name="options" type="notebook">
diff --git a/templates/density_map.xml b/templates/density_map.xml
index fdc6b2d1..7fee175c 100644
--- a/templates/density_map.xml
+++ b/templates/density_map.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Density Map</name>
- <id>org.inkstitch.density_map</id>
+ <id>org.{{ id_inkstitch }}.density_map</id>
<param name="extension" type="string" gui-hidden="true">density_map</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Visualize and Export" />
</submenu>
</effects-menu>
diff --git a/templates/display_stacking_order.xml b/templates/display_stacking_order.xml
index c0793e60..be8539f2 100644
--- a/templates/display_stacking_order.xml
+++ b/templates/display_stacking_order.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Display stacking order</name>
- <id>org.inkstitch.display_stacking_order</id>
+ <id>org.{{ id_inkstitch }}.display_stacking_order</id>
<param name="extension" type="string" gui-hidden="true">display_stacking_order</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Visualize and Export" />
</submenu>
</effects-menu>
diff --git a/templates/duplicate_params.xml b/templates/duplicate_params.xml
index 72012bb2..6502a243 100644
--- a/templates/duplicate_params.xml
+++ b/templates/duplicate_params.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Duplicate Params</name>
- <id>org.inkstitch.duplicate_params</id>
+ <id>org.{{ id_inkstitch }}.duplicate_params</id>
<param name="extension" type="string" gui-hidden="true">duplicate_params</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Edit" />
</submenu>
</effects-menu>
diff --git a/templates/element_info.xml b/templates/element_info.xml
index 8211a515..3ae3d138 100644
--- a/templates/element_info.xml
+++ b/templates/element_info.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Element Info</name>
- <id>org.inkstitch.element_info</id>
+ <id>org.{{ id_inkstitch }}.element_info</id>
<param name="extension" type="string" gui-hidden="true">element_info</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Troubleshoot" />
</submenu>
</effects-menu>
diff --git a/templates/embroider.xml b/templates/embroider.xml
index 4dcead18..9641cb37 100644
--- a/templates/embroider.xml
+++ b/templates/embroider.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Embroider</name>
- <id>org.inkstitch.embroider</id>
+ <id>org.{{ id_inkstitch }}.embroider</id>
<label appearance="header">Create a stitch file</label>
<label>Save your embroidery file through | File > Save a Copy ... |</label>
<label>Choose from listed embroidery file formats and save.</label>
@@ -10,7 +10,7 @@
<effect needs-live-preview="false" needs-document="false">
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Visualize and Export" />
</submenu>
</effects-menu>
diff --git a/templates/fill_to_stroke.xml b/templates/fill_to_stroke.xml
index 060b6ab8..35d09731 100644
--- a/templates/fill_to_stroke.xml
+++ b/templates/fill_to_stroke.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Fill to Stroke</name>
- <id>org.inkstitch.fill_to_stroke</id>
+ <id>org.{{ id_inkstitch }}.fill_to_stroke</id>
<param name="extension" type="string" gui-hidden="true">fill_to_stroke</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Tools: Stroke" />
</submenu>
</effects-menu>
diff --git a/templates/flip.xml b/templates/flip.xml
index b13977dc..cc05c166 100644
--- a/templates/flip.xml
+++ b/templates/flip.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Flip Satin Column Rails</name>
- <id>org.inkstitch.flip_satins</id>
+ <id>org.{{ id_inkstitch }}.flip_satins</id>
<param name="extension" type="string" gui-hidden="true">flip</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Tools: Satin" />
</submenu>
</effects-menu>
diff --git a/templates/generate_palette.xml b/templates/generate_palette.xml
index cf5a18e4..1455a046 100644
--- a/templates/generate_palette.xml
+++ b/templates/generate_palette.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Generate Color Palette</name>
- <id>org.inkstitch.generate_palette</id>
+ <id>org.{{ id_inkstitch }}.generate_palette</id>
<param name="extension" type="string" gui-hidden="true">generate_palette</param>
<effect needs-live-preview="false">
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Thread Color Management">
<submenu name="Generate Palette"/>
</submenu>
diff --git a/templates/global_commands.xml b/templates/global_commands.xml
index a7fe91f5..72f1c811 100644
--- a/templates/global_commands.xml
+++ b/templates/global_commands.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Add Commands</name>
- <id>org.inkstitch.global_commands</id>
+ <id>org.{{ id_inkstitch }}.global_commands</id>
<label>These commands affect the entire embroidery design.</label>
{% for command, description in global_commands %}
<param name="{{ command }}" type="boolean" gui-text="{{ description }}">false</param>
@@ -10,7 +10,7 @@
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
{# L10N Inkscape submenu under Extensions -> Ink/Stitch #}
<submenu name="Commands" />
</submenu>
diff --git a/templates/gradient_blocks.xml b/templates/gradient_blocks.xml
index f824d514..7b6e1d35 100644
--- a/templates/gradient_blocks.xml
+++ b/templates/gradient_blocks.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Convert to gradient blocks</name>
- <id>org.inkstitch.gradient_blocks</id>
+ <id>org.{{ id_inkstitch }}.gradient_blocks</id>
<param name="extension" type="string" gui-hidden="true">gradient_blocks</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Tools: Fill" />
</submenu>
</effects-menu>
diff --git a/templates/input.xml b/templates/input.xml
index b868c5ae..f8bf2c7a 100644
--- a/templates/input.xml
+++ b/templates/input.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>{{ format | upper }} file input</name>
- <id>org.inkstitch.input.{{ format }}</id>
+ <id>org.{{ id_inkstitch }}.input.{{ format }}</id>
<input>
<extension>.{{ format }}</extension>
<mimetype>application/x-embroidery-{{ format }}</mimetype>
- <filetypename>Ink/Stitch: {{ description }} (.{{ format }})</filetypename>
+ <filetypename>{{ menu_inkstitch }}: {{ description }} (.{{ format }})</filetypename>
<filetypetooltip>{{ "convert %(file_extension)s file to Ink/Stitch manual-stitch paths" % dict(file_extension=format.upper()) }}</filetypetooltip>
</input>
<param name="extension" type="string" gui-hidden="true">input</param>
diff --git a/templates/install.xml b/templates/install.xml
index 8b6b8d48..1d99d519 100644
--- a/templates/install.xml
+++ b/templates/install.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Install thread color palettes for Inkscape</name>
- <id>org.inkstitch.install</id>
+ <id>org.{{ id_inkstitch }}.install</id>
<param name="extension" type="string" gui-hidden="true">install</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Thread Color Management" />
</submenu>
</effects-menu>
diff --git a/templates/install_custom_palette.xml b/templates/install_custom_palette.xml
index c69458fb..fa037e7b 100644
--- a/templates/install_custom_palette.xml
+++ b/templates/install_custom_palette.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Install custom palette</name>
- <id>org.inkstitch.install_custom_palette</id>
+ <id>org.{{ id_inkstitch }}.install_custom_palette</id>
<param name="extension" type="string" gui-hidden="true">install_custom_palette</param>
<label indent="1">Choose a .gpl color palette file to install into Inkscape.</label>
<label indent="1">Restart Inkscape to use.</label>
@@ -9,7 +9,7 @@
<effect needs-live-preview="false">
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Thread Color Management" />
</submenu>
</effects-menu>
diff --git a/templates/jump_to_stroke.xml b/templates/jump_to_stroke.xml
index e41e806a..13ab96fa 100644
--- a/templates/jump_to_stroke.xml
+++ b/templates/jump_to_stroke.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Jump Stitch to Stroke</name>
- <id>org.inkstitch.jump_to_stroke</id>
+ <id>org.{{ id_inkstitch }}.jump_to_stroke</id>
<param name="extension" type="string" gui-hidden="true">jump_to_stroke</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Tools: Stroke" />
</submenu>
</effects-menu>
diff --git a/templates/layer_commands.xml b/templates/layer_commands.xml
index a9996793..81aeac95 100644
--- a/templates/layer_commands.xml
+++ b/templates/layer_commands.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Add Layer Commands</name>
- <id>org.inkstitch.layer_commands</id>
+ <id>org.{{ id_inkstitch }}.layer_commands</id>
<label>Commands will be added to the currently-selected layer.</label>
{% for command, description in layer_commands %}
<param name="{{ command }}" type="boolean" gui-text="{{ description }}">false</param>
@@ -10,7 +10,7 @@
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Commands" />
</submenu>
</effects-menu>
diff --git a/templates/lettering.xml b/templates/lettering.xml
index 19e0afd5..1b9576aa 100644
--- a/templates/lettering.xml
+++ b/templates/lettering.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Lettering</name>
- <id>org.inkstitch.lettering</id>
+ <id>org.{{ id_inkstitch }}.lettering</id>
<param name="extension" type="string" gui-hidden="true">lettering</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no" />
+ <submenu name="{{ menu_inkstitch }}" translatable="no" />
</effects-menu>
</effect>
<script>
diff --git a/templates/lettering_along_path.xml b/templates/lettering_along_path.xml
index b1612436..f40c1a16 100644
--- a/templates/lettering_along_path.xml
+++ b/templates/lettering_along_path.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Lettering along path</name>
- <id>org.inkstitch.lettering_along_path</id>
+ <id>org.{{ id_inkstitch }}.lettering_along_path</id>
<param name="extension" type="string" gui-hidden="true">lettering_along_path</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no" />
+ <submenu name="{{ menu_inkstitch }}" translatable="no" />
</effects-menu>
</effect>
<param name="options" type="notebook">
diff --git a/templates/lettering_custom_font_dir.xml b/templates/lettering_custom_font_dir.xml
index 732331d0..cb97eb52 100644
--- a/templates/lettering_custom_font_dir.xml
+++ b/templates/lettering_custom_font_dir.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Custom font directory</name>
- <id>org.inkstitch.lettering_custom_font_dir</id>
+ <id>org.{{ id_inkstitch }}.lettering_custom_font_dir</id>
<param name="extension" type="string" gui-hidden="true">lettering_custom_font_dir</param>
<effect needs-live-preview="false">
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Font Management" />
</submenu>
</effects-menu>
diff --git a/templates/lettering_force_lock_stitches.xml b/templates/lettering_force_lock_stitches.xml
index 7d70e854..7c3a3f33 100644
--- a/templates/lettering_force_lock_stitches.xml
+++ b/templates/lettering_force_lock_stitches.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Force lock stitches</name>
- <id>org.inkstitch.force_lock_stitches</id>
+ <id>org.{{ id_inkstitch }}.force_lock_stitches</id>
<param name="extension" type="string" gui-hidden="true">lettering_force_lock_stitches</param>
<effect needs-live-preview="false">
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Font Management" />
</submenu>
</effects-menu>
diff --git a/templates/lettering_generate_json.xml b/templates/lettering_generate_json.xml
index 4abae019..b3fd8077 100644
--- a/templates/lettering_generate_json.xml
+++ b/templates/lettering_generate_json.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Generate JSON</name>
- <id>org.inkstitch.lettering_generate_json</id>
+ <id>org.{{ id_inkstitch }}.lettering_generate_json</id>
<param name="extension" type="string" gui-hidden="true">lettering_generate_json</param>
<effect needs-live-preview="false">
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Font Management" />
</submenu>
</effects-menu>
diff --git a/templates/lettering_remove_kerning.xml b/templates/lettering_remove_kerning.xml
index e21a9834..e8f19bd0 100644
--- a/templates/lettering_remove_kerning.xml
+++ b/templates/lettering_remove_kerning.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Remove Kerning</name>
- <id>org.inkstitch.lettering_remove_kerning</id>
+ <id>org.{{ id_inkstitch }}.lettering_remove_kerning</id>
<param name="extension" type="string" gui-hidden="true">lettering_remove_kerning</param>
<effect needs-live-preview="false">
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Font Management" />
</submenu>
</effects-menu>
diff --git a/templates/lettering_update_json_glyphlist.xml b/templates/lettering_update_json_glyphlist.xml
index d68a7ab6..d5a528e8 100644
--- a/templates/lettering_update_json_glyphlist.xml
+++ b/templates/lettering_update_json_glyphlist.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Update Glyphlist</name>
- <id>org.inkstitch.lettering_update_json_glyphlist</id>
+ <id>org.{{ id_inkstitch }}.lettering_update_json_glyphlist</id>
<param name="extension" type="string" gui-hidden="true">lettering_update_json_glyphlist</param>
<effect needs-live-preview="false">
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Font Management" />
</submenu>
</effects-menu>
diff --git a/templates/letters_to_font.xml b/templates/letters_to_font.xml
index 542a5fff..2909500b 100644
--- a/templates/letters_to_font.xml
+++ b/templates/letters_to_font.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Letters to font</name>
- <id>org.inkstitch.letters_to_font</id>
+ <id>org.{{ id_inkstitch }}.letters_to_font</id>
<param name="extension" type="string" gui-hidden="true">letters_to_font</param>
<effect needs-live-preview="false">
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Font Management" />
</submenu>
</effects-menu>
diff --git a/templates/object_commands.xml b/templates/object_commands.xml
index 18b74df6..8aecf64c 100644
--- a/templates/object_commands.xml
+++ b/templates/object_commands.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Attach Commands to Selected Objects</name>
- <id>org.inkstitch.commands</id>
+ <id>org.{{ id_inkstitch }}.commands</id>
{%- for command, description in object_commands -%}
<param name="{{ command }}" type="boolean" gui-text="{{ description }}">false</param>
{% endfor %}
@@ -9,7 +9,7 @@
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Commands" />
</submenu>
</effects-menu>
diff --git a/templates/object_commands_toggle_visibility.xml b/templates/object_commands_toggle_visibility.xml
index b3580b2a..98132b6d 100644
--- a/templates/object_commands_toggle_visibility.xml
+++ b/templates/object_commands_toggle_visibility.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Display|Hide Object Commands</name>
- <id>org.inkstitch.object_commands_toggle_visibility</id>
+ <id>org.{{ id_inkstitch }}.object_commands_toggle_visibility</id>
<param name="extension" type="string" gui-hidden="true">object_commands_toggle_visibility</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Commands">
<submenu name="View" />
</submenu>
diff --git a/templates/outline.xml b/templates/outline.xml
index 90b09e9d..b9db7500 100644
--- a/templates/outline.xml
+++ b/templates/outline.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Outline</name>
- <id>org.inkstitch.outline</id>
+ <id>org.{{ id_inkstitch }}.outline</id>
<param name="extension" type="string" gui-hidden="true">outline</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Tools: Stroke" />
</submenu>
</effects-menu>
diff --git a/templates/output.xml b/templates/output.xml
index e7bef131..e5ac827b 100644
--- a/templates/output.xml
+++ b/templates/output.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>{{ format | upper }} file output</name>
- <id>org.inkstitch.output.{{ format }}</id>
+ <id>org.{{ id_inkstitch }}.output.{{ format }}</id>
<output is_exported="true">
<extension>.{{ format }}</extension>
<mimetype>{{ mimetype }}</mimetype>
- <filetypename>Ink/Stitch: {{ description }} (.{{ format }})</filetypename>
+ <filetypename>{{ menu_inkstitch }}: {{ description }} (.{{ format }})</filetypename>
<filetypetooltip>{{ "Save design in %(file_extension)s format using Ink/Stitch" % dict(file_extension=format.upper()) }}</filetypetooltip>
<dataloss>true</dataloss>
</output>
diff --git a/templates/palette_split_text.xml b/templates/palette_split_text.xml
index 2057fa0a..7565158a 100644
--- a/templates/palette_split_text.xml
+++ b/templates/palette_split_text.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Split text</name>
- <id>org.inkstitch.palette_split_text</id>
+ <id>org.{{ id_inkstitch }}.palette_split_text</id>
<param name="extension" type="string" gui-hidden="true">palette_split_text</param>
<effect needs-live-preview="false">
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Thread Color Management">
<submenu name="Generate Palette"/>
</submenu>
diff --git a/templates/palette_to_text.xml b/templates/palette_to_text.xml
index 42b2b6b7..6cc21694 100644
--- a/templates/palette_to_text.xml
+++ b/templates/palette_to_text.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Palette to text</name>
- <id>org.inkstitch.palette_to_text</id>
+ <id>org.{{ id_inkstitch }}.palette_to_text</id>
<effect needs-live-preview="false">
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Thread Color Management" />
</submenu>
</effects-menu>
diff --git a/templates/params.xml b/templates/params.xml
index 82314da6..9eeecb90 100644
--- a/templates/params.xml
+++ b/templates/params.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Params</name>
- <id>org.inkstitch.params</id>
+ <id>org.{{ id_inkstitch }}.params</id>
<param name="extension" type="string" gui-hidden="true">params</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no" />
+ <submenu name="{{ menu_inkstitch }}" translatable="no" />
</effects-menu>
</effect>
<script>
diff --git a/templates/preferences.xml b/templates/preferences.xml
index ac006521..f4437f1e 100644
--- a/templates/preferences.xml
+++ b/templates/preferences.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Preferences</name>
- <id>org.inkstitch.preferences</id>
+ <id>org.{{ id_inkstitch }}.preferences</id>
<param name="extension" type="string" gui-hidden="true">preferences</param>
<effect implements-custom-gui="true">
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no"/>
+ <submenu name="{{ menu_inkstitch }}" translatable="no"/>
</effects-menu>
</effect>
<script>
diff --git a/templates/print.xml b/templates/print.xml
index 8bcf12b4..539f36fd 100644
--- a/templates/print.xml
+++ b/templates/print.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>PDF Export</name>
- <id>org.inkstitch.print</id>
+ <id>org.{{ id_inkstitch }}.print</id>
<param name="extension" type="string" gui-hidden="true">print</param>
<effect implements-custom-gui="true">
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Visualize and Export" />
</submenu>
</effects-menu>
diff --git a/templates/remove_embroidery_settings.xml b/templates/remove_embroidery_settings.xml
index 2233f563..083f953b 100644
--- a/templates/remove_embroidery_settings.xml
+++ b/templates/remove_embroidery_settings.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Remove embroidery settings</name>
- <id>org.inkstitch.remove_embroidery_settings</id>
+ <id>org.{{ id_inkstitch }}.remove_embroidery_settings</id>
<label>Use this extension to remove the information Ink/Stitch has stored in your document. This can be especially useful if you copy and paste objects from an embroidery design into another document.</label>
<param name="del_params" type="boolean" gui-text="Remove Params"
gui-description="Removes params from selected objects or all objects if nothing is selected.">true</param>
@@ -25,7 +25,7 @@
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Troubleshoot" />
</submenu>
</effects-menu>
diff --git a/templates/reorder.xml b/templates/reorder.xml
index ad33acd3..1ae02f80 100644
--- a/templates/reorder.xml
+++ b/templates/reorder.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Re-stack objects in order of selection</name>
- <id>org.inkstitch.reorder</id>
+ <id>org.{{ id_inkstitch }}.reorder</id>
<param name="extension" type="string" gui-hidden="true">reorder</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Edit" />
</submenu>
</effects-menu>
diff --git a/templates/select_elements.xml b/templates/select_elements.xml
index bfa8d9c5..764ec7d0 100644
--- a/templates/select_elements.xml
+++ b/templates/select_elements.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Select embroidery elements</name>
- <id>org.inkstitch.select_elements</id>
+ <id>org.{{ id_inkstitch }}.select_elements</id>
<param name="extension" type="string" gui-hidden="true">select_elements</param>
<param name="options" type="notebook">
@@ -88,7 +88,7 @@
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Edit" />
</submenu>
</effects-menu>
diff --git a/templates/selection_to_guide_line.xml b/templates/selection_to_guide_line.xml
index 1a3ac0f9..1c2f9790 100644
--- a/templates/selection_to_guide_line.xml
+++ b/templates/selection_to_guide_line.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Selection to guide line</name>
- <id>org.inkstitch.selection_to_guide_line</id>
+ <id>org.{{ id_inkstitch }}.selection_to_guide_line</id>
<param name="extension" type="string" gui-hidden="true">selection_to_guide_line</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Edit" />
</submenu>
</effects-menu>
diff --git a/templates/selection_to_pattern.xml b/templates/selection_to_pattern.xml
index 01a4a482..001282c6 100644
--- a/templates/selection_to_pattern.xml
+++ b/templates/selection_to_pattern.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Selection to pattern</name>
- <id>org.inkstitch.selection_to_pattern</id>
+ <id>org.{{ id_inkstitch }}.selection_to_pattern</id>
<param name="extension" type="string" gui-hidden="true">selection_to_pattern</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Edit" />
</submenu>
</effects-menu>
diff --git a/templates/simulator.xml b/templates/simulator.xml
index 2d8b0300..813b09b5 100644
--- a/templates/simulator.xml
+++ b/templates/simulator.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Simulator / Realistic Preview</name>
- <id>org.inkstitch.simulator</id>
+ <id>org.{{ id_inkstitch }}.simulator</id>
<param name="extension" type="string" gui-hidden="true">simulator</param>
<effect implements-custom-gui="true">
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Visualize and Export" />
</submenu>
</effects-menu>
diff --git a/templates/stitch_plan_preview.xml b/templates/stitch_plan_preview.xml
index e20c4eb7..0a760827 100644
--- a/templates/stitch_plan_preview.xml
+++ b/templates/stitch_plan_preview.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Stitch Plan Preview</name>
- <id>org.inkstitch.stitch_plan_preview</id>
+ <id>org.{{ id_inkstitch }}.stitch_plan_preview</id>
<param name="extension" type="string" gui-hidden="true">stitch_plan_preview</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Visualize and Export" />
</submenu>
</effects-menu>
diff --git a/templates/stitch_plan_preview_undo.xml b/templates/stitch_plan_preview_undo.xml
index 8b26e956..cba65d9f 100644
--- a/templates/stitch_plan_preview_undo.xml
+++ b/templates/stitch_plan_preview_undo.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Undo Stitch Plan Preview</name>
- <id>org.inkstitch.stitch_plan_preview_undo</id>
+ <id>org.{{ id_inkstitch }}.stitch_plan_preview_undo</id>
<param name="extension" type="string" gui-hidden="true">stitch_plan_preview_undo</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Visualize and Export" />
</submenu>
</effects-menu>
diff --git a/templates/stroke_to_lpe_satin.xml b/templates/stroke_to_lpe_satin.xml
index e0c480a7..5b287bfd 100644
--- a/templates/stroke_to_lpe_satin.xml
+++ b/templates/stroke_to_lpe_satin.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Stroke to Live Path Effect Satin</name>
- <id>org.inkstitch.stroke_lpe_satin</id>
+ <id>org.{{ id_inkstitch }}.stroke_lpe_satin</id>
<param name="extension" type="string" gui-hidden="true">stroke_to_lpe_satin</param>
<param name="lpe_satin" type="notebook">
<page name="options" gui-text="Options">
@@ -36,7 +36,7 @@
<effect needs-live-preview="false">
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Tools: Satin" />
</submenu>
</effects-menu>
diff --git a/templates/test_swatches.xml b/templates/test_swatches.xml
index 328fbab8..a0626a9e 100644
--- a/templates/test_swatches.xml
+++ b/templates/test_swatches.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Generate Test Swatches from Selection</name>
- <id>org.inkstitch.test_swatches</id>
+ <id>org.{{ id_inkstitch }}.test_swatches</id>
<param name="extension" type="string" gui-hidden="true">test_swatches</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Edit" />
</submenu>
</effects-menu>
diff --git a/templates/troubleshoot.xml b/templates/troubleshoot.xml
index e2d05cbd..b97971aa 100644
--- a/templates/troubleshoot.xml
+++ b/templates/troubleshoot.xml
@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Troubleshoot Objects</name>
- <id>org.inkstitch.troubleshoot</id>
+ <id>org.{{ id_inkstitch }}.troubleshoot</id>
<param name="extension" type="string" gui-hidden="true">troubleshoot</param>
<param name="pointer-size" type="float" gui-text="Pointer size (mm)" min="1" max="800" precision="2">5</param>
<param name="font-size" type="float" gui-text="Font size (mm)" min="1" max="800" precision="2">2</param>
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Troubleshoot" />
</submenu>
</effects-menu>
diff --git a/templates/update_svg.xml b/templates/update_svg.xml
index 45fe92f8..397d6490 100644
--- a/templates/update_svg.xml
+++ b/templates/update_svg.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Update inkstitch svg</name>
- <id>org.inkstitch.update_svg</id>
+ <id>org.{{ id_inkstitch }}.update_svg</id>
<param name="extension" type="string" gui-hidden="true">update_svg</param>
<effect needs-live-preview="false">
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Troubleshoot" />
</submenu>
</effects-menu>
diff --git a/templates/zigzag_line_to_satin.xml b/templates/zigzag_line_to_satin.xml
index b57baabb..24e93991 100644
--- a/templates/zigzag_line_to_satin.xml
+++ b/templates/zigzag_line_to_satin.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>Zig-Zag Line to Satin</name>
- <id>org.inkstitch.zigzag_line_to_satin</id>
+ <id>org.{{ id_inkstitch }}.zigzag_line_to_satin</id>
<param name="extension" type="string" gui-hidden="true">zigzag_line_to_satin</param>
<param name="zigzag_to_satin" type="notebook">
<page name="options" gui-text="Options">
@@ -11,7 +11,7 @@
<option value="sawtooth">Sawtooth</option>
<option value="zigzag">Zigzag</option>
</param>
- <param name="smoothing" type="boolean" gui-text="Smoothing">true</param>
+ <param name="smoothing" type="boolean" gui-text="Smoothing">true</param>
<param name="rungs" type="boolean" gui-text="Add rungs">true</param>
<param indent="1" name="reduce-rungs" type="boolean" gui-text="Reduce number of rungs">false</param>
</page>
@@ -32,7 +32,7 @@
<effect>
<object-type>all</object-type>
<effects-menu>
- <submenu name="Ink/Stitch" translatable="no">
+ <submenu name="{{ menu_inkstitch }}" translatable="no">
<submenu name="Tools: Satin" />
</submenu>
</effects-menu>
diff --git a/templates/zip.xml b/templates/zip.xml
index d6f4fbb2..ddaefe5b 100644
--- a/templates/zip.xml
+++ b/templates/zip.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<inkscape-extension translationdomain="inkstitch" xmlns="http://www.inkscape.org/namespace/inkscape/extension">
<name>embroidery ZIP file output</name>
- <id>org.inkstitch.output.zip</id>
+ <id>org.{{ id_inkstitch }}.output.zip</id>
<output>
<extension>.zip</extension>
<mimetype>application/zip</mimetype>
- <filetypename>Ink/Stitch: ZIP export multiple formats and extra options (.zip)</filetypename>
+ <filetypename>{{ menu_inkstitch }}: ZIP export multiple formats and extra options (.zip)</filetypename>
<filetypetooltip>Create a ZIP with multiple embroidery file formats using Ink/Stitch</filetypetooltip>
<dataloss>true</dataloss>
</output>