Blame Manuals/Repository/repository-html/repository_61.html

4c79b5
4c79b5
<html>
ccb7a3
4c79b5
4c79b5
Permission is granted to copy, distribute and/or modify this document
4c79b5
under the terms of the GNU Free Documentation License, Version 1.2 or
4c79b5
any later version published by the Free Software Foundation; with no
4c79b5
Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A
4c79b5
copy of the license is included in the section entitled GNU Free
4c79b5
Documentation License.  
4c79b5
-->
acd47b
4c79b5
4c79b5
Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author)
4c79b5
            Karl Berry  <karl@freefriends.org>
4c79b5
            Olaf Bachmann <obachman@mathematik.uni-kl.de>
4c79b5
            and many others.
4c79b5
Maintained by: Many creative people <dev@texi2html.cvshome.org>
4c79b5
Send bugs and suggestions to <users@texi2html.cvshome.org>
4c79b5
4c79b5
-->
4c79b5
<head>
7fa1fb
<title>CentOS Artwork Repository: 3.58 trunk/Scripts/Bash/Functions/Svg</title>
4c79b5
7fa1fb
<meta name="description" content="CentOS Artwork Repository: 3.58 trunk/Scripts/Bash/Functions/Svg">
7fa1fb
<meta name="keywords" content="CentOS Artwork Repository: 3.58 trunk/Scripts/Bash/Functions/Svg">
4c79b5
<meta name="resource-type" content="document">
4c79b5
<meta name="distribution" content="global">
4c79b5
<meta name="Generator" content="texi2html 1.76">
4c79b5
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
4c79b5
<style type="text/css">
4c79b5
1e9202
@import "/home/centos/artwork/trunk/Identity/Models/Css/Texi2html/common.css";
4c79b5
4c79b5
a.summary-letter {text-decoration: none}
4c79b5
pre.display {font-family: serif}
4c79b5
pre.format {font-family: serif}
4c79b5
pre.menu-comment {font-family: serif}
4c79b5
pre.menu-preformatted {font-family: serif}
4c79b5
pre.smalldisplay {font-family: serif; font-size: smaller}
4c79b5
pre.smallexample {font-size: smaller}
4c79b5
pre.smallformat {font-family: serif; font-size: smaller}
4c79b5
pre.smalllisp {font-size: smaller}
4c79b5
span.sansserif {font-family:sans-serif; font-weight:normal;}
4c79b5
ul.toc {list-style: none}
4c79b5
-->
4c79b5
</style>
4c79b5
4c79b5
4c79b5
</head>
4c79b5
4c79b5
<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
4c79b5
300762
7fa1fb
[ < ]
7fa1fb
[ > ]
4c79b5
   
38bcd9
[ << ]
38bcd9
[ Up ]
7fa1fb
[ >> ]
4c79b5
   
4c79b5
   
4c79b5
   
4c79b5
   
4c79b5
[Top]
4c79b5
[Contents]
7fa1fb
[Index]
4c79b5
[ ? ]
4c79b5
7fa1fb
7fa1fb
7fa1fb

3.58 trunk/Scripts/Bash/Functions/Svg

2dc146
2dc146
7fa1fb
2dc146

3.58.1 Goals

2dc146
7fa1fb

This section exists to organize files related to svg

7fa1fb
functionality of <tt>`centos-art.sh'</tt> script.
2dc146

2dc146
7fa1fb
2dc146

3.58.2 Description

2dc146
7fa1fb

The svg functionality of <tt>`centos-art.sh'</tt> script helps you

7fa1fb
to maintain scalable vector graphics (SVG) inside repository. For
7fa1fb
example, suppose you've been working in CentOS default design models
7fa1fb
under <tt>`trunk/Identity/Themes/Models/'</tt>, and you want to set common
7fa1fb
metadata to all of them, and later remove all unused SVG defintions
7fa1fb
from <samp>`*.svg'</samp> files. Doing so file by file may be a tedious task,
7fa1fb
so the <tt>`centos-art.sh'</tt> script provides the svg
7fa1fb
functionality to aid you maintain such actions.
7fa1fb

7fa1fb
2b5e61
7fa1fb
7fa1fb

3.58.2.1 Metadata maintainance

2b5e61
7fa1fb

The metadata used is defined by Inkscape 0.46 using the SVG standard

7fa1fb
markup. The <tt>`centos-art.sh'</tt> script replaces everything
7fa1fb
in-between <metadata and </metadata> tags with a
7fa1fb
predefined metadata template we've set for this purpose.
7fa1fb

7fa1fb

The metadata template was created using the metadata information of a

7fa1fb
file which, using Inkscape 0.46, all metadata fields were set. This
7fa1fb
created a complete markup representation of how SVG metadata would
7fa1fb
look like. Later, we replaced every single static value with a
7fa1fb
translation marker in the form <samp>`=SOMETEXT='</samp>, where
7fa1fb
SOMETEXT is the name of its main opening tag. Later, we
7fa1fb
transform the metadata template into a sed replacement set of commads
7fa1fb
escaping new lines at the end of each line.
7fa1fb

7fa1fb

With metadata template in place, the <tt>`centos-art.sh'</tt> script uses

