{"id":60,"date":"2008-11-02T00:31:07","date_gmt":"2008-11-01T22:31:07","guid":{"rendered":"http:\/\/blog.rastersoft.com\/index.php\/2008\/11\/02\/la-nueva-ubuntu-y-mi-viejo-raton\/"},"modified":"2015-08-15T18:02:24","modified_gmt":"2015-08-15T18:02:24","slug":"la-nueva-ubuntu-y-mi-viejo-raton","status":"publish","type":"post","link":"https:\/\/blog.rastersoft.com\/?p=60","title":{"rendered":"La nueva Ubuntu y mi viejo rat\u00f3n"},"content":{"rendered":"<p>(<strong>Actualizado 2. Ver al final del art\u00edculo<\/strong>) Ayer actualic\u00e9 mi sistema a la nueva Ubuntu 8.10 y me encontr\u00e9 con el primer problema: mi rat\u00f3n empez\u00f3 a funcionar correctamente.<\/p>\n<p>Para explicarlo un poco mejor: mi rat\u00f3n tiene un total de siete botones: los dos de siempre, el central en la rueda, y dos extra en el pulgar. La rueda, adem\u00e1s, se puede mover a derecha e izquierda: dos botones m\u00e1s. Hasta ahora Ubuntu (o m\u00e1s concretamente, las X-Windows) no reconoc\u00edan los botones extra, y los interpretaba como si fuesen el bot\u00f3n central, lo que para m\u00ed era muy c\u00f3modo. En efecto, si uso el bot\u00f3n central de la rueda para pegar texto o abrir un enlace de Firefox en una nueva pesta\u00f1a, es raro que no se me mueva algo y acabe pinchando donde no quiero, problema que resuelvo usando el bot\u00f3n del pulgar.<\/p>\n<p>Por desgracia la nueva versi\u00f3n utiliza <a href=\"http:\/\/hal.freedesktop.org\" target=\"_blank\">HAL<\/a> para detectar y gestionar el rat\u00f3n, y \u00e9ste s\u00ed reconoce los nuevos botones, con lo que el bot\u00f3n del pulgar ahora me lleva a la p\u00e1gina anterior cada vez que lo pulso.<\/p>\n<p>Por suerte el nuevo sistema tambi\u00e9n permite reconfigurar el sistema con m\u00e1s comodidad, y lo que es m\u00e1s interesante, sin necesidad de reiniciar las X, sino simplemente desenchufando y volviendo a enchufar el rat\u00f3n. La manera es mediante unos ficheros XML (con extensi\u00f3n <em>.fdi<\/em> ) almacenados en <em>\/etc\/hal\/fdi\/policy<\/em>. Estos ficheros permiten modificar y personalizar completamente el funcionamiento de cualquier dispositivo, aunque la documentaci\u00f3n es algo confusa.<\/p>\n<p>Para los impacientes, la soluci\u00f3n es tan simple como crear un fichero cualquiera en ese directorio (por ejemplo, <em>\/etc\/hal\/fdi\/policy\/<\/em><em>mouse.fdi<\/em> ) que contenga las siguientes lineas:<\/p>\n<div class=\"mycode\">\n<pre class=\"mycode\">&lt;device&gt;\r\n    &lt;match key=\"info.capabilities\" contains=\"input.mouse\"&gt;\r\n        &lt;merge key=\"input.x11_options.ButtonMapping\" type=\"string\"&gt;1 2 3 4 5 6 7 2 2&lt;\/merge&gt;\r\n    &lt;\/match&gt;\r\n&lt;\/device&gt;<\/pre>\n<\/div>\n<p>Para los que quieran personalizarlo m\u00e1s, la asignaci\u00f3n de eventos es:<\/p>\n<ol>\n<li>Bot\u00f3n izquierdo<\/li>\n<li>Bot\u00f3n central<\/li>\n<li>Bot\u00f3n derecho<\/li>\n<li>Rueda arriba<\/li>\n<li>Rueda abajo<\/li>\n<li>Rueda izquierda<\/li>\n<li>Rueda derecha<\/li>\n<li>P\u00e1gina anterior (en un navegador)<\/li>\n<li>P\u00e1gina siguiente (en un navegador)<\/li>\n<\/ol>\n<p>En el fichero anterior lo que hago es especificar que los eventos 8 y 9 deben responder como un evento 2, mientras que los dem\u00e1s permanecen inalterados.<\/p>\n<p><strong>Actualizaci\u00f3n:<\/strong> modifiqu\u00e9 el fichero FDI para que filtre los dispositivos, qued\u00e1ndose s\u00f3lo con los ratones (tag match).<\/p>\n<p><strong>Actualizaci\u00f3n 2:<\/strong> Por desgracia la soluci\u00f3n no sirve porque s\u00f3lo funciona cuando primero se cargan las X y luego el m\u00f3dulo del rat\u00f3n (por ejemplo, al desenchufarlo y volverlo a enchufar con las X ya cargadas). Cuando se arranca el ordenador desde cero, como se carga primero el m\u00f3dulo USB y luego las X, no hace nada.<\/p>\n<p>La soluci\u00f3n, al final, es m\u00e1s sencilla:<\/p>\n<ul>\n<li>Se crea un fichero <strong>.Xmodmap<\/strong> en el directorio del usuario, que contenga la l\u00ednea <strong>pointer = 1 8 3 4 5 6 7 2<\/strong><\/li>\n<li>Se sale de las X y se vuelve a entrar<\/li>\n<li>Preguntar\u00e1 si se quiere utilizar un fichero Xmodmap, y mostrar\u00e1 la lista de los que ha encontrado (estar\u00e1 el que acabamos de crear)<\/li>\n<li>Lo seleccionamos y lo a\u00f1adimos a la lista de activos, y nos aseguramos de marcar la opci\u00f3n \u00abNo volver a preguntar\u00bb.<\/li>\n<\/ul>\n<p>Y con esto s\u00ed se resolver\u00e1 el problema. El \u00fanico defecto es que no se pueden repetir eventos, por lo que tuve que, simplemente, invertir los eventos 2 y 8, en lugar de asignar el 2 a todos los que me interesaba. Pero menos da una piedra&#8230;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>(Actualizado 2. Ver al final del art\u00edculo) Ayer actualic\u00e9 mi sistema a la nueva Ubuntu 8.10 y me encontr\u00e9 con el primer problema: mi rat\u00f3n empez\u00f3 a funcionar correctamente. Para explicarlo un poco mejor: mi rat\u00f3n tiene un total de siete botones: los dos de siempre, el central en la rueda, y dos extra en &hellip; <a href=\"https:\/\/blog.rastersoft.com\/?p=60\" class=\"more-link\">Seguir leyendo <span class=\"screen-reader-text\">La nueva Ubuntu y mi viejo rat\u00f3n<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6,7],"tags":[],"class_list":["post-60","post","type-post","status-publish","format-standard","hentry","category-trucos","category-tutoriales"],"_links":{"self":[{"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=\/wp\/v2\/posts\/60","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=60"}],"version-history":[{"count":1,"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=\/wp\/v2\/posts\/60\/revisions"}],"predecessor-version":[{"id":1902,"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=\/wp\/v2\/posts\/60\/revisions\/1902"}],"wp:attachment":[{"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=60"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=60"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=60"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}