closure.el 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. ;; Copyright 2013 The Closure Library Authors. All Rights Reserved.
  2. ;;
  3. ;; Licensed under the Apache License, Version 2.0 (the "License");
  4. ;; you may not use this file except in compliance with the License.
  5. ;; You may obtain a copy of the License at
  6. ;;
  7. ;; http://www.apache.org/licenses/LICENSE-2.0
  8. ;;
  9. ;; Unless required `by applicable law or agreed to in writing, software
  10. ;; distributed under the License is distributed on an "AS-IS" BASIS,
  11. ;; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. ;; See the License for the specific language governing permissions and
  13. ;; limitations under the License.
  14. ;; Closure JS code editing functions for emacs.
  15. ;; Author: nnaze@google.com (Nathan Naze)
  16. ;; Remember the path of this file, as we will base our paths on it.
  17. (setq closure-el-path load-file-name)
  18. (defun closure-el-directory ()
  19. "Get the directory the closure.el file lives in."
  20. (file-name-directory closure-el-path))
  21. (defun closure-generate-jsdoc-path()
  22. "The path of the generate_jsdoc.py script."
  23. (concat (closure-el-directory) "generate_jsdoc.py"))
  24. (defun closure-insert-jsdoc ()
  25. "Insert JSDoc for the next function after the cursor."
  26. (interactive)
  27. (save-excursion ; Remembers cursor location
  28. (call-process-region
  29. (point) (point-max)
  30. (closure-generate-jsdoc-path)
  31. t t)))
  32. (provide 'closure)