¿Cómo puedo pedir extensiones de shell Gnome3 en la parte superior?

18

El orden de los widgets de extensión de shell parece ser aleatorio, ¿cómo puedo cambiarlo? Quiero tener la información de fecha / hora a la izquierda, por ejemplo.

Mi panel de shell:

Mi panel de concha

klausi
fuente
Buena pregunta. Me temo que es casi imposible sin tener que editar archivos CSS extraños. Esta es una de las cosas que muestra que toda la extensión fue una idea de último momento, en mi opinión.
Rmano
Algunas extensiones como extensiones.gnome.org/extension/584/taskbar le permiten colocar donde lo colocó ... (podría ser una extensión incorrecta - una de las extensiones de la barra de tareas ...)
Wilf
Me encantaría encontrar una respuesta para esto
ese tipo brasileño
@ThatBrazilianGuy Than love the answer :)
AB
@klausi He actualizado mi respuesta. Espero que se ajuste a tus necesidades :)
Jibbow

Respuestas:

16

Forma común:

Para comenzar, debe encontrar el archivo correspondiente de la extensión que desea cambiar.
Generalmente, usted puede encontrar aquí: ~/.local/share/gnome-shell/extensions.
Si la extensión se ha instalado a través del administrador de paquetes, puede encontrarla aquí: /usr/share/gnome-shell/extensions/(Gracias a AB )

Luego vaya al directorio de la extensión y abra " extension.js" con cualquier editor de texto.

Vaya a la línea con: function enable()(use la función de búsqueda en su editor; si no puede encontrarla, vaya a la sección Actualizar más abajo).
Dentro de esta función generalmente hay una línea Main.panel.addToStatusArea('NAME', _OTHERNAME, NUMBER, LEFT/CENTER/RIGHT);(de nuevo: si no puede encontrarla, vaya a Actualizar ). Podría suceder que falten los dos últimos parámetros ( NUMBERy POSITION); tiene el siguiente aspecto: Main.panel.addToStatusArea('NAME', _OTHERNAME);
(¡No se preocupe! Su computadora interpreta la versión más corta con: ('NAME', _OTHERNAME, 0, right);Siéntase libre de agregar los parámetros que faltan. ¡Pero siempre en el orden mostrado! )

Los POSITIONdefine dónde en el panel el icono debe ser. Hay tres áreas: izquierda , centro y derecha . Probablemente no desee cambiar este valor, pero no dude en hacerlo. Aquí están los tres estados posibles para POSITIONel panel:

------------------------------------------------------------------
Activities                 Date                        Other icons
------------------------------------------------------------------
   left                   center                          right 

El valor más importante que probablemente quiera cambiar es NUMBER. Define el orden de los iconos dentro de los subpaneles. Los valores posibles son:

  • 0 : no me importa dónde está el ícono.

  • valores negativos : posición; comenzando desde el lado derecho (podría ser importante ya que todos los íconos de extensión se cargan después de los íconos del sistema)

  • valores positivos : posición; empezando por el lado izquierdo. Los valores más altos se ubicarán más al lado derecho.

Tienes que jugar con esos valores en todas tus extensiones porque los mismos valores entran en conflicto entre sí (dos extensiones diferentes en la posición 2 no tienen ningún sentido). Y a veces incluso los siguientes valores entran en conflicto.

Cada vez que cambie el valor, asegúrese de guardar el archivo. Luego presione Alt+ F2, escriba ry Enter. El panel se actualizará con los iconos recién ordenados. Esta es una opción rápida para jugar con esos valores.


Por último, una cita de Mathematical Coffee :

Use Main.panel.addToStatusArea (unique_name_of_indicator, inidicator, position, box) para agregar un SystemStatusButton o PanelButton al panel. Esto maneja agregar su menú al administrador de menús para usted (el cuadro es Main.panel ._ {left, right, center} Box, omitir el argumento box da el cuadro derecho por defecto y omitir la posición da la posición 0). Si su botón es un ButtonBox solamente (es decir, sin menú), entonces quédese con. _ {left, right, center} Box.insert_child_at_index.

