Set the domain as title in KeePass when saving login

Hey there,

I’ve started using the kee extension for Firefox in combination with my KeePass Database. It works all great. The setup is really easy. I just would love to have the option of defining the title of the stored login. Because curently the title of the website is used which most of the time is something like “login to page x” or “Welcome to y”. This is quite pointless as it makes it impossible to find them later in the KeePass-db ordered by name. It would be nice to have an option to use either the title of the page, the domain, [the domain with subdomains, the full URL without protocols nor “www”]. Right now I have to use the KeePass search to find the keys I want to edit…

I hope this isn’t too much hazzle for such a detail, but I would love to have kee work for me without manually editing every entry.

Thank you for making this addon work for free with KeePass,
Paul

Edit: Sorting the KeePass-DB by URL doesn’t help here, because it contains protocols (http and https), www and subdomains.

I’m planning for a future release of Kee to allow for editing the title while saving the entry. In the mean time, if this is something you require more often than not, you should try enabling the KeePassRPC option (in KeePass) to automatically open the new KeePass entry after Kee has created it.

Hey Luckyrat,

thank you for that info! I just thought myself to make a pull request for that, but I failed with getting the addon running. Where would be the best place to get help with some errors like:

WATCHER: START : {“code”:“START”}
:: ‘D:keeFirefoxAddon
untimeplugin-vue
ormalize.js’ is imported by popup\App.vue, but could not be resolved – treating it as an external dependency

First there seems to be a “Stringify” missing somewhere. I added it into the output, but since it is a composed String, it can’t be done right in the gulpfile.js:

WATCHER: START : {“code”:“START”}
:: “‘D:keeFirefoxAddon\node_modules\rollup-plugin-vue\runtime\normalize.js’ is imported by popup\\App.vue, but could not be resolved – treating it as an external dependency”

Is it best to post it on github or is there a place in this forum I overlooked?

Thanks,
Paul

Hi Paul,

Thanks for trying to help out with this feature.

I think GitHub is best used for discussion about changes to the actual code; higher-level questions around whether a specific change should be made to the application or any problems following the Readme steps for compiling the code are best had on this forum. There’s currently no specific area of the forum for discussing build errors because it’s not something that happens often enough to justify the segregation.

I don’t recognise those error messages you’ve posted. It’s possible that whichever commit you are trying to build is no longer compatible with some of the auto-updating dependencies in package.json. If that’s the only problem then you should find that npm install ci will get you exactly the same versions that work for me or the CI server.

In this specific case though, I have already implemented the relevant code as part of the feature-save-password-2019 branch. You’ll see there is a lot of work in progress on that branch so it’s not yet ready for collaboration I’m afraid.

I’m working on the ideas I presented in Entry (password) saving improvements coming soon earlier this year and hope that I’ll have the branch in a state ready for my own testing and private use within a couple of weeks. After that there’s a fair bit of code tidy up to do and enabling localisation of the new strings, at which point it should be ready for beta testing and therefore merging into master. Please feel free to offer any feedback on the plan in that forum post and stay tuned for opportunities to help me refine the feature during the beta testing period :slight_smile:

Hey Luckyrat,
thanks for all the infos. I just have a few questions: I checked out the masterbranch assuming this is the safest to compile. Maybe I go with the release 3.3 branch? Anyway I get exactly the same errors there. I suspect something else: I’m doing this on my work laptop which is windows 7. You are probably using Linux, right? Are you developing this alone? Because for me it looks like there is a \ missing after the drive letter, which would be a problem for every Windows enviroment, thus my assumption. If not, the error will be definitely on my setup. Although I just cloned the repo, and ran NPM step by step as described in the instructions.

The error appears when starting NPN. This is the whole output:

D:\keeFirefoxAddon>npm start
> kee-browser-addon@3.0.0 start D:\keeFirefoxAddon
> gulp watch

