GithubHelp home page GithubHelp logo

viniciusfeitosa / emacs-bootstrap Goto Github PK

View Code? Open in Web Editor NEW

This project forked from editor-bootstrap/emacs-bootstrap

0.0 1.0 0.0 1.74 MB

Your on-the-fly Emacs development environment.

Home Page: http://emacs-bootstrap.com

License: MIT License

Python 4.37% HTML 7.66% Emacs Lisp 25.95% CSS 54.74% JavaScript 7.09% Makefile 0.18%

emacs-bootstrap's Introduction

Emacs Bootstrap

http://emacs-bootstrap.com

Your on-the-fly Emacs development environment.

Emacs-bootstrap uses opinionated code templates which will be used to generate your emacs configurations. It enables you to select the programming languages you work with the most and will generate enough Emacs configs to get you started crunching code.

Features

  1. Multiple programming languages available
  2. Theme selection
  3. Completion frontend installation

Installation

Head over to Emacs-bootstrap and generate your configs. Once you’ve download the configs, unzip the file and:

cp -R [CONFIG_DOWNLOAD_DIR] ~/.emacs.d

Then launch emacs and wait for a bit while Emacs packages are installed to prepare your environment.

Shortcuts

Here are some basic shortcuts that Emacs provides along with configured shortcuts by Emacs-bootstrap:

Note that C- means pressing your Control key + some other key. For example, C-x means Control + X. Same goes for M which is your Meta key. That can be the Escape key on your keyboard or the ALT key.

ShortcutFunctionProvider
C-x C-fOpen fileEmacs
C-x C-sSave fileEmacs
C-x C-bSwitch bufferEmacs
C-x C-kKill bufferEmacs
C-sSearch in fileEmacs
M-%Find and ReplaceEmacs
C-x 1Only show 1 bufferEmacs
C-x 2Split horizontallyEmacs
C-x 3Split VerticallyEmacs
C-x 0Remove current splitEmacs

One of the packages installed is called ‘which-key’ which displays the list of available keys after a certain prefix. Try it out, press C-x and which-key will display available shortcuts that you can use to invoke a certain functionality.

ShortcutFunctionProvider / Package
C-C SpaceAce-jump-mode (Code navigation)Bootstrap / Ace-Jump
C-=Expand Region (Smart code selection)Bootstrap / Expand-region
M-x or (C-x C-m)Ivy-counsel / Helm (Completion frontend)Bootstrap / Ivy / Helm
C-x c kEmacs kill ring (Emacs clipboard)Bootstrap / Ivy / Helm
C-x vOpen file in projectBootstrap / Projectile
C-x c pSearch in projectBootstrap / Projectile-ag
C-x sAdvanced search in fileBootstrap / Ivy-swiper / Helm-swoop
C-x UPGo to buffer above (In split)Bootstrap / Windmove
C-x DownGo to buffer below (In split)Bootstrap / Windmove
C-x LeftGo to buffer on the left (In split)Bootstrap / Windmove
C-x RightGo to buffer on the right (In split)Bootstrap / Windmove

Programming language specific shortcuts:

ShortcutFunctionProgramming LanguageProvider / Package
C-x p ePyenv activate in current projectPythonpython-mode, elpy, pyenv
M-.Go to definitionPythonpython-mode, elpy, pyenv
M-,Navigate back to previous positionPythonpython-mode, elpy, pyenv
C-c C-rRemove unused importsGolanggo-mode
C-c C-gGo to importsGolanggo-mode
M-.Go to defintionGolanggo-mode
C-c j rJavaScript refactor modeJavaScriptjs2-mode, js2-refactor
C-c C-bSend the buffer to the inferior JavaScript processJavaScriptjs2-mode, js-comint
C-c C-lLoad a file in the javaScript interpreterJavaScriptjs2-mode, js-comint
C-x C-eSend previous sexp to inferior JavaScript processJavaScriptjs2-mode, js-comint
C-M-xSend previous sexp to inferior JavaScript process and goJavaScriptjs2-mode, js-comint
C-jemmet-mode expand snippetHTMLweb-mode, emmet-mode
C-c [emmet-mode previous edit pointHTMLweb-mode, emmet-mode
C-c ]emmet-mode next edit pointHTMLweb-mode, emmet-mode
C-c o bOpen the current file in the browserHTMLweb-mode

Awesome Emacs Learning Resources

Reading content

Video Content:

Other

Contribution

I would love to extend Emacs-bootstrap to support other programming languages as well. If you think you’ve got your configuration of your favorite programming language perfectly, please don’t hesitate to submit a PR.

Please check the list of issues as i have created am issue for the missing language support Emacs-Bootstrap lacks.

Credit

Special thanks for Thiago Avelino for allowing the usage of Vim-Bootstrap’s template. And Faisal Al-Da’aja for customizing the look and feel.

Dedication

This website is dedicated to my lovely Wife who became curious about Emacs after i bragged so much about it.

License

MIT License

emacs-bootstrap's People

Contributors

rakanalh avatar csraghunandan avatar tiv0w avatar avelino avatar hettomei avatar mrminning avatar iammrinal0 avatar nickfun avatar pierre-lecocq avatar

Watchers

James Cloos 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.