J'utilise Ubuntu 12.04 avec l'interface Unity par défaut. J'ai installé plus tard le bureau KDE, XFCE, LXDE, gnome-shell et Cinnamon.
KDE est fourni avec des applications par défaut différentes de Unity, telles que
kwrite
pour l'édition de texte,konsole
comme terminal virtuel,kfontview
pour l'affichage et l'installation des polices,dolphin
comme navigateur de fichiers, etc.
D'autres DE sont livrés avec d'autres applications par défaut.
Le problème se pose lorsque vous voulez ouvrir un fichier tel qu'un fichier texte, avec lequel vous pouvez à la fois ouvrir par gedit
et kwrite
, je veux utiliser kwrite
sur KDE et gedit
sur Unity ou Gnome. Mais, il n'y a aucun moyen de régler comme ça. Je peux définir l'application par défaut pour le fichier texte en modifiant les paramètres respectifs dans KDE et Unity, mais cela devient par défaut pour les deux DE.
Par exemple, si je définis kfontviewer
comme application d'affichage des polices par défaut dans KDE, il ouvre également les polices lorsque je suis dans Unity ou Gnome et vice versa. C'est un problème car, le chargement d'un autre programme DE prend beaucoup de temps que celui par défaut pour le DE utilisé.
Ma question est: Puis-je utiliser différentes applications par défaut pour différents DE? Comment?
Réponses:
J'ai mis en place cette solution pour résoudre votre problème et l'ai testée sur KDE et XFCE avec l'ouverture de fichiers texte et de fichiers de polices. Il s'agit d'une solution générique qui devrait être applicable à n'importe quel nombre d'environnements de bureau et de types MIME. La façon dont cela fonctionne est qu'il existe un simple script python appelé custom-open qui ouvrira un fichier en utilisant différentes applications pour différents environnements de bureau. Voici les étapes pour configurer la solution:
ouverture sur mesure
.custom-open.ini
ce qui est génial avec cette solution, c'est que vous pouvez ajouter autant de nouveaux environnements de bureau que vous le souhaitez et autant de types MIME que vous le souhaitez. pour vérifier le nom que vous devez fournir pour l'environnement de bureau, exécutez la commande ci-dessous dans un terminal.
pour vérifier le type mime exact d'un fichier, lancez simplement:
EDITED: La nécessité de liens symboliques a été supprimée, ce qui devrait faciliter son utilisation. J'ai également ajouté un gestionnaire d'erreurs graphique qui affichera une alerte en cas d'erreur.
la source
co.desktop
) avecExec=/home/user/.scripts/Customization/Defaultapps/custom-open-text
dans ~ / .local / share / applications. 2.) Modifier./local/share/applications/mimeapps.list
et ajoutez l'association par défaut suivant:text/plain=co.desktop
. Trouvez des erreurs dans cette procédure?Si vous ne trouvez pas la "bonne" façon de le faire, vous pouvez utiliser une méthode de force brute quelque chose comme:
cd $HOME;ls -Rlrt | less
pour savoir quels fichiers viennent d'être mis à jour - c'est-à-dire où ces choix ont été enregistrésEspérons qu'il existe un moyen de basculer les environnements de bureau à partir d'un script shell avec la possibilité de dire à l'environnement de bureau où obtenir ses fichiers de configuration. Cela pourrait être plus propre que de déplacer des fichiers tout le temps, mais je n'ai pas recherché si ni comment cela fonctionne.
Une autre solution, beaucoup plus simple, mais pas exactement ce que vous avez demandé, serait de simplement:
Créez tous les fichiers de données communs auxquels vous devez accéder à partir de tous ces utilisateurs
-rwxrwxr-x
(chmod 775 list-of-files-and-directories
). De cette façon, vous n'obtiendrez pas d'erreurs d'autorisation en essayant d'écrire dans un fichier qu'un autre de vos "utilisateurs" a écrit en premier.la source
~/.local/share/mime/