diff --git a/layers/+lang/semweb/README.org b/layers/+lang/semweb/README.org new file mode 100644 index 000000000..8f58fc217 --- /dev/null +++ b/layers/+lang/semweb/README.org @@ -0,0 +1,28 @@ +#+TITLE: Semantic Web layer + +[[file:img/semweb.png]] + +* Table of Contents :TOC_4_gh:noexport: + - [[#description][Description]] + - [[#install][Install]] + - [[#key-bindings][Key bindings]] + +* Description +This layer adds support for RDF files in N3 and [[https://www.w3.org/TR/turtle/][Turtle syntax]] using [[https://bitbucket.org/nxg/ttl-mode][ttl-mode]] +and for [[https://www.w3.org/TR/sparql11-query/][SPARQL]] queries using [[https://github.com/ljos/sparql-mode][sparql-mode]]. + +SPARQL-mode supports the execution of queries. When first called, you will be +prompted for a SPARQL HTTP endpoint in the minibuffer, which defaults to +http://localhost:2020/. Once set, it will be used for all subsequent queries in +that buffer. Results will be displayed in another buffer in CSV format. + +* Install +To use this configuration layer, add it to your =~/.spacemacs=. You will need to +add =semweb= to the existing =dotspacemacs-configuration-layers= list in this +file. + +* Key bindings + +| Key Binding | Description | +|-------------+-----------------------| +| ~SPC m q~ | Execute SPARQL query | diff --git a/layers/+lang/semweb/img/semweb.png b/layers/+lang/semweb/img/semweb.png new file mode 100644 index 000000000..a1600bf22 Binary files /dev/null and b/layers/+lang/semweb/img/semweb.png differ diff --git a/layers/+lang/semweb/packages.el b/layers/+lang/semweb/packages.el new file mode 100644 index 000000000..e4e3881ab --- /dev/null +++ b/layers/+lang/semweb/packages.el @@ -0,0 +1,33 @@ +;;; packages.el --- semweb layer packages file for Spacemacs. +;; +;; Copyright (c) 2012-2016 Sylvain Benner & Contributors +;; +;; Author: Andreas Textor +;; URL: https://github.com/syl20bnr/spacemacs +;; +;; This file is not part of GNU Emacs. +;; +;;; License: GPLv3 + +(setq semweb-packages + '( + company + ttl-mode + sparql-mode + )) + +(defun semweb/init-ttl-mode () + (use-package ttl-mode + :mode ("\\.\\(ttl\\|n3\\)\\'" . ttl-mode))) + +(defun semweb/post-init-company () + (add-hook 'sparql-mode-hook 'company-mode)) + +(defun semweb/init-sparql-mode () + (use-package sparql-mode + :mode ("\\.\\(sparql\\|rq\\)\\'" . sparql-mode) + :init (spacemacs/set-leader-keys-for-major-mode 'sparql-mode "q" 'sparql-query-region))) + +(defun semweb/pre-init-org () + (spacemacs|use-package-add-hook org + :post-config (add-to-list 'org-babel-load-languages '(sparql . t))))