그놈 터미널에서 더블 클릭 선택 경계를 설정할 문자를 지정할 수 있습니까?


16

그놈 터미널에서 텍스트를 두 번 클릭하여 선택하면 공백에서 선택이 중지되지만 하이픈이 계속됩니다.

공백

하이픈

내 파일 이름 중 일부에는 눈물이 튀어 나온 별표 와 같이 일반적이지 않은 문자가 포함되어 있으며 두 번 클릭하여 선택할 수 없습니다.

특이한 인물

이 문자들에 대해서도 더블 클릭 선택을 계속할 수있는 방법이 있습니까?

답변:


9

"편집> 프로필 환경 설정> 일반"에서 "단어 별 문자 선택"상자에 문자를 추가하십시오.


고마워, 나는 그것을 어떻게 알지 못했는지 모른다.
ændrük

그놈 전체에서이 작업을 수행하는 일반적인 방법을 찾은 사람이 있습니까? 아니면 각 응용 프로그램의 개발자가 단어 경계를 정의 / 정의해야합니까? 관련 질문 : superuser.com/q/650240/245597 .
Noyo

11
버전 3.14 이후로이 옵션은 사라졌습니다. 지금 어떻게 할 수 있습니까?
Joachim Breitner

나는 시도 dconf write /org/gnome/terminal/legacy/profiles:/:{your-profile-id}/word-char-exceptions '@ms "-,.;/?%&#_=+@~·:"'했지만 내가 얻는 것은error: Could not connect: Connection refused
cprn

깨지지 않는 공간이 작동하지 않는 것 같습니다. 그러나 Zesty의 메이트 터미널에서 펑키 별표와 함께 작동합니다.
Gringo Suave 2016 년

16

[허용 된 답변이 더 이상 작동하지 않으므로 답변을 추가하십시오.]

스크립트

이 단어를 스크립트에 넣어 단어 구분 기호를 설정했습니다.

https://github.com/ab/ubuntu-wart-removal/blob/master/gnome-terminal-word-separators.sh

배경

그놈 터미널이이 주제에 대해 여러 번 뒤집어졌습니다.

이 구성 기능은 gnome-terminal 3.14에서 제거되었습니다 (Ubuntu 15.04 Vivid에 포함됨)

그런 다음 gnome-terminal 3.16 (Ubuntu 15.10 Wily에 포함)에서 옵션은 UI가 아닌 후드 아래에서 다시 도입되었습니다. 또한 콜론 :은 단어 구분 기호로 처리되도록 변경되었습니다.

dconf로 편집

이 지침에 따라 dconf를 사용하여 세트를 구성 할 수 있습니다. https://bugs.launchpad.net/ubuntu/+source/gnome-terminal/+bug/1401207/comments/8

나는 -#%&+,./:=?@_~단어 분리기가 아닌 세트 로 사용 하고 싶습니다 .

콜론을 사용하면 / crazy /가 있습니다. 예, 거기에 : / :가 있습니다.

1) 편집-> 프로파일 환경 설정-> 프로파일의 일반 탭에 프로파일 ID가 있습니다 (예 : b1dcc9dd-5262-4d8d-a863-c897e6d979b9)

2) 구문이 올바른지 확인하십시오.

$ dconf list /org/gnome/terminal/legacy/profiles:/:b1dcc9dd-5262-4d8d-a863-c897e6d979b9/ foreground-color visible-name palette use-system-font ...

아무 것도 반환하지 않으면 잘못된 것입니다. 다시 시도하십시오.

삼) dconf write /org/gnome/terminal/legacy/profiles:/:b1dcc9dd-5262-4d8d-a863-c897e6d979b9/word-char-exceptions '@ms "-#%&+,./:=?@_~"'

