last modified date in status bar?
-
yes, it works CF
I tried BUFFERACTIVATED but it didn’t work
-
@patrickdrd, have you been able to get this working? I’ve been trying here from my end. I can’t get the last modified date to display on the statusbar. If you have been able to get this working, can you please post the code?
Thank you.
-
from Npp import editor, notepad, SCINTILLANOTIFICATION, NOTIFICATION, STATUSBARSECTION
import os
from datetime import datetimedef StatusbarSelOverride(args):
modified_time = os.path.getmtime(notepad.getCurrentFilename())
last_modified_date = datetime.fromtimestamp(modified_time)
notepad.setStatusBar(STATUSBARSECTION.DOCTYPE, ‘Mod: {:%d/%m/%Y %H:%M}’.format(last_modified_date))editor.callback(StatusbarSelOverride, [SCINTILLANOTIFICATION.UPDATEUI])
notepad.callback(StatusbarSelOverride, [NOTIFICATION.FILESAVED])
notepad.callback(StatusbarSelOverride, [NOTIFICATION.READY]) -
I still can’t figure out how to add the timestamp and still keep the original contents of a statusbar section.
Scott Sumner, I would appreciate it very much if you can fix this code and post it here. thank you.
-
I don’t think you need the original contents, if we’re talking about the first tab,
is DOCTYPE really that important for you?
If so, why?
I can’t think that’s important, that’s why I’m overwriting it -
Using LuaScript I’ve been able to keep the doc type and display the file modification time. Should be easily translatable to PythonScript.
Note this works with a yet-to-be released version of LuaScript
npp.AddEventHandler({"OnSave", "OnSwitchFile", "OnLangChange"}, function() -- Make sure it is a "real" file first if npp:GetCurrentDirectory() == "" then return end local text = npp.LanguageDescription[npp.BufferLangType[npp.CurrentBufferID]] .. " - " .. os.date('%d/%m/%Y %H:%M', winfile.attributes(npp:GetFullCurrentPath(), "modification")) npp.StatusBar[STATUSBAR_DOC_TYPE] = text end)Gives the results:

-
unfortunately not, as python script hasn’t been updated with recent npp messages yet.
Cheers
Claudia -
Ah. Thanks for clarifying.
-
@dail
Nice, I will be using your script then.
When is the release of the next version of luascript?Thanks.
-
-
Thanks. the code works.
-
I think I’ve found a bug:
I had around 10 tabs opened in npp, and my work shift is close to the end so I decided to close npp, so I pressed the x in the top right corner to find out that:
there was a file open which was attached to an email,
it was opened as read-only originally,
I clicked on edit -> clear read-only and I edited it,
I never saved it,the date on the bottom left corner is updated continuously/ every minute that passes (on the clock), even though I’m not saving it (I can see a star on the top left corner - the star that means that the file is not saved),
I opened the containing folder and the file doesn’t exist there,
I’m using autosave plugin to run every time focus is switched off
from the current file as welledit: more likely its an autosave bug
-
something is strange here - how can python get a modified timestamp if the file doesn’t exist at all??
The autosave plugin could explain why you see the continuous update of the timestamp
but only if there is a file which can be saved.
Sorry, but, are you really sure that the file doesn’t exist?Cheers
Claudia -
yes, I checked in windows explorer, it should be easy to reproduce it yourself
-
I’m also using the lua script too, not the python one
-
The Lua I posted above simply askes the operating system (i.e. Windows) when the file was last modified. Even if the file isn’t being saved from Notepad++, it would appear something else is changing the file’s modification timestamp.
-
Hi dail, I just tested your script today and it is not working anymore on notepad++ v7.5.8
Can you please also check it and maybe we can come up with a fix.
File:8: attempt to index a nil value (global 'winfile') stack traceback: File:8: in function <File:3> Lua 5.3.4 Copyright (C) 1994-2017 Lua.org, PUC-Rio -
lua script implementation works fine with 7.5.8
-
It does, but this particular code does not work for me as of this date. I fear windows OS might have changed something, since this script calls something from the OS.
npp.AddEventHandler({"OnSave", "OnSwitchFile", "OnLangChange"}, function() -- Make sure it is a "real" file first if npp:GetCurrentDirectory() == "" then return end local text = npp.LanguageDescription[npp.BufferLangType[npp.CurrentBufferID]] .. " - " .. os.date('%d/%m/%Y %H:%M', winfile.attributes(npp:GetFullCurrentPath(), "modification")) npp.StatusBar[STATUSBAR_DOC_TYPE] = text end) -
My guess is that since it is reporting
winfileas null then you do not have a version of LuaScript that supports this. The official v0.7.1 available via the plugin manager will not work. You have to grab one of the versions listed above.
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login