nvim-lua-guide
awesome-wm-widgets
Our great sponsors
nvim-lua-guide | awesome-wm-widgets | |
---|---|---|
152 | 47 | |
4,992 | 2,035 | |
- | - | |
6.3 | 7.0 | |
over 1 year ago | 28 days ago | |
sed | Lua | |
- | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
nvim-lua-guide
-
Any guide to start writing plugins?
Nvim Lua guide
- I'm fairly new to Neovim, and I want to configure my neovim setup.
-
Advice/Resources for creating/debugging a Neovim Plugin?
My main struggles beyond a simple problem are just the inability to find a way to easily debug things and the general process for setting up a plugin. I mostly work with Python/Jupyter, some C and Lua/Bash scripts, and usually you can either write tests/print debug for smaller scale things or get some stack trace if you have an error. With Neovim development, it just feels like there's nothing more besides update plugin, try on neovim, fail, bash head against wall, and repeat, and that doesn't quite seem efficient or correct - I'm sure there's something out there that should make the process easier. I tried looking online but I haven't found many that really fit my needs (most of the resources here seem more targeted towards creating your own init.lua, and Luadev plugin's commands are all broken (:Luadev-RunLine and any other command keeps telling me I got some trailing space). I'm really just looking to see how to make a snippet library, but there doesn't seem to be much that helps me. If someone could let me know how they debug their plugin or point me to any external resources, please let me know!
-
[help] use neovim to edit files at remote - server?
I have no guidance for the first point. For the second, checkout the neovim lua guide or : lua-guide
- Is there a vim/neovim equivalent to something like "Mastering Emacs"?
- [Neovim] Puis-je obtenir un guide sur la façon d’installer Packer pour les nuls absolus ?
- New to NeoVim, looking to learn
- Where to learn about Neovim and it's plugins? (Deeply)
-
Where would be a good place to start trying to learn lua with no previous programming experience. Trying to learn it as it’s the main language used in a project I’m apart of and want to help out
A quick google search turned up this codeacademy class on learning to program in Javascript. I didn't vet the whole thing, but it appears to assume you know nothing, which is what you need. If you go through that, you can then consume one of the resources that /u/luascriptdev post to equate that back to Lua. Again, the concepts translate.
- how to understand lua config
awesome-wm-widgets
-
Widgets: which are the alternatives?
I'm trying to get the most out of my OS (Arch with X11 and Awesomewm), but I'm stuck with the widgets. I would like to create/use some utilities like an interactive calendar, small TODO list, dropdown menu, etc. but using the awesomewm widgets is too difficult and limiting. I found eww but it seems as difficult as the former widgets.
-
How do I get the batteryarc-widget to work properly?
Hello, I am new to Linux (using Mint rn) and very new to Awesome. I installed Pavel Makhov's awesome-wm-widgets pack since that seems very cool and widely used. While the arc portion of the widget works perfectly fine, the actual charge isn't showing in the middle of the arc. Here's what I mean.
-
Widget help.
I am a noob to awesome wm, and have tried several times to get the widgets from https://github.com/streetturtle/awesome-wm-widgets to work. I am not understanding the directions, and whenever I try it always throws me errors that i cannot figure out. Can anyone give me detailed instructions on how to setup these up?
-
Were can I study aligning widgets on wibar (or writing awesome widgets in general)?
Check tips & tricks section here, there are two tutorials on widget creation: https://pavelmakhov.com/awesome-wm-widgets/ You can also have a look at the source code of https://github.com/streetturtle/awesome-wm-widgets
-
Get Off My Desktop Windows Needs to Stop Showing Tabloid News
> What widgets are you referring to that you found to have leaks?
I'll cite myself here: https://github.com/streetturtle/awesome-wm-widgets/issues/11...
I've had similar issues wherever GTK interacts with awful.spawn . Hence my GTK + awful.spawn.easy_async = extremely leak-prone
Here's another affected library [1]: https://github.com/deficient/volume-control
[1]: No bug under the main repo because they're considering it as a framework bug. See here for discussion: https://github.com/awesomeWM/awesome/issues/3584#issuecommen...
-
How do i add a power button to the wibar
You can try this widget: https://github.com/streetturtle/awesome-wm-widgets/tree/master/logout-menu-widget
-
Awesome WM customizer/configurator
u/BaigGam3rss I still have some work to do to make my own widgets but you probably start with the documentation [1][2]. And then look at some other projects that use Awesome API to build widgets (ex: [3][4][5][6][7]).
-
button click interpreted twice
------------------------------------------------- -- Logout Menu Widget for Awesome Window Manager -- More details could be found here: -- https://github.com/streetturtle/awesome-wm-widgets/tree/master/logout-menu-widget -- @author Pavel Makhov -- @copyright 2020 Pavel Makhov ------------------------------------------------- local awful = require("awful") local wibox = require("wibox") local gears = require("gears") local beautiful = require("beautiful") local naughty = require("naughty") local HOME = os.getenv('HOME') local ICON_DIR = HOME .. '/.config/awesome/awesome-wm-widgets/logout-menu-widget/icons/' local logout_menu_widget = wibox.widget { { { image = ICON_DIR .. 'power_w.svg', resize = true, id = "iimage", widget = wibox.widget.imagebox, }, margins = 4, layout = wibox.container.margin }, shape = function(cr, width, height) gears.shape.rounded_rect(cr, width, height, 4) end, widget = wibox.container.background, } local popup = awful.popup { ontop = true, visible = false, shape = function(cr, width, height) gears.shape.rounded_rect(cr, width, height, 4) end, border_width = 1, border_color = beautiful.bg_focus, maximum_width = 400, offset = { y = 5 }, widget = {} } local function worker(user_args) local rows = { layout = wibox.layout.fixed.vertical } local args = user_args or {} local font = args.font or beautiful.font local onlogout = args.onlogout or function () awesome.quit() end local onlock = args.onlock or function() awful.spawn.with_shell("i3lock") end local onreboot = args.onreboot or function() awful.spawn.with_shell("reboot") end local onsuspend = args.onsuspend or function() awful.spawn.with_shell("systemctl suspend") end local onpoweroff = args.onpoweroff or function() awful.spawn.with_shell("shutdown now") end local menu_items = { { name = 'Log out', icon_name = 'log-out.svg', command = onlogout }, { name = 'Lock', icon_name = 'lock.svg', command = onlock }, { name = 'Reboot', icon_name = 'refresh-cw.svg', command = onreboot }, { name = 'Suspend', icon_name = 'moon.svg', command = onsuspend }, { name = 'Power off', icon_name = 'power.svg', command = onpoweroff }, } for _, item in ipairs(menu_items) do local row = wibox.widget { { { { image = ICON_DIR .. item.icon_name, resize = false, widget = wibox.widget.imagebox }, { text = item.name, font = font, widget = wibox.widget.textbox }, spacing = 12, layout = wibox.layout.fixed.horizontal }, margins = 8, layout = wibox.container.margin }, bg = beautiful.bg_normal, widget = wibox.container.background } row:connect_signal("mouse::enter", function(c) c:set_bg(beautiful.bg_focus) end) row:connect_signal("mouse::leave", function(c) c:set_bg(beautiful.bg_normal) end) local old_cursor, old_wibox row:connect_signal("mouse::enter", function() local wb = mouse.current_wibox old_cursor, old_wibox = wb.cursor, wb wb.cursor = "hand1" end) row:connect_signal("mouse::leave", function() if old_wibox then old_wibox.cursor = old_cursor old_wibox = nil end end) --row:buttons(awful.util.table.join(awful.button({}, 1, function() -- popup.visible = not popup.visible -- item.command() --end))) row:add_button(awful.button({}, 1, function() popup.visible = not popup.visible item.command() end)) table.insert(rows, row) end popup:setup(rows) -- logout_menu_widget:buttons( -- awful.util.table.join( -- awful.button({}, 1, function() -- if popup.visible then -- popup.visible = not popup.visible -- logout_menu_widget:set_bg('#00000000') -- else -- popup:move_next_to(mouse.current_widget_geometry) -- logout_menu_widget:set_bg(beautiful.bg_focus) -- end -- end) -- ) -- ) logout_menu_widget:add_button( awful.button({}, 1, function() naughty.notify({text = "button pressed"}) if popup.visible then naughty.notify({text = "visible"}) popup.visible = not popup.visible logout_menu_widget:set_bg('#00000000') else naughty.notify({text = "invisible"}) popup:move_next_to(mouse.current_widget_geometry) logout_menu_widget:set_bg(beautiful.bg_focus) end end, function() naughty.notify({text = "button released"}) end) ) return logout_menu_widget end return setmetatable(logout_menu_widget, { __call = function(_, ...) return worker(...) end })
- General help with widgets
- Need help installing awesome-wm-widgets widgets, I tried with the volume widget and then spotify and both times adding the code in the read me to different places in the rc.lua and each time saving and reloading awesomewm caused it to reset to default settings with a slew of errors and no widget
What are some alternatives?
kickstart.nvim - A launch point for your personal nvim configuration
polybar-themes - A huge collection of polybar themes with different styles, colors and variants.
packer.nvim - A use-package inspired plugin manager for Neovim. Uses native packages, supports Luarocks dependencies, written in Lua, allows for expressive config
rofi - A huge collection of Rofi based custom Applets, Launchers & Powermenus.
vim-test - Run your tests at the speed of thought
awesome-copycats - Awesome WM themes
plenary.nvim - plenary: full; complete; entire; absolute; unqualified. All the lua functions I don't want to write twice.
rofi-power-menu - Configurable power menu mode for Rofi and dmenu
tree-sitter-svelte - Tree sitter grammar for Svelte
lain - Awesome WM complements
which-key.nvim - 💥 Create key bindings that stick. WhichKey is a lua plugin for Neovim 0.5 that displays a popup with possible keybindings of the command you started typing.
bling - Utilities for the awesome window manager