Дратівливе автоперейменування в Гуаке


13

Я люблю розсадний термінал Guake, але він має дратівливу проблему. Коли я використовую багато вкладок, я ненавиджу, коли імена вкладок перейменовують кожного разу, коли я виконую команду або переходжу в одну з них. Я хочу перейменувати будь-яку вкладку та підтримувати ім’я на всіх сесіях. Наприклад, коли я використовую Midnight Commander і входжу в довгу папку шляху, вкладка розширюється, і це жахливо. Ім'я вкладки я бачу, mc [user@machine_name]:/weird/long/infinite/pathколи переходжу до /weird/long/infinite/pathпапки.

Чи можу я завжди мати одне ім’я для кожної вкладки, навіть при перейменуванні її вручну?

Відповіді:


18

просто біжи

gconftool-2 --set /apps/guake/general/use_vte_titles --type boolean false

і перезавантажте термінал,

легкий як пиріг (3,14)


8

Я знайшов спосіб відключити надокучливе перейменування. Я знайшов у своєму скрипті guake Python (у версії 0.4.3-3) у рядках від 996 до 1002:

def on_terminal_title_changed(self, vte, box):
    use_them = self.client.get_bool(KEY("/general/use_vte_titles"))
    if not use_them:
        return
    page = self.notebook.page_num(box)
    self.tabs.get_children()[page].set_label(vte.get_window_title())

Як показує сценарій, /general/use_vte_titlesключ запобігає функцію автоматичного перейменування. Саме Guake використовує GConf для налаштування його параметрів ( пояснення ). Мені довелося встановити пакет редактора gconf, щоб редагувати виконання параметрів Guake sudo apt-get install gconf-editor. Потім я виконав gconf-editor, переглянув /apps/guake/generalі не позначив use_vte_titlesключ. Закрив редактор. Наступного разу, коли я виконав Guake, функцію автоматичного перейменування було відключено.

Тепер усі вкладки названі, Terminalі якщо я перейменую її, вона все ще назвала весь сеанс з тим же ім'ям. Було б корисно додати цю клавішу до діалогу з налаштуваннями Гуаке. Але це рішення все одно спрацювало.


Чи можливо це зробити gsettingsза допомогою командного рядка?
qed

1
@qed має працювати так:gconftool --set /apps/guake/general/use_vte_titles --type boolean true
chsymann

4

У командному рядку:

vim ~ / .gconf / apps / guake / general /% gconf.xml

Тут має бути щось подібне:

<entry name="use_vte_titles" mtime="1404143215" type="bool" value="true"/>

Просто змініть його на:

<entry name="use_vte_titles" mtime="1404143215" type="bool" value="false"/>

Збережіть файл і перезапустіть guake.


1

Подумайте просто скоротити назву терміналу. Алгоритм визначений в .bashrc, назву термінала Guake буде дотримуватися, як ви помітили:

Моє .bashrcмістить наступне:

# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
    PROMPT_COMMAND='PS1X=$(pwd | sed -r "s-^$HOME/--;s-^$HOME-~-;s-^(.[^/]*)/.*/-\1/.../-")'
    PS1="\[\e]0;${debian_chroot:+($debian_chroot)}"'$PS1X'"\a\]$PS1"
    ;;
*)
    ;;
esac

Ім'я хоста більше не відображається, і відображаються лише перший і останній компоненти шляху:

$HOME -> ~

$HOME/some/deep/sub/dir -> some/.../dir

/usr/local/deeply/inside/there -> /usr/.../there

При такому налаштуванні кнопки вкладок досить вузькі, але все ж містять корисну інформацію.

Дивись також:

/programming//q/3497885/946850

/unix//q/26844/19205


Це хороший варіант, але моє запитання було «Чи можу я завжди мати одне ім’я для кожної вкладки, навіть коли перейменовувати її вручну?». Цього можна досягти за допомогою мого підходу.
вихід з системи

0

Так, у мене був і цей випуск, і я настільки здивований, що він все ще з'являється в останніх версіях Guake. В останній версії, я думаю, є можливість назвати термінали як Terminal 1і Terminal 2т. Д., Що теж не дуже допомагає.

В останні кілька років я використовував простий сценарій у своєму .zshrc(я використовую Zsh-термінал, але ви можете застосувати щось подібне в Bash).

function chpwd {
 if [ -e ".guakerc" ]; then
   setupguake
 else
    guake -r ${PWD##*/}
 fi
}

function setupguake() {
  . $(pwd)/.guakerc

  if ((${+name})); then
    guake -r ${name}
  fi
}

По суті, що це робить, він відстежує будь-яку зміну каталогів (через chpwd), і якщо .guakercфайл знайде, він запускає його. Всередині цього файлу можна встановити назву guake та багато інших речей.

Якщо не .guakercзнайдено жодного файлу (найчастіший випадок), він просто встановлює ім'я папки як ім'я терміналу. Тож якщо ви знаходитесь в папці з назвою /home/username/Development/social-app, термінал перейменовано як social-app.

Сподіваюся, це допомагає!

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.