[22:30:54] Using gulpfile D:\keeFirefoxAddon\gulpfile.js
[22:30:54] Starting 'watch'...
[22:30:54] Starting 'watchts'...
[22:30:54] Starting 'static'...
[22:30:54] Starting 'static:popup'...
[22:30:54] Starting 'static:panels'...
[22:30:54] Starting 'static:page'...
[22:30:54] Starting 'static:background'...
[22:30:54] Starting 'static:settings'...
[22:30:54] Starting 'static:dialogs'...
[22:30:54] Starting 'static:common'...
[22:30:54] Starting 'static:commonFonts'...
[22:30:54] Starting 'static:commonImages'...
[22:30:54] Starting 'static:releasenotes'...
[22:30:54] Starting 'static:locales'...
[22:30:54] Starting 'static:manifest'...
[22:30:54] Starting 'static:lib'...
[22:30:54] Starting 'clean:ts'...
[22:30:54] Starting 'lint:ts'...
[22:30:54] Starting 'clean:static:popup'...
[22:30:54] Starting 'clean:static:panels'...
[22:30:54] Starting 'clean:static:page'...
[22:30:54] Starting 'clean:static:background'...
[22:30:54] Starting 'clean:static:settings'...
[22:30:54] Starting 'clean:static:dialogs'...
[22:30:54] Starting 'clean:static:common'...
[22:30:54] Starting 'clean:static:commonFonts'...
[22:30:54] Starting 'clean:static:commonImages'...
[22:30:54] Starting 'clean:static:releasenotes'...
[22:30:54] Starting 'clean:static:locales'...
[22:30:54] Starting 'clean:static:manifest'...
[22:30:54] Starting 'clean:static:lib'...
[22:30:54] Starting 'lintTs'...
[22:30:54] Finished 'clean:ts' after 87 ms
[22:30:54] Finished 'clean:static:page' after 95 ms
[22:30:54] Starting 'staticPage'...
[22:30:54] Finished 'clean:static:background' after 105 ms
[22:30:54] Starting 'staticBackground'...
[22:30:54] Finished 'clean:static:common' after 116 ms
[22:30:54] Starting 'staticCommon'...
[22:30:54] Finished 'staticPage' after 59 ms
[22:30:54] Finished 'static:page' after 194 ms
[22:30:54] Finished 'staticCommon' after 50 ms
[22:30:54] Finished 'static:common' after 204 ms
[22:30:54] Finished 'staticBackground' after 140 ms
[22:30:54] Finished 'static:background' after 285 ms
[22:30:54] Finished 'clean:static:popup' after 261 ms
[22:30:54] Starting 'staticPopup'...
[22:30:54] Finished 'clean:static:manifest' after 246 ms
[22:30:54] Starting 'staticManifest'...
[22:30:54] Starting 'copyStaticManifest'...
[22:30:54] Finished 'staticManifest' after 4.81 ms
[22:30:54] Finished 'static:manifest' after 289 ms
[22:30:54] Starting 'copyStaticManifest'...
[22:30:54] Finished 'clean:static:settings' after 278 ms
[22:30:54] Starting 'staticSettings'...
[22:30:54] Finished 'clean:static:panels' after 291 ms
[22:30:54] Starting 'staticPanels'...
[22:30:54] Finished 'clean:static:commonFonts' after 286 ms
[22:30:54] Starting 'staticCommonFonts'...
[22:30:54] Finished 'clean:static:commonImages' after 292 ms
[22:30:54] Starting 'staticCommonImages'...
[22:30:54] Finished 'clean:static:releasenotes' after 339 ms
[22:30:54] Starting 'staticReleaseNotes'...
[22:30:54] Finished 'clean:static:dialogs' after 360 ms
[22:30:54] Starting 'staticDialogs'...
[22:30:55] Finished 'clean:static:lib' after 705 ms
[22:30:55] Starting 'staticLib'...
[22:30:56] Finished 'clean:static:locales' after 2.6 s
[22:30:56] Starting 'staticLocales'...
[22:30:57] Finished 'copyStaticManifest' after 2.94 s
[22:30:57] Finished 'copyStaticManifest' after 2.95 s
[22:30:57] Finished 'staticPopup' after 2.98 s
[22:30:57] Finished 'static:popup' after 3.28 s
[22:30:57] Finished 'staticPanels' after 2.96 s
[22:30:57] Finished 'static:panels' after 3.29 s
[22:30:57] Finished 'staticSettings' after 2.97 s
[22:30:57] Finished 'static:settings' after 3.29 s
[22:30:58] Finished 'staticDialogs' after 3.32 s
[22:30:58] Finished 'static:dialogs' after 3.72 s
[22:30:58] Finished 'staticReleaseNotes' after 3.4 s
[22:30:58] Finished 'static:releasenotes' after 3.78 s
[22:30:58] Finished 'staticCommonFonts' after 3.86 s
[22:30:58] Finished 'static:commonFonts' after 4.18 s
[22:30:58] Finished 'staticCommonImages' after 3.86 s
[22:30:58] Finished 'static:commonImages' after 4.19 s
[22:30:59] Finished 'staticLocales' after 2.13 s
[22:30:59] Finished 'static:locales' after 4.77 s
[22:30:59] Finished 'staticLib' after 4.51 s
[22:30:59] Finished 'static:lib' after 5.25 s
[22:30:59] Finished 'static' after 5.29 s
[22:31:00] Finished 'lintTs' after 6.43 s
[22:31:00] Finished 'lint:ts' after 6.47 s
[22:31:00] Starting 'watchTs'...
WATCHER: START : {"code":"START"}
   :: "'D:keeFirefoxAddon\node_modules\rollup-plugin-vue\runtime\normalize.js' is imported by popup\\App.vue, but could not be resolved – treating it as an external dependency"
