Cole o texto da área de transferência diretamente no navegador e faça a pesquisa do Google por ele

1

Quando precisamos colar algo na Pesquisa Google da nossa área de transferência, precisamos de pelo menos dois ou mais cliques antes de podermos acessar a barra URL e acessar CTRL+V e, em seguida, Enter começar a procurar.

Eu estava pensando em fazer isso em um clique?

    
por Ilia Rostovtsev 22.08.2014 / 17:33

2 respostas

3

A solução é muito fácil e direta. Ele ajudará você a abrir um navegador, colar texto da área de transferência na Pesquisa do Google, tudo com um pequeno script, que pode e deve estar anexado a um atalho de teclado.

O que precisamos é um pequeno utilitário chamado xsel e poucas linhas no script BASH .

Exemplo:

#!/bin/bash
CLIPBOARD=$(/usr/bin/xsel --clipboard)
/usr/bin/xdotool search --name "Google Chrome" windowactivate
/usr/bin/google-chrome https://www.google.com/search?q="${CLIPBOARD/\&/%26}" --window --maximize

Explicações:

  1. Salve seus dados atuais da área de transferência na variável CLIPBOARD , executando xsel --clipboard
  2. Certifique-se de que mostra realmente a janela do navegador (no meu caso, o Google Chrome) e não é executado em segundo plano, usando xdotool
  3. Passe a variável salva e com escape como um argumento para um navegador e verifique se ela aparece maximizada na frente de outros programas abertos passando --window --maximize para uma linha de comando.
  4. Em seguida, você precisará salvar o conteúdo do script exampled em um arquivo e torná-lo executável . Por fim, defina um atalho no script recém-criado. Eu usuário Gnome e adicionando um atalho para um script tão fácil quanto possível.

Agora, quando clico em, anteriormente bastante inútil Eject key, recebo dados da minha área de transferência enviados diretamente para a Pesquisa Google com apenas um clique único .

EDIT 1:

Caso você queira evitar copiar texto para a área de transferência e torná-lo menor e mais rápido , você pode trabalhar apenas na seleção (< em> no texto selecionado ). Tudo o que você precisa é substituir /usr/bin/xsel --clipboard por /usr/bin/xsel --primary . Agora, o texto selecionado será passado para a Pesquisa do Google ao invocar o script, mesmo sem copiá-lo para a área de transferência, o que torna todo o processo muito mais eficiente.

EDIT 2:

Além disso, como corretamente mencionado por Gilles , é necessário escapar de & e substituí-lo por %26 , caso contrário o Google irá interpretá-lo literalmente e consulta de pesquisa iria quebrá-lo.

Update: For replacing & with %26 find and change in previous code:

"${CLIPBOARD}" -> "${CLIPBOARD/\&/%26}"

    
por 22.08.2014 / 17:33
0

Eu posso sugerir o seguinte script.

#!/bin/sh

mk_google_query() {
    url_encode() {
        # http://stackoverflow.com/a/298258/3541063
        perl -MURI::Escape -e 'print uri_escape($ARGV[0]);' "$1"
    }
    echo "http://google.com/search?q='url_encode "$1"'"
}

SEARCH_TEXT='xsel'
xdg-open 'mk_google_query "$SEARCH_TEXT"'

Este script usa xsel para ler a área de transferência, xdg-open para abrir o navegador padrão e perl com URI::Escape module para codificar url a consulta de pesquisa.

    
por 25.08.2014 / 09:31