Avíseme si tuvo algún problema con este enfoque.


Actualizar:

Miré a mi alrededor y reconocí que esta forma no funciona para todas las extensiones (principalmente solo para extensiones simples / nuevas). Una extensión de uso frecuente en este caso es "monitor de sistema". La forma de modificar la posición de los iconos debería ser (generalmente) la misma (no lo he probado. Por lo tanto, asegúrese de crear un archivo de copia de seguridad) . Pero hay algunas diferencias para el "monitor del sistema":

  1. Se llama a la función que tiene que buscar var enable = function (). Por lo tanto, podría ser mejor buscar la palabra enableen el archivo.
  2. Se llama el lugar donde se define la posición de los iconos Main.panel._addToPanelBox('system-monitor', tray, 1, panel);. Cambiar el número debería tener el mismo efecto que el descrito anteriormente. Para cambiar toda el área tiene dos opciones:

    • Al cambiar la misma línea a Main.panel._addToPanelBox('system-monitor', tray, 1, Main.panel._rightBox);(Nota: la posición en el menú de configuración de la extensión ya no funcionará).

    • O cambiando la línea let panel = Main.panel._rightBox;(nuevamente use la función de búsqueda) a la posición deseada ( _leftBox, _centerBox, _rightBox ).

(Estos pasos se pueden aplicar a cualquier otra extensión. Pero habrá nombres ligeramente diferentes. Pero aún así: la forma común se describió en mi primer intento de esta respuesta)


Todo el procedimiento en pocas palabras:

Busque el archivo correspondiente. Luego busque enabledentro de este archivo. Luego busque algo parecido Main.panel...y cambie los valores (bastante claro).


Y finalmente noté que mencionaste el panel de tiempo. No encontré una buena manera de modificar su posición, pero aquí hay algo más:

Tiene "monitor de sistema" instalado. Eso es bueno :)
Abra el acorde extension.jsy cambie la palabra "derecha" a "izquierda" en esas dos líneas:
Main.panel._addToPanelBox('dateMenu', dateMenu, -1, Main.panel._rightBox);y Main.panel._rightBox.insert_child_at_index(dateMenu.actor, -1);.
Finalmente, debe marcar "mover reloj" en la configuración de esta extensión. Ahí tienes! No lo he probado pero debería funcionar. Si no, escribe un comentario :)

Ahh! Olvidé mencionar: Cada vez que cambie de valor, guarde el archivo y actualice el panel con Alt+ F2- tipo r- hit Enter. ¡Y asegúrese de crear archivos de copia de seguridad! :RE

Jibbow
fuente
Si le gusta la respuesta, simplemente haga clic en el pequeño gris en el lado izquierdo de la respuesta ahora convirtiéndola en un hermoso verde. Si le gusta la respuesta, haga clic en la pequeña marca de verificación gris y la pequeña flecha hacia arriba ... Si tiene más preguntas, vaya a askubuntu.com/questions/ask
AB
1
Las extensiones instaladas a través del gestor de paquetes se colocan en/usr/share/gnome-shell/extensions/
AB
1
¡Guauu! ¡Deberías obtener más votos a favor solo por todo el esfuerzo! ;-)
Fabby
2017 y aún imposible sin arriesgar su sistema. Asombroso.
HörmannHH
2

La extensión del menú del panel de extensión le permitirá ordenar los indicadores con la función " Desplazamiento de bandeja" y la pestaña Indicadores. Después de instalar la extensión, vaya a la configuración para ajustar sus indicadores. ¡Feliz OCDing!

Guttermonk
fuente
No es exactamente lo que estaba buscando, pero un gran consejo, no obstante. ¡Esta extensión corrige el calendario en el menú de estado central y agrupado que siempre me ha molestado! :)
Cas
-2

También hay una manera más fácil de abrir gnome-tweak-tool, navegar a la pestaña Extensiones y luego apagar y volver a encender las extensiones. Al hacer esto, se mueven los iconos a la izquierda.

usuario693690
fuente
¿Convertir qué offy on...?
George Udosen
1
esto ordenará extensiones solo para esta sesión.
QkiZ