doomemacs/modules/defuns/defuns-java.el

36 lines
1.1 KiB
EmacsLisp
Raw Normal View History

2016-05-21 10:37:30 +08:00
;;; defuns-java.el
2015-06-15 15:06:10 +08:00
;; yasnippet defuns
;;;###autoload
2016-05-21 10:37:30 +08:00
(defun doom/java-android-mode-is-layout-file ()
2015-06-15 15:06:10 +08:00
(and android-mode
(eq major-mode 'nxml-mode)
(string-equal (file-name-base (directory-file-name default-directory)) "layout")))
;;;###autoload
2016-05-21 10:37:30 +08:00
(defun doom/java-android-mode-in-tags (&rest tags)
2015-06-15 15:06:10 +08:00
(-contains? tags (android-mode-tag-name)))
;;;###autoload
2016-05-21 10:37:30 +08:00
(defun doom/java-android-mode-tag-name ()
2015-06-15 15:06:10 +08:00
(save-excursion
(let (beg end)
(nxml-backward-up-element)
(evil-forward-word-begin)
(setq beg (point))
(evil-forward-WORD-end)
(setq end (1+ (point)))
(buffer-substring-no-properties beg end))))
;;;###autoload
2016-05-21 10:37:30 +08:00
(defun doom|android-mode-enable-maybe ()
(let ((root (doom/project-root)))
(when (or (doom/project-has-files "local.properties" root)
(doom/project-has-files "AndroidManifest.xml" root)
(doom/project-has-files "src/main/AndroidManifest.xml" root))
2015-06-15 15:06:10 +08:00
(android-mode +1)
2016-05-21 10:37:30 +08:00
(doom/set-build-command "./gradlew %s" "build.gradle"))))
2015-06-15 15:06:10 +08:00
(provide 'defuns-java)
;;; defuns-java.el ends here