Tôi có thể chỉ định những ký tự nào đặt ranh giới lựa chọn nhấp đúp trong Terminal Gnome không?


16

Khi tôi bấm đúp để chọn văn bản trong Thiết bị đầu cuối Gnome, lựa chọn dừng lại ở khoảng trắng nhưng tiếp tục trên dấu gạch nối:

không gian

dấu gạch ngang

Một số tên tệp của tôi chứa các ký tự không phổ biến, chẳng hạn như dấu hoa thị hình giọt nước nặng và không thể chọn bằng cách nhấp đúp:

nhân vật khác thường

Có cách nào để lựa chọn nhấp đúp tiếp tục trên các ký tự này không?

Câu trả lời:


9

Trong "Chỉnh sửa> Tùy chọn hồ sơ> Chung", thêm ký tự vào hộp "Chọn ký tự theo từ".


Cảm ơn, tôi không biết làm thế nào tôi không nhận thấy điều đó.
ændrük

Có ai tìm thấy một cách chung để làm điều này trên Gnome không? Hoặc là các ranh giới từ cho đến các nhà phát triển của mỗi ứng dụng để xác định / xác định lại? Câu hỏi liên quan: superuser.com/q/650240/245597 .
Noyo

11
Ít nhất là từ phiên bản 3.14, tùy chọn này đã biến mất. Làm thế nào chúng ta có thể làm điều đó bây giờ?
Joachim Breitner

Tôi đã thử dconf write /org/gnome/terminal/legacy/profiles:/:{your-profile-id}/word-char-exceptions '@ms "-,.;/?%&#_=+@~·:"'nhưng tất cả những gì tôi nhận được làerror: Could not connect: Connection refused
cprn

Dường như không thể có được không gian không phá vỡ để làm việc. Tuy nhiên, nó hoạt động với dấu sao vui nhộn trên thiết bị đầu cuối bạn đời từ Zesty.
Gringo Suave

16

[Thêm câu trả lời vì câu trả lời được chấp nhận không còn hoạt động.]

Kịch bản

Tôi kết hợp nó thành một tập lệnh để đặt các dấu phân cách:

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

Lý lịch

Thiết bị đầu cuối Gnome đã lật nhiều lần về chủ đề này.

Tính năng cấu hình này đã bị xóa trong gnome-terminal 3.14 (có trong Ubuntu 15.04 Vivid)

Sau đó, trong gnome-terminal 3.16 (có trong Ubuntu 15.10 Wily), tùy chọn này được giới thiệu lại dưới mui xe, nhưng không có UI. Ngoài ra, dấu hai chấm :đã được thay đổi để được coi là một dấu tách từ.

Chỉnh sửa với dconf

Theo các hướng dẫn này, bạn có thể định cấu hình bộ bằng cách sử dụng dconf: https://bugs.launchpad.net/ubfox/+source/gnome-terminal/+orms/1401207/comments/8

Tôi thích sử dụng -#%&+,./:=?@_~như một bộ phân tách không từ.

Lưu ý rằng việc sử dụng dấu hai chấm có / crazy /. Vâng, có: /: trong đó.

1) chỉnh sửa -> tùy chọn hồ sơ -> tab Chung trên hồ sơ của bạn có ID hồ sơ, ví dụ: b1dcc9dd-5262-4d8d-a863-c897e6d979b9

2) kiểm tra xem bạn đã có cú pháp đúng với:

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

Nếu nó không trả về gì, bạn đã hiểu sai; thử lại.

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

Cụ thể, cái này có ":" trong, làm cho nó chọn các URL như tôi mong đợi. ( http://example.com không chọn "//example.com").


Cảm ơn đây là chính xác những gì tôi cần để có được :. Bạn có thể viết (các) lệnh để tự động tìm nạp hồ sơ mặc định hoặc hồ sơ hiện tại để tôi không phải tự tìm kiếm ID hồ sơ của mình để chạy lệnh đó trong tương lai không? Bằng cách đó tôi chỉ có thể chạy tập lệnh đó trên các bản cài đặt mới.
trình viên

@ Chương trình Bạn có thể làm một cái gì đó như thế này vớidconf list /org/gnome/terminal/legacy/profiles:/
AB

cảm ơn @alberge Tôi đã lấy nó và đặt nó vào một kịch bản python
Chương trình

Giá trị mặc định là gì word-char-exceptions, vì vậy tôi có thể thêm chỉ một ký tự?
Tor Klingberg

1

Một tính năng mặc định rất hữu ích được triển khai trong các thiết bị đầu cuối khác là lựa chọn lũy tiến các phần mở rộng của một dòng trên màn hình. ví dụ, được đưa ra

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

Kích đúp chuột vào, nói rằng, filenrtrong dsr.filenr_34.ctrsẽ tiến bộ từ 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

Đối xứng xung quanh có thể được giải quyết bằng cách thêm các cặp cho đến khi phân cách cấp tiếp theo.

Và tất nhiên người dùng nên được cung cấp tùy chọn thay đổi mặc định.


1
Không có bình luận về câu trả lời nhưng cố gắng định dạng nó theo cách tốt hơn để mọi người hiểu nó nhanh hơn. Nếu bạn muốn liệt kê nó từng bước, hãy sử dụng đánh số.
VedVals

Cảm ơn bạn, nhưng tôi không nghĩ rằng điều này áp dụng cho câu hỏi của tôi. Tôi đặc biệt hỏi cách cấu hình thiết bị đầu cuối Gnome.
ændrük

1

Các câu trả lời khác không hoạt động ngày hôm nay ... điều này hoạt động trên Ubuntu 18.04 ... trước tiên hãy xác định id hồ sơ thiết bị đầu cuối gnome UUID của bạn ... phát hành điều này trong thiết bị đầu cuối

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

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

bây giờ thực hiện thay đổi:

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

cho đến khi Ubuntu 18.04 được sửa lỗi, lệnh đọc sau đây sẽ âm thầm thất bại trong khi nó hoạt động tốt trên ubfox 16.04

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

Trông khá giống như Askubfox.com/a/725109/158442
muru

0

Mở rộng câu trả lời @alberge, bạn có thể thực thi đoạn python3mã sau để thay đổi tất cả các cấu hình của mình để thực hiện việc này:

#!/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!")

Hoặc bạn chỉ có thể thực thi:

curl -s http://scripts.programster.org/scripts/5?output=raw | python3
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.