What is this newcommand argument?
newcommand*{name}[1][C]{%
I have come very familiar with newcommand
however, I came across this line of code and i do not know what the [C]
is for.
macros arguments
New contributor
|
show 1 more comment
newcommand*{name}[1][C]{%
I have come very familiar with newcommand
however, I came across this line of code and i do not know what the [C]
is for.
macros arguments
New contributor
2
Welcome to TeX.SE! This means in this case thatname
has one optional argument whose default value isC
.
– marmot
4 hours ago
latexref.xyz/…
– Henri Menke
3 hours ago
@HenriMenke Is there a more modern link in which things likeit
do not get advertized?
– marmot
3 hours ago
@marmot Well,it
etc. are commands provided by the standard LaTeX classes, so naturally they would be listed in a reference manual. However, you can contribute and remove them latexref.xyz/dev/writing.html
– Henri Menke
3 hours ago
2
Possible duplicate of newcommand argument confusion
– Alan Munn
1 hour ago
|
show 1 more comment
newcommand*{name}[1][C]{%
I have come very familiar with newcommand
however, I came across this line of code and i do not know what the [C]
is for.
macros arguments
New contributor
newcommand*{name}[1][C]{%
I have come very familiar with newcommand
however, I came across this line of code and i do not know what the [C]
is for.
macros arguments
macros arguments
New contributor
New contributor
edited 1 hour ago
Werner
440k669691662
440k669691662
New contributor
asked 4 hours ago
Jesus EscarenoJesus Escareno
111
111
New contributor
New contributor
2
Welcome to TeX.SE! This means in this case thatname
has one optional argument whose default value isC
.
– marmot
4 hours ago
latexref.xyz/…
– Henri Menke
3 hours ago
@HenriMenke Is there a more modern link in which things likeit
do not get advertized?
– marmot
3 hours ago
@marmot Well,it
etc. are commands provided by the standard LaTeX classes, so naturally they would be listed in a reference manual. However, you can contribute and remove them latexref.xyz/dev/writing.html
– Henri Menke
3 hours ago
2
Possible duplicate of newcommand argument confusion
– Alan Munn
1 hour ago
|
show 1 more comment
2
Welcome to TeX.SE! This means in this case thatname
has one optional argument whose default value isC
.
– marmot
4 hours ago
latexref.xyz/…
– Henri Menke
3 hours ago
@HenriMenke Is there a more modern link in which things likeit
do not get advertized?
– marmot
3 hours ago
@marmot Well,it
etc. are commands provided by the standard LaTeX classes, so naturally they would be listed in a reference manual. However, you can contribute and remove them latexref.xyz/dev/writing.html
– Henri Menke
3 hours ago
2
Possible duplicate of newcommand argument confusion
– Alan Munn
1 hour ago
2
2
Welcome to TeX.SE! This means in this case that
name
has one optional argument whose default value is C
.– marmot
4 hours ago
Welcome to TeX.SE! This means in this case that
name
has one optional argument whose default value is C
.– marmot
4 hours ago
latexref.xyz/…
– Henri Menke
3 hours ago
latexref.xyz/…
– Henri Menke
3 hours ago
@HenriMenke Is there a more modern link in which things like
it
do not get advertized?– marmot
3 hours ago
@HenriMenke Is there a more modern link in which things like
it
do not get advertized?– marmot
3 hours ago
@marmot Well,
it
etc. are commands provided by the standard LaTeX classes, so naturally they would be listed in a reference manual. However, you can contribute and remove them latexref.xyz/dev/writing.html– Henri Menke
3 hours ago
@marmot Well,
it
etc. are commands provided by the standard LaTeX classes, so naturally they would be listed in a reference manual. However, you can contribute and remove them latexref.xyz/dev/writing.html– Henri Menke
3 hours ago
2
2
Possible duplicate of newcommand argument confusion
– Alan Munn
1 hour ago
Possible duplicate of newcommand argument confusion
– Alan Munn
1 hour ago
|
show 1 more comment
1 Answer
1
active
oldest
votes
LaTeX's newcommand
has the following syntax:
newcommand *{<FOO>}[<i>]{<TEXT>}
User command to define
FOO
to be a macro withi
arguments (i
= 0 if missing)
having the definition<TEXT>
. Produces an error ifFOO
already defined.
Normally the command is defined to belong
(i.e. it may take multiple paragraphs in its argument). In the star-form, the command is not defined aslong
and a blank line in any argument to the command would generate an error.
If you define a command with at least one argument (i
> 0), you can specify an additional (optional) argument before the definition <TEXT>
. This optional argument will be used as the "default" value for a first optional argument to FOO
.
So, as an example, consider
newcommand{FOO}[2]{<TEXT>}
This command has two mandatory arguments and is therefore used as FOO{<one>}{<two>}
. However,
newcommand{FOO}[2][X]{<TEXT>}
takes two (2
) arguments, the first of which is optional and has a default of X
(if not supplied). You can use it as FOO{<one>}
(which is equivalent to FOO[X]{<one>}
) or FOO[<one>]{<two>}
. Similarly,
newcommand{FOO}[1][X]{<TEXT>}
takes a single (1
) optional argument that has a default value of X
(if not supplied) and can be used as FOO
(which is equivalent to FOO[X]
) or FOO[<one>]
.
In your particular case,
newcommand*{name}[1][C]{<TEXT>}
defines name
to (be non-long
; that is, <TEXT>
cannot have blank lines and) take a single (1
) optional argument that defaults to C
if not supplied. You can use it as name
(which is equivalent to name[C]
) or name[<one>]
.
Reference:
LaTeX2e sources
What do
newcommand
,renewcommand
, andprovidecommand
do, and how do they differ?What is the difference between
def
andnewcommand
?
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "85"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Jesus Escareno is a new contributor. Be nice, and check out our Code of Conduct.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e) {
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom)) {
StackExchange.using('gps', function() { StackExchange.gps.track('embedded_signup_form.view', { location: 'question_page' }); });
$window.unbind('scroll', onScroll);
}
};
$window.on('scroll', onScroll);
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f471077%2fwhat-is-this-newcommand-argument%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
LaTeX's newcommand
has the following syntax:
newcommand *{<FOO>}[<i>]{<TEXT>}
User command to define
FOO
to be a macro withi
arguments (i
= 0 if missing)
having the definition<TEXT>
. Produces an error ifFOO
already defined.
Normally the command is defined to belong
(i.e. it may take multiple paragraphs in its argument). In the star-form, the command is not defined aslong
and a blank line in any argument to the command would generate an error.
If you define a command with at least one argument (i
> 0), you can specify an additional (optional) argument before the definition <TEXT>
. This optional argument will be used as the "default" value for a first optional argument to FOO
.
So, as an example, consider
newcommand{FOO}[2]{<TEXT>}
This command has two mandatory arguments and is therefore used as FOO{<one>}{<two>}
. However,
newcommand{FOO}[2][X]{<TEXT>}
takes two (2
) arguments, the first of which is optional and has a default of X
(if not supplied). You can use it as FOO{<one>}
(which is equivalent to FOO[X]{<one>}
) or FOO[<one>]{<two>}
. Similarly,
newcommand{FOO}[1][X]{<TEXT>}
takes a single (1
) optional argument that has a default value of X
(if not supplied) and can be used as FOO
(which is equivalent to FOO[X]
) or FOO[<one>]
.
In your particular case,
newcommand*{name}[1][C]{<TEXT>}
defines name
to (be non-long
; that is, <TEXT>
cannot have blank lines and) take a single (1
) optional argument that defaults to C
if not supplied. You can use it as name
(which is equivalent to name[C]
) or name[<one>]
.
Reference:
LaTeX2e sources
What do
newcommand
,renewcommand
, andprovidecommand
do, and how do they differ?What is the difference between
def
andnewcommand
?
add a comment |
LaTeX's newcommand
has the following syntax:
newcommand *{<FOO>}[<i>]{<TEXT>}
User command to define
FOO
to be a macro withi
arguments (i
= 0 if missing)
having the definition<TEXT>
. Produces an error ifFOO
already defined.
Normally the command is defined to belong
(i.e. it may take multiple paragraphs in its argument). In the star-form, the command is not defined aslong
and a blank line in any argument to the command would generate an error.
If you define a command with at least one argument (i
> 0), you can specify an additional (optional) argument before the definition <TEXT>
. This optional argument will be used as the "default" value for a first optional argument to FOO
.
So, as an example, consider
newcommand{FOO}[2]{<TEXT>}
This command has two mandatory arguments and is therefore used as FOO{<one>}{<two>}
. However,
newcommand{FOO}[2][X]{<TEXT>}
takes two (2
) arguments, the first of which is optional and has a default of X
(if not supplied). You can use it as FOO{<one>}
(which is equivalent to FOO[X]{<one>}
) or FOO[<one>]{<two>}
. Similarly,
newcommand{FOO}[1][X]{<TEXT>}
takes a single (1
) optional argument that has a default value of X
(if not supplied) and can be used as FOO
(which is equivalent to FOO[X]
) or FOO[<one>]
.
In your particular case,
newcommand*{name}[1][C]{<TEXT>}
defines name
to (be non-long
; that is, <TEXT>
cannot have blank lines and) take a single (1
) optional argument that defaults to C
if not supplied. You can use it as name
(which is equivalent to name[C]
) or name[<one>]
.
Reference:
LaTeX2e sources
What do
newcommand
,renewcommand
, andprovidecommand
do, and how do they differ?What is the difference between
def
andnewcommand
?
add a comment |
LaTeX's newcommand
has the following syntax:
newcommand *{<FOO>}[<i>]{<TEXT>}
User command to define
FOO
to be a macro withi
arguments (i
= 0 if missing)
having the definition<TEXT>
. Produces an error ifFOO
already defined.
Normally the command is defined to belong
(i.e. it may take multiple paragraphs in its argument). In the star-form, the command is not defined aslong
and a blank line in any argument to the command would generate an error.
If you define a command with at least one argument (i
> 0), you can specify an additional (optional) argument before the definition <TEXT>
. This optional argument will be used as the "default" value for a first optional argument to FOO
.
So, as an example, consider
newcommand{FOO}[2]{<TEXT>}
This command has two mandatory arguments and is therefore used as FOO{<one>}{<two>}
. However,
newcommand{FOO}[2][X]{<TEXT>}
takes two (2
) arguments, the first of which is optional and has a default of X
(if not supplied). You can use it as FOO{<one>}
(which is equivalent to FOO[X]{<one>}
) or FOO[<one>]{<two>}
. Similarly,
newcommand{FOO}[1][X]{<TEXT>}
takes a single (1
) optional argument that has a default value of X
(if not supplied) and can be used as FOO
(which is equivalent to FOO[X]
) or FOO[<one>]
.
In your particular case,
newcommand*{name}[1][C]{<TEXT>}
defines name
to (be non-long
; that is, <TEXT>
cannot have blank lines and) take a single (1
) optional argument that defaults to C
if not supplied. You can use it as name
(which is equivalent to name[C]
) or name[<one>]
.
Reference:
LaTeX2e sources
What do
newcommand
,renewcommand
, andprovidecommand
do, and how do they differ?What is the difference between
def
andnewcommand
?
LaTeX's newcommand
has the following syntax:
newcommand *{<FOO>}[<i>]{<TEXT>}
User command to define
FOO
to be a macro withi
arguments (i
= 0 if missing)
having the definition<TEXT>
. Produces an error ifFOO
already defined.
Normally the command is defined to belong
(i.e. it may take multiple paragraphs in its argument). In the star-form, the command is not defined aslong
and a blank line in any argument to the command would generate an error.
If you define a command with at least one argument (i
> 0), you can specify an additional (optional) argument before the definition <TEXT>
. This optional argument will be used as the "default" value for a first optional argument to FOO
.
So, as an example, consider
newcommand{FOO}[2]{<TEXT>}
This command has two mandatory arguments and is therefore used as FOO{<one>}{<two>}
. However,
newcommand{FOO}[2][X]{<TEXT>}
takes two (2
) arguments, the first of which is optional and has a default of X
(if not supplied). You can use it as FOO{<one>}
(which is equivalent to FOO[X]{<one>}
) or FOO[<one>]{<two>}
. Similarly,
newcommand{FOO}[1][X]{<TEXT>}
takes a single (1
) optional argument that has a default value of X
(if not supplied) and can be used as FOO
(which is equivalent to FOO[X]
) or FOO[<one>]
.
In your particular case,
newcommand*{name}[1][C]{<TEXT>}
defines name
to (be non-long
; that is, <TEXT>
cannot have blank lines and) take a single (1
) optional argument that defaults to C
if not supplied. You can use it as name
(which is equivalent to name[C]
) or name[<one>]
.
Reference:
LaTeX2e sources
What do
newcommand
,renewcommand
, andprovidecommand
do, and how do they differ?What is the difference between
def
andnewcommand
?
answered 1 hour ago
WernerWerner
440k669691662
440k669691662
add a comment |
add a comment |
Jesus Escareno is a new contributor. Be nice, and check out our Code of Conduct.
Jesus Escareno is a new contributor. Be nice, and check out our Code of Conduct.
Jesus Escareno is a new contributor. Be nice, and check out our Code of Conduct.
Jesus Escareno is a new contributor. Be nice, and check out our Code of Conduct.
Thanks for contributing an answer to TeX - LaTeX Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e) {
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom)) {
StackExchange.using('gps', function() { StackExchange.gps.track('embedded_signup_form.view', { location: 'question_page' }); });
$window.unbind('scroll', onScroll);
}
};
$window.on('scroll', onScroll);
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f471077%2fwhat-is-this-newcommand-argument%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e) {
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom)) {
StackExchange.using('gps', function() { StackExchange.gps.track('embedded_signup_form.view', { location: 'question_page' }); });
$window.unbind('scroll', onScroll);
}
};
$window.on('scroll', onScroll);
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e) {
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom)) {
StackExchange.using('gps', function() { StackExchange.gps.track('embedded_signup_form.view', { location: 'question_page' }); });
$window.unbind('scroll', onScroll);
}
};
$window.on('scroll', onScroll);
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e) {
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom)) {
StackExchange.using('gps', function() { StackExchange.gps.track('embedded_signup_form.view', { location: 'question_page' }); });
$window.unbind('scroll', onScroll);
}
};
$window.on('scroll', onScroll);
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
2
Welcome to TeX.SE! This means in this case that
name
has one optional argument whose default value isC
.– marmot
4 hours ago
latexref.xyz/…
– Henri Menke
3 hours ago
@HenriMenke Is there a more modern link in which things like
it
do not get advertized?– marmot
3 hours ago
@marmot Well,
it
etc. are commands provided by the standard LaTeX classes, so naturally they would be listed in a reference manual. However, you can contribute and remove them latexref.xyz/dev/writing.html– Henri Menke
3 hours ago
2
Possible duplicate of newcommand argument confusion
– Alan Munn
1 hour ago