¿Dónde está el código fuente para copiar y pegar?

¿Dónde está el código fuente para copiar y pegar?

He estado trabajando con la funcionalidad de copiar y pegar en un sistema Linux. Descargué la fuente del kernel por primera vez. ¿Dónde puedo encontrar el código relacionado con la funcionalidad de copiar y pegar?

Supongo que no pertenece a la parte del Kernel de Linux. Si estoy en lo cierto, ¿dónde puedo encontrarlo?

Respuesta1

Tienes razón, no forma parte del kernel de Linux. El núcleo simplemente no es responsable de trabajos como ese. Lo que depende de su sistema. En la consola podría ser su controlador tty, en la mayoría de los entornos gráficos en los que está pensando probablemente estén basados ​​en Xorg y usen el búfer de selección y el portapapeles de Xorg; pero es posible que también estés usando Wayland; un controlador de búfer de cuadros directo u otro motor gráfico y el código puede estar en otra parte. Incluso en el caso de Xorg, Xorg no es responsable de vincular las pulsaciones de teclas y otros eventos a las acciones. Eso dependerá de su entorno de escritorio o administrador de ventanas, que podrían ser muchas cosas.

No existe un único lugar al que señalar sin MUCHOS más detalles sobre su entorno. Mientras tanto, parece que necesita leer más sobre la arquitectura general de un sistema Linux y qué sistemas están a cargo de qué tipo de operaciones. Es casi seguro que la respuesta final a su pregunta se encontrará repartida en más de una capa y necesita saber cómo se combinan para entenderla.

Respuesta2

Para copiar y pegar en una consola en modo texto, busque un archivo drivers/tty/vt/selection.cen el árbol de fuentes de su kernel ( drivers/char/selection.cen kernels más antiguos). La parte del usuario de cortar y pegar en las terminales virtuales es gpmla "interfaz de mouse de uso general".

Copiar y pegar en la GUI no es manejado por el kernel sino porX.

Respuesta3

Copiar y pegar es parte del entorno de escritorio (X11, GNOME, etc.). En la consola, copiar y pegar lo haría o podría realizarlo el servicio gpmque proporciona capacidades de mouse cuando está en modo consola.

información relacionada