Skip to content

Latest commit

 

History

History
39 lines (29 loc) · 2.79 KB

README.md

File metadata and controls

39 lines (29 loc) · 2.79 KB

Emacs plugin

NOTE: This plugin is forked from ohmyzsh, made plugin-manager agnostic and added few more features.

This plugin utilizes the Emacs daemon capability, allowing the user to quickly open frames, whether they are opened in a terminal via a ssh connection, or X frames opened on the same host. The plugin also provides some aliases for such operations.

  • You don't have the cost of starting Emacs all the time anymore
  • Opening a file is as fast as Emacs does not have anything else to do.
  • You can share opened buffered across opened frames.
  • Configuration changes made at runtime are applied to all frames.

NOTE: requires Emacs 24 and newer.

To Install:

# Zplugin
zplugin load flinner/zsh-emacs

# Antigen (not tested)
antigen bundle flinner/zsh-emacs

Aliases

The plugin uses a custom launcher (which we'll call here $EMACS_LAUNCHER) that is just a wrapper around emacsclient.

Alias Command Description
emacs $EMACS_LAUNCHER --no-wait Opens a temporary emacsclient frame
e emacs Same as emacs alias
te $EMACS_LAUNCHER -nw Open terminal emacsclient
eeval $EMACS_LAUNCHER --eval Same as M-x eval but from outside Emacs
magit $EMACS_LAUNCHER --eval (magit) Open emacsclient frame with magit, accepts directory argument
tmagit $EMACS_LAUNCHER -nw --eval (magit) same as magit but opens in terminal
mframe emacsclient --alternate-editor "" --create-frame --eval (magit) --no-wait Create new X frame with magit, accepts directory argument
eframe emacsclient --alternate-editor "" --create-frame Create new X frame
efile - Print the path to the file open in the current buffer
ecd - Print the directory of the file open in the the current buffer