typescript and commonlisp have been added

This commit is contained in:
Sameer Rahmani 2019-09-17 20:55:41 +01:00
parent 0cf8a2f79e
commit 52448c4665
5 changed files with 77 additions and 2 deletions

View File

@ -6,6 +6,7 @@
(depends-on 'clojure-mode)
(depends-on 'cider)
(depends-on 'paredit)
(depends-on 'parinfer)
(depends-on 'flycheck)
(depends-on 'flycheck-clojure)
(depends-on 'clj-refactor)

View File

@ -1,16 +1,23 @@
;;; CommonLispExtension --- Enables common lisp development on FG42
;;; Commentary:
;; In order to user racket extension `racket' itself should
;; be available on the path provided by `exec-path'.
;;; Code:
(require 'fpkg)
(require 'fg42/extension)
(require 'extensions/common-lisp/init)
;; Dependencies ----------------------------------
(depends-on 'paredit)
(depends-on 'parinfer)
(depends-on 'flycheck)
(depends-on 'rainbow-delimiters)
(depends-on 'slime)
(depends-on 'slime-company)
(defun common-lisp-doc ()
"")
"TBD")
;; Extension -------------------------------------
(extension common-lisp
@ -19,3 +26,4 @@
:docs "lib/extensions/common-lisp/readme.org")
(provide 'extensions/common-lisp)
;;; common-lisp.el ends here

View File

@ -4,7 +4,7 @@
(defvar default-lisp-platform "sbcl"
"The default Lisp compiler/interpreter to be used with common-lisp extension.")
(defvar ql-slime-helper-path "~/.quicklisp/slime-helper.el"
(defvar ql-slime-helper-path "~/quicklisp/slime-helper.el"
"Default path for the slime-helper installed using quicklisp.")
@ -15,6 +15,7 @@
(setq inferior-lisp-program default-lisp-platform)
(setq slime-contribs '(slime-fancy))
(slime-setup '(slime-company))
(add-hook 'slime-load-hook
(lambda ()

View File

@ -0,0 +1,25 @@
;;; TypescriptExtension --- Enables Typescript development on FG42
;;; Commentary:
;; In order to user typescript extension `typescript' itself should
;; be available on the path provided by `exec-path'.
;;; Code:
(require 'fpkg)
(require 'fg42/extension)
(require 'extensions/typescript/init)
;; Dependencies ----------------------------------
(depends-on 'typescript-mode)
(depends-on 'tide)
(defun typescript-doc ()
"Something fun.")
;; Extension -------------------------------------
(extension typescript
:version "2.32"
:on-initialize extensions/typescript-initialize
:docs "lib/extensions/typescript/readme.org")
(provide 'extensions/typescript)
;;; typescript.el ends here

View File

@ -0,0 +1,40 @@
;;; TypescriptExtension --- Enables Typescript development on FG42
;;; Commentary:
;;; Code:
(defun setup-tide-mode ()
(interactive)
(require 'typescript-mode)
(require 'web-mode)
(setq tmp-directory (concat (getenv "HOME") "/.tmp"))
;; aligns annotation to the right hand side
(setq company-tooltip-align-annotations t)
;; formats the buffer before saving
(add-hook 'before-save-hook 'tide-format-before-save)
(add-hook 'typescript-mode-hook #'setup-tide-mode)
(tide-setup)
(flycheck-mode 1)
(setq flycheck-check-syntax-automatically '(save mode-enabled))
(eldoc-mode 1)
(tide-hl-identifier-mode 1)
(company-mode 1))
;;;###autoload
(defun extensions/typescript-initialize ()
"Initialize the typescript extension."
(ability typescript-editor ('flycheck)
(add-to-list 'auto-mode-alist '("\\.tsx\\'" . web-mode))
(add-hook 'web-mode-hook
(lambda ()
(when (string-equal "tsx" (file-name-extension buffer-file-name))
(setup-tide-mode)
(tide-hl-identifier-mode))))
;; enable typescript-tslint checker
(flycheck-add-mode 'typescript-tslint 'web-mode)))
(provide 'extensions/typescript/init)
;;; init.el ends here