Access Unix Clipboard

15

Temos um servidor Linux e vários usuários (várias contas) nesse servidor. Então, logicamente, haveria diferentes pranchetas para diferentes usuários.

A minha pergunta é: assim como no Windows, podemos ter um visualizador da área de transferência, como posso ver o conteúdo da área de transferência no Unix?

    
por maggi 28.07.2012 / 23:57

3 respostas

13

Seu raciocínio é bom, mas você começou de uma premissa incorreta. O Linux não tem realmente "pranchetas", esse conceito não faz parte do sistema operacional. Em vez disso, o sistema de janelas, quase sempre X11, implementa as pranchetas . O servidor X11, que gerencia e executa a exibição, faz pranchetas. Dessa forma, uma área de transferência é uma propriedade de um programa no nível do usuário, não do sistema operacional e, além disso, há um conjunto de pranchetas para cada monitor (que é mais ou menos cada monitor ou tela, mas nem sempre). / p>

Dito isso, a área de transferência X11 é um pouco estranha .

No que diz respeito ao conteúdo, sempre gostei de xcb , mas aparentemente é considerado bastante obscuro nos dias de hoje. Você pode gostar de parcellite , mas olhe em volta, parece que existem muitos gerenciadores de área de transferência do X11 e programas de interação.

    
por 29.07.2012 / 00:49
9

Uma área de transferência não é nada especial e apenas um detalhe de implementação para alguns programas, por ex. X , emacs , vim e outros programas têm implementações às quais você poderia se referir como clipboards .

Como você está falando sobre um Servidor, eu assumo que seus usuários logam no sistema via ssh , o que significa que não existe uma área de transferência para esses usuários, isso é tratado pelo sistema Hostsystem e terminal .

Se você quiser acessar a área de transferência X , existem várias soluções, por exemplo:

  • xclip - uma interface de linha de comando para o clibpoard
  • clipit - um gerenciador de área de transferência sem dependências para outros ambientes de área de trabalho

Se você quiser acessar o conteúdo da área de transferência X para outro usuário, terá que acessar a sessão X deste usuário.

Existem muitas outras coisas que você pode analisar, por exemplo autocutsel , integração entre o X clipboard e o emacs, etc.

    
por 29.07.2012 / 00:56
1

No emacs, examine

clipboard-kill-region
clipboard-kill-ring-save
clipboard-yank

Eu escrevi isso para copiar um buffer inteiro para a área de transferência:

(defun copy-all ()
  "copy buffer to clipboard"
  (interactive)
  (clipboard-kill-ring-save (point-min) (point-max))
  (message "Copy done.") )

Além disso, criei um alias útil chamado xc, como este: xclip -selection clipboard . Então, echo $(pwd) | xc (por exemplo) enviará a posição da árvore de diretórios para a área de transferência.

E, por acidente, notei que posso colar no urxvt pressionando o botão do mouse. Eu não gosto de usar o mouse, então se você souber como ligar isso a um atalho de teclado, por favor me diga.

Edit: Encontrei (em algum lugar deste site) que a resposta para a pergunta final (minha) é - já está feita, ou seja, Shift-Insert.

    
por 29.07.2012 / 06:25

Tags