7fa1fb
it to create a metadata template instance for the file being processed
7fa1fb
currently.  The metadata template instance contains the metadata
7fa1fb
portion of sed replacement commands with translation markers already
7fa1fb
traduced.  In this action, instance creation, is where we take
7fa1fb
advantage of automation and generate metadata values like title, date,
7fa1fb
keywords, source, identifier, and relation dynamically, based on the
7fa1fb
file path <tt>`centos-art.sh'</tt> script is currently creating metadata
7fa1fb
information for.
7fa1fb

7fa1fb

With metadata template instance in place, the <tt>`centos-art.sh'</tt>

7fa1fb
script uses it to replace real values inside all <samp>`.svg'</samp> files
7fa1fb
under the current location you're running the <tt>`centos-art.sh'</tt>
7fa1fb
script on.  Default behaviour is to ask user to enter each metadatum
7fa1fb
required, one by one. If user leaves metadatum empty, by pressing
7fa1fb
RET key, <tt>`centos-art.sh'</tt> uses its default value.
7fa1fb

7fa1fb

The <tt>`centos-art.sh'</tt> script modifies the following metadata:

2dc146

2dc146
7fa1fb
<samp>`Title'</samp>
7fa1fb

Name by which this document is formally known. If no value is set

7fa1fb
here, <tt>`centos-art.sh'</tt> script uses the file name as title.
2dc146

7fa1fb
7fa1fb
<samp>`Date'</samp>
7fa1fb

Date associated with the creation of this document (YYYY-MM-DD). If no

7fa1fb
value is set here, <tt>`centos-art.sh'</tt> script uses the current date
7fa1fb
information as in date +%Y-%m-%d.
2dc146

fa7cae
7fa1fb
<samp>`Creator'</samp>
7fa1fb

Name of entity primarily responsible for making the content of this

7fa1fb
document. If no value is set here, <tt>`centos-art.sh'</tt> script uses
7fa1fb
the string <samp>`The CentOS Project'</samp>.
2dc146

7bbd70
7fa1fb
<samp>`Rights'</samp>
7fa1fb

Name of entity with rights to the intellectual Property of this

7fa1fb
document. If no value is set here, <tt>`centos-art.sh'</tt> script uses
7fa1fb
the string <samp>`The CentOS Project'</samp>.
2dc146

7bbd70
7fa1fb
<samp>`Publisher'</samp>
7fa1fb

Name of entity responsible for making this document available. If no

7fa1fb
value is set here, <tt>`centos-art.sh'</tt> script uses the string
7fa1fb
<samp>`The CentOS Project'</samp>.
2dc146

7fa1fb
7fa1fb
<samp>`Identifier'</samp>
7fa1fb

Unique URI to reference this document. If no value is set here,

7fa1fb
<tt>`centos-art.sh'</tt> script uses the current file path to build the
7fa1fb
related url that points to current file location inside repository
7fa1fb
central server.
2dc146

7fa1fb
7fa1fb
<samp>`Source'</samp>
7fa1fb

Unique URI to reference the source of this document. If no value is

7fa1fb
set here, <tt>`centos-art.sh'</tt> script uses current file path to build
7fa1fb
the related url that points to current file location inside repository
7fa1fb
central server.
2dc146

7bbd70
7fa1fb
<samp>`Relation'</samp>
7fa1fb

Unique URI to a related document. If no value is set here,

7fa1fb
<tt>`centos-art.sh'</tt> script uses current file path to build the
7fa1fb
related url that points to current file location inside repository
7fa1fb
central server.
4a9d2a

7fa1fb
7fa1fb
<samp>`Language'</samp>
7fa1fb

Two-letter language tag with optional subtags for the language of this

