Copie o arquivo para a linha de transferência pela linha

3

Estou usando o seguinte script para copiar um arquivo linha por linha na área de transferência:

perl -ne 'm/\t(.+)\n/; open(my $pipe, "|xclip -i"); print {$pipe} ; close($pipe);'\
         'print; 'bash -c "read -p continue"'' photo_captions.txt

Caso isso seja confuso, meu arquivo photo_captions.txt contém linhas como:

IMG0001.JPG     At the beach
IMG0002.JPG     At the bar

Onde as legendas são precedidas por guias.

E o script é apenas capturar tudo após a guia para a nova linha e colocá-lo no xclip, imprimindo isso para o padrão e, em seguida, pedindo ao usuário que pressione enter para continuar na próxima linha. [o uso de bash aqui é uma farsa, ou talvez seja perl, de qualquer forma, isso funciona principalmente para mim].

Como:

At the beach
continue
At the bar
continue

O que eu gostaria de fazer, facilitar muito a minha vida enquanto folheio as fotos que carreguei e colei legendas nelas, é passar esse arquivo inteiro para algum tipo de gerenciador de área de transferência e fazer com que aquele gerente espere para eu colar a linha um, uma vez colada, a próxima pasta será a linha dois, etc, evitando a minha necessidade de voltar e pressionar enter para continuar. FYI o roteiro sem a pausa seria copiar todas as linhas como um blob ou copiar apenas a última linha descartando as anteriores.

Alguém sabe de algum programa desse tipo?

Atualizar
Eu tentei a opção -l de xclip , e basicamente minha versão de xclip não pausa ou espera corretamente; então echo hello|xclip -f -l 1; echo world|xclip -f -l 1; apenas gera hello world e somente cola world uma vez não colando hello . No entanto, se eu adicionar o -verbose flag ele espera, então isso funciona. Exceto no chrome, ele não funciona no navegador Chrome e não cola nada. Então, pode haver algo errado com xclip ou chrome e ainda estou me perguntando se existe outro programa que faz isso melhor.

    
por dlamblin 12.07.2013 / 00:46

0 respostas