클립 보드에서 ZSH 붙여 넣기 명령을 터미널에 쓰려면 몇 초가 걸립니다.


12

iTerm에서 긴 문자열 명령을 클립 보드에서 복사하면 터미널이 몇 초 동안 정지됩니다.

예를 들어, 다음 테스트를 복사하여 iTerm 콘솔에 붙여 넣는 경우 :

echo 'test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test' 터미널에 쓰려면 몇 초가 걸립니다.

명령이 더 길면 15 초가 걸릴 수 있습니다.

ZSH 버전 '5.3'


실행중인 OS X / macOS 버전과 Apple 하드웨어는 무엇입니까?
user3439894

"명령이 더 길면 15 초가 걸릴 수 있습니다."와 관련하여 명령의 길이를 어떻게 생각하는지 모르겠습니다. 그러나 표시 한 명령의 길이는 356 자이며 내 시스템에 즉시 붙여 넣습니다. 해당 명령을 8406 자 길이로 복제하면 1 초 안에 붙여 넣습니다. 따라서 "명령이 더 길면 15 초가 걸릴 수 있습니다"라고 표시되는 문자 수는 몇 개입니까? 또한 일시적으로 새 사용자를 만들어야하더라도 시스템의 다른 사용자에서이 작업을 수행해도 동일한 결과를 얻습니까?
user3439894

나에게는 즉각적이지 않다. 그것이 문제이다. 내가 게시 한 명령이 명령 행에 표시 되려면 15 초가 걸립니다. 버전 High Sierra 10.13.2 (그러나 이것은 다른 버전에서도 발생합니다) 2.2 Ghz i7, 16Gb Ram ...
Raúl Martín

당신은 내 다른 의견에서 마지막 질문에 대답하지 않았습니다. .... 또한 시스템의 다른 사용자 에서이 작업을 수행하더라도 일시적으로 새 사용자를 만들어야하더라도 동일한 결과를 얻습니까?
user3439894

답변:


18

마지막 문제는 zsh와 관련이 있습니다.

oh-my-zsh가 실행 bracketed-paste-magic중이므로 제거했습니다. oh-my-szh에는이를위한 플러그인 관리자가 없기 때문입니다. 파일을 재정의해야합니다.$ZSH/lib/misc.zsh

재정의는이 폴더에 $ZSH_CUSTOM있습니다.

재정의가 없으므로 폴더를 먼저 만들어야했습니다. mkdir $ZSH_CUSTOM/lib/

원본의 사본을 만듭니다 cp $ZSH/lib/misc.zsh $ZSH_CUSTOM/lib/.

파일을 편집하십시오 (좋아하는 편집기 사용).

vi $ZSH_CUSTOM/lib/misc.zsh

다음 줄에 주석을 달았지만 제거하거나 if 조건을 변경할 수 있습니다.

#if [[ $ZSH_VERSION != 5.1.1 ]]; then
#  for d in $fpath; do
#       if [[ -e "$d/url-quote-magic" ]]; then
#               if is-at-least 5.1; then
#                       autoload -Uz bracketed-paste-magic
#                       zle -N bracketed-paste bracketed-paste-magic
#               fi
#               autoload -Uz url-quote-magic
#               zle -N self-insert url-quote-magic
#      break
#       fi
#  done
#fi

질문 설명에 대해 감사하고 죄송합니다. zsh를 사용하고 있다는 사실을 알지 못하면이 작업을 수행하는 것이 불가능 해졌습니다.

더 많은 정보:


1
고마워요! curlChrome에서 명령을 붙여 넣는 데 45 초가 걸렸습니다! now <1 sec :)
Gianfranco P.

$ ZSH / lib / misc.zsh를 편집하고 해당 행도 주석 처리 할 수 ​​있습니다. 더 쉬울 것 ..
나초

그 차양이 말한 것입니다
Raúl Martín

1

macOS에서만 Hyper를 다운로드하여 사용할 수있는 것은 이상한 것 같습니다. 왜냐하면 그것은 Windows 전용이기 때문입니다.

iTerm의 일반 성능

iTerms 웹 사이트의 FAQ는 다음을 제안합니다.

투명도 및 흐림 효과를 비활성화합니다. 이미지가 아닌 단색 배경을 사용하십시오.

성능을 저하시키는 것으로 알려진 몇 개의 트리거를 조사 할 수도 있습니다. 에서 찾을 수 있습니다 Settings -> Profiles -> Advanced -> Triggers.

iTerm에서 붙여 넣기 성능

이 짧은 텍스트로 내 컴퓨터에서 문제를 복제 할 수는 없지만 약 20 배 더 길게 만드는 것은 여기에서 발생합니다. 내 생각에 iTerm은 사용자가 새로운 문자를 볼 때마다 전체 텍스트를 입력하고 다시 그리는 것으로 생각합니다. macOS 및 Ubuntu의 vim에서도 마찬가지입니다 (여기 링크 설명 입력 참조 ).

iTerm에서 붙여 넣기 성능 수정

이러한 성능 문제에 대한 쉬운 수정은없는 것 같습니다. FAQ가 도움이되지 않으면이 명령을 사용하는 것이 좋습니다.

pbpaste >> test.sh && chmod +x test.sh && ./test.sh && rm test.sh

pbpaste는 클립 보드에 액세스하고 (자체적으로 pbpaste를 시도) >> test.sh는 그것을 test.sh 파일에 씁니다. chmod + x test.sh는 터미널에서 test.sh를 실행하고 ./test.sh를 실행하고 rm test.sh는 test.sh라는 모든 파일을 제거합니다. 이것은 붙여 넣기와 정확히 동일하게 작동하지만 실제로 붙여 넣으면 성능이 저하되지 않습니다.


다른 하이퍼에 대해 이야기하고 있습니까? hyper.is . 불투명하거나 흐릿하지 않습니다. 트리거 없음 :( 유망한 일입니다. pbpaste lit는 매우 현명한 선이지만 명령 / 역사를 작성해야한다는 사실 때문에 속도를 잃을 것입니다.
Raúl Martín

죄송합니다. 질문에 일부 정보가 누락되었습니다. 답변 해 주셔서 감사합니다.
Raúl Martín
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.