Maximus5 / ConEmu

Customizable Windows terminal with tabs, splits, quake-style, hotkeys and more
https://conemu.github.io/
BSD 3-Clause "New" or "Revised" License
8.53k stars 571 forks source link

Line wraps onto same line #407

Open fabyeah opened 8 years ago

fabyeah commented 8 years ago

When a line wraps, it doesn't create a new line, but the cursor goes to the front of the same line instead and overwrites characters in that line.

Also, I'm not sure how to change the line wrap setting from wrapping at column 80 to wrap at the end of the screen buffer, as described here: http://conemu.github.io/en/AnsiEscapeCodes.html#Terminal_modes What are these CSI codes and how to I apply them?

fabyeah commented 8 years ago

Hm, now it's gone again. Will reopen when it happens again or I know how to reproduce..

fabyeah commented 8 years ago

Ok, it happens only inside meteor shell after I execute the first command (first command will wrap correctly, after that not anymore). Problem doesn't occur in normal windows cmd, so not sure where this is coming from...

fabyeah commented 8 years ago

Problem doesn't occur in mongo shell meteor mongo, if that helps...

Maximus5 commented 8 years ago

It's unclear how to reproduce your problem, and why do you think it's a ConEmu problem?

Seems like your application writes only \r to console.

Maximus5 commented 8 years ago

Show screenshots?

fabyeah commented 8 years ago

conemu_linewrap_problem_in_meteor-shell

The second command console.log("bbbbbb... wraps around the same line and overwrites itself.

I don't know if it happens in other circumstances, but to reproduce my exact problem, I guess you'd have to install Meteor (Javascript framework), create new project with meteor create test and run meteor. Then open a new tab and run meteor shell in the project folder. Execute anything, then the problem will occur.

I don't know if this is a ConEmu problem. It doesn't happen with cmd or Git Bash. But it does happen in Windows Powershell, too. Now, with ConEmu, it happens using any of those three shells.

Plazmaz commented 7 years ago

Also an issue for me when SSHing into a server and using mongo.

kodeprav commented 7 years ago

Seeing same issue. What's the resolution on this?

Maximus5 commented 7 years ago

Without exact steps to reproduction I can make any conclusion. At the moment I believe the problem is not in ConEmu.

Maximus5 commented 7 years ago

Perhaps related to gh-1123

bduff9 commented 7 years ago

Yes, I see the same issue which makes developing meteor apps impossible since the entire console overwrites itself so nothing can be seen. I believe this has been reported at meteor (https://forums.meteor.com/t/cmd-on-win10-going-away/31501), though I am unable to update my meteor project so that seems pointless for me.

You asked for specific steps to replicate, so here they are: 1) Install meteor 2) Clone this repo: https://github.com/meteor/todos.git 3) Open ConEmu and navigate to the todos folder you just cloned 4) Enter command npm start

You should initially see correct logging, however as soon as meteor takes over, the console becomes jumbled as it all overwrites itself. Interestingly, I do not see this if instead of npm start, I just run meteor (which is all the npm start script is).

I also do not see this if I run either of the above commands in the built-in cmd window, only ConEmu. I love ConEmu and would love to continue using it as it makes things a lot easier, but I cannot use it if I cannot read the output. In my case, npm start is a much longer command that passes several options to meteor, so typing it out every time is not ideal, especially since npm start works elsewhere. I would appreciate any help you can provide. Thank you

Plazmaz commented 7 years ago

Worth noting this is possibly different than #1123. For me, no copying/pasting/resizing needs to be involved for this to occur. Just long lines. Though I will say it does seem to happen pretty reliably when pasting multiple long commands

jakubdrabik commented 6 years ago

The same problem occurs while using Bash on Ubuntu on Windows.

Maximus5 commented 6 years ago

If you don't use wslbridge, the bug is inside WSL. If you use wslbridge, perhaps it's your PS1.

michalkolek commented 6 years ago

Experiencing the same issue in both Con Emu and Git Bash on one pc. Any idea how to solve it?

Maximus5 commented 6 years ago

Not enough information. How do you start bash? Screenshot? PS1?

bgottschall commented 6 years ago

For me the line wrapping only on keyboard input occurs with WSL Bash as soon as I ssh into a server. If I'm logging out line wrapping stays . Really anoying.

Doesn't happen with the mingw bash.

Maximus5 commented 6 years ago

Unless you are using wslbridge+connector you may observe bugs of Bash.

ZYinMD commented 6 years ago

I experience the same issue in WSL, but it's not ConEmu's problem, because this behavior is the same in:

