Selaa lähdekoodia

Merge remote-tracking branch 'dakrone/add-dir-locals.el'

Lee Hinman 10 vuotta sitten
vanhempi
commit
7f76d91e3e
2 muutettua tiedostoa jossa 117 lisäystä ja 0 poistoa
  1. 85 0
      .dir-locals.el
  2. 32 0
      .projectile

+ 85 - 0
.dir-locals.el

@@ -0,0 +1,85 @@
+((java-mode
+  .
+  ((eval
+    .
+    (progn
+      (defun my/point-in-defun-declaration-p ()
+        (let ((bod (save-excursion (c-beginning-of-defun)
+                                   (point))))
+          (<= bod
+              (point)
+              (save-excursion (goto-char bod)
+                              (re-search-forward "{")
+                              (point)))))
+
+      (defun my/is-string-concatenation-p ()
+        "Returns true if the previous line is a string concatenation"
+        (save-excursion
+          (let ((start (point)))
+            (forward-line -1)
+            (if (re-search-forward " \\\+$" start t) t nil))))
+
+      (defun my/inside-java-lambda-p ()
+        "Returns true if point is the first statement inside of a lambda"
+        (save-excursion
+          (c-beginning-of-statement-1)
+          (let ((start (point)))
+            (forward-line -1)
+            (if (search-forward " -> {" start t) t nil))))
+
+      (defun my/trailing-paren-p ()
+        "Returns true if point is a training paren and semicolon"
+        (save-excursion
+          (end-of-line)
+          (let ((endpoint (point)))
+            (beginning-of-line)
+            (if (re-search-forward "[ ]*);$" endpoint t) t nil))))
+
+      (defun my/prev-line-call-with-no-args-p ()
+        "Return true if the previous line is a function call with no arguments"
+        (save-excursion
+          (let ((start (point)))
+            (forward-line -1)
+            (if (re-search-forward ".($" start t) t nil))))
+
+      (defun my/arglist-cont-nonempty-indentation (arg)
+        (if (my/inside-java-lambda-p)
+            '+
+          (if (my/is-string-concatenation-p)
+              16
+            (unless (my/point-in-defun-declaration-p) '++))))
+
+      (defun my/statement-block-intro (arg)
+        (if (and (c-at-statement-start-p) (my/inside-java-lambda-p)) 0 '+))
+
+      (defun my/block-close (arg)
+        (if (my/inside-java-lambda-p) '- 0))
+
+      (defun my/arglist-close (arg) (if (my/trailing-paren-p) 0 '--))
+
+      (defun my/arglist-intro (arg)
+        (if (my/prev-line-call-with-no-args-p) '++ 0))
+
+      (c-set-offset 'inline-open           0)
+      (c-set-offset 'topmost-intro-cont    '+)
+      (c-set-offset 'statement-block-intro 'my/statement-block-intro)
+      (c-set-offset 'block-close           'my/block-close)
+      (c-set-offset 'knr-argdecl-intro     '+)
+      (c-set-offset 'substatement-open     '+)
+      (c-set-offset 'substatement-label    '+)
+      (c-set-offset 'case-label            '+)
+      (c-set-offset 'label                 '+)
+      (c-set-offset 'statement-case-open   '+)
+      (c-set-offset 'statement-cont        '++)
+      (c-set-offset 'arglist-intro         'my/arglist-intro)
+      (c-set-offset 'arglist-cont-nonempty '(my/arglist-cont-nonempty-indentation c-lineup-arglist))
+      (c-set-offset 'arglist-close         'my/arglist-close)
+      (c-set-offset 'inexpr-class          0)
+      (c-set-offset 'access-label          0)
+      (c-set-offset 'inher-intro           '++)
+      (c-set-offset 'inher-cont            '++)
+      (c-set-offset 'brace-list-intro      '+)
+      (c-set-offset 'func-decl-cont        '++)
+      ))
+   (c-basic-offset . 4)
+   (c-comment-only-line-offset . (0 . 0)))))

+ 32 - 0
.projectile

@@ -0,0 +1,32 @@
+-/target
+-/core/target
+-/qa/target
+-/rest-api-spec/target
+-/test-framework/target
+-/plugins/target
+-/plugins/analysis-icu/target
+-/plugins/analysis-kuromoji/target
+-/plugins/analysis-phonetic/target
+-/plugins/analysis-smartcn/target
+-/plugins/analysis-stempel/target
+-/plugins/cloud-aws/target
+-/plugins/cloud-azure/target
+-/plugins/cloud-gce/target
+-/plugins/delete-by-query/target
+-/plugins/discovery-azure/target
+-/plugins/discovery-ec2/target
+-/plugins/discovery-gce/target
+-/plugins/discovery-multicast/target
+-/plugins/jvm-example/target
+-/plugins/lang-expression/target
+-/plugins/lang-groovy/target
+-/plugins/lang-javascript/target
+-/plugins/lang-python/target
+-/plugins/mapper-murmur3/target
+-/plugins/mapper-size/target
+-/plugins/repository-azure/target
+-/plugins/repository-s3/target
+-/plugins/site-example/target
+-/plugins/store-smb/target
+-/plugins/target
+-*.class