When drawing lines that have wrapped naturally, don't force a newline but
permit them to wrap naturally again. This allows terminals that use this to
guess where lines start and end for eg mouse selecting (like xterm) to work
correctly.

This was another long-standing issue raised by several people over the last
while.

Thanks to martynas@ for much testing. This was not trivial to get right so
bringing it in for wider testing and adn to fix any further glitches in-tree.
3 files changed
tree: 4943520e8f5fbbfb100ca957a040e2a6d98eeda2
  1. Makefile
  2. array.h
  3. attributes.c
  4. buffer-poll.c
  5. buffer.c
  6. cfg.c
  7. client-fn.c
  8. client.c
  9. clock.c
  10. cmd-attach-session.c
  11. cmd-bind-key.c
  12. cmd-break-pane.c
  13. cmd-choose-client.c
  14. cmd-choose-session.c
  15. cmd-choose-window.c
  16. cmd-clear-history.c
  17. cmd-clock-mode.c
  18. cmd-command-prompt.c
  19. cmd-confirm-before.c
  20. cmd-copy-buffer.c
  21. cmd-copy-mode.c
  22. cmd-delete-buffer.c
  23. cmd-detach-client.c
  24. cmd-display-message.c
  25. cmd-display-panes.c
  26. cmd-down-pane.c
  27. cmd-find-window.c
  28. cmd-generic.c
  29. cmd-has-session.c
  30. cmd-if-shell.c
  31. cmd-kill-pane.c
  32. cmd-kill-server.c
  33. cmd-kill-session.c
  34. cmd-kill-window.c
  35. cmd-last-window.c
  36. cmd-link-window.c
  37. cmd-list-buffers.c
  38. cmd-list-clients.c
  39. cmd-list-commands.c
  40. cmd-list-keys.c
  41. cmd-list-panes.c
  42. cmd-list-sessions.c
  43. cmd-list-windows.c
  44. cmd-list.c
  45. cmd-load-buffer.c
  46. cmd-lock-client.c
  47. cmd-lock-server.c
  48. cmd-lock-session.c
  49. cmd-move-window.c
  50. cmd-new-session.c
  51. cmd-new-window.c
  52. cmd-next-layout.c
  53. cmd-next-window.c
  54. cmd-paste-buffer.c
  55. cmd-pipe-pane.c
  56. cmd-previous-layout.c
  57. cmd-previous-window.c
  58. cmd-refresh-client.c
  59. cmd-rename-session.c
  60. cmd-rename-window.c
  61. cmd-resize-pane.c
  62. cmd-respawn-window.c
  63. cmd-rotate-window.c
  64. cmd-run-shell.c
  65. cmd-save-buffer.c
  66. cmd-select-layout.c
  67. cmd-select-pane.c
  68. cmd-select-prompt.c
  69. cmd-select-window.c
  70. cmd-send-keys.c
  71. cmd-send-prefix.c
  72. cmd-server-info.c
  73. cmd-set-buffer.c
  74. cmd-set-environment.c
  75. cmd-set-option.c
  76. cmd-set-window-option.c
  77. cmd-show-buffer.c
  78. cmd-show-environment.c
  79. cmd-show-options.c
  80. cmd-show-window-options.c
  81. cmd-source-file.c
  82. cmd-split-window.c
  83. cmd-start-server.c
  84. cmd-string.c
  85. cmd-suspend-client.c
  86. cmd-swap-pane.c
  87. cmd-swap-window.c
  88. cmd-switch-client.c
  89. cmd-unbind-key.c
  90. cmd-unlink-window.c
  91. cmd-up-pane.c
  92. cmd.c
  93. colour.c
  94. environ.c
  95. grid-view.c
  96. grid.c
  97. imsg-buffer.c
  98. imsg.c
  99. imsg.h
  100. input-keys.c
  101. input.c
  102. job.c
  103. key-bindings.c
  104. key-string.c
  105. layout-set.c
  106. layout.c
  107. log.c
  108. mode-key.c
  109. names.c
  110. options-cmd.c
  111. options.c
  112. paste.c
  113. procname.c
  114. resize.c
  115. screen-redraw.c
  116. screen-write.c
  117. screen.c
  118. server-fn.c
  119. server-msg.c
  120. server.c
  121. session.c
  122. status.c
  123. tmux.1
  124. tmux.c
  125. tmux.h
  126. tty-keys.c
  127. tty-term.c
  128. tty.c
  129. utf8.c
  130. window-choose.c
  131. window-clock.c
  132. window-copy.c
  133. window-more.c
  134. window.c
  135. xmalloc.c