You are not logged in.

#1 2014-05-22 04:48:30

jpolcol
Member
Registered: 2014-05-14
Posts: 9

HyperMenu - a dmenu-based utility that features a TODO list and more

HyperMenu is a multi-purpose, dmenu-based utility that features a TODO list manager, note manager, calculator, applications menu, system menu, weather menu, and a GTK2 theme switcher. Designed for speed and efficiency, the program's name was inspired by the "hyper" modifier key on most keyboards, often labeled with a menu symbol. In fact, it is highly recommended to bind HyperMenu’s commands to hotkeys with sxhkd, xbindkeys, or any other X keybinder.

Contributions:
All contributions are welcome, especially ideas on how to manipulate dmenu for useful purposes.

Additional Information:
Refer to the hypermenu(1) manual page. Documentation also exists in the doc folder of this distribution.

AUR page:
https://aur.archlinux.org/packages/hypermenu-git/

Project page:
https://bitbucket.org/jpolcol/hypermenu

Clone the git repository:
git clone https://bitbucket.org/jpolcol/hypermenu.git

***

NEW features:
Weather menu

Last edited by jpolcol (2014-05-26 02:50:04)

Offline

#2 2014-05-22 15:15:39

sekret
Member
Registered: 2013-07-22
Posts: 287

Re: HyperMenu - a dmenu-based utility that features a TODO list and more

I just gave it a try. Not my kinda thing, I have no real use for it, so I'll drop it again. But looks very nice!!

One issue I stumbled upon:

/usr/bin/hypermenu: line 214: xdpyinfo: command not found

Start hypermenu and select gtk2theme. So this is at least an optional dependency, which btw doesn't get pulled by the other optdepends.

Offline

#3 2014-05-22 15:52:39

nierro
Member
From: Milan, Italy
Registered: 2011-09-02
Posts: 849

Re: HyperMenu - a dmenu-based utility that features a TODO list and more

I found it very funny and useful.
Just some suggestions:
1) hide entries configurable through .hypermenu/settings or automagically if dep package is not installed (eg: hide gtk2theme if gtk-theme-switch2 isn't installed).
2) transparent background *.*
3) make not clickable entries that aren't supposed to do anything (eg: in system, the "........" lines, or the system specs lines) avoiding errors.
4) system/RAM: put used ram before total, eg : 180M/2G.
5) Add in system: connection status (online or offline), and if online the IP address, and last, disks space.
6) Adding something like a weather script? City should be configured in settings wink

Btw very great work, i'm loving this wink
Thank you very much for your work!

EDIT: About connection status: i needed iproute2, maybe it is another optdep? May be it is anyway a good idea to print a "Online" or "offline" too!

Last edited by nierro (2014-05-22 16:02:58)

Offline

#4 2014-05-22 16:17:30

shmibs
Member
Registered: 2012-09-11
Posts: 93
Website

Re: HyperMenu - a dmenu-based utility that features a TODO list and more

^same (EDIT: pointing at sekret)
the calc frontend is pretty cool, though, so i think i might yoink that bit.

Last edited by shmibs (2014-05-22 16:18:08)


[site] | [dotfiles] | あたしたち、人間じゃないの?

Offline

#5 2014-05-23 05:51:55

jpolcol
Member
Registered: 2014-05-14
Posts: 9

Re: HyperMenu - a dmenu-based utility that features a TODO list and more

Thanks everyone for your input and contribs.

I will address the issue with xdpyinfo soon. I made xdpyinfo a dependency for now. It's used for grabbing the screen resolution, which is used by dzen2.

nierro!! Thanks for your suggestions. I implemented most of them.

Here is my response:

1) Done. I hope you are starting hypermenu with hotkeys though, and not just running hypermenu through the terminal smile
2) I installed the dmenu package that has transparency (dmenu-xft-transparency), but I could not get it to go transparent with the opacity parameter: -o. Is this what you have in mind?
3) With dmenu, all lines that are selectable can be "clicked". So I don't think there is a way to do this unfortunately.
4) Done.
5a) Done. Let me know what you think about the format and how it looks. Is there a IP lookup website that you prefer or suggest, seeing that you are in Italy?
5b) Disk space in system menu is implemented. Let me know what you think.
6) I will look into this. I already have a script that scrapes accuweather. What website would you be using to get your weather, seeing that you are in Italy? Does accuweather work well?

