This repository has been archived on 2024-10-22. You can view files and clone it, but cannot push or open issues or pull requests.
spacemacs/layers/!fun/games/extensions.el
syl20bnr 6b33031dc5 core: dotspacemacs-distribution, spacemacs-core layer and rename contrib
- Rename contrib directory to layers
- Add new variable dotspacemacs-distribution
- Move spacemacs layer to layers/!distribution
- New layer spacemacs-core in layers/!distribution
- User can now set dotspacemacs-distribution to spacemacs or
  spacemacs-core (default spacemacs)

spacemacs-core is very lightweight layer sufficient to build upon
spacemacs.
2015-09-07 23:44:43 -04:00

50 lines
1.5 KiB
EmacsLisp

;;; extensions.el --- Games Layer Extensions File for Spacemacs
;;
;; Copyright (c) 2012-2014 Sylvain Benner
;; Copyright (c) 2014-2015 Sylvain Benner & Contributors
;;
;; Author: Sylvain Benner <sylvain.benner@gmail.com>
;; URL: https://github.com/syl20bnr/spacemacs
;;
;; This file is not part of GNU Emacs.
;;
;;; License: GPLv3
(setq games-post-extensions
'(
emacs-builtin-tetris
helm-games
))
(defun games/init-emacs-builtin-tetris ()
(use-package tetris
:defer t
:init
(progn
(push '("Tetris" . (tetris :quit spacemacs/tetris-quit-game
:reset tetris-start-game)) helm-games-list)
(setq tetris-score-file (concat spacemacs-games-cache-directory
"tetris-scores.txt"))
(defun spacemacs/tetris-quit-game ()
"Correctly quit tetris by killng the game buffer."
(interactive)
(tetris-pause-game)
(if (yes-or-no-p "Do you really want to quit ? ")
(progn
(tetris-end-game)
(kill-buffer "*Tetris*"))
(tetris-pause-game))))
:config
(progn
(evilify tetris-mode tetris-mode-map
"h" 'tetris-move-left
"i" 'tetris-rotate-prev
"j" 'tetris-move-bottom
"k" 'tetris-rotate-next
"l" 'tetris-move-right
"q" 'spacemacs/tetris-quit-game))))
(defun games/init-helm-games ()
(use-package helm-games
:commands helm-games
:init (evil-leader/set-key "aG" 'helm-games)))