Do TeXStudio Macros allow for conditionals?












0















I am trying to get a conditional to work within a TeXStudio script macro. Specifically, this is what I have:



%SCRIPT
txt = cursor.selectedText()
editor.write("\left\langle "+txt+" \right\rangle")
cursor.clearSelection()
if (cursor.hasSelection() == false) {
cursor.shift(-14)
}


The above macro, basically wraps the selected text in leftlangle and rightrangle. The second part is meant to move the cursor inside, if there is no selection. If there is a selection, I want the cursor to be where it would normally be (outside, to the right of rangle).



The above macro works fine, except it always moves the cursor inside, regardless of whether I have a selection. If I remove the conditional statement, then the macro is always outside. Is this not how conditionals work in TeXStudio?










share|improve this question







New contributor




jackson5 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.





















  • I think if you define a LaTeX new command on preamble of you tex file it will work as you expect. TXS will be able to recognize it and autocomplete it.

    – Sigur
    4 hours ago











  • Welcome to TeX.SE!

    – Kurt
    2 hours ago
















0















I am trying to get a conditional to work within a TeXStudio script macro. Specifically, this is what I have:



%SCRIPT
txt = cursor.selectedText()
editor.write("\left\langle "+txt+" \right\rangle")
cursor.clearSelection()
if (cursor.hasSelection() == false) {
cursor.shift(-14)
}


The above macro, basically wraps the selected text in leftlangle and rightrangle. The second part is meant to move the cursor inside, if there is no selection. If there is a selection, I want the cursor to be where it would normally be (outside, to the right of rangle).



The above macro works fine, except it always moves the cursor inside, regardless of whether I have a selection. If I remove the conditional statement, then the macro is always outside. Is this not how conditionals work in TeXStudio?










share|improve this question







New contributor




jackson5 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.





















  • I think if you define a LaTeX new command on preamble of you tex file it will work as you expect. TXS will be able to recognize it and autocomplete it.

    – Sigur
    4 hours ago











  • Welcome to TeX.SE!

    – Kurt
    2 hours ago














0












0








0








I am trying to get a conditional to work within a TeXStudio script macro. Specifically, this is what I have:



%SCRIPT
txt = cursor.selectedText()
editor.write("\left\langle "+txt+" \right\rangle")
cursor.clearSelection()
if (cursor.hasSelection() == false) {
cursor.shift(-14)
}


The above macro, basically wraps the selected text in leftlangle and rightrangle. The second part is meant to move the cursor inside, if there is no selection. If there is a selection, I want the cursor to be where it would normally be (outside, to the right of rangle).



The above macro works fine, except it always moves the cursor inside, regardless of whether I have a selection. If I remove the conditional statement, then the macro is always outside. Is this not how conditionals work in TeXStudio?










share|improve this question







New contributor




jackson5 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.












I am trying to get a conditional to work within a TeXStudio script macro. Specifically, this is what I have:



%SCRIPT
txt = cursor.selectedText()
editor.write("\left\langle "+txt+" \right\rangle")
cursor.clearSelection()
if (cursor.hasSelection() == false) {
cursor.shift(-14)
}


The above macro, basically wraps the selected text in leftlangle and rightrangle. The second part is meant to move the cursor inside, if there is no selection. If there is a selection, I want the cursor to be where it would normally be (outside, to the right of rangle).



The above macro works fine, except it always moves the cursor inside, regardless of whether I have a selection. If I remove the conditional statement, then the macro is always outside. Is this not how conditionals work in TeXStudio?







macros texstudio scripts






share|improve this question







New contributor




jackson5 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.











share|improve this question







New contributor




jackson5 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









share|improve this question




share|improve this question






New contributor




jackson5 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









asked 4 hours ago









jackson5jackson5

1012




1012




New contributor




jackson5 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.





New contributor





jackson5 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.






jackson5 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.













  • I think if you define a LaTeX new command on preamble of you tex file it will work as you expect. TXS will be able to recognize it and autocomplete it.

    – Sigur
    4 hours ago











  • Welcome to TeX.SE!

    – Kurt
    2 hours ago



















  • I think if you define a LaTeX new command on preamble of you tex file it will work as you expect. TXS will be able to recognize it and autocomplete it.

    – Sigur
    4 hours ago











  • Welcome to TeX.SE!

    – Kurt
    2 hours ago

















I think if you define a LaTeX new command on preamble of you tex file it will work as you expect. TXS will be able to recognize it and autocomplete it.

– Sigur
4 hours ago





I think if you define a LaTeX new command on preamble of you tex file it will work as you expect. TXS will be able to recognize it and autocomplete it.

– Sigur
4 hours ago













Welcome to TeX.SE!

– Kurt
2 hours ago





Welcome to TeX.SE!

– Kurt
2 hours ago










0






active

oldest

votes












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
});


}
});






jackson5 is a new contributor. Be nice, and check out our Code of Conduct.










draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f482682%2fdo-texstudio-macros-allow-for-conditionals%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























0






active

oldest

votes








0






active

oldest

votes









active

oldest

votes






active

oldest

votes








jackson5 is a new contributor. Be nice, and check out our Code of Conduct.










draft saved

draft discarded


















jackson5 is a new contributor. Be nice, and check out our Code of Conduct.













jackson5 is a new contributor. Be nice, and check out our Code of Conduct.












jackson5 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.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f482682%2fdo-texstudio-macros-allow-for-conditionals%23new-answer', 'question_page');
}
);

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







Popular posts from this blog

A CLEAN and SIMPLE way to add appendices to Table of Contents and bookmarks

Calculate evaluation metrics using cross_val_predict sklearn

Insert data from modal to MySQL (multiple modal on website)