¿Cómo hago que Geany sea mi editor predeterminado en Ubuntu?

23

De hecho, quiero cambiar el editor de texto predeterminado en mi Ubuntu 12.04 de nano a Geany. Cuando usé este código:

update-alternatives --config editor

.. No veo a Geany en la lista.

Entonces, para agregar a Geany, se supone que esto funciona, ¿verdad?

update-alternatives --install /usr/bin/geany geany /usr/bin/geany 10

Además, en una nota al margen, ¿puede decirme si personalmente me sugiere cambiar el editor predeterminado de nano a Geany, y por qué?

Programación de novatos
fuente
@izx Absolutamente :) Todavía me gustaría saber cuál fue la forma de hacerlo desde la línea de comandos. En cualquier caso, marcaré su respuesta como aceptada :)
Programming Noob

Respuestas:

16

La forma de la línea de comando es:

sudo update-alternatives --install /usr/bin/editor editor /usr/bin/geany 10

y luego use sudo update-alternatives --config editorpara seleccionar Geany si es necesario.

Como alternativa gráfica al método de línea de comandos, considere usar Alternativas Gnome ( sudo apt-get install galternatives). Ejecute GAlternatives , seleccione el editor en la columna izquierda y luego agregue / elija Geany a la derecha.

ish
fuente
55
Lo hice y Geany está seleccionada, * 3 /usr/bin/geany 10 manual modepero cuando trato de abrir un archivo de texto haciendo doble clic en Nautilus, todavía se abre con gedit.
Para hacer
@ToDo Me también. Me pregunto cómo puedo deshacer esos comandos.
14

Como alternativa, esto también funcionó para mí:

