What's wrong with this PS1-Prompt?











up vote
2
down vote

favorite












I was styling my PS1-Prompt to resemble the iPython-Prompt as:



PS1FIRSTLINE="[n][t] [e[1me[38;5;196m]u@H[e[0m] in [e[1me[38;5;196m]w[e[0m"
PS1SECONDLINE="ne[92m]In [[e[1m]#[e[0m]] $ "
PS1="$PS1FIRSTLINE$PS1SECONDLINE"


enter image description here



However, sometimes i get weird issues like, that the beginning of the last executed command is still there after the prompt and can't be deleted.



I think that it's an issue with my way of escaping the colors with e[ ... ] and not something with bash or the suckless-terminal, that i'm using.



Can somebody help me out?










share|improve this question


























    up vote
    2
    down vote

    favorite












    I was styling my PS1-Prompt to resemble the iPython-Prompt as:



    PS1FIRSTLINE="[n][t] [e[1me[38;5;196m]u@H[e[0m] in [e[1me[38;5;196m]w[e[0m"
    PS1SECONDLINE="ne[92m]In [[e[1m]#[e[0m]] $ "
    PS1="$PS1FIRSTLINE$PS1SECONDLINE"


    enter image description here



    However, sometimes i get weird issues like, that the beginning of the last executed command is still there after the prompt and can't be deleted.



    I think that it's an issue with my way of escaping the colors with e[ ... ] and not something with bash or the suckless-terminal, that i'm using.



    Can somebody help me out?










    share|improve this question
























      up vote
      2
      down vote

      favorite









      up vote
      2
      down vote

      favorite











      I was styling my PS1-Prompt to resemble the iPython-Prompt as:



      PS1FIRSTLINE="[n][t] [e[1me[38;5;196m]u@H[e[0m] in [e[1me[38;5;196m]w[e[0m"
      PS1SECONDLINE="ne[92m]In [[e[1m]#[e[0m]] $ "
      PS1="$PS1FIRSTLINE$PS1SECONDLINE"


      enter image description here



      However, sometimes i get weird issues like, that the beginning of the last executed command is still there after the prompt and can't be deleted.



      I think that it's an issue with my way of escaping the colors with e[ ... ] and not something with bash or the suckless-terminal, that i'm using.



      Can somebody help me out?










      share|improve this question













      I was styling my PS1-Prompt to resemble the iPython-Prompt as:



      PS1FIRSTLINE="[n][t] [e[1me[38;5;196m]u@H[e[0m] in [e[1me[38;5;196m]w[e[0m"
      PS1SECONDLINE="ne[92m]In [[e[1m]#[e[0m]] $ "
      PS1="$PS1FIRSTLINE$PS1SECONDLINE"


      enter image description here



      However, sometimes i get weird issues like, that the beginning of the last executed command is still there after the prompt and can't be deleted.



      I think that it's an issue with my way of escaping the colors with e[ ... ] and not something with bash or the suckless-terminal, that i'm using.



      Can somebody help me out?







      command-line bash prompt escape-characters






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Nov 19 at 11:02









      Tim Hilt

      2115




      2115






















          1 Answer
          1






          active

          oldest

          votes

















          up vote
          0
          down vote













          First see this answer of mine.



          It's not immediately clear whether n should be considered printing or non-printing, or if the division is the same as printable vs. non-printable (like in the context of printable ASCII characters).



          When it comes to PS1, however, I would say n should be called "printing" because it affects the size of the prompt and this is what matters here. You should put both occurrences of n outside of [ ].



          The first n is explicitly inside [ ]. The second one (at the beginning of PS1SECONDLINE) looks like it's not at the first glance, but it is as well. There is an unmatched [ in PS1FIRSTLINE and when the whole PS1 is created the matching ] comes from PS1SECONDLINE.



          These are your variables with proper modifications that put n outside of [ ]:



          PS1FIRSTLINE="n[t] [e[1me[38;5;196m]u@H[e[0m] in [e[1me[38;5;196m]w[e[0m]"
          # ^^ deleted embracing [ ] added closing ^^
          PS1SECONDLINE="n[e[92m]In [[e[1m]#[e[0m]] $ "
          # ^^ added opening
          PS1="$PS1FIRSTLINE$PS1SECONDLINE"





          share|improve this answer





















            Your Answer








            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "3"
            };
            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',
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            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
            });


            }
            });














            draft saved

            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1376666%2fwhats-wrong-with-this-ps1-prompt%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








            up vote
            0
            down vote













            First see this answer of mine.



            It's not immediately clear whether n should be considered printing or non-printing, or if the division is the same as printable vs. non-printable (like in the context of printable ASCII characters).



            When it comes to PS1, however, I would say n should be called "printing" because it affects the size of the prompt and this is what matters here. You should put both occurrences of n outside of [ ].



            The first n is explicitly inside [ ]. The second one (at the beginning of PS1SECONDLINE) looks like it's not at the first glance, but it is as well. There is an unmatched [ in PS1FIRSTLINE and when the whole PS1 is created the matching ] comes from PS1SECONDLINE.



            These are your variables with proper modifications that put n outside of [ ]:



            PS1FIRSTLINE="n[t] [e[1me[38;5;196m]u@H[e[0m] in [e[1me[38;5;196m]w[e[0m]"
            # ^^ deleted embracing [ ] added closing ^^
            PS1SECONDLINE="n[e[92m]In [[e[1m]#[e[0m]] $ "
            # ^^ added opening
            PS1="$PS1FIRSTLINE$PS1SECONDLINE"





            share|improve this answer

























              up vote
              0
              down vote













              First see this answer of mine.



              It's not immediately clear whether n should be considered printing or non-printing, or if the division is the same as printable vs. non-printable (like in the context of printable ASCII characters).



              When it comes to PS1, however, I would say n should be called "printing" because it affects the size of the prompt and this is what matters here. You should put both occurrences of n outside of [ ].



              The first n is explicitly inside [ ]. The second one (at the beginning of PS1SECONDLINE) looks like it's not at the first glance, but it is as well. There is an unmatched [ in PS1FIRSTLINE and when the whole PS1 is created the matching ] comes from PS1SECONDLINE.



              These are your variables with proper modifications that put n outside of [ ]:



              PS1FIRSTLINE="n[t] [e[1me[38;5;196m]u@H[e[0m] in [e[1me[38;5;196m]w[e[0m]"
              # ^^ deleted embracing [ ] added closing ^^
              PS1SECONDLINE="n[e[92m]In [[e[1m]#[e[0m]] $ "
              # ^^ added opening
              PS1="$PS1FIRSTLINE$PS1SECONDLINE"





              share|improve this answer























                up vote
                0
                down vote










                up vote
                0
                down vote









                First see this answer of mine.



                It's not immediately clear whether n should be considered printing or non-printing, or if the division is the same as printable vs. non-printable (like in the context of printable ASCII characters).



                When it comes to PS1, however, I would say n should be called "printing" because it affects the size of the prompt and this is what matters here. You should put both occurrences of n outside of [ ].



                The first n is explicitly inside [ ]. The second one (at the beginning of PS1SECONDLINE) looks like it's not at the first glance, but it is as well. There is an unmatched [ in PS1FIRSTLINE and when the whole PS1 is created the matching ] comes from PS1SECONDLINE.



                These are your variables with proper modifications that put n outside of [ ]:



                PS1FIRSTLINE="n[t] [e[1me[38;5;196m]u@H[e[0m] in [e[1me[38;5;196m]w[e[0m]"
                # ^^ deleted embracing [ ] added closing ^^
                PS1SECONDLINE="n[e[92m]In [[e[1m]#[e[0m]] $ "
                # ^^ added opening
                PS1="$PS1FIRSTLINE$PS1SECONDLINE"





                share|improve this answer












                First see this answer of mine.



                It's not immediately clear whether n should be considered printing or non-printing, or if the division is the same as printable vs. non-printable (like in the context of printable ASCII characters).



                When it comes to PS1, however, I would say n should be called "printing" because it affects the size of the prompt and this is what matters here. You should put both occurrences of n outside of [ ].



                The first n is explicitly inside [ ]. The second one (at the beginning of PS1SECONDLINE) looks like it's not at the first glance, but it is as well. There is an unmatched [ in PS1FIRSTLINE and when the whole PS1 is created the matching ] comes from PS1SECONDLINE.



                These are your variables with proper modifications that put n outside of [ ]:



                PS1FIRSTLINE="n[t] [e[1me[38;5;196m]u@H[e[0m] in [e[1me[38;5;196m]w[e[0m]"
                # ^^ deleted embracing [ ] added closing ^^
                PS1SECONDLINE="n[e[92m]In [[e[1m]#[e[0m]] $ "
                # ^^ added opening
                PS1="$PS1FIRSTLINE$PS1SECONDLINE"






                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered Nov 22 at 13:59









                Kamil Maciorowski

                22.8k155072




                22.8k155072






























                    draft saved

                    draft discarded




















































                    Thanks for contributing an answer to Super User!


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





                    Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


                    Please pay close attention to the following guidance:


                    • 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%2fsuperuser.com%2fquestions%2f1376666%2fwhats-wrong-with-this-ps1-prompt%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

                    Plaza Victoria

                    Musa

                    Puebla de Zaragoza