xfce4 터미널의 복사-붙여 넣기에 0 ~ 1이 추가됨


105

나는 xubuntu 14.04, 64 비트를 사용합니다. 내가 붙여 넣을 대신 예상되는 텍스트, 들어 xfce4-터미널에 텍스트를 붙여 넣기 할 때 모든 이제 다음, 그것은으로 둘러싸여 0~1~같은 :

0~mvn clean install1~

텍스트는 있어야합니다 mvn clean install-나는 다양한 다른 응용 프로그램 (그놈 터미널, gedit 등)에 내용을 붙여 넣어 이것을 확인했습니다. xfce4 터미널을 제외한 모든 응용 프로그램은 내용을 올바르게 붙여 넣습니다. 인터넷에서 이에 대한 참조를 찾을 수 없었습니다 (불행히도 google.com에서 특수 문자가있는 텍스트를 검색하는 것은 어렵습니다 ...). 왜 이런 일이 발생합니까?


붙여 넣는 방법은? 가운데 클릭 또는 다른 것?
Celada

1
중간 클릭, 마우스 오른쪽 버튼 클릭 및 옵션 붙여 넣기, ctrl + shift + v를 선택했습니다. 0 ~ 및 1 ~ 문자가 나타나면 사용하는 붙여 넣기 방법이 중요하지 않습니다.
botismarius

답변:


143

문제는 터미널이 괄호 붙여 넣기 모드이지만 제대로 지원하지 않는 것입니다. 이 문제는 VTE에서 해결되었지만 xfce4 터미널은 여전히 ​​오래되고 유지 관리되지 않은 버전을 사용하고 있습니다.

다음을 사용하여 브래킷 붙여 넣기 모드를 일시적으로 해제 할 수 있습니다.

printf "\e[?2004l"

4
항상 재현 할 수없는 경우 대괄호 붙여 넣기 모드를 활성화 한 프로그램이 실행 중일 수 있으며 충돌이 발생하여 종료하기 전에 비활성화 할 수 없었을 수 있습니다.
kyrias

4
정말 고마워요! 나는 1 년 이상이 문제로 어려움을 겪고 있습니다. 이 "브래킷 붙여 넣기 모드"를 완전히 비활성화 할 수 있습니까? BTW, 누가 그런 미친 것들을 구현합니까? ;)
Adam Romanek

4
터미널에 따라 다릅니다. 또한 응용 프로그램이 무언가를 입력했는지 또는 붙여 넣었는지 알 수 있기 때문에 매우 유용한 기능입니다. 예를 들어, IRC 프로그램 인 weechat은이를 사용하여 여러 줄의 붙여 넣기를 보낼 것인지 묻습니다.이 방법은 괄호 붙여 넣기 모드 없이는 할 수 없었습니다. 아니.
kyrias

1
괄호 붙여 넣기 모드를 사용하는 프로그램을 어떻게 찾을 수 있습니까?
aviggiano

3
우분투 기반 배포판의 경우에서 'VTE'패키지의 패치 버전을 설치하려고 할 수 launchpad.net/~adrozdoff/+archive/ubuntu/vte
데니스 Bakharev에게

77

내 문제는 bash 세션이 잘못 종료 되었기 때문입니다. 그래서 reset터미널 에서 명령 을 실행 하면 즉시 해결되었습니다.


2
이것은 나를 위해 일했습니다.
AFP_555

그리고 그것은 나를 위해 일했습니다!
tomd

종료자를 사용하여 Ubuntu 16.04에서 발생했습니다. 리셋이 작동했습니다!
user1270710

터미네이터도 동일한 작업을 수행했으며 Ubuntu 16.04도 실행했습니다. reset내 ssh 연결에서 실행 하면 문제가 해결되었습니다.
Marcello Grechi Lins

23

나는 같은 문제가 있었는데, vi를 사용한 후에 발생합니다.

set t_BE=.vimrc파일 에 추가 하여 내 문제가 해결되었습니다 .

대한 참조 ,이 t_BE가하는 일입니다 :

t_BE 브라케팅 붙여 넣기 모드 활성화


7
그게 바로 원인이었습니다. 감사합니다! 제 경우에는 VIM 8로 업그레이드했을 때 시작되었습니다.
rgerganov

1
t_BE = 세트의 기능과 문제를 해결하는 이유를 설명해 주시겠습니까?
프란체스코 보 카르도

7

이 동작은 터미널 에뮬레이터가 괄호 붙여 넣기 모드 에있을 때 발생 합니다 .

이것은 일반적으로 응용 프로그램이 부정하게 종료 될 때 발생합니다 (충돌 또는 버그).

자주 발생하는 현상에 대한 또 다른 이유가있다 VTE의 이전 버전에서 버그 (VTE는 아래의 터미널 에뮬레이션 위젯 gnome-terminalxfce4-terminal같은 특정 유틸리티에서 특정 동작에 의해 트리거됩니다 그리고 더 많은) 자정 사령관의 패널을 전환 .

이 버그가 실행중인 VTE 기반 터미널 에뮬레이터에서 수정되었는지 확인하려면 : Execute echo -ne '\e[>c', 입력 한 것처럼 몇 개의 문자를 삽입합니다. 중간 수가 3602크면 위에서 언급 한 오래된 VTE 버그가 더 이상 존재하지 않습니다. 이 숫자가 이보다 작 으면 VTE는 여전히 영향을 받고 예상보다 자주 괄호 붙여 넣기 모드에 멈 춥니 다.

특정 터미널 에뮬레이터가 특정 Ubuntu 배포판에 고정되어 있는지 확인하려면 packages.ubuntu.com에 대한 종속성을 확인 하십시오 . libvte-2.91-0좋습니다. libvte-2.90-9해당 패키지의 실제 버전이 0.36.2 이상이고 불량한 경우에만 좋습니다 libvte9. 특히 xfce4-terminalXenial에서는 버그가 있으며 Zesty에서는 수정되었습니다.


1

이것은 귀하의 문제에 직접 적용되지 않을 수도 있지만, 제 경우에는 선택의 여지가있는 'mcedit'(Midnight Commander)가이 증상을 발견했습니다.

버그 문제를 완화하기 위해 .bashrc 파일에 다음 기능을 추가했습니다.

### vvv 'function mcedit' is a fix-up for the ~0/~1 paste problem
function mcedit() { command mcedit $@ ; printf '\e[?2004l' ; }

그런 다음 'source .bashrc'

이제 'mcedit'을 실행할 때마다 "브래킷 붙여 넣기 모드"를 재설정하기 위해 닫을 때 'printf "\ e [? 2004l"'가 자동으로 추가됩니다.

나를 위해 일한다, YMMV.

vi, vim, nano 또는 다른 오작동 프로그램에서도 동일한 접근 방식을 사용할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.