xdg-mime default geany.desktop $(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')

Esta línea recupera todos los MimeTypes para los que está registrado gedit, realiza una limpieza (los sedcomandos) y finalmente establece geany como aplicación predeterminada para ellos.

Lo encontré aquí junto con un montón de información útil sobre esquemas de color.

Steve
fuente
1
Esto funcionó a las mil maravillas.
Faisal Sayed
1
¡Increíble! A diferencia de la respuesta aceptada, su solución realmente funciona para mí. ¡Gracias! # 12.04
king_julien
¿Alguna idea de cómo puedo deshacer esto?
king_julien
No tengo idea, pero mira la respuesta a continuación porque (el otro) Steve ha hecho un gran trabajo al explicar lo que realmente hace: deberías poder aplicar ingeniería inversa a los efectos desde allí. ¿Por qué lo estás deshaciendo? Ha sido una gran solución para mí y me ha funcionado perfectamente durante más de 6 meses ...
Steve
11

Esto es un poco tarde, pero pensé que podría ayudar a alguien.

Mi problema es que no me gusta copiar y pegar cosas que no entiendo, así que aquí hay una explicación de las respuestas hasta ahora.

Primero y ante todo, hay dos problemas aquí y ambas respuestas son, por derecho propio, correctas:

  1. el editor de línea de comandos predeterminado - resuelto por 'izx'
  2. la asociación de tipo de archivo (tipo mime) en la sesión de escritorio para aplicaciones GUI, resuelta por 'Steve'.

Aquí con un poco más de detalle:

  1. solución de línea de comando -desde 'izx'

    • agrega geany (una aplicación GUI) a la lista de editores alternativos y la establece como predeterminada.
    • Siempre pensé que ese editor generalmente estaba reservado para editores basados ​​en texto como vi, vim, nano, etc., pero acabo de comprobarlo y parece que esto también funciona.
    • el resultado significa que puede usar el valor predeterminado elegido para abrir el archivo cuando, por ejemplo:
  2. solución tipo mimo - de 'Steve'

A nivel de archivo, hay dos listas de importancia:

/usr/share/applications/defaults.list - la lista de valores predeterminados del sistema.

~/.local/share/applications/mimeapps.list - la lista de valores predeterminados de la sesión de escritorio personal de los usuarios

¿Qué hace el comando?

Desde la página de manual de xdg-mime (man xdg-mime)

xdg-mime - command line tool for querying information about file type handling and adding descriptions for new file type

El xdg-mime default...comando agrega entradas a la lista personal de los usuarios.

Desglosemos el comando.

Mando:

xdg-mime default geany.desktop $(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')

El comando se puede leer como:

configura geany.desktop como la aplicación predeterminada para el tipo mime generado por $(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')

Mirando a

$(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')
  • toma todos los tipos mime del archivo geany.desktop
  • elimina el "MimeType ="
  • reemplaza ";" con " "
  • dándonos:
    text/plain text/x-chdr text/x-csrc text/x-c++hdr text/x-c++src text/x-java text/x-dsrc text/x-pascal text/x-perl text/x-python application/x-php application/x-httpd-php3 application/x-httpd-php4 application/x-httpd-php5 application/xml text/html text/css text/x-sql text/x-diff

Al observar el archivo personal de los usuarios después de ejecutar el comando, podemos ver todas las asociaciones de archivos establecidas para la aplicación geany.desktop:

[Default Applications]
x-scheme-handler/mailto=userapp-Thunderbird-ZP00XW.desktop
message/rfc822=userapp-Thunderbird-ZP00XW.desktop
application/x-extension-eml=userapp-Thunderbird-ZP00XW.desktop
application/x-perl=sublime_text.desktop
text/plain=geany.desktop
text/x-chdr=geany.desktop
text/x-csrc=geany.desktop
text/x-dtd=sublime_text.desktop
text/x-java=geany.desktop
text/mathml=sublime_text.desktop
text/x-python=geany.desktop
text/x-sql=geany.desktop
text/x-c++hdr=geany.desktop
text/x-c++src=geany.desktop
text/x-dsrc=geany.desktop
text/x-pascal=geany.desktop
text/x-perl=geany.desktop
application/x-php=geany.desktop
application/x-httpd-php3=geany.desktop
application/x-httpd-php4=geany.desktop
application/x-httpd-php5=geany.desktop
application/xml=geany.desktop
text/html=geany.desktop
text/css=geany.desktop
text/x-diff=geany.desktop

Sabiendo esto, aquí está mi problema particular y cómo lo resolví.

Problema:

Quería cambiar la aplicación predeterminada "abrir archivo" en Nautilus de "gedit" -> "texto sublime".

Solución:

Encuentre los valores predeterminados del sistema para gedit con:

$less /usr/share/applications/defaults.list | grep gedit
application/x-perl=gedit.desktop
text/plain=gedit.desktop
text/x-chdr=gedit.desktop
text/x-csrc=gedit.desktop
text/x-dtd=gedit.desktop
text/x-java=gedit.desktop
text/mathml=gedit.desktop
text/x-python=gedit.desktop
text/x-sql=gedit.desktop

Reemplace "gedit" con "sublime_text" y agregue las entradas a la sección "Aplicaciones predeterminadas" de mi lista predeterminada de valores personales.

application/x-perl=sublime_text.desktop
text/plain=sublime_text.desktop
text/x-chdr=sublime_text.desktop
text/x-csrc=sublime_text.desktop
text/x-dtd=sublime_text.desktop
text/x-java=sublime_text.desktop
text/mathml=sublime_text.desktop
text/x-python=sublime_text.desktop
text/x-sql=sublime_text.desktop
Steve-B
fuente
Esto es muy útil, pero también puede considerar editar y mejorar las respuestas existentes. A menudo es mucho menos trabajo.
Tom Brossman
2
Buen punto Tom, gracias. Siempre estoy un poco preocupado por editar las respuestas de las personas. Agregaré un comentario a la respuesta aceptada.
Steve-B
No se preocupe por editar la publicación de otra persona aquí, se espera. Las ediciones se revisan por pares hasta que alcanzas 2000 rep, luego pasan directamente. Mantener toda la buena información en una sola respuesta hace que sea más fácil encontrarla más tarde.
Tom Brossman
1

Debido a que hay comentarios que indican que la respuesta aceptada no era correcta, creo que debo señalar que esta pregunta no puede tener una sola respuesta. Si la pregunta se cambió para especificar la CLI y las consultas para la GUI se movieron a un nuevo hilo, esto aclararía la confusión. Demasiado tarde para eso, supongo.

De todos modos para nautilus (también conocido como archivos) en gnome en Ubuntu 14.04. Y dada la respuesta aceptada, podría (como lo hice) esperar que el equivalente sea:
donotdothisssudo update-alternatives --install /etc/alternatives/gnome-text-editor gnome-text-editor /usr/bin/geany 10

Eso es lo que pensé y rompió los enlaces, ¡así que no hagas eso! Si lo hiciste, esto es lo que fueron para mí:
lrwxrwxrwx /usr/bin/gnome-text-editor -> /etc/alternatives/gnome-text-editor lrwxrwxrwx /etc/alternatives/gnome-text-editor -> /usr/bin/gedit

Mientras reparaba este error, recreé estos enlaces de la siguiente manera:
lrwxrwxrwx /usr/bin/gnome-text-editor -> /etc/alternatives/gnome-text-editor lrwxrwxrwx /etc/alternatives/gnome-text-editor -> /usr/bin/geany

Como todo lo que realmente he hecho es reemplazar el simlink secundario, y he deseado una respuesta en mi sistema, supongo que la tarea es simplemente esta:
sudo ln -s /usr/bin/geany /etc/alternatives/gnome-text-editor

Sin embargo, ejecutar un comando CLI para cambiar algo que sea específico de la GUI debe estar mal. El lugar donde me llevan mis manos cuando busco esta opción de cambio es el sistema de menú nautilus, junto a la configuración del tipo de archivo individual. Sin embargo, la única razón por la que voy allí es porque ahí es donde está parte de la solución. En mi opinión, si ha seguido la lógica de DPKG (alternativas de actualización) y la ha incluido en su distribución, entonces no desea que una aplicación de espacio de usuario como Nautilus interfiera con su aplicación de configuración de administrador. Mi humilde sugerencia para solucionar esto sería agregar un nuevo control de configuración del editor a la configuración >> detalles >> aplicaciones predeterminadas, que necesitaría ser una nueva página desde el punto de vista de los usuarios. El equipo de Nautilus necesitaría cambiar su menú para que el usuario sea redirigido a esa nueva página. Esto comprometería dónde mis manos me han llevado a buscar la configuración, donde mis manos 'deberían' haberme llevado a mí y administra un proceso de entrada de un solo punto en una configuración del sistema. Parece que este cambio tendría que estar dentro del puerto de las alternativas de Debian, aunque solo supongo. Por supuesto, no tendría sentido cargar con ese tipo de cosas sin el equipo de Nautilus a bordo con la idea, también tendrían que especificar la API o mecanismo equivalente.

La página de configuración en mi opinión necesitaría cubrir tanto la selección predeterminada del editor de gnomos como la aplicación utilizada para abrir cada archivo individual (que es para reemplazar la funcionalidad actual provista por Nautilus).

Publico esto como un pensamiento pasajero, siéntase libre de conducirlo si le atrae. Lamentablemente, no conozco el procedimiento y el protocolo necesarios para hacerlo yo mismo.

jim wotherspoon
fuente