68

GitHub - alphapapa/yequake: Drop-down Emacs frames, like Yakuake

 5 years ago
source link: https://github.com/alphapapa/yequake
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

README.org

yequake

dont-tread-on-emacs-150.png

This package provides configurable, drop-down Emacs frames, similar to drop-down terminal windows programs, like Yakuake. Each frame can be customized to display certain buffers in a certain way, at the desired height, width, and opacity. The idea is to call the yequake-toggle command from outside Emacs, using emacsclient, by binding a shell command to a global keyboard shortcut in the desktop environment. Then, with a single keypress, the desired Emacs frame can be toggled on and off, showing the desired buffers.

There are many options to configure yequake-frames, but the customization UI makes it easy. Try M-x customize-option RET yequake-frames RET

Screenshots

Note that the animation of the Emacs frame in this example is provided by the window manager. Yequake simply displays the frame.

images/animation.gif

That animation was produced with this yequake-frames configuration:

(setq yequake-frames
      '(("Yequake & scratch" .
         ((name . "Yequake & scratch")
          (width . 0.75)
          (height . 0.5)
          (alpha . 0.95)
          (buffer-fns . ("~/src/emacs/yequake/yequake.el"
                         split-window-horizontally
                         "*scratch*"))
          (frame-parameters . ((undecorated . t)))))))

To activate it, call this command from a shell, e.g. by binding it to a global keyboard shortcut:

emacsclient -n -e '(yequake-toggle "Yequake & scratch")'

Contents

Installation

Quelpa

quelpa-use-package makes installation easy:

(use-package yequake
  :quelpa (yequake :fetcher github :repo "alphapapa/yequake"))

MELPA

Yequake isn’t on MELPA yet.

Manual

Put yequake.el in your load-path, and this in your init file:

(require 'yequake)

Usage

  • Start an Emacs daemon (e.g. with emacs --daemon, or M-x server-start RET).
  • Configure yequake-frames, e.g. with M-x customize-option RET yequake-frames RET.
  • Call yequake-toggle:
    • From inside Emacs, it can be called as an interactive command with M-x yequake-toggle RET, and will prompt for a Yequake frame.
    • From outside Emacs, call emacsclient and eval the command with the name of a Yequake frame, like:
emacsclient -n -e '(yequake-toggle "FRAME-NAME")'

You’ll probably want to bind that to a global keyboard shortcut in your desktop environment.

  • Call yequake-toggle again to hide the frame.

Tips

  • You can customize settings in the yequake group.

Changelog

0.1-pre

Initial pre-release.

Credits

  • This package was inspired by Benjamin Slade’s equake package, and by good ol’ Yakuake.
  • The animation was created with Silentcast and GIMP.

Development

Bug reports, feature requests, suggestions — oh my!

License

GPLv3


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK