Como criar opção para inserir data e hora?

8

Ao editar documentos de texto, preciso colocar carimbos de hora com freqüência. Pensei em automatizá-lo de duas maneiras diferentes. Nada disso parece estar funcionando.

  1. Usando nautilus-actions

Eu configurei uma nova ação de contexto à direita que executa o comando date|xclip

Este contexto certo não aparece quando clico com o botão direito do mouse em outros aplicativos (como terminal ou navegador). Além disso, quando aparece, e eu clico nele, ele não faz nada.

  1. Usando o atalho de teclado

Eu configurei um novo atalho de teclado que deveria executar o comando date , mas não o faz.

Algum apontador?

Obrigado.

    
por user13107 07.01.2013 / 07:54

3 respostas

11

Os atalhos de teclado do GNOME devem funcionar.

Veja por que o que você tentou não funcionou: seu atalho de teclado executa o comando date , mas não faz nada com a saída (que é descartada apenas). Você deve canalizá-lo para xclip , como date | xclip para copiá-lo para a seleção X ( não clipboard). Depois, você pode colá-lo em seu documento clicando com o botão do meio. Se você quiser usar Ctrl-V, use date | xclip -selection c para copiá-lo para a área de transferência real.

Outra alternativa é usar xdotool para digitar a data diretamente no documento. Atribuir ao seu atalho

xdotool type "$(date)"

Então, quando você pressionar a tecla de atalho, ele calculará a data atual e os digitará no documento.

Para o formato ISO 8601, use xdotool type "$(date --rfc-3339=s)" .

Se isso não funcionar: Como são comandos shell (em oposição a executáveis), talvez seja necessário passar o comando para bash ao especificá-los em seu atalho. Seu comando seria então:

bash -c 'xdotool type "$(date --rfc-3339=s)"'
    
por Mechanical snail 07.01.2013 / 07:57
3

Estou usando isso com sucesso como um atalho de teclado personalizado atribuído a Ctrl+Shift+D :

bash -c 'sleep 0.3 && xdotool type "$(date -u +%Y-%m-%d_%H:%M:%SZ)"'

Descobri que adicionar um pequeno atraso resolveu os problemas com caracteres iniciais ausentes e não polui minha área de transferência.

Observe que estou usando uma versão ligeiramente personalizada do formato RFC 3339 / ISO 8601: geralmente, uso isso em contextos onde desejo evitar o espaço na saída RFC 3339 de date , mas descubro que T que separa a data da hora em carimbos de data / hora ISO 8601 bastante intuitivo e difícil de ler, então eu acho que um sublinhado funciona bem.

    
por Gabriel Grant 15.12.2015 / 01:33
0
bash -c 'xdotool keyup super && xdotool type "$(date +%Y.%m.%d)"'

Eu uso Super+Q como meu atalho e preciso limpar o modificador super antes de enviar o date . Eu tentei --clearmodifiers , mas isso faria com que o unity dash aparecesse após o atalho ser executado [1]

[1] O motivo unity dash apareceria depois é antes que o super seja restaurado se --clearmodifiers for usado Citação de man xdotool

CLEARMODIFIERS
       Any command taking the --clearmodifiers flag will attempt to clear any
       active input modifiers during the command and restore them afterwards.
    
por Sungam 08.01.2017 / 11:59