diff --git a/.gitignore b/.gitignore index 23601f6..4000337 100644 --- a/.gitignore +++ b/.gitignore @@ -43,7 +43,7 @@ website/*~ #*# emacs.d/ -build/ +./build/ docs/site/orgs/cubes/ **/*/sitemap.inc diff --git a/build.el b/build.el index af6dd5b..2cef97e 100755 --- a/build.el +++ b/build.el @@ -1,4 +1,4 @@ -:;exec `echo $EMACS` --no-site-file --no-site-lisp --batch -L ./ -l "$0" -f main "$(cd "$(dirname "$0")/." >/dev/null 2>&1 ; pwd -P)" "$@" +:;exec `echo $EMACS_PATH` --no-site-file --no-site-lisp --batch -L ./ -l "$0" -f main "$(cd "$(dirname "$0")/." >/dev/null 2>&1 ; pwd -P)" "$@" ;;; Buid --- The builder for FG42 -*- lexical-binding: t; -*- ;; ;; Copyright (c) 2010-2021 Sameer Rahmani & Contributors @@ -34,7 +34,6 @@ (setq user-emacs-directory (concat (getenv "HOME") "/.fg42/emacs.d")) (add-to-list 'load-path fg42/CORE_DIR) - (require 'fg42/build/core) (defvar FG42-VERSION "3.0.0-snapshot" diff --git a/config/fg42.user.el b/config/fg42.user.el index 9c8deff..0ed4d39 100644 --- a/config/fg42.user.el +++ b/config/fg42.user.el @@ -62,6 +62,7 @@ (require 'cubes/terminal) (require 'cubes/java) (require 'cubes/python) +(require 'cubes/cpp) (require 'cubes/snippets) (require 'cubes/git) diff --git a/core/fg42/build/core.el b/core/fg42/build/core.el new file mode 100644 index 0000000..58473be --- /dev/null +++ b/core/fg42/build/core.el @@ -0,0 +1,46 @@ +;;; Buid --- The builder for FG42 -*- lexical-binding: t; -*- +;; +;; Copyright (c) 2010-2021 Sameer Rahmani & Contributors +;; +;; Author: Sameer Rahmani +;; URL: https://gitlab.com/FG42/FG42 +;; Version: 3.0.0 +;; +;; This program is free software; you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. +;; +;; This program is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. +;; +;; You should have received a copy of the GNU General Public License +;; along with thnis program. If not, see . +;; +;;; Commentary: +;; Cubes are the building blocks of any `FG42' editor. Each `cube' is a +;; unit which defines different abilities in a deterministic and idempotent +;; way. Cubes are composable and a composition of cubes creates an editor. +;; +;;; Code: + +(defvar project-root nil + "Root directory of the website source code.") + +(defun from-root (path) + "Return the full path of the given PATH in the project root." + (concat project-root path)) + +(defun read-args (args) + "Parse the give ARGS list and return a list in the following +format: +(EVAL_STRING (COMMAND ARGES)) +" + ;; TODO: Because of some issues in the past we lost the original + ;; function and now we need to parse the ARGS for :e and :d keys + `(() ,args)) + +(provide 'fg42/build/core) +;;; core.el ends here