undefined
:: "'D:keeFirefoxAddon\node_modules\rollup-plugin-vue\runtime\browser.js' is imported by popup\\App.vue, but could not be resolved – treating it as an external dependency"
undefined
:: "'D:keeFirefoxAddon\node_modules\rollup-plugin-vue\runtime\normalize.js' is imported by popup\\components\\SearchInput.vue, but could not be resolved – treating it as an external dependency"
undefined
:: "'D:keeFirefoxAddon\node_modules\rollup-plugin-vue\runtime\browser.js' is imported by popup\\components\\SearchInput.vue, but could not be resolved – treating it as an external dependency"
undefined
:: "'D:keeFirefoxAddon\node_modules\rollup-plugin-vue\runtime\normalize.js' is imported by popup\\components\\Notification.vue, but could not be resolved – treating it as an external dependency"
undefined
:: "'D:keeFirefoxAddon\node_modules\rollup-plugin-vue\runtime\normalize.js' is imported by popup\\components\\SearchResults.vue, but could not be resolved – treating it as an external dependency"
undefined
:: "'D:keeFirefoxAddon\node_modules\rollup-plugin-vue\runtime\browser.js' is imported by popup\\components\\SearchResults.vue, but could not be resolved – treating it as an external dependency"
undefined
:: "'D:keeFirefoxAddon\node_modules\rollup-plugin-vue\runtime\normalize.js' is imported by popup\\components\\Entry.vue, but could not be resolved – treating it as an external dependency"
undefined
:: "'D:keeFirefoxAddon\node_modules\rollup-plugin-vue\runtime\normalize.js' is imported by popup\\components\\Field.vue, but could not be resolved – treating it as an external dependency"
undefined
WATCHER: ERROR : {"code":"ERROR","error":{"pos":505,"loc":{"line":7,"column":30},"raisedAt":523,"code":"PLUGIN_ERROR","plugin":"rollup-plugin-inline-js","hook":"renderChunk"}}

I guess you still don’t recognise them…do you?

I’ll kepp digging.

Thanks,
Paul

Yes, I use Linux and there are no other regular code contributors at the moment. I and others have built on Windows in recent years so there should be no huge barrier to getting that to work again.

I’ve just tested on a Windows machine and see the same error you do on both master and feature-save-password-2019 so I probably introduced a bug relating to directory separators when working on the current beta version (3.3, on master). I’ve not got time to investigate further today but wanted to just quickly report my findings to you. It might be worth trying an older version (such as the latest 3.2.x tag) to narrow down where the change happened, although I would suspect it relates to the upgrade of a lot of legacy build tools and hence does not have a simple and obvious one-commit cause.

Thanks,
Chris

Hey Chris,

I just went through most of your branches and commits. I could narrow it down to the tag 3.3.2 before that it works out of the box, from 3.3.2 on it doesn’t. I checked the package.json and this change of the rollup-plugin-vue versions to 5.1.4 seems to cause it. Not only because of my eror messages which are related to rollup, but it also seems that it was a breaking change of the plugin and not your fault (see here). Unfortunately forced use ofversion 5.1.1 did not make it work neither :frowning:

I’ll let you know if I should make any progress.

Ah and by the way: the build instructions on Github are mssing one thing (at least for windows): You have to globally install Git. Meaning in the insallation process you have to choose “Git fron the command line and also for 3rd-party software” which recommended, but not the default for some reason. Otherwise NPM throws this at some point: npm ERR! enoent undefined ls-remote -h -t ssh://github.com/kee-org/browser-addon.git.

Best,
Paul