mirror of
https://github.com/LibreOffice/help.git
synced 2026-01-13 05:38:56 +00:00
Replacement done with
find . -name \*.xhp -print0 |xargs -0 -P 0 perl -CS -pi -e \
's#(<link[^>]*?) +name *="[^"]*" *( [^>]+|) *>#$1$2>#g'
(note some inconsistencies with space between name and = and also having
empty value, and some more complicated expression to also clear up
double space before/after the attribute)
translation files will be prepped with:
find */helpcontent2 -name \*.po -print0 |xargs -0 -P 0 perl -CS -pi -e \
$'s#(<link[^>]*?) +name=(?:\\\\"[^"]*\\\\"|\'[^\']*\') *( [^>]+|) *(/?>)#$1$2$3#g unless /^#/'
(note that not all languages use the " as quote character for the
attributes, but that also single quotes appera in the po file. Hence
the use of the shell $'string' syntax to be able to quote ' as \'
It also requires to quote the backslash, so that it needs to be escaped
once for the shell, then another time for perl. Also don't work on
obsolete strings (those are prefixed with #~ in the po files)
Also note that <link..></link> gets turned into <link ../> during
translation extraction (along with removal of the space between the
attribute name and the value), so the pattern needs to be slightly
different here)
Change-Id: I95e53a08e6b0095cd894109ea0de154cc4859d8f
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/143713
Tested-by: Jenkins
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
121 lines
7.2 KiB
XML
121 lines
7.2 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<helpdocument version="1.0">
|
|
<!--
|
|
* This file is part of the LibreOffice project.
|
|
*
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
*
|
|
* This file incorporates work covered by the following license notice:
|
|
*
|
|
* Licensed to the Apache Software Foundation (ASF) under one or more
|
|
* contributor license agreements. See the NOTICE file distributed
|
|
* with this work for additional information regarding copyright
|
|
* ownership. The ASF licenses this file to you under the Apache
|
|
* License, Version 2.0 (the "License"); you may not use this file
|
|
* except in compliance with the License. You may obtain a copy of
|
|
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
|
|
-->
|
|
|
|
<meta>
|
|
<topic id="textscalcguideuserdefined_functionxml" indexer="include" status="PUBLISH">
|
|
<title id="tit" xml-lang="en-US">User-Defined Functions</title>
|
|
<filename>/text/scalc/guide/userdefined_function.xhp</filename>
|
|
</topic>
|
|
<history>
|
|
<created date="2003-10-31T00:00:00">Sun Microsystems, Inc.</created>
|
|
</history>
|
|
</meta>
|
|
<body>
|
|
<bookmark xml-lang="en-US" branch="index" id="bm_id3155411"><bookmark_value>functions; user-defined</bookmark_value>
|
|
<bookmark_value>user-defined functions</bookmark_value>
|
|
<bookmark_value>Basic IDE for user-defined functions</bookmark_value>
|
|
<bookmark_value>IDE; Basic IDE</bookmark_value>
|
|
<bookmark_value>programming;functions</bookmark_value>
|
|
</bookmark>
|
|
<h1 id="hd_id3155411"><variable id="userdefined_function"><link href="text/scalc/guide/userdefined_function.xhp">User-Defined Functions</link>
|
|
</variable></h1>
|
|
<paragraph role="paragraph" id="par_id3153969" xml-lang="en-US">You can apply user-defined functions in $[officename] Calc in the following ways:</paragraph>
|
|
<list type="unordered">
|
|
<listitem>
|
|
<paragraph role="listitem" id="par_id3145366" xml-lang="en-US">You can define your own functions using the Basic-IDE. This method requires a basic knowledge of programming.</paragraph>
|
|
</listitem>
|
|
<listitem>
|
|
<paragraph role="listitem" id="par_id3153768" xml-lang="en-US">You can program functions as <link href="text/scalc/01/04060111.xhp">add-ins</link>. This method requires an advanced knowledge of programming.</paragraph>
|
|
</listitem>
|
|
</list>
|
|
<h2 id="hd_id3149260">Defining A Function Using %PRODUCTNAME Basic</h2>
|
|
<list type="ordered">
|
|
<listitem>
|
|
<paragraph role="listitem" id="par_id3148456" xml-lang="en-US">Choose <menuitem>Tools - Macros - Edit Macros</menuitem>.</paragraph>
|
|
</listitem>
|
|
<listitem>
|
|
<paragraph role="listitem" id="par_id3154510" xml-lang="en-US">You will now see the Basic IDE.</paragraph>
|
|
</listitem>
|
|
<listitem>
|
|
<paragraph role="paragraph" id="par_id651603905832952">In the Object Catalog window, double-click on the module where you want to store your macro.</paragraph>
|
|
</listitem>
|
|
<listitem>
|
|
<paragraph role="listitem" id="par_id3150327" xml-lang="en-US">Enter the function code. In this example, we define a <literal>VOL(a; b; c)</literal> function that calculates the volume of a rectangular solid with side lengths <literal>a</literal>, <literal>b</literal> and <literal>c</literal>:</paragraph>
|
|
</listitem>
|
|
</list>
|
|
<bascode>
|
|
<paragraph role="bascode" id="par_id9797426" xml-lang="en-US" localize="false">Function VOL(a, b, c)</paragraph>
|
|
<paragraph role="bascode" id="par_id781573129338912" xml-lang="en-US" localize="false"> VOL = a*b*c</paragraph>
|
|
<paragraph role="bascode" id="par_id291573129348062" xml-lang="en-US" localize="false">End Function</paragraph>
|
|
</bascode>
|
|
<list type="unordered">
|
|
<listitem>
|
|
<paragraph role="listitem" id="par_id3155443" xml-lang="en-US">Close the Basic-IDE window.</paragraph>
|
|
<paragraph role="listitem" id="par_id3150043" xml-lang="en-US">Your function is automatically saved in the selected module and is now available. If you apply the function in a Calc document that is to be used on another computer, you can copy the function to the Calc document as described in the next section.</paragraph>
|
|
</listitem>
|
|
</list>
|
|
<h2 id="hd_id3147340">Copying a Function To a Document</h2>
|
|
<paragraph role="paragraph" id="par_id3145232" xml-lang="en-US">In stage 2 of "Defining A Function Using %PRODUCTNAME Basic", in the <emph>Macro</emph> dialog you clicked on <emph>Edit </emph>. As the default, in the <emph>Macro from</emph> field the <emph>My Macros - Standard - Module1</emph> module is selected. The <emph>Standard</emph> library resides locally in your user directory.</paragraph>
|
|
<paragraph role="paragraph" id="par_id3154022" xml-lang="en-US">If you want to copy the user-defined function to a Calc document:</paragraph>
|
|
<list type="ordered">
|
|
<listitem>
|
|
<paragraph role="listitem" id="par_id3150304" xml-lang="en-US">Choose <menuitem>Tools - Macros - Organize Macros - Basic</menuitem>.</paragraph>
|
|
</listitem>
|
|
<listitem>
|
|
<paragraph role="listitem" id="par_id3150086" xml-lang="en-US">In the <emph>Macro from</emph> field select <emph>My Macros - Standard - Module1</emph> and click <emph>Edit</emph>.</paragraph>
|
|
</listitem>
|
|
<listitem>
|
|
<paragraph role="listitem" id="par_id3166430" xml-lang="en-US">In the Basic-IDE, select the source of your user-defined function and copy it to the clipboard.</paragraph>
|
|
</listitem>
|
|
<listitem>
|
|
<paragraph role="listitem" id="par_idN1081D" xml-lang="en-US">Close the Basic-IDE.</paragraph>
|
|
</listitem>
|
|
<listitem>
|
|
<paragraph role="listitem" id="par_id3150517" xml-lang="en-US">Choose <menuitem>Tools - Macros - Organize Macros - Basic</menuitem> .</paragraph>
|
|
</listitem>
|
|
<listitem>
|
|
<paragraph role="listitem" id="par_id3145384" xml-lang="en-US">In the <emph>Macro from</emph> field select <emph>(Name of the Calc document) - Standard - Module1</emph>. Click <emph>Edit</emph>.</paragraph>
|
|
</listitem>
|
|
<listitem>
|
|
<paragraph role="listitem" id="par_id3148699" xml-lang="en-US">Paste the clipboard contents in the Basic-IDE of the document.</paragraph>
|
|
</listitem>
|
|
</list>
|
|
<h2 id="hd_id3153305">Applying a User-defined Function in $[officename] Calc</h2>
|
|
<paragraph role="paragraph" id="par_id3148869" xml-lang="en-US">Once you have defined the function <literal>VOL(a; b; c)</literal> in the Basic-IDE, you can apply it the same way as the built-in functions of $[officename] Calc.</paragraph>
|
|
<list type="ordered">
|
|
<listitem>
|
|
<paragraph role="listitem" id="par_id3148606" xml-lang="en-US">Open a Calc document and enter numbers for the function parameters <literal>a</literal>, <literal>b</literal> and <literal>c</literal> in cells A1, B1, and C1.</paragraph>
|
|
</listitem>
|
|
<listitem>
|
|
<paragraph role="listitem" id="par_id3156019" xml-lang="en-US">Set the cursor in another cell and enter the following:</paragraph>
|
|
<paragraph role="paragraph" localize="false" id="par_id3155264" xml-lang="en-US"><input>=VOL(A1;B1;C1)</input></paragraph>
|
|
</listitem>
|
|
<listitem>
|
|
<paragraph role="listitem" id="par_id3146776" xml-lang="en-US">The function is evaluated and you will see the result in the selected cell.</paragraph>
|
|
</listitem>
|
|
</list>
|
|
<section id="relatedtopics">
|
|
<embed href="text/scalc/guide/calculate.xhp#calculate"/>
|
|
<embed href="text/scalc/guide/formula_enter.xhp#formula_enter"/>
|
|
<embed href="text/sbasic/guide/basic_2_python.xhp#basic2python"/>
|
|
</section>
|
|
</body>
|
|
</helpdocument>
|