특히, 여기에는 ":"이 포함되어 있으므로 원하는 URL을 선택할 수 있습니다. ( http://example.com 은 "//example.com"을 선택하지 않습니다).


고마워이게 내가 필요한 것입니다 :. 기본 또는 현재 프로파일을 자동으로 가져 오기 위해 명령을 작성할 수 있습니까? 따라서 나중에 해당 명령을 실행하기 위해 프로파일 ID를 수동으로 조회 할 필요가 없습니까? 그렇게하면 새로 설치할 때 해당 스크립트를 실행할 수 있습니다.
Programster

@Programster 당신은 이런 식으로 할 수 있습니다dconf list /org/gnome/terminal/legacy/profiles:/
AB

@alberge에게 감사드립니다 나는 그것을 가지고 파이썬 스크립트에 넣었습니다
Programster

의 기본값은 무엇입니까 word-char-exceptions? 문자 하나만 추가 할 수 있습니까?
Tor Klingberg

1

다른 터미널에서 구현되는 매우 유용한 기본 기능은 화면에서 라인의 확장 섹션을 점진적으로 선택하는 것입니다. 예를 들어, 주어진

/home/username/dir1_r.2-3/dsr.filenr_34.ctr 23456677 dftrprpr

더블 클릭 말에 filenrdsr.filenr_34.ctr에서 진행 것 filenr까지 :

                              filenr_34
                          dsr.filenr_34.ctr
                       -3/dsr.filenr_34.ctr
                      2-3/dsr.filenr_34.ctr
                    r.2-3/dsr.filenr_34.ctr
               dir1_r.2-3/dsr.filenr_34.ctr
      username/dir1_r.2-3/dsr.filenr_34.ctr
 home/username/dir1_r.2-3/dsr.filenr_34.ctr
 home/username/dir1_r.2-3/dsr.filenr_34.ctr 23456677
 home/username/dir1_r.2-3/dsr.filenr_34.ctr 23456677 dftrprpr
/home/username/dir1_r.2-3/dsr.filenr_34.ctr 23456677 dftrprpr

다음 단계 구분 기호까지 쌍을 추가하여 주변 대칭을 해결할 수 있습니다.

물론 사용자에게 기본값 변경 옵션이 제공되어야합니다.


1
답변에 대한 의견은 없지만 사람들이 더 빨리 이해하도록 더 나은 방법으로 형식을 지정하십시오. 단계별로 나열하려면 번호 매기기를 사용하십시오.
VedVals

고맙지 만이 질문이 내 질문에 해당되는 것 같지는 않습니다. 그놈 터미널을 구성하는 방법을 구체적으로 묻습니다.
ændrük

1

다른 답변은 오늘 작동하지 않습니다 ...이 우분투 18.04에서 작동합니다 ... 먼저 UUID gnome 터미널 프로파일 ID를 식별하십시오 ... 터미널에서 이것을 발행하십시오.

profile=$(gsettings get org.gnome.Terminal.ProfilesList default)

echo $profile  #  for me it gives b1dcc9dd-5262-4d8d-a863-c897e6d97969

이제 변경하십시오 :

dconf write /org/gnome/terminal/legacy/profiles:/:b1dcc9dd-5262-4d8d-a863-c897e6d97969/word-char-exceptions '@ms "-,.;?%&#_+@~·$/"'

우분투 18.04가 수정 될 때까지 다음 읽기 명령은 자동으로 실패하지만 우분투 16.04에서는 정상적으로 작동했습니다.

dconf  read  /org/gnome/terminal/legacy/profiles:/:b1dcc9dd-5262-4d8d-a863-c897e6d979b9/word-char-exceptions


0

@alberge 답변을 확장하면 다음 python3스크립트를 실행하여 모든 프로필을 변경 하여이 작업을 수행 할 수 있습니다.

#!/usr/bin/python3

import subprocess

command = ["dconf", "list", "/org/gnome/terminal/legacy/profiles:/"]
result = subprocess.run(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE, universal_newlines=True)

profiles = result.stdout.split('\n')

for profileString in profiles:
    if profileString.startswith(":"):
        changeCmdPart = "/org/gnome/terminal/legacy/profiles:/" + profileString + "word-char-exceptions"
        changeCmd = ["dconf", "write", changeCmdPart, '@ms "-#%&+,./:=?@_~"']
        subprocess.run(changeCmd)

print("done!")

아니면 그냥 실행할 수 있습니다 :

curl -s http://scripts.programster.org/scripts/5?output=raw | python3
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.