¿Cuál es la diferencia entre la selección primaria y el buffer del portapapeles?

32

Estoy ajustando en Webkit-browser en Linux y me encuentro con los términos " Selección primaria " y " Selección de portapapeles o buffer " muy a menudo.

  • Quiero entender qué son y qué diferencia tienen.
  • ¿Dónde encaja arrastrar y soltar pegar?
  • ¿Cuál es xclipexactamente el trabajo en este asunto?
r004
fuente
3
¿Por qué tener un solo portapapeles coherente cuando podría tener dos? </sarcasm>
LatinSuD

Respuestas:

28

Forman parte de los átomos de selección o X átomos .

El Manual de convenciones de comunicación entre clientes para X establece:

Puede haber un número arbitrario de selecciones, cada una nombrada por un átomo. Sin embargo, para cumplir con las convenciones entre clientes, los clientes solo deben lidiar con estas tres selecciones:

  • PRIMARIO
  • SECUNDARIO
  • PORTAPAPELES

En breve:

  • La selección PRIMARIA es utilizada típicamente por, por ejemplo, terminales al seleccionar texto y pegarlo presionando el botón central del mouse. Como en el texto seleccionado, está en el Portapapeles primario sin que se realice ninguna acción de copia explícita . Quick-Copy es un buen nombre para ello. (No limitado a emuladores de terminal, sino como ejemplo).
  • CLIPBOARD se usa principalmente en conexión con las operaciones de portapapeles de estilo MS Windows . Seleccione + Copiar. Los datos residen en el búfer .

Leer más aquí.

El soporte para PRIMARY se agregó a WebKit en 2008 .

xclip, que es una interfaz de línea de comandos (herramienta) para las selecciones X (portapapeles), tradicionalmente agrega datos al Portapapeles primario. Opcionalmente, uno puede elegir cuál usar mediante el -clipboardargumento de cualquiera de las opciones.


Corr .: Arrastrar y soltar reside en Xdnd. También hay una entrada de Wikipedia en la especificación . Utiliza XdndSelection y no debe interferir con PRIMARY.

El protocolo es implementado al menos por Qt y GTK.

Runium
fuente
CLIPBOARD se usa principalmente en conexión con las operaciones de portapapeles de estilo MS Windows. Seleccione + Copiar. Los datos residen en el búfer. Estamos hablando de esto en Linux en ningún otro lugar
r004
@ r004: Lo que quise decir es que es un portapapeles similar a MS Windows (funcionan de forma idéntica, incluidos, (a menudo), accesos directos, etc.)
Runium
... para el usuario final, eso es.
Runium
14
¿Qué hay de SECUNDARIO?
e18r
99
@emisilva: Eso es secundario (juego de palabras con sangría) Nah. (Desafortunadamente) rara vez se usa. Si desea algo más allá de los enlaces en la respuesta, tal vez una inmersión rápida en la lucha de Charles Lindsey por la selección secundaria sea ​​del agrado :) También podría probar con Emacs , pero su WindowManager probablemente arruinaría las cosas ...
Runium