`<>`,`{}`및`[]`와 같은 문자 안정화


8

언어 레이아웃이 오른쪽에서 왼쪽으로 변경 될 때; 일부 표준 편집 장소에서 (예를 들어, 구글 크롬의 주소 표시 줄), 문자가 좋아하는 <, {그리고 [자동으로되고 >, }그리고 ]단지 언어 레이아웃을 변경하여.

이것을 막고 문자를 안정적으로 만드는 방법이 있습니까?


스크린 샷으로 쇼케이스를 추가 할 수 있습니까?
user.dz

1
@Sneetsher : 영화가 필요합니다. Chromium 주소 표시 줄에서 문자에 <아랍어 만 추가하십시오. 그런 다음 레이아웃을 영어로 변경하십시오.
나를 병합하십시오

답변:


8

나는 당신이 처음에 무슨 뜻인지 알지 못했습니다. 결과를 기대할 수 있다면 괜찮을 것 같습니다.

이 동작은 Unicode Bidirectional Algorithm 의 표준입니다 . 따라서 지배적 인 BiDi 방향은 단락의 첫 번째 강한 특성에서 가져옵니다.

  • 그래서이 경우에 내가 생각하는 것 :

    1. 빈 텍스트 상자가있는 첫 번째 방향은 로캘 / 언어 구성에서 가져옵니다. 아시다시피 아랍어는 RTL 언어입니다. 오른쪽에 커서가 있습니다.

      초기 빈 텍스트 상자, RTL 방향

    2. 입력 <했지만로 표시되었습니다 >. 중립 문자이므로 방향에 영향을 미치지 않습니다. 왜 뒤집혀 있습니까? 짧은 대답 : 유니 코드 표준 : :)은 어쨌든 그것을 받아들입니다. 글쎄요, 그 이름은 덜 작습니다 . 그래서 ... RTL / 아랍어에서 수식은 오른쪽에서 시작해서 뒤집어 야합니다. 당신은 어떻게 생각합니까?

      bidi 중립 문자가있는 텍스트 상자

    3. 라틴 문자를 입력하십시오 g. 강력한 L (왼쪽) 문자이므로이 단락은 LTR로 감지됩니다.

      왼쪽 문자가 강한 텍스트 상자

    4. 삭제할 백 스페이스 g. 그러나 커서가 어디에 있는지 확인하십시오.

      강한 왼쪽 문자를 제거한 후 bidi 중립 문자가있는 텍스트 상자

    예를 들어 [, 이름이 왼쪽 대괄호 로 잘못 지정되었습니다 . Open 대괄호 와 같은 것이어야합니다 (BiDi 중립적이며 RTL로 뒤집혀 있음)

모든 개발자는 표준을 따르려고합니다. 어쨌든 그들은 텍스트 상자를 RTL 또는 LTR로 강제합니다. 대부분의 사용자에게 자동이 가장 좋습니다.

  • 그래서 당신에게 내가 제공 할 수있는 가장 좋은 것은 Unicode BiDi Control Char를 사용하는 것입니다.

    U+200F right-to-left mark (RLM)
    
    1. 빈 주소 표시 줄에 Ctrl+ Shift+ u, 작은 밑줄이 u나타나면 입력 200f한 다음Enter

      GTK / Gnome 유니 코드 입력

    2. 참조는 <LTR로 플립하지 않았다.

      GTK / 그놈 힘 RTL 방향

    Ctrl+ Shift+ u는 GTK / Gnome에 따라 다릅니다. 이 버그 리포트는 KDE / Qt / Xorg 사이의 충돌을 언급하므로 KDE는 그러한 옵션을 놓치고 수정되지 않는 것 같습니다 . Kubuntu에 임의의 유니 코드 문자를 삽입하는 방법이 필요 합니다.

  • 문자 수가 적기 때문에 필요없는 키를 다시 매핑하거나 사용하지 않은 키를 매핑 할 수 있습니다. 예를 들어 미국 영어 (국제 AltGr 데드 키)를 사용하고 있습니다.

    1. xkb편집 할 레이아웃 파일을여십시오.

      sudo nano /usr/share/X11/xkb/symbols/us
      
    2. 이름이 같은 그룹 정의를 찾으십시오.

      xkb_symbols "altgr-intl" {
      
          name[Group1]= "English (international AltGr dead keys)";
      
    3. 대한 예로 살펴 보자 r(기억하기 쉬운), : AltGr+ r→ RLM, Shift+ AltGr+ r→ LRM. ë& 대신 Ë. 바꾸다:

      key <AD04> { [        r, R,           ediaeresis,   Ediaeresis      ] };
      

      와:

      key <AD04> { [        r, R,           U200F,        U200E           ] };
      
    4. xkb 업데이트

      sudo dpkg-reconfigure xkb-data
      
    5. 다른 레이아웃으로 전환 한 후 다시 활성화하면 즉시 활성화됩니다.

    노트:

더 이해하기 위해 읽어보십시오.

참고 문헌 :


감사. 나를 위해 Ctrl + Shift + U는 KDE에서 작동하지 않습니다. 아마도 단일성 또는 그놈 고유의 것일 수 있습니다. ', [] {}'와 같은 일부 문자가 방향 별 처리를 선택 해제 할 수 있고 (항상 ltr로 다시 변환 됨) 키보드 기호와보다 호환되고 혼동이 줄어드는 것이 환상적입니다.
나를 병합

1
이 버그 리포트에 KDE / Qt / Xorg 간의 충돌이 언급되어 있으므로 KDE에서 수정되지 않은 것 같습니다 . 쿠분투에 임의의 유니 코드 문자를 삽입하는 방법이 필요 합니다. 해결 방법이 있는지 검색합니다.
user.dz

@MinimusHeximus, xkb를 사용하여 유니 코드 입력 해결 방법으로 답변을 업데이트했습니다. 나는 그놈 / 유니티 만 가지고 있습니다. KDE에서 작동하지 않는 경우 알려주십시오.
user.dz

1
0x100200F대신 비슷한 것을 사용해야하는 것 같습니다 U200F. 와 같은지 모르겠습니다 .
병합 날

1
@MinimusHeximus, 예, 동일합니다 (실제로 이것은 새로운 키 심을 추가하는 데 더 효과적인 방법 일 수 있습니다.) 단일 문자의 키 심을 설명하려면 유니 코드 값 앞에 "0x100"을 붙여야합니다. ", Ref : Wikibooks : FOSS 현지화 / 부록 B : 기술적 측면 . 나는 당신에게서 새로운 것을 배웠습니다.
user.dz
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.