7fa1fb
document. (e.g. <samp>`en-GB'</samp>). If no value is set here,
7fa1fb
<tt>`centos-art.sh'</tt> script uses the current locale information as in
7fa1fb
cli_getCurrentLocale function.
fa7cae

7fa1fb
7fa1fb
<samp>`Keywords'</samp>
7fa1fb

The topic of this document as comma-separated key words, prhases, or

7fa1fb
classifications. If no value is set here, <tt>`centos-art.sh'</tt> script
7fa1fb
uses file path to build 
fa7cae

7fa1fb
7fa1fb
<samp>`Coverage'</samp>
7fa1fb

Extent or scope of this document. If no value is set here,

7fa1fb
<tt>`centos-art.sh'</tt> script uses the string <samp>`The CentOS Project'</samp>.
7bbd70

7fa1fb
7fa1fb
<samp>`Description'</samp>
7fa1fb

Description about the document. If no value is set here,

7fa1fb
<tt>`centos-art.sh'</tt> script uses uses empty value as default.
7bbd70

2b5e61
7fa1fb
<samp>`Contributors'</samp>
7fa1fb

People that contributes in the creation/maintainance of the document.

7fa1fb
If no value is set here, <tt>`centos-art.sh'</tt> script uses uses empty
7fa1fb
value as default.
7fa1fb

2b5e61
166893
7fa1fb

The <samp>`License'</samp> metadatum is not set as a choise, by now. It is

7fa1fb
fixed Creative Common Attribution Share-Alike 3.0 License. This is done in order to
7fa1fb
grant license consistency among all SVG files we manage inside CentOS
7fa1fb
Artwork Repository.
7fa1fb

7fa1fb
7fa1fb
7fa1fb
7fa1fb

3.58.2.2 Unused definitions

7fa1fb
7fa1fb

Many of the no-longer-used gradients, patterns, and markers (more

7fa1fb
precisely, those which you edited manually) remain in the
7fa1fb
corresponding palettes and can be reused for new objects. However if
7fa1fb
you want to optimize your document, use the <samp>`Vacuum Defs'</samp> command
7fa1fb
in <samp>`File'</samp> menu. It will remove any gradients, patterns, or
7fa1fb
markers which are not used by anything in the document, making the
7fa1fb
file smaller. 
7fa1fb

7fa1fb

If you have one or two couple of files, removing unused definitions

7fa1fb
using the graphical interface may be enough to you.  In contrast, if
7fa1fb
you have dozens or even houndreds of scalable vector graphics files to
7fa1fb
maintain it is not a fun task to use the graphical interface to remove
7fa1fb
unused definitions editing those files one by one.
7fa1fb

7fa1fb

To remove unused definitions from several scalable vector graphics

7fa1fb
files, the <tt>`centos-art.sh'</tt> script uses Inkscape command-line
7fa1fb
interface, specifically with the <samp>`--vaccum-defs'</samp> option.
7fa1fb

2b5e61
7fa1fb
008ee0

3.58.3 Usage

2c8180
2dc146
7fa1fb
centos-art svg --update-metadata='path/to/dir'
7fa1fb
centos-art svg --update-metadata='path/to/dir' --filter='regex'
7fa1fb

Use these commands to update metadata information to <samp>`.svg'</samp> files

7fa1fb
under <samp>`path/to/dir'</samp> directory.
2dc146

2dc146
7fa1fb
centos-art svg --vacuum-defs='path/to/dir'
7fa1fb
centos-art svg --vacuum-defs='path/to/dir' --filter='regex'
7fa1fb

Use these commands to remove unused definitions inside <samp>`.svg'</samp>

7fa1fb
files under <samp>`path/to/dir'</samp> directory. 
7fa1fb

2dc146
2dc146
7fa1fb

When you provide <samp>`--filter='regex''</samp> argument, the list of files

7fa1fb
to process is reduced as specified in <samp>`regex'</samp> regular expression.
7fa1fb
Inside <tt>`centos-art.sh'</tt> script, the <samp>`regex'</samp> regular
7fa1fb
expression is used in combination with find command to look
7fa1fb
for files matching the regular expression path pattern.
7fa1fb

7fa1fb
Warning

Warning

In order for <samp>`regex'</samp> regular expression to match

7fa1fb
a file, the <samp>`regex'</samp> regular expresion must match the whole file
7fa1fb
path not just the file name. 
7fa1fb

7fa1fb
7fa1fb

For example, if you want to match all <tt>`summary.svg'</tt> files inside

7fa1fb
<tt>`path/to/dir'</tt>, use the .+/summary regular expression.
7fa1fb
Later, <tt>`centos-art.sh'</tt> script uses this value inside
7fa1fb
^$REGEX\.svg$ expression in order to build the final regular
7fa1fb
expression (i.e., ^.+/summary\.svg$) that is evaluated against
7fa1fb
available file paths inside the list of files to process.
7fa1fb

7fa1fb

Exceptionally, when you provide <samp>`--filter='regex''</samp> in the way

7fa1fb
that <samp>`regex'</samp>, appended to <samp>`path/to/dir/'</samp> (i.e.
7fa1fb
<samp>`path/to/dir/regex'</samp>), matches a regular file; the
7fa1fb
<tt>`centos-art.sh'</tt> script uses the file matching as only file in the
7fa1fb
list of files to process. 
7fa1fb

2c8180
7fa1fb
008ee0

3.58.4 See also

2c8180
4a9d2a
7fa1fb
3.49 trunk/Scripts/Bash  
4a9d2a
7fa1fb
3.50 trunk/Scripts/Bash/Functions  
4a9d2a
4a9d2a
c9b54d
035049
300762
7fa1fb
[ < ]
7fa1fb
[ > ]
300762
   
38bcd9
[ << ]
7fa1fb
[ Up ]
7fa1fb
[ >> ]
300762
4c79b5

4c79b5
 <font size="-1">
acd47b
  This document was generated on February, 26 2011 using texi2html 1.76.
4c79b5
 </font>
4c79b5
 
4c79b5
4c79b5

4c79b5
</body>
4c79b5
</html>