~ruther/emacs.d

171ea46e65a8e03d88b37a0989e3c7e524ddae0c — Rutherther 11 days ago ccf2bb5
feat: csharp functions for yasnippets
1 files changed, 21 insertions(+), 2 deletions(-)

M init.el
M init.el => init.el +21 -2
@@ 1234,10 1234,29 @@
(my-use-package csharp-mode
  :ensure nil
  :after eglot
  :mode (("\\.cs\\'" . csharp-ts-mode))
  :mode (("\\.cs\\'" . csharp-mode))
  :config
  (my/indent-variable-mode-alist-add csharp-mode c-basic-offset)
  (my/indent-variable-mode-alist-add csharp-ts-mode csharp-ts-mode-indent-offset))
  (my/indent-variable-mode-alist-add csharp-ts-mode csharp-ts-mode-indent-offset)

  (defun find-project-root ()
    (interactive)
    (if (ignore-errors (eproject-root))
        (eproject-root)
      (or (find-git-repo (buffer-file-name)) (file-name-directory (buffer-file-name)))))

  (defun find-git-repo (dir)
    (if (string= "/" dir)
        nil
      (if (file-exists-p (expand-file-name "../.git/" dir))
          dir
        (find-git-repo (expand-file-name "../" dir)))))

  (defun file-path-to-namespace ()
    (interactive)
    (let ((root (find-project-root))
          (base (file-name-nondirectory buffer-file-name)))
      (substring (replace-regexp-in-string "/" "\." (substring buffer-file-name (length root) (* -1 (length base))) t t) 0 -1))))

;; Sh, Bash


Do not follow this link