It happened after I customized my PS1 into this:

color31="\033[31m"
color32="\033[32m"
color33="\033[33m"
color34="\033[34m"
color35="\033[35m"
color36="\033[36m"
color37="\033[37m"
nocolor="\033[0m"

# get the branch name
parse_git_branch() { 
 git branch 2> /dev/null | sed -e '/^[^*]/d ' -e 's/* \(.*\)/(\1) /'
}

PS1="${debian_chroot:+($debian_chroot)}$color34\u $color35\H $color33\w $color36\$(parse_git_branch)$nocolor--> "

image

It's my own fault, but I don't know how to solve it, maybe someone can shed some light?

Note that:

  1. Resizing the window will dynamically break / fix it.
  2. It's ok to paste in a long line, but not ok to type a long line.
Maximus5 commented 6 years ago

https://conemu.github.io/en/ShellWorkDir.html#connector-ps1

It says

NB Don’t forget to ‘escape’ non-printable parts of PS1 with \[ and \]. This is required to avoid weird behavior of readline when you type really long commands.

ZYinMD commented 6 years ago

@Maximus5 Thanks so much!!! My problem is solved!!! color31="\[\033[31m\]"

Maximus5 commented 6 years ago

@ZYinMD Your question is offtopic here.

Original issue was reported about meteor. I still think the problem may be inside meteor itself.

If anyone still suffers from the issue (@bduff9 ) on the current ConEmu preview build (ATM it's a 180626) please post here versions of your software: Windows, Meteor, shell you are using, and other information you find useful.

er1c commented 5 years ago

I consistently run into wrapping issues - especially if trying to edit an existing command , or if the command gets too long and then I start typing delete.

It happens every time, so I can definitely help diagnose something.... Using 190108 preview.

image

er1c commented 5 years ago

I updated powerline to the next branch and this issue went away. Looks like it was related to the plugin.

kbirger commented 5 years ago

I'm not sure this issue is with meteor. I get it using both bash and zsh on WSL.

Current versions: conemu=190310 win=win10 1809 less importantly, ubuntu 16.04 inside WSL.

It seems to occur sporadically after ctrl+c'ing a slow command and I haven't found a way to get it to stop without re-opening the tab

Maximus5 commented 5 years ago

@kbirger

If the answers are "yes" I need AnsiLogs from connector with repro + screenshots where status bar is visible

conan commented 5 years ago

I also experience this problem. I'll confess I don't know anything about PS1, but I think i've escaped everything. Here's mine:

PS1='\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[38;5;197m\]$(__git_ps1 " (%s)")\[\033[00m\]$ '

Here is a real example of the problem. I had the following line at my prompt:

$ clojure -A:build/once

I wanted to change it to this:

$ clojure -A:build:build/once 

I did this by pressing the up arrow key to retrieve the previous command from the history, then pressing the left arrow key until the cursor was after the -A:, and typing the characters build:. After the first b, the line breaks, and it looks like this:

image

I tried adding the :L option to my task command but it didn't seem to produce any logs. I'm not sure whether I'm using the connector but my understanding is that it's included, and I'm on the latest version 190331. I haven't otherwise modified the task that runs.

It's worth mentioning that the correct command is executed if I press enter, it's just how it's displayed that is incorrect.

I believe this is the same issue as the OP, but if it's something different then please accept my apologies and let me know, and I'll create a new issue.

Update: it's worth noting that I see some similarly weird behaviour in nano occasionally, but it isn't consistent enough to reproduce. Usually shutting down the terminal, opening a new one and jumping into nano again resolves the problem.

smac89 commented 5 years ago

My only recommendation to you guys experiencing this is to switch to multiline prompt. For example, I use zsh as my default shell and when I was using the agnoster theme from oh-my-zsh, I was experiencing this problem, but then I switch to a multiline prompt like gnzh, I don't experience the weird wrapping issues anymore

kbirger commented 5 years ago

@Maximus5 - Do you the need full logs, or would a partial one suffice? If you need full logs, is there a way I can share with you privately?

Maximus5 commented 5 years ago

You may send logs in zip by email. I need them to check the problem

er1c commented 5 years ago

@smac89 thanks! This multi line problem went away when I switched to a multi-line prompt!

2ps commented 4 years ago

I use a zsh multi-line prompt, and I had this same issue. Building on @Maximus5 's hint, I removed coloring from the last line of my prompt and the problem went away. @Maximus5 : When I tried to escape the unprintable sequences with \[ and \] that just printed out [ and ] on my prompt. Is that expected?