안녕하세요 상훈입니다.

Cursor AI의 Agent 모드를 사용하던 중 커맨드 자동 입력에서 정말 자주 "~200~" 가 발생해서 자꾸 다른 방식으로 명령어를 입력하게 되는 token 낭비가 있습니다.

bash 설정 자체를 바꿔서 복사-붙여넣기 시 prefix로 ~200~ 등이 붙지 않게 설정하는 방법입니다.

 

1. 현재 작성하고 있는 모드를 확인해주세요.

echo $TERM
xterm-256color

-> 만약 `xterm-256color` 라고 결과가 나왔다면, 여기에서 문제가 발생하는 것입니다. (붙여넣기 escape 시퀀스가 포함될 수 있음)
대충 syntax error라고 치부하고 살면 되지않을까요?

 

2. `$TERM ` 수정하기 [임시]

#xterm 을 수정합니다.
export TERM=xterm

#xterm 을 확인합니다.
echo $TERM
xterm

저는 이렇게만도 했을 때 되긴했는데, 아래 명령어도 추가로 써주세요!

bind 'set enable-bracketed-paste off'

 

3. [영구] bash 설정 자체를 수정하기.

저희(windows)의 pc 의 경로 `~/` 에는 `.bashrc` 파일이 존재합니다. (bash가 있다면)

이 bash의 기본설정을 추가 작성하도록 합니다.

cd ~
nano .bashrc

아래 내용을 파일 최하단에 복사-붙여넣기

#아래 내용을 파일 최하단에 복사-붙여넣기.
export TERM=xterm

if bind -v | grep 'enable-bracketed-paste' &>/dev/null; then
  bind 'set enable-bracketed-paste off'
fi

그 이후 bash 적용.

#변경한 bashrc 내용 적용하기
source ~/.bashrc

 

프로세스 끝! 이제 확인해보실까요.

 

 

이제 복사&붙여넣기가 Cursor 에서 정상적으로 동작할 것 입니다!

cursor 에 프로젝트를 구동하라고 자연어로 명령한 모습.

 

이제 ~200~ 때문에 아까운 토큰 낭비는 없애고 사용하시죠!

 

 

반응형

Vue.js 에서 회원 로그인 정보를 phpaxios를 통해 보내고 200 success response를 받았다.

하지만 그 내용을 오류로 넘기고 싶을 때 처리하는 방법

.then((response) => {
          if( response.data == false ) {
              throw new Error('no data from server');
          } else {
              console.log('success');
           }
        })

        .catch((error) => {
            console.log(error);
            this.errors.push("회원정보가 존재하지 않습니다.");
        });

then() 내에서 new Error로 넘겨주면,
아래 catch(error) 에서 해당 에러를 출력해준다.
그리고 this.errors.push 를 통해 error라는 id 를 가진 html 태그에 에러 내용을 출력해준다.

 

■ 신경쓸 점

1. throw new Error( )

throw를 통해 새로운 에러 객체를 생성하는 작업. 
이 작업을 통해 catch가 에러를 인식하고 해당 내용을 출력한다.

 

2. catch(error) => {   

Arrow function인스턴스 함수의 기능을 이용하여,
에러 함수 내에서 전역변수( this. )를 사용할 수 있게 한다.

 

 

 

 

 

반응형

+ Recent posts