Giter Site home page Giter Site logo

shell-pop-el's Introduction

shell-pop-el melpa badge melpa stable badge

shell-pop.el helps you to use shell easily on Emacs. Only one key action to work.

Installation

You can install shell-pop.el from MELPA and Marmalade with package.el.

 M-x package-install shell-pop

Manual Install

Make sure to place shell-pop.el somewhere in the load-path and add the following lines to your init file(~/.emacs.d/init.el, ~/.emacs etc).

(add-to-list 'load-path "somewhere")
(require 'shell-pop)

Customization

Use M-x customize-variable RET shell-pop-shell-type RET to customize the shell to use. Four pre-set options are: shell, terminal, ansi-term, and eshell. You can also set your custom shell if you use other configuration.

For terminal and ansi-term options, you can set the underlying shell by customizing shell-pop-term-shell. By default, shell-file-name is used, but you can also use /bin/tcsh, /bin/zsh or others.

Use M-x customize-group RET shell-pop RET to set further options such as hotkey, window height and position. You can get a full frame layout by setting full to shell-pop-window-position.

After saving the customized values, your .emacs file will be like as follows.

(custom-set-variables
 ;; custom-set-variables was added by Custom.
 ;; If you edit it by hand, you could mess it up, so be careful.
 ;; Your init file should contain only one such instance.
 ;; If there is more than one, they won't work right.
 '(shell-pop-default-directory "/Users/kyagi/git")
 '(shell-pop-shell-type (quote ("ansi-term" "*ansi-term*" (lambda nil (ansi-term shell-pop-term-shell)))))
 '(shell-pop-term-shell "/bin/bash")
 '(shell-pop-universal-key "C-t")
 '(shell-pop-window-size 30)
 '(shell-pop-full-span t)
 '(shell-pop-window-position "bottom")
 '(shell-pop-autocd-to-working-dir t)
 '(shell-pop-restore-window-configuration t)
 '(shell-pop-cleanup-buffer-at-process-exit t))

shell-pop-window-position(Default: "bottom")

Position of popup window. You can choose "bottom", "top", "right", "left" and "full". Use entire frame when this value is "full".

shell-pop-window-size(Default: 30)

Percentage for shell-buffer window size.

shell-pop-full-span

This option allows you to generate the shell window with the same width as the current Emacs frame. It is beneficial when you are always using multiple windows on Emacs. In detail, see kyagi#21 (comment)

shell-pop-in-hook

This hook runs before shell buffer pop-up.

shell-pop-in-after-hook

This hook runs after shell buffer pop-up.

shell-pop-out-hook

This hook runs before shell buffer pop-out.

shell-pop-process-exit-hook

This hook runs when the shell's process exits.

Usage

Just hit the hot key you customized for shell-pop-universal-key. For example, C-t for the above case.

You can have multiple shell buffers if you run shell-pop with universal-arguments. For example, C-u 2 C-t. You can increase the number(2, 3, 4, ...) as much as you want for different shell buffers.

Screenshot

screenshot

EmacsWiki (No longer updated)

http://www.emacswiki.org/emacs/ShellPop

shell-pop-el's People

Contributors

bmag avatar fuco1 avatar kyagi avatar lululau avatar myrjola avatar swsnr avatar syohex avatar tom-tan avatar y2q-actionman avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.