[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [solved] fvwm: was i3 sticky/floating windows (brasero requires gvfs)



On Thu, Oct 2, 2014 at 11:05 PM, Charlie <ariestao@ipstarmail.com.au> wrote:
> On Thu, 2 Oct 2014 17:47:43 +1000 Charlie sent:
>
>>
>>   On Wed, 1 Oct 2014 17:33:43 -0700 Vincent mentioned this:
>>       Re: fvwm: was i3 sticky/floating windows (brasero requires
>>   gvfs).
>>
>> > On Tue, Sep 30, 2014 at 12:30 AM, Charlie
>> > <ariestao@ipstarmail.com.au> wrote:
>> > >
>> > >   On Mon, 29 Sep 2014 17:51:41 -0700 Vincent mentioned this:
>> > >         Re: fvwm: was i3 sticky/floating windows (brasero requires
>> > >   gvfs).
>> > >
>> > >> On Sat, Sep 27, 2014 at 2:44 PM, Charlie
>> > >> <ariestao@ipstarmail.com.au> wrote:
>> > >> >
>> > >> >   On Sat, 27 Sep 2014 16:20:27 +0200 lee mentioned this:
>> > >> >         Re: fvwm: was i3 sticky/floating windows (brasero
>> > >> > requires gvfs).
>> > >> >
>> > >> >>
>> > >> >> >> Steve Litt <slitt@troubleshooters.com> writes:
>> > >> >> >>
>> > >> >> >> Because you use fvwm on a regular basis, you should write
>> > >> >> >> some documentation on it.
>> > >> >>
>> > >> >> Please check out [1] --- let me know if it works for you and
>> > >> >> how you like it.
>> > >> >>
>> > >> >>
>> > >> >> [1]: https://github.com/lee-/fvwm
>> > >> >>
>> > >> >>
>> > >> >> --
>> > >> >> Knowledge is volatile and fluid.  Software is power.
>> > >> >
>> > >> >
>> > >> >   From my keyboard:
>> > >> >
>> > >> >    Hello Lee,
>> > >> >
>> > >> >       I've just had a cursory read and you have put a lot of
>> > >> > effort into this. Thank you on behalf of those of us who will
>> > >> > appreciate and use it.
>> > >> >
>> > >> > I have a meeting to attend this morning that will keep me away
>> > >> > most of the day, so I won't have the time to read all of it
>> > >> > till I return.
>> > >> >
>> > >> > But just quickly and without the history why I moved from fvwm
>> > >> > to xfce4.
>> > >> >
>> > >> > I used the win95 script to get an fvwm setup quickly. I'm
>> > >> > tweaking as i go along as time permits.
>> > >> >
>> > >> > I wanted to get the Debian Menu into the fvwm Root menu to get
>> > >> > rid of the taskbar but have not found yet, how that can be
>> > >> > done.
>> > >> >
>> > >>
>> > >> Examples of how the Debian menu is configured and used is
>> > >> provided as part of the Fvwm package,
>> > >> under /usr/share/doc/fvwm/examples/.
>> > >>
>> > >> It is composed of three parts:
>> > >> 1. A function definition
>> > >>
>> > >> DestroyFunc SetDebianMenu
>> > >> AddToFunc SetDebianMenu
>> > >> + I Read /etc/X11/fvwm/menudefs.hook
>> > >>
>> > >> Which when called will read from the menudefs.hook under
>> > >> /etc/X11/fvwm/. This menudefs.hook defines the structure of the
>> > >> Debian menu, but is not yet linked to your personal menu. The
>> > >> name of the Debian menu is "/Debian".
>> > >>
>> > >> 2. Calling the function
>> > >>
>> > >> Test (f /etc/X11/fvwm/menudefs.hook) SetDebianMenu
>> > >>
>> > >> Which will first test if the menu exists, then calls the function
>> > >> defined in step 1. This line can be put anywhere you like, as
>> > >> long as it's after the function definition.
>> > >>
>> > >> 3. Add the Debian menu to your menu
>> > >>
>> > >> Test (f /etc/X11/fvwm/menudefs.hook) + "Debian Menu" Popup
>> > >> "/Debian"
>> > >>
>> > >> Insert this as part of your menu definitions, under
>> > >> 'AddToMenu ...'. This instructs Fvwm to insert an entry to popup
>> > >> the menu "/Debian".
>> > >>
>> > >> Hope it helps,
>> > >>
>> > >> Vincent Chen
>> > >
>> > >
>> > >   From my keyboard:
>> > >
>> > >    Hello Vincent,
>> > >
>> > >       Thanks you for that. Doesn't do it for me. I want to get rid
>> > > of the taskbar and just have the Debian menu available through the
>> > >       left mouse click on the desktop instead.
>> > >
>> > > But it doesn't work for me at all. I can get rid of the taskbar,
>> > > but then I don't have a Debian menu I can call up every
>> > > application in the Debian menu in a terminal, but that's just too
>> > > tedious.
>> > >
>> > That's because you didn't follow the steps I laid out. Insert the
>> > snippets I provided in step 1 and 2 directly in your config file.
>> > Not inside the root menu or any other directives, but directly in
>> > your config file.
>> >
>> > > In my menus - Root Menu - there is already this in part:
>> > >
>> > > + "&Restart%mini.turn.xpm%"             Popup Restart
>> > > + "&Quit fvwm%mini.stop.xpm%"           FvwmForm
>> > > FvwmForm-QuitVerify Test (f /etc/X11/fvwm/menudefs.hook) +
>> > > "$[gt.&Update My Debian Menu]%menu/terminal.xpm%" PipeRead
>> > > 'update-menus &&  echo "Read $./menudefs.hook"'
>> > >
>> > Because this does exactly what it says: "Update My Debian Menu".
>> > _IF_ you already have a Debian menu, clicking this entry will
>> > update the Debian menu. This has nothing to do with actually
>> > providing the Debian menu entry in your menu.
>> >
>> > > But It doesn't show up so I might have to edit it, but don't know
>> > > how. So will have to keep playing about when I get time.
>> > >
>> > Insert the snippet in step 3 in your menu. That's what will actually
>> > insert the Debian menu entry in your own menu.
>> >
>> > I'll try and restate what is being done:
>> > - Steps 1 and 2 defines the structure of the Debian menu, and makes
>> > Fvwm aware of what the Debian menu looks like.
>> > - Step 3 is what makes Fvwm actually show the Debian menu as a menu
>> > entry.
>> >
>> > If you only do steps 1 and 2, Fvwm will know about the Debian menu,
>> > but does not display it anywhere. If you only do step 3, Fvwm will
>> > display a menu entry, but will have no idea what this "/Debian" menu
>> > is.
>> >
>> > Regards,
>> >
>> > Vincent
>>
>>
>>   From my keyboard:
>>
>>    Hello Vincent,
>>
>>       Thank you for your patience. I have done as you suggested. I
>>       assume that 1 is a function, so have placed in ~/.fvwm/function
>>       this:
>>
>> #----------------------------------------------------------------------------
>> # This is the Debian menu call as suggested by Vincent W Chen.
>> # Debian Menu
>> #----------------------------------------------------------------------------
>>
>> DestroyFunc SetDebianMenu
>> AddToFunc SetDebianMenu
>> + I Read /etc/X11/fvwm/menudefs.hook
>> Test (f /etc/X11/fvwm/menudefs.hook) SetDebianMenu
>>
>> #------------------------------------------------------------------------------
>>
>> That appears where functions like this are entered?
>>
>> Then in ~/.fvwm/menus have placed the other at the end, as seen here:
>>
>> #------------------------------------------------------------------------------
>> # Root Menu: This menu will fire up some very common utilities
>> #------------------------------------------------------------------------------
>>
>> DestroyMenu Utilities
>> AddToMenu   Utilities "Root Menu" Title
>> #PREF 3
>> + "&Terminal%mini.term.xpm%"          Exec exec xterm
>> + "&Editor%mini.kate.xpm%"            Exec exec kate
>> + "&File Manager%mini.filemgr.xpm%"   Exec exec xterm -g 80x35 -e
>> mc
>> + "&Top%mini.run.xpm%"                        Exec exec xterm
>> -geometry 80x40       -T Top -n Top -e top
>> + ""                                  Nop
>> + "&Shells%mini.term.xpm%"            Popup Shells
>> + "&Programs%mini.start.xpm%"         Popup Programs
>> + ""                                  Nop
>> + "Fvwm &Modules%mini.modules.xpm%"   Popup Module-Popup
>> + "&Settings%mini.desktop.xpm%"               Popup Settings
>> + "&Documents%mini.books.xpm%"                Popup Documents
>> + "&Screen Saver%mini.display.xpm%"   Popup Screen
>> + ""                                  Nop
>> + "&Restart%mini.turn.xpm%"           Popup Restart
>> + "&Quit fvwm%mini.stop.xpm%"         FvwmForm
>> FvwmForm-QuitVerify Test (f /etc/X11/fvwm/menudefs.hook) +
>> "$[gt.&Update My Debian Menu]%menu/terminal.xpm%" PipeRead
>> 'update-menus &&  echo "Read $./menudefs.hook"'
>> Test (f /etc/X11/fvwm/menudefs.hook) + "Debian Menu" Popup "/Debian"
>>
>> I have done those things from your previous emails.
>>
>> There is no joy. It doesn't show up, I still have to use "Start" from
>> the start menu which has the entry for Debian Menus.
>>
>> My .fvwm2rc has only read entries to read the various file, like
>> function, menus, modules etc., like this:
>>
>> #-----------------------------------------------------------------------------#
>> #
>> # Start the Show
>> #
>> #-----------------------------------------------------------------------------#
>>
>> Read decorations
>>
>> Read globalfeel
>>
>> Read menudefs.hook
>>
>> Read startup
>>
>> Read styles
>>
>> Read iconstyles
>>
>> Read functions
>>
>> Read bindings
>>
>> Read menus
>>
>> Read modules
>>
>> So obviously it either doesn't work on my system or I am putting the
>> function in the wrong function menu, or something else.
>>
>> There seems to be no place to put something else? All the rest of the
>> text is commented out?
>>
>> I have tried quite a few things, like put the taskbar entry:
>>
>> Test (f /etc/X11/fvwm/menudefs.hook) + "&Debian Menu%programs.xpm%"
>> Popup /Debian
>>
>> Into various locations, but no joy there either.
>>
>> I've added some applications to: ~/.fvwm/menudefs.hook but they don't
>> work unless I actually make the entries in /etc/X11/fvwm/menudefs.hook
>> I have no idea why it reads that entry before the one in the ~/.fvwm
>> home directory?
>>
If you open /etc/X11/fvwm/menudefs.hook and take a look at the first
few lines, it says that the file is auto-generated (which is the whole
point of the Debian menu system: you don't have to manually edit the
menu file every time a new application is installed/uninstalled). So
your custom edits might be replaced in the future.

If you want to add an entry to your menu, why not do it directly? You
don't have to add it to the Debian menu. Trying to add to the Debian
menu involves knowing the internal layout of the menu, which is
probably more work than it's worth. But if you insist:

If you have your own menudefs.hook in ~/.fvwm/, then you have to tell
Fvwm to actually read the file. Add an extra line to the function from
step 1:

DestroyFunc SetDebianMenu
AddToFunc SetDebianMenu
+ I Read /etc/X11/fvwm/menudefs.hook
+ I Read ~/.fvwm/menudefs.hook

>> All a bit tricky.
>>
>> Thanks for your time in this, but please don't waste any more time on
>> this. I feel guilty that you have already spent too much time already.
>>
Well, I happened to be the current maintainer for the Fvwm package, so
providing support is part of what I do. You could say I've already
"wasted" enough time on Fvwm as it is :-P

>> Thank you,
>> Charlie
>
> Hello Vincent,
>
> I left everything as described above.
>
> Deleted: Read bindings in my .fvwm2rc file and that now allows me to
> just click on the desktop and have access to the Debian Menu.
>
> I removed the taskbar by the relevant section in the functions file and
> this looks as I like just what, for me at least, is desired.
>
I take it that the Debian menu is now working for you? Great!

Regards,

Vincent


Reply to: