¿Cómo mostrar la fecha y hora completas en la vista de lista Nautilus / Files 3.6+?


39

La vista de lista de Nautilus 3.6 muestra que los archivos de fechas se modificaron de varias maneras: la hora y los minutos si se modificaron en el día actual, y el mes y el día si se modificaron durante el año actual, y el año agregado si se modificó durante un año anterior Me gustaría ver la fecha y hora completas de manera consistente en todos los archivos (por ejemplo:) Sat 20 Apr 2012 01:28:34 PM EDT.

Lo configuré antes, pero no puedo entender cómo hacerlo con la versión 3.6. Encontré esta pregunta, pero las respuestas ya no se aplican a Nautilus 3.6: ¿Cómo cambiar el formato de fecha en las columnas de la lista de Nautilus?

¿Cómo puedo hacerlo en Nautilus 3.6+?


Mirando la configuración en precisa y raring, son idénticos, así que supongo que es una característica eliminada de nautilus, aunque puede haber un complemento o script que pueda volver a agregarlo.
Davmor2

3
la confirmación de formato de fecha en gsettings fue eliminada por este commit: git.gnome.org/browse/nautilus/commit/libnautilus-private/… que pertenece a este informe de error: bugzilla.gnome.org/show_bug.cgi?id=676898
djfun

3
Un enlace a un "error" pidiendo que la funcionalidad de ser restaurado: bugzilla.gnome.org/show_bug.cgi?id=699055
Aibara

Pasándome a mí en v3.14.2. Una persona llamada Carlos comentó en goo.gl/AE7FRA que esto se solucionó en nautilus v3.16.
AlikElzin-kilaka

1
@becko Ubuntu 16.04 viene con Nautilus 3.14. No está arreglado en esa versión. No he probado 3.16.
Aibara

Respuestas:


24

Puede recuperar la fecha completa recompilando nautilus:

sudo apt-get build-dep nautilus
sudo apt-get install quilt
export QUILT_PATCHES=debian/patches
apt-get source nautilus
cd nautilus*
quilt new 999_full_dates.patch
quilt edit libnautilus-private/nautilus-column-utilities.c

Cambiar la línea 77 de

"attribute", "date_modified",

a

"attribute", "date_modified_full",

Reconstruir e instalar paquete modificado:

quilt refresh
fakeroot dpkg-buildpackage
cd ..
killall nautilus
sudo dpkg -i nautilus_*.deb
nautilus &

Como siempre, debe realizar estos pasos cada vez que haya una actualización para nautilus en Ubuntu.

Ahora, un análisis completo del problema:

El parche real que causó este cambio es este: https://git.gnome.org/browse/nautilus/commit/?id=3fd9cba41e56f44ed955b28755ad03135026d021

La función nautilus_file_get_date_as_string obtiene un parámetro gbooleano adicional "compacto", cuando es verdadero, se devuelve la fecha abreviada.

Esta función nunca se llama directamente: se accede a ella a través de la función de contenedor nautilus_file_get_string_attribute_q. Esta función toma parámetros de atributos como "date_modified". Para acomodar la nueva firma de nautilus_file_get_date_as_string, se agrega un nuevo atributo "date_modified_full". Después de este cambio, cualquier código en nautilus que use la cadena de fecha del archivo obtendrá la fecha abreviada.

Finalmente, el cuadro de diálogo de propiedades del archivo se actualiza para usar el atributo "date_modified_full".

Entonces, para que nautilus muestre la fecha completa en la vista de lista, solo es necesario cambiar en la línea de código: en libnautilus-private / nautilus-column-utilities.c, línea 77 de "date_modified" a "date_modified_full".

Un parche un poco más útil podría agregar un nuevo tipo de columna que muestre la fecha completa, lo que lo convierte en una característica opcional, y solo agrega 10 líneas de código.


12
Es por eso que me encanta el código abierto: cuando los desarrolladores se vuelven locos, puedo arreglarlo yo mismo.
Alistair Buxton

66
¿Sigue siendo actualmente la única forma de manejar este problema?
Philippe

3
@AlistairBuxton ¿Has intentado enviar el segundo parche a los desarrolladores de Gnome? Sería genial si al menos pudieran darnos una opción en lugar de mantener la fecha completa no disponible ...
n

3
Ya no uso Nautilus y te sugiero que hagas lo mismo.
Alistair Buxton

2
¿Se ha solucionado esto en versiones más recientes (para que no tenga que volver a compilar)?
Becko

6

