Estoy usando Ubuntu 12.04 con la interfaz predeterminada de Unity. Luego instalé el escritorio KDE, XFCE, LXDE, gnome-shell y Cinnamon.
KDE viene con diferentes aplicaciones predeterminadas que Unity, como
kwrite
para editar texto,konsole
como terminal virtual,kfontview
para ver e instalar fuentes,dolphin
como navegador de archivos, etc.
Otros DE vienen con algunas otras aplicaciones predeterminadas.
El problema surge cuando desea abrir un archivo como un archivo de texto, con el que ambos pueden abrirse gedit
y kwrite
quiero usar kwrite
en KDE y gedit
en Unity o Gnome. Pero, no hay forma de establecer así. Puedo configurar la aplicación predeterminada para el archivo de texto cambiando las configuraciones respectivas en KDE y Unity, pero se vuelve predeterminada para ambos DE.
Por ejemplo, si configuro kfontviewer
como aplicación de visualización de fuente predeterminada en KDE, también abre fuentes cuando estoy en Unity o Gnome y viceversa. Esto es un problema porque, cargar el programa de otro DE toma mucho tiempo que el predeterminado para el DE usado.
Mi pregunta es: ¿Puedo usar diferentes aplicaciones predeterminadas para diferentes DE? ¿Cómo?
Respuestas:
He reunido esta solución para resolver su problema, y lo probé en KDE y XFCE con archivos de texto y archivos de fuentes abiertos. Es una solución genérica que debería ser aplicable a cualquier cantidad de entornos de escritorio y tipos MIME. La forma en que funciona es que hay un script de Python simple llamado custom-open que abrirá un archivo usando diferentes aplicaciones para diferentes entornos de escritorio. Estos son los pasos para configurar la solución:
personalizado abierto
.custom-open.ini
Entonces, lo bueno de esta solución es que puede agregar tantos entornos de escritorio nuevos como desee y tantos tipos de MIME como desee. para verificar qué nombre debe proporcionar para el entorno de escritorio, ejecute el siguiente comando en un terminal.
para verificar el tipo mime exacto de un archivo simplemente ejecute:
EDITADO: La necesidad de enlaces simbólicos se ha eliminado, esto debería facilitar su uso. También he agregado un controlador gráfico de errores que mostrará una alerta si se produce un error.
fuente
co.desktop
) conExec=/home/user/.scripts/Customization/Defaultapps/custom-open-text
~ / .local / share / aplicaciones. 2.) Editar./local/share/applications/mimeapps.list
y añadir la siguiente asociación predeterminada:text/plain=co.desktop
. ¿Encuentra algún error en este procedimiento?Si no encuentra la forma "correcta" de hacerlo, puede usar un método de fuerza bruta como:
cd $HOME;ls -Rlrt | less
para averiguar qué archivos se actualizaron, es decir, dónde se guardaron esas opcionesCon suerte, hay una manera de cambiar los entornos de escritorio de un script de shell con la opción de decirle al entorno de escritorio de dónde obtener sus archivos de configuración. Eso podría ser más limpio que mover archivos todo el tiempo, pero no he investigado si eso funciona o cómo funciona.
Otra solución mucho más simple, pero no exactamente lo que solicitó, sería simplemente:
Cree todos los archivos de datos comunes a los que necesita acceder desde todos estos usuarios
-rwxrwxr-x
(chmod 775 list-of-files-and-directories
). De esa manera no obtendrá errores de permiso al intentar escribir en un archivo que otro de sus "usuarios" escribió primero.fuente
~/.local/share/mime/