Blame Manuals/Repository/repository-html/repository_60.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
-->
bf28e1
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>
6a8116
<title>CentOS Artwork Repository: 3.57 trunk/Scripts/Bash/Functions/Svg</title>
4c79b5
6a8116
<meta name="description" content="CentOS Artwork Repository: 3.57 trunk/Scripts/Bash/Functions/Svg">
6a8116
<meta name="keywords" content="CentOS Artwork Repository: 3.57 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
6a8116
[ < ]
6a8116
[ > ]
4c79b5
   
4c79b5
[ << ]
38bcd9
[ Up ]
6a8116
[ >> ]
4c79b5
   
4c79b5
   
4c79b5
   
4c79b5
   
4c79b5
[Top]
4c79b5
[Contents]
6a8116
[Index]
4c79b5
[ ? ]
4c79b5
6a8116
6a8116
6a8116

3.57 trunk/Scripts/Bash/Functions/Svg

4a9d2a
4a9d2a
6a8116
4a9d2a

3.57.1 Goals

4a9d2a
6a8116

This section exists to organize files related to svg

6a8116
functionality of <tt>`centos-art.sh'</tt> script.
4a9d2a

4a9d2a
6a8116
4a9d2a

3.57.2 Description

4a9d2a
6a8116

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

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

6a8116
2c3589
6a8116
6a8116

3.57.2.1 Metadata maintainance

2c3589
6a8116

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

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

6a8116

The metadata template was created using the metadata information of a

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

6a8116

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

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

6a8116

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

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

6a8116

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

2c3589

4a9d2a
6a8116
<samp>`Title'</samp>
6a8116

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

6a8116
here, <tt>`centos-art.sh'</tt> script uses the file name as title.
2c3589

6a8116
6a8116
<samp>`Date'</samp>
6a8116

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

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

2c3589
6a8116
<samp>`Creator'</samp>
6a8116

Name of entity primarily responsible for making the content of this

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

2c3589
6a8116
<samp>`Rights'</samp>
6a8116

Name of entity with rights to the intellectual Property of this

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

2c3589
6a8116
<samp>`Publisher'</samp>
6a8116

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

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

6a8116
6a8116
<samp>`Identifier'</samp>
6a8116

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

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

6a8116
6a8116
<samp>`Source'</samp>
6a8116

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

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

2c3589
6a8116
<samp>`Relation'</samp>
6a8116

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

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

6a8116
6a8116
<samp>`Language'</samp>
6a8116

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

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

6a8116
6a8116
<samp>`Keywords'</samp>
6a8116

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

6a8116
classifications. If no value is set here, <tt>`centos-art.sh'</tt> script
6a8116
uses file path to build 
2c3589

6a8116
6a8116
<samp>`Coverage'</samp>
6a8116

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

6a8116
<tt>`centos-art.sh'</tt> script uses the string <samp>`The CentOS Project'</samp>.
2c3589

6a8116
6a8116
<samp>`Description'</samp>
6a8116

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

6a8116
<tt>`centos-art.sh'</tt> script uses uses empty value as default.
2dc146

2c3589
6a8116
<samp>`Contributors'</samp>
6a8116

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

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

2c3589
008ee0
6a8116

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

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

6a8116
6a8116
6a8116
6a8116

3.57.2.2 Unused definitions

6a8116
6a8116

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

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

6a8116

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

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

6a8116

To remove unused definitions from several scalable vector graphics

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

2c3589
6a8116
2c3589

3.57.3 Usage

2c3589
2c3589
6a8116
centos-art svg --update-metadata='path/to/dir'
6a8116
centos-art svg --update-metadata='path/to/dir' --filter='regex'
6a8116

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

6a8116
under <samp>`path/to/dir'</samp> directory.
2c3589

2c3589
6a8116
centos-art svg --vacuum-defs='path/to/dir'
6a8116
centos-art svg --vacuum-defs='path/to/dir' --filter='regex'
6a8116

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

6a8116
files under <samp>`path/to/dir'</samp> directory. 
6a8116

2c3589
2c3589
6a8116

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

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

6a8116
Warning

Warning

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

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

6a8116
6a8116

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

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

6a8116

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

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

2c3589
6a8116
38bcd9

3.57.4 See also

38bcd9
4a9d2a
6a8116
3.48 trunk/Scripts/Bash  
4a9d2a
6a8116
3.49 trunk/Scripts/Bash/Functions  
4a9d2a
4a9d2a
008ee0
6aec21
300762
6a8116
[ < ]
6a8116
[ > ]
300762
   
300762
[ << ]
6a8116
[ Up ]
6a8116
[ >> ]
300762
4c79b5

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

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