I uploaded my revisions to git and aur (I haven't updated documentation yet though). Be sure to remove your settings file, so that a new one will be generated with the new variables. Be sure to set "SYSTEM_WWW_IP_SHOW" to true. It's disabled by default because it can cause the menu to start up slow, since it has to wait for a website to spit out the IP. However, there is a way to speed things up... see below.

Also, there is a new optional dependency, dnsutils. If you have dnsutils, then the IP lookup will be faster since it will go through DNS (OpenDNS), rather than from a website like icanhazip.com.

Thanks again for your input. I'm really happy you like it!

Offline

#6 2014-05-23 07:04:29

nierro
Member
From: Milan, Italy
Registered: 2011-09-02
Posts: 849

Re: HyperMenu - a dmenu-based utility that features a TODO list and more

@jpolcol:
2) i thought about transparency as a "cool" feature, but it is not useful. So if it gets hard to be implemented, forget it wink
5) About IP address, i already had it printed, as i told you, thanks to iproute2. Or you meant global IP and not local one?

LOCAL_IP=$(ip -o addr show | awk '/ 192/ { gsub(/\/.*/, "", $4); print $4; exit }')

I meant that line, it was already there yesterday. This was enough!
6) Accuweather is the most used weather site by bash scripts/conky config. So...it's good! Just remember a new setting to choose between Celsius and Fahrenheit
I'll try this new version as soon as i can, and i'll report back!

EDIT:
7) what about a SYSTEM/ battery status? IE: charging, discharging, and if discharging, percentage too. Through /sys/class/BAT*/, and not acpi wink
With an entry in settings to hide this info, and to configure BAT path.
8) gcalcli support (as opt dep)? to view our google calendar (it seems to fit also in "notes" or "TODO")

Everything else is working good! Still need to add iproute2 as optdep wink
thanks for your efforts!

Last edited by nierro (2014-05-23 19:11:08)

Offline

#7 2014-05-26 03:03:07

jpolcol
Member
Registered: 2014-05-14
Posts: 9

Re: HyperMenu - a dmenu-based utility that features a TODO list and more

Thanks again for your input, nierro!

I'm going to look into gcalcli. Right now I want to focus on packaging "hyperfeed", which is an RSS reader for HyperMenu smile

So, the HyperMenu package has been updated. I implemented a weather menu. There are two new variables in the settings file:

WEATHER_URL
WEATHER_METRIC

See the manpage for more info.

Hope you like it... I'm sure it'll work well in your beautiful country wink

Last edited by jpolcol (2014-05-26 03:17:48)

Offline

#8 2014-05-26 04:11:47

jpolcol
Member
Registered: 2014-05-14
Posts: 9

Re: HyperMenu - a dmenu-based utility that features a TODO list and more

nierro,

I looked into gcalcli. The package seems to be broken, at least on my computer. I tried both gcalcli packages on the AUR.

However, I did find some screenshots of what it does, and I think we can do some cool stuff with it.

Offline

#9 2014-05-26 07:43:18

nierro
Member
From: Milan, Italy
Registered: 2011-09-02
Posts: 849

Re: HyperMenu - a dmenu-based utility that features a TODO list and more

I never used gcalcli, but i heard good things about it (some screenshots of it running in conky). I'll try to get it working here and let you know!
Btw thanks !

EDIT: you were right. Gcalcli seems not working...
EDIT2: weather is working pretty well! Very nice!

Last edited by nierro (2014-05-26 10:34:00)

Offline

#10 2014-05-30 14:43:46

orschiro
Member
Registered: 2009-06-04
Posts: 2,136
Website

Re: HyperMenu - a dmenu-based utility that features a TODO list and more

@jpolcol

Sounds very interesting your project! Can you make a short screencast of your typical worklow?

I am curious to see how you are using it! smile

Offline

#11 2014-11-16 11:56:02

chickenPie4tea
Member
Registered: 2012-08-21
Posts: 309

Re: HyperMenu - a dmenu-based utility that features a TODO list and more

pretty cool, like the way you change the colours of the display, have not seen that in a dmenu script before.
Feature request!  could you add a website choose function?
I am using this simple script at the moment and it works but I am sure you can do better.

#!/bin/sh
#adapted from a script by Skanky 
# Use dmenu to open websites from a given list.


# Global variables:
URLS=${1:-"/home/dka/.config/bookmarks"}
BROWSER=firefox

#below is abt the appearance of dmenu what settings to use the settings in my.dmenurc only allow for 20 in the list
if [ -f $XDG_CONFIG_HOME/.dmenurc ]; then
  . $XDG_CONFIG_HOME/.dmenurc
else
  DMENU='dmenu -i -l 25'
fi
#
# Show list of options the number 2 in the {print $2} part means only show column 2 from the website list
# columns being separated by a simple space
# www.yutube.com youtube    so only youtube is shown
# 
choice=$(awk -F# '{print $2}' $URLS | $DMENU -p "website to open:")

if [[ $choice ]]; then
    firefox $(awk '$2 ~ /'$choice'/ { print $1 }' $URLS)
fi

You can like linux without becoming a fanatic!

Offline

Board footer

Powered by FluxBB