Abra a nova janela do terminal do gnome com o mesmo diretório da janela anterior

3

Estou executando o Awesome WM no Arch Linux mais recente e uso o Gnome Terminal como meu terminal com o Bash shell. Eu consegui fazer isso funcionar, mas me pergunto se alguma forma de melhoria é possível para minha implementação. A questão não está relacionada à abertura de novas guias, apenas para abrir novas janelas de terminal.

Primeiro eu reescrevi o comando cd para salvar o diretório de trabalho atual em um arquivo:

~ / .bashrc

alias cd='source /home/my_user/.cd_extend'

~ / .cd_extend

#!/bin/bash
command cd $1
echo $(pwd) > ~/.terminal_directory

Depois, posso abrir o terminal, que lê o arquivo .terminal_directory e abre um novo shell do gnome com o diretório de trabalho fornecido.

open_terminal.sh

#!/bin/bash
DIR=$(cat /home/my_user/.terminal_directory)
gnome-terminal --working-directory=$DIR

awesomewm rc.lua

terminal   = "/home/my_user/.dotfiles/open_terminal.sh
awful.key({ modkey, }, "Return", function () awful.util.spawn(terminal) end)

Gostaria de saber se perdi alguma funcionalidade bash interna que poderia ter simplificado isso em possivelmente menos arquivos. É uma abordagem simples, pois meu conhecimento bash é muito limitado. E me pergunto se há espaço para melhorias.

    
por user1213904 01.12.2016 / 12:58

2 respostas

0

Após alguns dias de testes e perguntas, essa parece ser a implementação mais fácil. Isso pode ser feito com um estado global que o Awesome WM lê, no entanto, para manter previsibilidade e facilidade de implementação, estou mantendo isso.

~ / .bashrc

alias cd='source /home/my_user/.cd_extend'

~ / .cd_extend

#!/bin/bash
command cd "$1"
pwd > ~/.terminal_directory

Depois, posso abrir o terminal, que lê o arquivo .terminal_directory e abre um novo shell do gnome com o diretório de trabalho fornecido.

open_terminal.sh

#!/bin/bash
DIR=$(cat /home/my_user/.terminal_directory)
gnome-terminal --working-directory=$DIR

awesomewm rc.lua

terminal   = "/home/my_user/.dotfiles/open_terminal.sh
awful.key({ modkey, }, "Return", function () awful.util.spawn(terminal) end)
    
por 05.12.2016 / 11:14
2

No menu do terminal Gnome, use:

File --> Open Terminal 

Isso abrirá uma nova janela usando o pwd como o diretório.

Além disso, você pode definir as guias abertas:

Edit --> Preferences --> General --> Open new terminals in: --> select tab.

Assim, novos terminais serão abertos na mesma janela com o mesmo pwd.
Você ainda poderá abrir novas janelas, se necessário:

Alt-F2 --> gnome-terminal

    
por 02.12.2016 / 02:06