Blame Manual/repository-html/repository_61.html

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

1.60 The <tt>`Filesystem/trunk/Scripts/Bash/Cli/Functions/Svg'</tt> Directory

ee1f37
ee1f37
aaf678
aaf678

1.60.1 Goals

ee1f37
aaf678

This section exists to organize files related to svg

010b2d
functionality of <tt>`centos-art.sh'</tt> script.
ee1f37

ee1f37
aaf678
aaf678

1.60.2 Description

aaf678
aaf678

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

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

aaf678
aaf678
aaf678
aaf678

1.60.2.1 Metadata maintainance

ee1f37
aaf678

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

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

aaf678

The metadata template was created using the metadata information of a

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

aaf678

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

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

aaf678

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

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

aaf678

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

010b2d

aaf678
aaf678
<samp>`Title'</samp>
aaf678

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

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

aaf678
aaf678
<samp>`Date'</samp>
aaf678

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

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

aaf678
aaf678
<samp>`Creator'</samp>
aaf678

Name of entity primarily responsible for making the content of this

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

aaf678
aaf678
<samp>`Rights'</samp>
aaf678

Name of entity with rights to the intellectual Property of this

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

aaf678
aaf678
<samp>`Publisher'</samp>
aaf678

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

aaf678
value is set here, <tt>`centos-art.sh'</tt> script uses the string
aaf678
<samp>`The CentOS Project'</samp>.
010b2d

aaf678
aaf678
<samp>`Identifier'</samp>
aaf678

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

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

aaf678
aaf678
<samp>`Source'</samp>
aaf678

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

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

aaf678
aaf678
<samp>`Relation'</samp>
aaf678

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

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

aaf678
aaf678
<samp>`Language'</samp>
aaf678

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

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

aaf678
aaf678
<samp>`Keywords'</samp>
aaf678

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

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

aaf678
aaf678
<samp>`Coverage'</samp>
aaf678

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

aaf678
<tt>`centos-art.sh'</tt> script uses the string <samp>`The CentOS Project'</samp>.
010b2d

aaf678
aaf678
<samp>`Description'</samp>
aaf678

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

aaf678
<tt>`centos-art.sh'</tt> script uses uses empty value as default.
010b2d

aaf678
aaf678
<samp>`Contributors'</samp>
aaf678

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

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

aaf678
010b2d
aaf678

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

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

aaf678
aaf678
aaf678
aaf678

1.60.2.2 Unused definitions

010b2d
aaf678

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

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

aaf678

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

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

aaf678

To remove unused definitions from several scalable vector graphics

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

010b2d
aaf678
aaf678

1.60.3 Usage

ee1f37
010b2d
aaf678
centos-art svg --update-metadata='path/to/dir'
aaf678
centos-art svg --update-metadata='path/to/dir' --filter='regex'
aaf678

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

aaf678
under <samp>`path/to/dir'</samp> directory.
aaf678

aaf678
aaf678
centos-art svg --vacuum-defs='path/to/dir'
aaf678
centos-art svg --vacuum-defs='path/to/dir' --filter='regex'
aaf678

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

aaf678
files under <samp>`path/to/dir'</samp> directory. 
010b2d

010b2d
010b2d
010b2d

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

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

010b2d
Warning

Warning

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

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

010b2d
aaf678

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

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

010b2d

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

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

ee1f37
aaf678
aaf678

1.60.4 See also

ee1f37
ee1f37
aaf678
1.49 The <tt>`Filesystem/trunk/Scripts/Bash'</tt> Directory  
ee1f37
ee1f37
ee1f37
ee1f37
ee1f37
aaf678
[ < ]
aaf678
[ > ]
ee1f37
   
aaf678
[ << ]
aaf678
[ Up ]
aaf678
[ >> ]
ee1f37
ee1f37

ee1f37
 <font size="-1">
406f69
  This document was generated on March, 1 2011 using texi2html 1.76.
ee1f37
 </font>
ee1f37
 
ee1f37
ee1f37

ee1f37
</body>
ee1f37
</html>