lein repl은 다른 키보드 레이아웃과 호환되지 않습니다

5203 단어 leiningen

묘사

스위스-독일 키보드를 사용하고 있는데 LEIN REPL에 "@"및 "]"(키가 더 있을 수 있음)를 입력할 수 없습니다."["키에 대해 두 번 눌러야 합니다. 레이아웃을 "우리"로 전환할 때 모든 키가 유효합니다.
내가 보기에 이 문제는 리닌의 2.4.2 버전과 관련이 있다.이것은 내가 이 버전으로 업그레이드되기 전에 발생한 적이 없다.
명령 알림부호 아래에서 lein repl 실행할 때,lein은 기본적으로 이 윈도우즈 프로세스를 실행합니다.
java  -client  
      -Dclojure.compile.path="/target/classes"  
      -Dleiningen.original.pwd="C:\Users\joerupen"  
      -cp "C:\Users\joerupen\.lein\self-installs\leiningen-2.4.2-standalone.jar" clojure.main -m leiningen.core.main repl
=>이 과정에서 언급된 키를 입력할 수 없습니다.
그러나, 내가 렌 버전을 2.3.4로 바꾸면 키보드는 문제없다.
java  -client  
      -Dclojure.compile.path="/target/classes"  
      -Dleiningen.original.pwd="C:\Users\joerupen"  
      -cp "C:\Users\joerupen\.lein\self-installs\leiningen-2.3.4-standalone.jar" clojure.main -m leiningen.core.main repl     
환경: Windows 8
이것은 liningen의 문제일 수도 있고, 단지 나의 윈도우즈가 설치한 문제일 수도 있다. 어쨌든, 구 버전은 나에게 있어서 가능하다.

토론 #1

저는 노르웨이 키 레이아웃을 사용했습니다. 리눅스에는 문제가 없고 이 부분을 포함할 수 있습니다.
@trptcolin의 답장 업데이트와 관련이 있습니까?

토론 #2

이 질문을 듣고 죄송합니다.최신 jline에서 윈도우즈의 입력 처리에는 의외의 좋지 않은 영향이 발생한 것 같다[문제가 의심되지만 @문제를 모른다

토론 #셋

문제).보이다https://github.com/trptcolin/reply/issues/121상세한 정보는 이 평론 라인에서 디버깅 절차를 제시했습니다. 만약 jline repo를 내리면 이 절차를 취할 수 있습니다.
인터넷에서 질문 하나 해 주시겠어요?https://github.com/jline/jline2/issues작동하지 않는 키를 눌렀을 때 나오는 추적 출력 (상기 라인의 디버깅 절차를 사용하여 jline 2.11-SNAPSHOT를 2.13-SNAPSHOT로 바꿉니까)?
기사 고마워요.

토론 #4

불행히도 나는 얻었다.
$java-Djline.내부적일지.trace=true-cp target\jline-2.13-SNAPSHOT-tests.jar:target\jline-2.13-SNAPSHOT.가젤린.예.예.
오류: 기본 클래스 jline을 찾거나 불러올 수 없습니다.예.예.
jar 파일 jline-2.13 - SNAPSHOT-tests.jar 및 jline-2.13 - SNAPSHOT.jar는 대상 폴더에 존재하지만 시작하지 않습니다.이상하게도 나는 jline-2.13-SNAPSHOT을 빠뜨렸다.jar는 클래스를 찾을 수 있지만 시작할 수 없습니다.옛날 버전으로 해봐야 하나요?

토론 #5

아, 창문.분호가 필요합니다(;)콜론(:)이 아닌 구분자(가능, cmd.exe, Cygwin, msys 등)

토론 #6

세미콜론/콜론 또는 슬래시/백슬래시를 변경하는 것은 도움이 되지 않습니다.어쨌든 JAR을 열고 클래스에 자바를 실행합니다.우리는 이미 이곳에서 결과를 발표했다.https://github.com/jline/jline2/issues/156

토론 #7

Leiningen이 아닌 jline의 버그로 들린다.

토론 #8

아직 해결되지 않은 것 같다.Scala 소년은 이전 버전의 jline으로 돌아가는 것을 권장합니다.레닌겐에서도 저희가 뭘 할 수 있을까요?나는 Windows 7 x 64에서 Leiningen/Clojure와 처음 놀았다.현재 []{}이 필요할 때 키보드 레이아웃을 전환하고 있습니다.$HOME 나에게 효과가 있는 변통 방법이 있다.
Jline2는 사용자 정의 키보드 키 매핑을 지원합니다..inputrc 디렉터리에

토론 #9

라는 파일을 만듭니다.다음 구성에 붙여넣기
set meta-flag off
set convert-meta off
set output-meta off
set enable-meta-key off
"\e[": ""
"\e]": "]"
"\e\\": "\\"
lein repl@sroller, 나는 #1795에서 기본repl 의존항을 어떻게 바꾸는지 대체적인 상황을 개술했다.
아마도 새로운 문서를 수집해서 당신이 사용하거나 복구할 수 있는 모든 편의 기술

토론 #10

을 이해하는 것이 현명할 것입니다.

토론 #11

감사합니다.이거.inputrc 솔루션이 거의 잘 작동하고 있습니다.[다음 키만 눌렀을 때 표시되지만 예전보다 많이 좋아졌습니다.[ 맥OS 11.6에서 비슷한 문제가 발생했습니다. 리플 비아iTerm2를 사용할 때입니다. 자바 15.01에서 리닌 2.9.8을 사용했습니다. 노르웨이 레이아웃의 애플 매직 키보드(QWERTY)를 사용했습니다.
대괄호는 옵션 +8(대]과 옵션 +9(대Left Option Key = Esc+를 사용하여 입력합니다.이것은 애플 주스 Emacs에서 키를 정상적으로 작동시킬 때까지 REPL에서 잘 작동합니다.이렇게 변경하면 REPL에 대괄호를 입력할 수 없습니다.
원키를 변경해도 오른쪽 단추를 사용하여 s방괄호를 입력할 수 있음을 주의하십시오.
같은 질문도 괄호{}에 나왔다.
나는 이것이 같은 문제인지 아닌지 확실하지 않다(중복?)혹은 조금 다른 문제.저도 이것이 REPL, iTerm2 또는 다른 방면의 문제인지 확실하지 않습니다.어떤 건의가 있으면 감격을 금할 수 없습니다.

토론 #12

@leifericf 이것은 leiningen, REPL 또는 Readline 실현과 아무런 관계가 없습니다.터미널 에뮬레이터에 입력하는 작업은 터미널 에뮬레이터가 특정 키를 "캡처"하여 키보드를 사용하여 작업을 수행할 수 있도록 하고 다른 키는 어떤 방식으로 전달하거나 강화할 수 있도록 하는 것입니다.
이 경우 iTerm2를 '포획' 왼쪽 옵션키로 변경하고, 누르면 Esc+를 밑에 있는 터미널 프로세스에 전달합니다. 따라서 iTerm2는 왼쪽 옵션키로 옵션 +8을 [ 삽입된 운영체제 기능으로 설명하는 것을 허용하지 않습니다.
Clojure 중국 괄호의 유행을 감안하면 이것은 분명히 매우 파괴적인 변화이다.VScode/IntelliJ/EMacs/Vim 같은 편집기에서 REPL과 상호작용을 하거나, 항상 오른쪽 옵션을 운영체제 옵션키로 사용하고, 왼쪽 옵션을 '원' 키로 사용하는 것이 좋습니다.
도움이 되었으면 좋겠습니다.

토론 #13

이 점을 설명해 주셔서 감사합니다. @timvisher!건의해 주셔서 감사합니다.터미널에서 Emacs를 사용하는 것을 더 좋아하지만, 나는 Emacs의 독립된 GUI 버전을 사용해서 효과가 있는지 보려고 한다.
Clojure for the Brave and True'라는 책에서'Mac OS X의 Emacs'가 Clojure를 사용할 때 또 다른 문제가 있다는 것을 읽었다.아마도 나는 맥OS를 버리고 리눅스, 심지어 윈도 PC를 사용하여 Clojure 개발을 할 것이다.
업데이트: 와, VScode+Calva 대박!심지어 더 좋다.

토론 #14

FWIW 저는 단말기 Emacs를 장기적으로 사용하는 사용자입니다. 제 개발 환경은 iTerm2+tmux+Emacs+사과주입니다. 저는 항상 기쁩니다.즉, 나의 옵션 키를 원키로 바꾸는 데는 아무런 돈도 들지 않는다. 왜냐하면 나는 비영어 키보드 레이아웃을 사용하지 않기 때문이다. (나도 Dvorak 사용자이다.)
하지만 현재 VScode+Calva의 배후에는 커다란 동력이 있는 것 같다.지난 몇 년 동안 Clojure 커뮤니티는 Emacs/Vim에서 멀리 떨어지도록 유도한 것 같다. 적어도 두 명의 베테랑 편집자가 아니라면.그들의 학습 곡선을 당신이 마주하고 있는 Clojure에 추가할 이유가 없습니다.:)

좋은 웹페이지 즐겨찾기