[GH-ISSUE #1685] When copying text from the UI whitespace characters are copied as "·" #1677

Open
opened 2026-03-03 19:53:24 +03:00 by kerem · 5 comments
Owner

Originally created by @seidnerj on GitHub (Jun 19, 2023).
Original GitHub issue: https://github.com/ProxymanApp/Proxyman/issues/1685

Description

whitespace characters not copied with the original character

Steps to Reproduce

  1. Record a session
  2. Go to the headers table
  3. Find a header with white space (e.g. the accept header, that has a value of 'text/plain,·/;·q=0.01')
  4. Copy the header's text
  5. Paste the value in some editor

Current Behavior

Whitespace characters are copied as "·" character

Expected Behavior

Whitespace character should be copied with their original value

Environment

  • App version: Proxyman 4.8.0
  • macOS version: macOS Ventura 13.4
Originally created by @seidnerj on GitHub (Jun 19, 2023). Original GitHub issue: https://github.com/ProxymanApp/Proxyman/issues/1685 ## Description whitespace characters not copied with the original character ## Steps to Reproduce 1. Record a session 2. Go to the headers table 3. Find a header with white space (e.g. the accept header, that has a value of 'text/plain,·*/*;·q=0.01') 4. Copy the header's text 5. Paste the value in some editor ## Current Behavior Whitespace characters are copied as "·" character ## Expected Behavior Whitespace character should be copied with their original value ## Environment - App version: Proxyman 4.8.0 - macOS version: macOS Ventura 13.4
Author
Owner

@NghiaTranUIT commented on GitHub (Jun 20, 2023):

@seidnerj It seems the Show Invisibles in the View Menu is enabled, so it displays the space as a · -> Copy it will include the . too

You should turn the Invisibles OFF, so the bug is fixed 👍

<!-- gh-comment-id:1597993392 --> @NghiaTranUIT commented on GitHub (Jun 20, 2023): @seidnerj It seems the `Show Invisibles` in the View Menu is enabled, so it displays the space as a `·` -> Copy it will include the `.` too You should turn the Invisibles OFF, so the bug is fixed 👍
Author
Owner

@seidnerj commented on GitHub (Jun 20, 2023):

I actually think that these should be separate, from a display-only perspective show invisibles is a great feature, but there should be a separation between the display value and the actual value. Regardless of what is displayed, when copying - the original value should be preserved.

<!-- gh-comment-id:1598122326 --> @seidnerj commented on GitHub (Jun 20, 2023): I actually think that these should be separate, from a display-only perspective show invisibles is a great feature, but there should be a separation between the display value and the actual value. Regardless of what is displayed, when copying - the original value should be preserved.
Author
Owner

@raxityo commented on GitHub (Apr 24, 2024):

@NghiaTranUIT since I was about to create the same issue, I am bumping this issue instead of creating a new one.
As @seidnerj mentioned, it would be great if the "Show Invisibles" option only affected the display/rendering, not the actual content.

In Proxyman, the implementation of "Show Invisibles" is correct in some sections.

Body tab (correct behavior) Header tab (unexpected behavior)
Screenshot 2024-04-24 at 3 29 48 PM Screenshot 2024-04-24 at 3 29 58 PM
<!-- gh-comment-id:2075695243 --> @raxityo commented on GitHub (Apr 24, 2024): @NghiaTranUIT since I was about to create the same issue, I am bumping this issue instead of creating a new one. As @seidnerj mentioned, it would be great if the "Show Invisibles" option only affected the display/rendering, not the actual content. In Proxyman, the implementation of "Show Invisibles" is correct in some sections. <table> <tr> <th>Body tab (correct behavior) <th>Header tab (unexpected behavior) <tr> <td> <img width="545" alt="Screenshot 2024-04-24 at 3 29 48 PM" src="https://github.com/ProxymanApp/Proxyman/assets/767683/6dc8cc74-066c-4fca-b873-218cc9cf2775"> <td> <img width="563" alt="Screenshot 2024-04-24 at 3 29 58 PM" src="https://github.com/ProxymanApp/Proxyman/assets/767683/19f9c6f0-c270-4184-8875-597847bc036e"> </table>
Author
Owner

@NghiaTranUIT commented on GitHub (Apr 25, 2024):

@raxityo do you think that "Show invisible" should not display the whitespace?

Honestly, I'm not sure how to fix it because the Copy action is handled by the system, so I can't override and ignore the whitespace.

Don't render the whitespace might easily fix it.

<!-- gh-comment-id:2076136161 --> @NghiaTranUIT commented on GitHub (Apr 25, 2024): @raxityo do you think that "Show invisible" should not display the whitespace? Honestly, I'm not sure how to fix it because the Copy action is handled by the system, so I can't override and ignore the whitespace. `Don't render the whitespace` might easily fix it.
Author
Owner

@raxityo commented on GitHub (Apr 25, 2024):

@raxityo do you think that "Show invisible" should not display the whitespace?

No, I meant to suggest that this option should only display the whitespace character () as a background.

Sorry if my examples were confusing. I meant that the behavior we see in the Body tab in ProxyMan is correct. "Show Invisibles" correctly shows the whitespace character, but it's rendered as a background instead of part of the text. So when you copy the text in the Body tab, the character does not get copied.
However, in the "Header" tab in ProxyMan, the character is part of the text rather than displaying it as background.

Expected Behavior:

image

Unexpected Behavior:

image

<!-- gh-comment-id:2077759028 --> @raxityo commented on GitHub (Apr 25, 2024): > @raxityo do you think that "Show invisible" should not display the whitespace? No, I meant to suggest that this option should only display the whitespace character (`•`) as a background. Sorry if my examples were confusing. I meant that the behavior we see in the Body tab in ProxyMan is correct. "Show Invisibles" correctly shows the whitespace character, but it's rendered as a background instead of part of the text. So when you copy the text in the Body tab, the `•` character does not get copied. However, in the "Header" tab in ProxyMan, the `•` character is part of the text rather than displaying it as background. ### Expected Behavior: ![image](https://github.com/ProxymanApp/Proxyman/assets/767683/eb13fd37-9049-48f2-b6c4-0d2950529751) ### Unexpected Behavior: ![image](https://github.com/ProxymanApp/Proxyman/assets/767683/87943ddf-718f-47a8-a1c8-d0708be3965d)
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/Proxyman#1677
No description provided.