From 85287c07fff6682c6d3a935efc30aad623e69179 Mon Sep 17 00:00:00 2001 From: FrigoEU Date: Sat, 3 Aug 2019 10:46:18 +0200 Subject: Added emacs functions for getInfo --- src/elisp/urweb-mode.el | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'src/elisp/urweb-mode.el') diff --git a/src/elisp/urweb-mode.el b/src/elisp/urweb-mode.el index 69b0e23c..1eb9a1eb 100644 --- a/src/elisp/urweb-mode.el +++ b/src/elisp/urweb-mode.el @@ -925,6 +925,32 @@ Optional argument STYLE is currently ignored." (urweb-skip-siblings)) fullname))) +(defun urweb-get-proj-dir (bfn) + (locate-dominating-file + bfn + (lambda (dir) + (some (lambda (f) (s-suffix? ".urp" f)) + (if (f-dir? dir) + (directory-files dir) + (list '(dir))))))) + +(defun urweb-get-info () + (interactive) + (let* + ((row (line-number-at-pos)) + (col (evil-column)) + (bfn (or (buffer-file-name) + "/Users/Simon/ur-proj/testje/a.ur")) + (proj-dir (urweb-get-proj-dir bfn)) + (filename (file-relative-name bfn proj-dir)) + (loc (concat filename ":" (number-to-string row) ":" (number-to-string col))) + ) + (require 'popup) + (message (let + ((default-directory proj-dir)) + (shell-command-to-string (concat "urweb -getInfo " loc))))) + ) + (provide 'urweb-mode) ;;; urweb-mode.el ends here -- cgit v1.2.3 From 870ce334b835614bab3f114b2aa57617f699c6be Mon Sep 17 00:00:00 2001 From: FrigoEU Date: Sat, 3 Aug 2019 11:01:42 +0200 Subject: Cleaned up elisp and added dependencies --- src/elisp/urweb-mode.el | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'src/elisp/urweb-mode.el') diff --git a/src/elisp/urweb-mode.el b/src/elisp/urweb-mode.el index 1eb9a1eb..057761ac 100644 --- a/src/elisp/urweb-mode.el +++ b/src/elisp/urweb-mode.el @@ -939,13 +939,14 @@ Optional argument STYLE is currently ignored." (let* ((row (line-number-at-pos)) (col (evil-column)) - (bfn (or (buffer-file-name) - "/Users/Simon/ur-proj/testje/a.ur")) + (bfn (buffer-file-name)) (proj-dir (urweb-get-proj-dir bfn)) (filename (file-relative-name bfn proj-dir)) (loc (concat filename ":" (number-to-string row) ":" (number-to-string col))) ) - (require 'popup) + (require 's) + (require 'f) + (require 'simple) (message (let ((default-directory proj-dir)) (shell-command-to-string (concat "urweb -getInfo " loc))))) -- cgit v1.2.3