Para aquellos que usan trustyy no desean compilar, he configurado un ppa de prueba para un nautilus parcheado. (usando el parche de Alistair Buxton

La compilación actualmente también incluye 2 parches de corrección de errores, 1 de propuesto por confianza, 1 de utópico.

Además, hay 3 parches menores que he probado durante bastante tiempo y que no presentan problemas.

  1. abrir con carpetas

  2. se muestra el nombre real del propietario del archivo en lugar de "Yo"

  3. Administrador de archivos como nombre del lanzador

El parche 'fecha-hora' que probé un poco, no vi problemas. Para aquellos inclinados a probar, si se encuentra algún problema, contáctame a través del correo electrónico de launchpad.

La columna "Modificado (completo)" se puede agregar a través de nautilus en listview> Ver> Columnas visibles .. o a través de nautilus> Editar> Preferencias> Listar columnas

https://launchpad.net/~mc3man/+archive/nauty-mods

Lea la página de ppa para obtener información y cómo revertir fácilmente si es necesario.


Parece que no puedo instalar esta versión nautilus. sudo apt-get install nautilusSolo concluye eso latest is already installed. Intentando sudo apt-get --reinstall install nautilusreinstalar, pero es lo mismo que ya existe. ¿Por casualidad tiene algo, por ejemplo, /etc/apt/preferences.d/que hace que esto realmente se instale, o de qué otra manera hacerlo? (en Trusty)
Hannu

@ Hannu, intentarlo de nuevo, era necesario actualizar
Doug

dpkg --list | grep nautilusmostró la ...+dateversión Reintentado, varias veces. Solo después de haber reiniciado con esta versión instalada, luego profundicé en la Terminal y allí después de usar nautilus --no-desktop(no nautilus --force-desktopestoy seguro de si apareció allí) y luego , por fin, encontré la opción "Modificado (completo)" en la vista de lista. Ahora parece estar presente en todo momento. pregunta : ¿Se puede modificar el contenido? Por ejemplo, espero que en el uso de "strftime ()"?
Hannu

Hmm ... ¿podría ser LC_TIME=...que especifica el formato?
Hannu

1
Una solicitud sin prejuicios para la próxima vez que actualice el ppa, considere agregar otro formato para la columna Modificado; lo mismo quedate +'%Y-%m-%d, %T'
Hannu

4

Esta publicación de blog muestra una solución mucho más fácil. Se basa en la creación de una extensión que se puede seleccionar como una "columna modificada" alternativa. Probado bajo 16.04.

  1. gedit ~/.local/share/nautilus-python/extensions/longdate.py

  2. Usa este código:

#!/usr/bin/env python

import os
import urllib
import datetime
from gi.repository import Nautilus, GObject

class ColumnExtension(GObject.GObject, Nautilus.ColumnProvider, Nautilus.InfoProvider):
    def __init__(self):
        pass

    def get_columns(self):
        return (Nautilus.Column(
            name="NautilusPython::Longdate", 
            attribute="longdate", 
            label="Longdate", 
            description="Get long date"),)

    def update_file_info(self, file):
        if file.get_uri_scheme() != 'file':
            return

        filename = urllib.unquote(file.get_uri()[7:])
        statbuf = os.stat(filename)
        formatteddate = datetime.datetime.fromtimestamp(statbuf.st_mtime).strftime('%Y-%m-%d %H:%M:%S')
        file.add_string_attribute('longdate', str(formatteddate))
  1. chmod +x ~/.local/share/nautilus-python/extensions/longdate.py

  2. nautilus -qy nautilus .para reiniciar Nautilus y ver si carga correctamente la extensión.

  3. Seleccione la nueva columna "fecha larga" en la lista de preferencias de columna.

El resultado se verá así:

ejemplo


2
Primero instale nautilus-python:sudo apt-get install python-nautilus
DrMoishe Pippik

Muchas gracias, ¡parece funcionar en Disco - Ubuntu 19.04! Pero no puedes ordenar por Longdate. Lamentablemente, no puedo arreglar eso yo mismo. Gran trabajo de todos modos. Como dijo @Alistair Buxton: esta es la razón por la que amo el código abierto: cuando los desarrolladores se vuelven locos, puedo arreglarlo yo mismo. Bueno, con tu ayuda! GRACIAS.
opinion_no9

Esto no funciona en Nautilus ("Archivos" 3.10.1) en Ubuntu 14.04. Cuando Nautilus se inicia desde la línea de comandos, dice: Nautilus-Share-Message: Called "net usershare info" but it failed: 'net usershare' returned error 255: net usershare: cannot open usershare directory /var/lib/samba/usershares. Error No such file or directoryPor favor, solicite a sysadm que habilite el uso compartido de usuarios. Luego seis veces ** (nautilus:21161): CRITICAL **: nautilus_menu_provider_get_background_items: assertion 'NAUTILUS_IS_FILE_INFO (current_folder)' failed. La nueva columna no se muestra en las opciones.
wallyk
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.