help-gnu-emacs
[Top][All Lists]
Advanced

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

Emacsw32 website suggestion [Re: Behavior of M-x and A-x]


From: Xah
Subject: Emacsw32 website suggestion [Re: Behavior of M-x and A-x]
Date: Tue, 12 Aug 2008 06:06:54 -0700 (PDT)
User-agent: G2/1.0

On Aug 12, 5:13 am, "Lennart Borgman (gmail)"
<address@hidden> wrote:
> Xahwrote:
> >Xahwrote:
> >> ; setting the PC keyboard's various keys to Super or Hyper
> >> (setq w32-pass-lwindow-to-system nil
> >>       w32-pass-rwindow-to-system nil
> >>       w32-pass-apps-to-system nil
> >>       w32-lwindow-modifier 'super ;; Left Windows key
> >>       w32-rwindow-modifier 'super ;; Right Windows key
> >>       w32-apps-modifier 'hyper) ;; Menu key
>
> > Lennart Borgman wrote:
>
> >> Please note that using lwindow/rwindow like this does not work for all
> >> key sequences unless you are using the patched Emacs+EmacsW32.
>
> > What is the proper way to set it on Windows?
>
> The only thing that the patched version really offers in this regards is
> the possibility to actually avoid sending lwindow etc to the system:
>
> LRESULT
> CALLBACK
> LowLevelKeyboardProc(INT nCode, WPARAM wParam, LPARAM lParam)
> {
> ...
>              case VK_LWIN:
>                {
>                  bHandle = NILP(Vw32_pass_lwindow_to_system);
>                  break;
>                }
>              case VK_RWIN:
>                {
>                  bHandle = NILP(Vw32_pass_rwindow_to_system);
>                  break;
>                }
>              case VK_CAPITAL:
>                {
>                  bHandle = NILP(Vw32_enable_caps_lock);
>                  break;
>                }
>              case VK_NUMLOCK:
>                {
>                  bHandle = NILP(Vw32_enable_num_lock);
>                  break;
>                }
>              case VK_MENU:
>              case VK_LMENU:
>              case VK_RMENU:
>                {
>                  bHandle = NILP(Vw32_pass_alt_to_system);
>                  break;
>                }
>        if (bHandle) {
>          // Just to be sure check we are in the right thread
>          if (GetCurrentThreadId() == dwWindowsThreadId) {
>            // Do we have keyboard focus?
>            HWND hwnd = GetFocus();
>            if (0 != hwnd) {
>              SendMessage (hwnd, msg, wParamMsg, lParamMsg);
>              return TRUE;
>            }
>          }
>        }
>      }
>    HHOOK hhook; return CallNextHookEx(hhook, nCode, wParam, lParam);
>
> }
>
> And then it also offers easy way to set things up up, see w32-meta.el
> that comes with the patched Emacs+EmacsW32.

Thanks. Quite complicated i don't understand. That seems c source.

-------------

there's some suggestion about your emacsw32 site.

• drop the name to just EmacsW32. As opposed to Emacs+EmacsW32.

for those who needs to know the distinction, they can trivially find
out by clicking a link.

• redo the entry page so it's simply a site for EmacsW32, as a pre-
compiled emacs distro for MS Windows. With this message simple. Then
links to separate pages about features, source code, explanation of
patch, on reason to use, change log, etc.

The point is that, when user goes to your site,
http://ourcomments.org/Emacs/EmacsW32.html
she can immediately get the idea that this is a pre-compiled emacs
distro for Windows with ease to use in mind. Then, she can click on
the big download button to try it out. If she's a tech geeker, she can
easily check whether there's patch she can dowload, or other info.

Aquamac or Carbon Emacs' website are good examples of this approach.

• Put the author name in the front page. Unless for some personal
reason, you intentionally don't want people to know who made it, it
should have author name.

  Xah
∑ http://xahlee.org/

reply via email to

[Prev in Thread] Current Thread [Next in Thread]