ν μ€νΈ μμμ 'disabled' μμ±κ³Ό μ μ¬ν©λλ€.
readOnly λͺ¨λμ μ μ¬νλ©° νΈμ§κΈ°μμ μ¬μ©μ μνΈ μμ©λ§ νμ©λ©λλ€. λ°λΌμ 컀μμ λΌμΈ λ§μ»€κ° μ¨κ²¨μ§λλ€.
@gissues :{"μ£Όλ¬Έ":73.29192546583863,"μν":"λ°±λ‘κ·Έ"}
μ΄κ²μ μ΄λμμλ ꡬνλμμ΅λκΉ? λλ λν μ΄ κΈ°λ₯μ΄ λ§€μ° μ μ©νλ€λ κ²μ μκ² λ κ²μ λλ€.
μ΄μ λν μ¬μ© μ¬λ‘λ 무μμ λκΉ? κ±°μ μ¬μ©λμ§ μκ³ κ΅¬ννκΈ° μ½κΈ° λλ¬Έμ μ΄κ²μ μ½μ΄μ μΆκ°νκ³ μΆμ§ μμ΅λλ€.
κ°μ κ²
editor.container.style.pointerEvents="none"
editor.container.style.opacity=0.5 // or use svg filter to make it gray
editor.renderer.setStyle("disabled", true)
editor.blur()
μλλ©΄ μ΄κ±°
var cover = document.createElement("div")
editor.container.appendChild(cover)
cover.style.cssText = "position:absolute;\
top:0;bottom:0;right:0;left:0;\
background:rgba(150,150,150,0.5);\
z-index:100"
cover.addEventListener("mousedown", function(e){e.stopPropagation()}, true)
μλ ν κ²μ΄λ€.
λͺ©νλ μκ°μ μΌλ‘ λΉνμ±νλ κ²μ²λΌ 보μ΄κ² νλ κ²μ΄ μλλΌ μ¬μ©μκ° μνΈ μμ©ν μ μλ κΈ°λ₯μ μ κ±°νλ κ²μ
λλ€. μ¦, 컀μλ₯Ό μ μ΄ν μ μμ΅λλ€(λ μ’μ μ μ 컀μκ° μ‘΄μ¬νμ§ μλλ€λ κ²μ
λλ€).
μ΄κ²μ "disabled"λΌκΈ°λ³΄λ€ λ μ격ν μ½κΈ° μ μ© μ νμ
λλ€. μ΄κ²μ νΈμ§κΈ°λ₯Ό μ¬μ©νμ¬ μ½λ μνμ νμνκ±°λ μΉ νμ΄μ§μμ μ€ν μ€μΈ νλ‘κ·Έλ¨μ μΆλ ₯μ νμν λ νΈλ¦¬ν©λλ€. μ΄κ²μ΄ νΈμ§κΈ°μ μ΄μμ μΈ μ©λλ μλ μ μμ§λ§ ꡬ문 κ°μ‘° νμ λ° μΌλ°μ μΌλ‘ 보기 μ’μ κ²κ³Ό κ°μ κΈ°λ₯μ μ΄μ κ°μ μ©λλ‘ μ¬μ©νκΈ°μ 맀λ ₯μ μΈ μ΅μ
μ
λλ€.
λ μ½λ μν λͺ¨λ μ€μ λ‘ μ΄λ₯Ό μννμ§ λͺ»ν©λλ€. λ μ€ μ΄λ κ²λ 컀μλ₯Ό μ κ±°νμ§ μμΌλ©° μ¬μ©μκ° μ»€μλ₯Ό μ μ΄νμ§ λͺ»νλλ‘ νλ μ’μ μμ μ μννλ λμ νΈμ§κΈ°μ ν¬μ»€μ€λ₯Ό νν μ μμ΅λλ€.
μ, μ΄μ μκ² μ΅λλ€.
κ·Έλ¬λ μΌλ§λ λ§μ νΈμ§κΈ° κΈ°λ₯μ λΉνμ±νν΄μΌ νλμ§λ μ νν μ¬μ© μ¬λ‘μ λ°λΌ λ€λ¦
λλ€.
νΈμ§μμκ² μ΄μ μ λ§μΆλ μ νκ³Ό κΈ°λ₯μ λ κ²½μ° λͺ¨λ λΉνμ±νλμ΄μλ μ λλ€κ³ μκ°ν©λλ€. κ°μ λ·°ν¬νΈλ μΆλ ₯μ νμνλ λ° μ μ©νμ§λ§ λΈλΌμ°μ μ νμ ν¨κ» μλνμ§ μμ΅λλ€. κ·Έλ¦¬κ³ μ½λ μμ μ κ²½μ° μΌλ°μ μΌλ‘ ctrl+a ctrl+c
ν μ μλ κ²μ΄ μ’μ΅λλ€.
컀μ λ° λΌμΈ νμ΄λΌμ΄νΈλ₯Ό μ¨κΈ°λ €λ©΄
editor.setOptions({
readOnly: true,
highlightActiveLine: false,
highlightGutterLine: false
})
editor.renderer.$cursorLayer.element.style.opacity=0
νΈμ§κΈ°λ₯Ό νν μ μλλ‘ λ§λ€κΈ°
editor.textInput.getElement().tabIndex=-1
or
editor.textInput.getElement().disabled=true
λͺ¨λ λ°λ‘ κ°κΈ°λ₯Ό λΉνμ±ννλ €λ©΄
editor.commands.commmandKeyBinding={}
λν $mouseHandler λ° textInputμ λν νκ΄΄ λ©μλλ₯Ό μΆκ°νμ¬ λͺ¨λ λΉνμ±νν μ μμ΅λλ€.
νλ₯ν©λλ€. μ κ° μ°Ύλ ν¨κ³Όκ° μμ΅λλ€. μ νν μ¬μ© μ¬λ‘μ λ°λΌ λ¬λΌμ§λ μꡬ μ¬νμ λμνμ§λ§ 컀μλ λ°λ‘ κ°κΈ° λ±μ λΉνμ±ννλ λͺ κ°μ§ μ΅μ μ΄ μμΌλ©΄ νΈλ¦¬ν μ μμ΅λλ€.
λν μ μ½λμ λ§μ§λ§ μ€μ νΈμ§κΈ°μμ μ무 κ²λ νμνμ§ μλ κ²μ²λΌ 보μ λλ€. :/
λν μ μ½λμ λ§μ§λ§ μ€μ νΈμ§κΈ°μμ μ무 κ²λ νμνμ§ μλ κ²μ²λΌ 보μ λλ€. :/
editor.commands.commmandKeyBinding={}
μ μλ―Έν©λκΉ? κ·Έκ²μ λ§€μ° μ΄μν κ²μ
λλ€
κ°μ¬ν©λλ€!
κ°μ¬ν©λλ€. νΈμ§κΈ°λ₯Ό λΉνμ±ννλ μ΅μ μ΄ νμν©λλ€!
μλ νμΈμ, $mouseHandler νκ΄΄μλ₯Ό ꡬννμ ¨μ΅λκΉ? λλ μ½κ° κΈΈμ μμμ΅λλ€ (μ¬κΈ° μ΄λ³΄μ). μλλ©΄ λΉνμ±ν ν μ μλ λ°©λ²μ΄ μλμ? νΈμ§μκ° btwλ₯Ό λΉνμ±νν΄ μ£Όμ μ κ°μ¬ν©λλ€ :-)
@λμ΄νΈ μ
editor.renderer.$cursorLayer.element.style.opacity=0
$cursorLayerλ μ΄μ VirtualRendererμ μμ±μ΄ μλ κ² κ°μ΅λλ€.
λ΄ νΈμ§κΈ°κ° 'readOnly' μνμΌ λ 컀μλ₯Ό μ¨κΈ°κ³ μΆμ΅λλ€. κ·Έλ¦¬κ³ κ·νκ° μ 곡ν λ°©λ²μ μλνμ§λ§ $cursorLayerκ° VirtualRendererμ μμ±μ΄ μλκΈ° λλ¬Έμ μλνμ§ μμ΅λλ€. λ€λ₯Έ λ°©λ²μ΄ μμ΅λκΉ? 컀μλ₯Ό μ¨κΈ°μκ² μ΅λκΉ?
VirtualRendererμλ hideCursor()μ setCursorStyle()μ λ κ°μ§ λ°©λ²μ΄ μλ€λ κ²μ μκ² λμκ³ , μλ λ°©λ²μΌλ‘ μ¬μ©νλ €κ³ ν©λλ€. νμ§λ§ μ λμ§ μμ΅λλ€.
this._editor.renderer.hideCursor();
this._editor.renderer.setCursorStyle("λΆν¬λͺ
λ: 0;");
μ κ° μ¬μ©μ μλͺ»ν건κ°μ?
μμ μ΄ μ§ν μ€μΈκ°μ? ν¬μ»€μ€κ° νΈμ§κΈ°μμ λ²μ΄λ λ νΈμ§κΈ°λ₯Ό λΉνμ±ννκ³ μΆμ΅λλ€.
μ¬κΈ°λ λ§μ°¬κ°μ§! renderer.hideCursor() λ©μλλ₯Ό μ¬μ©νκ³ μΆμ§λ§ μλνμ§ μλ κ² κ°μ΅λλ€. λ΄ νΈμ§κΈ° μ΄κΈ°ν λΈλ‘κ³Ό changeCursor
μ΄λ²€νΈμμ νΈμΆνλ €κ³ νμ§λ§ μλνμ§ μμ΅λλ€.
μ¬λλ€μ΄ μ¬μ ν 컀μλ₯Ό λΉνμ±ννλ €λ κ²½μ° νΈμ§κΈ° μμμμ css3 μμ± pointer-events: none;
μ μ¬μ©νμμμ€.
μ¬μ ν μλ‘μ΄ λ°μ κ°λ°μμΈ νΈμ§κΈ°λ₯Ό λΉνμ±ννλ €λ©΄ μ΄λ»κ² ν΄μΌ ν©λκΉ? λμμ μ£Όμλ©΄ κ°μ¬νκ² μ΅λλ€
μ¬λλ€μ΄ μ¬μ ν 컀μλ₯Ό λΉνμ±ννλ €λ κ²½μ° νΈμ§κΈ° μμμμ css3 μμ±
pointer-events: none;
μ μ¬μ©νμμμ€.
νΈμ§κΈ°λ₯Ό μ΄λ»κ² λΉνμ±νν©λκΉ?
μ¬λλ€μ΄ μ¬μ ν 컀μλ₯Ό λΉνμ±ννλ €λ κ²½μ° νΈμ§κΈ° μμμμ css3 μμ±
pointer-events: none;
μ μ¬μ©νμμμ€.νΈμ§κΈ°λ₯Ό μ΄λ»κ² λΉνμ±νν©λκΉ?
editor.setOptions({
readOnly: true,
})
맀λ ₯μ²λΌ μΌνλ€
2020λ
9μ 23μΌ μμμΌ μ€ν 10:27 Nehal Hasnayeen [email protected]
μΌλ€:
μ¬λλ€μ΄ μ¬μ ν 컀μλ₯Ό λΉνμ±ννλ €λ κ²½μ° css3 μμ± pointer-eventsλ₯Ό μ¬μ©νμμμ€.
μμ; νΈμ§κΈ° μμμμ.νΈμ§κΈ°λ₯Ό μ΄λ»κ² λΉνμ±νν©λκΉ?
editor.setOptions({
μ½κΈ° μ μ©: μ°Έ,
})β
λΉμ μ΄ λκΈμ λ¬μκΈ° λλ¬Έμ μ΄κ²μ λ°λ κ²μ λλ€.
μ΄ μ΄λ©μΌμ μ§μ λ΅μ₯νκ³ GitHubμμ νμΈνμΈμ.
https://github.com/ajaxorg/ace/issues/266#issuecomment-698073286 λλ
ꡬλ μ·¨μ
https://github.com/notifications/unsubscribe-auth/ALIR2LMEV5BHDXPXO7RT5BTSHKVAPANCNFSM4AESJK3A
.
κ°μ₯ μ μ©ν λκΈ
μ, μ΄μ μκ² μ΅λλ€.
κ·Έλ¬λ μΌλ§λ λ§μ νΈμ§κΈ° κΈ°λ₯μ λΉνμ±νν΄μΌ νλμ§λ μ νν μ¬μ© μ¬λ‘μ λ°λΌ λ€λ¦ λλ€.
νΈμ§μμκ² μ΄μ μ λ§μΆλ μ νκ³Ό κΈ°λ₯μ λ κ²½μ° λͺ¨λ λΉνμ±νλμ΄μλ μ λλ€κ³ μκ°ν©λλ€. κ°μ λ·°ν¬νΈλ μΆλ ₯μ νμνλ λ° μ μ©νμ§λ§ λΈλΌμ°μ μ νμ ν¨κ» μλνμ§ μμ΅λλ€. κ·Έλ¦¬κ³ μ½λ μμ μ κ²½μ° μΌλ°μ μΌλ‘
ctrl+a ctrl+c
ν μ μλ κ²μ΄ μ’μ΅λλ€.컀μ λ° λΌμΈ νμ΄λΌμ΄νΈλ₯Ό μ¨κΈ°λ €λ©΄
νΈμ§κΈ°λ₯Ό νν μ μλλ‘ λ§λ€κΈ°
λͺ¨λ λ°λ‘ κ°κΈ°λ₯Ό λΉνμ±ννλ €λ©΄
λν $mouseHandler λ° textInputμ λν νκ΄΄ λ©μλλ₯Ό μΆκ°νμ¬ λͺ¨λ λΉνμ±νν μ μμ΅λλ€.