Giter VIP home page Giter VIP logo

browser-bookmarks.nvim's People

Contributors

dhruvmanila avatar imkerberos avatar normful avatar sanchay9 avatar traumweh avatar younger-1 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

browser-bookmarks.nvim's Issues

Raindrop.io rate limits API requests to 120 per second per user

Just installing plugin.
Getting an error from the background job about rate limit being exceeded. Turns out that Raindrop limits it to 120 per user per second. https://developer.raindrop.io
I have way more than that in terms of stored bookmarks.
Their return codes indicating this look clear enough.
(I'm new to LUA. may have a crack at a simple rate limiter handle for their status code if I get the time)
Thanks

Add Support for Min Browser

Love the plugin!

Would be great to have support for Min. Saves me from importing my bookmarks to one of the supported browsers.

Support for android

Hey I just checked out your plugin and it found it very useful but it shows this error in my phone
IMG_20220217_221641

Add Support for Raindrop.io

I use the Raindrop.io bookmark manager which is far more powerful than any browser-based bookmark manager I've tried. Plus, since it's in the cloud, it works across browsers.

Would it be possible to support Raindrop.io in the future?

Here's a link to the feature request I made for this in Raindrop.io. The author of Raindrop.io (Rustem Mussabekov) is very responsive if you reach out to him at [email protected].

Refactor to be used by any fuzzy finder using `vim.ui.select`

Either of the following routes can be taken:

  1. Use vim.ui.select
  2. Support popular providers and use config option provider = 'telescope'

I'm leaning more towards (1) as most providers provide support to override the default implementation.

This will require updating the plugin name as well. For backwards compatibility, the telescope extension code will still be maintained.

Error with telescope builtin pickers

Whenever I try to run

lua require('telescope.builtin').builtin({include_extensions = true})

this particular extension will raise an error with the following message:

5108: Error executing lua ...lugged/telescope.nvim/lua/telescope/builtin/internal.lua:46: bad argument #1 to 'getinfo' (function or level expected)

I've narrowed it down to this line https://github.com/nvim-telescope/telescope.nvim/blob/master/lua/telescope/builtin/internal.lua#L44, not sure what that fn is expecting to get though

Plugin looks for chrome bookmarks in Brave location

thank you for the awesome plugin!

I can't seem to get the plugin working consistently; I'm now reliably getting this error.

No Google Chrome bookmarks file found at: /Users/alexwoods/Library/Application Support/BraveSoftware/Br
ave-Browser/Default/Bookmarks

Here's my config

require('telescope').load_extension('bookmarks')

require('telescope').setup {
  extensions = {
    bookmarks = {
      selected_browser = 'google_chrome',
    },
  }
}

Even this Ex command gets that error:

:lua require('telescope').extensions.bookmarks.bookmarks({selected_browser='google_chrome'})

The only real difference I see between this and the documentation is the added { after the word extensions; I was thinking that's syntax error.

My Setup

  • plugin commit eef8e53
  • Neovim version v0.5.1
  • MacOS Big Sur, Version 11.2

Firefox: database is locked

Hello,

extension doesn't work with my firefox.
When I try to run Telescope bookmarks it will end up with:

E5108: Error executing lua ...nvim/site/pack/packer/opt/sqlite.lua/lua/sqlite/stmt.lua:35: sqlite.lua: sq
l statement parse, , stmt: `select name from sqlite_master where name= ?`, err: `(`database is locked`)` 

The same error is here when I try to use places.sqlite database using sqlite3 utility:

➜  hbo9xv4w.default sqlite3 places.sqlite
SQLite version 3.37.0 2021-11-27 14:13:22
Enter ".help" for usage hints.
sqlite> .tables
Error: database is locked

NOTE: The error is present only when the Firefox is running. When I close FF the database is locked error is not present anymore.

POSSIBLE SOLUTION:
I tried to open sqlite database using immutable flag and it works:

sqlite3 'file:places.sqlite?immutable=1'

Config option to provide custom location for browser data

Most of the browsers when installed using the default installer will follow the XDG spec to store the data. But, if a package manager is used to install the browser, it might be stored in some specific directory depending on the package manager.

A config option should be provided which allow user to provide the directory to look for the bookmarks file. The structure of the directory where the browser stores the data will be similar and we can use this fact in implementing the feature. A detailed warning should be provided if there's some kind of mismatch.

Does not work correctly with Google Chrome

Getting [telescope-bookmarks] No Google Chrome bookmarks file found at: [my home path]/Library/Application Support/BraveSoftware/Brave-Browser/Default/Bookmarks on MacOS + selected_browser = 'google_chrome'.

It seems (based on my limit knowledge of Lua and reading the source code) that here state.selected_browser is correctly set to google_chrome:

https://github.com/dhruvmanila/telescope-bookmarks.nvim/blob/7afec587d3ee332db2414b286c00cdff7a6e1103/lua/telescope/_extensions/bookmarks.lua#L53-L59

but than here is it reset back to brave 🤷

https://github.com/dhruvmanila/telescope-bookmarks.nvim/blob/7afec587d3ee332db2414b286c00cdff7a6e1103/lua/telescope/_extensions/bookmarks/google_chrome.lua#L98-L102

[feature request] ability to delete bookmarks

A keyboard shortcut to delete the selected bookmark(s) would be useful, especially for people who like to have a "Read Later" folder for reviewing tutorials, pull-requests, etc.

If this is possible, ideally it would have an optional confirmation prompt and maybe a second shortcut or option to automatically delete and open at the same time (to not have to go back into it to delete later).

Thanks for this very useful plugin!

Raindrop.io Suggestions

Hi @dhruvmanila ,

Thanks for all your work in making the Raindrop bookmarks available, it works amazingly and I really appreciate it!

After using it for a bit, two ideas occurred to me that might make it even better.

  1. This might not be available via the Raindrop.io API, but it would be awesome if we could search for bookmarks using information beyond the title and URL. Above all, I'd be interested in searching among my tags. If it were possible to launch the Telescope fuzzy finder to search among Titles/URLs and/or tags, that would be even better.
  2. Loading all my bookmarks in a background process is super effective as long as I stay in the same instance of Neovim. I'm not sure how you load and store the bookmarks exactly, but it would be awesome if that loaded information was available to any instance of Neovim that is running. Is there a way to store the bookmarks in a local data structure that be loaded and updated by any instance of Neovim?

Edit: To help with 2, I did the logical thing and created an autocommand to start loading my bookmarks as soon as Nvim loads -- might be good to mention in the setup docs.

vim.api.nvim_create_autocmd({ "VimEnter" }, {
    callback = function()
        vim.cmd "lua require('telescope').extensions.bookmarks.bookmarks(opts)"
    end,
})

Opts table not read from Lazy Config

return {
  "dhruvmanila/browser-bookmarks.nvim",
  version = "*",
  opts = {
    selected_browser = "brave",
    profile_name = "Work",
    config_dir = "/mnt/c/Users/winuser/AppData/Local/BraveSoftware/Brave-Browser/User Data/Default",
    url_open_command = "wslview $1 >> /dev/null 2>&1",
  },
  dependencies = {
    "nvim-telescope/telescope.nvim",
  },
}

The opts table defined in nvim lua plugin is not applied. The default table from browser_bookmarks/config.lua is taken instead.

-- Default configuration for the plugin.
---@type BrowserBookmarksConfig
local defaults = {
  selected_browser = "brave",
  profile_name = nil,
  config_dir = nil,
  full_path = true,
  url_open_command = "open",
  url_open_plugin = nil,
  buku_include_tags = false,
  debug = false,
}

function config.setup(opts)
config.values = vim.tbl_extend("force", {}, defaults, opts or {})
end

Please advise.

Add support for specifying profile name in possible browsers

The plugin provides options of firefox_profile_name and waterfox_profile_name, but no options for other browers, e.g. chrome/edge. I'm wondering is there any reason behind this? It is nice to also have options for other browser profile names.

Error when browsers are installed to a custom directory

Hey !

My Brave browser is installed with snap store on Ubuntu 22.04.

Bookmarks folder with snap is a bit different: /home/{user}/snap/brave/current/.config/BraveSofware/Brave-Browser/Default/Bookmarks

So I created a symlink to /home/{user}/.config/BraveSoftware/Brave-Browser/Default/Bookmarks

But I got this error: bad argument #1 to 'decode' (string expected, got nil)

Screenshot from 2022-08-01 22-57-47

Screenshot from 2022-08-01 23-02-20

Click on pictures for better quality xD

Did I miss something ?

Thanks !

Support `XDG Base Directory` spec for retrieve bookmarks

Currently, bookmarks extension finding bookmarks databases with hardcoded .config/** directory (example). Some users use different path for storing configuration files. In the plugin, I suggest change hardcoded .config strings with os.getenv('XDG_CONFIG_HOME') or '.config'.

As another method (or in addition to the above); users can describe bookmark path in the telescope's extension configurations. Example;

telescope.setup({
  ...
  extensions = {
    bookmarks = {
      chrome = "custom path depends on user's environment",
    },
  },
})

More information about XDG Base Directory spec here.

[Feature Request] Search for Buku Tags

As far as I can tell the search does not include tags one can set while adding a bookmark to buku, which would be pretty nice for larger amounts of bookmarks. Maybe in regards to that a config-key (e.g. buku_include_tags = true) would be handy as well.

The tags for each entry seem to be stored in the database column tags.

Edit: Created pull-request #19

Add support for `Qutebrowser`

Thanks for the plugin ❤️

Would be great to have support for Qutebrowser. It's store bookmarks in the $XDG_CONFIG_DIR/qutebrowser/bookmarks/urls file with the structure of:

url title

I'll try to implement and send PR if its welcome.

Add support for Arc Browser

Hello,
Are you all planning to add compatibility to the Arc Browser?

Thank you for your hard work with the browser-bookmark!

Failed to run `config`

Failed to run `config` for browser-bookmarks.nvim
/Users/.config/LazyVim/lua/plugins/plugins.lua:154: module 'browser-bookmarks' not found:
^Ino field package.preload['browser-bookmarks']
cache_loader: module browser-bookmarks not found
cache_loader_lib: module browser-bookmarks not found
^Ino file './browser-bookmarks.lua'
^Ino file '/usr/local/share/luajit-2.1.0-beta3/browser-bookmarks.lua'
^Ino file '/usr/local/share/lua/5.1/browser-bookmarks.lua'
^Ino file '/usr/local/share/lua/5.1/browser-bookmarks/init.lua'
^Ino file './browser-bookmarks.so'
^Ino file '/usr/local/lib/lua/5.1/browser-bookmarks.so'
^Ino file '/usr/local/lib/lua/5.1/loadall.so'
# stacktrace:
  - lua/plugins/plugins.lua:154 _in_ **config**
  - lua/config/lazy.lua:10
  - init.lua:5

My config:

  {
    "dhruvmanila/browser-bookmarks.nvim",
    lazy = false,
    config = function()
      require("browser-bookmarks").setup(
        {
          selected_browser = "chrome",
        }
      )
    end,
  },

Add support for Chromium browser

Hi,

Thank you very much for the plugin! It looks very cool and I would like to make the best use of it.
However, my standard browser is Chromium, which is not listed in the supported browser, although I see support for Chrome.

I tried playing with some of the configurations settings but wasn't able to load my Chromium bookmarks.
The closest I managed to get was to load my Chrome bookmarks in Chromium.

Is there an easy config fix that can allow me to load my Chromium bookmarks in Chrome?
If it can help, these are stored in ~/snap/chromium/common/chromium/Default/Bookmarks

Thank you so much in advance!

Use bookmarks directories

Hello, thanks for the plugin, it works well !

I'm using it with safari, and I propose these features:

  1. Using bookmark directories as telescope directories

Capture d’écran 2022-01-11 à 10 43 12

  1. Add option to only open a certain directory, for example: Telescope bookmarks Pentest

Capture d’écran 2022-01-11 à 10 44 04

What do you think about these ? I really like the second one, as I could create a proper directory for neovim

Firefox

The plugin is not working for me with Firefox. I installed lz4.
But I still get the error "Firefox requires the LZ4 compression library (https://github.com/lz4/lz4)"

I think it's coming from the FFI module ?
Is this working in standard Lua without luajit ?
I'm not familiar with Lua, do I have to install luajit ?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.