~gentemplate
Moved around a few sections for a more flowing summary. Changed generate-template to only download a template if it hasn't already been copied
This commit is contained in:
@@ -8,41 +8,46 @@ Make a list of possible templates for my system to use
|
|||||||
#+BEGIN_SRC elisp
|
#+BEGIN_SRC elisp
|
||||||
(setq oreodave/templates/template-list (list "CTemplate" "CPPTemplate" "PythonTemplate" "NodeTemplate" "ArduinoTemplate"))
|
(setq oreodave/templates/template-list (list "CTemplate" "CPPTemplate" "PythonTemplate" "NodeTemplate" "ArduinoTemplate"))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
* Download template for given template name and directory
|
|
||||||
For a given template name and destination, map the template name to
|
|
||||||
a URL and clone to the destination using magit-clone-regular.
|
|
||||||
#+BEGIN_SRC elisp
|
|
||||||
(after! magit-clone
|
|
||||||
(defun oreodave/templates/download-template (template-name dest)
|
|
||||||
(magit-clone-regular (concat "https://github.com/oreodave/" template-name) dest nil)))
|
|
||||||
|
|
||||||
#+END_SRC
|
|
||||||
* Copy and move template for a template name and destination directory
|
|
||||||
#+BEGIN_SRC elisp
|
|
||||||
(defun oreodave/templates/copy-template (template-name dest)
|
|
||||||
(copy-directory (expand-file-name (concat "~/Projects/Templates/" template-name)) dest))
|
|
||||||
#+END_SRC
|
|
||||||
* Find if online or not
|
* Find if online or not
|
||||||
Function which checks that the network connections are = 1. If only one network
|
Function which checks that the network connections are = 1. If only one network
|
||||||
connection, must be offline
|
connection is present, the system must be offline
|
||||||
#+BEGIN_SRC elisp
|
#+BEGIN_SRC elisp
|
||||||
(defun oreodave/templates/offline ()
|
(defun oreodave/templates/offline ()
|
||||||
(eq (list-length (network-interface-list)) 1))
|
(eq (list-length (network-interface-list)) 1))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
* Download template
|
||||||
|
For a given template name and destination, map the template name to a URL and
|
||||||
|
clone to the destination using magit-clone-regular.
|
||||||
|
#+BEGIN_SRC elisp
|
||||||
|
(after! magit-clone
|
||||||
|
(defun oreodave/templates/download-template (template-name dest)
|
||||||
|
"Download a given template via its `template-name' to the `dest' folder"
|
||||||
|
(magit-clone-regular (concat "https://github.com/oreodave/" template-name) dest nil)))
|
||||||
|
|
||||||
|
#+END_SRC
|
||||||
|
* Copy template
|
||||||
|
For a given template name, copy the template from the local template directory
|
||||||
|
to a destination.
|
||||||
|
#+BEGIN_SRC elisp
|
||||||
|
(defun oreodave/templates/copy-template (template-name dest)
|
||||||
|
"Copy a template project via it's `template-name' to a folder called `dest'"
|
||||||
|
(copy-directory (expand-file-name (concat "~/Code/Templates/" template-name)) dest))
|
||||||
|
#+END_SRC
|
||||||
* Generate-template
|
* Generate-template
|
||||||
After getting a downloader function, write a new function that asks for the
|
After getting a download function, write a new function that asks for the
|
||||||
template and destination of clone for cloning to begin.
|
template and destination of clone for cloning to begin.
|
||||||
#+BEGIN_SRC elisp
|
#+BEGIN_SRC elisp
|
||||||
(after! (ivy magit-clone)
|
(after! (ivy magit-clone)
|
||||||
(defun oreodave/templates/generate-template ()
|
(defun oreodave/templates/generate-template ()
|
||||||
(interactive)
|
(interactive)
|
||||||
(ivy-read "Enter template: "
|
(ivy-read
|
||||||
oreodave/templates/template-list
|
"Enter template: "
|
||||||
:action
|
oreodave/templates/template-list
|
||||||
(lambda (template-name)
|
:action
|
||||||
(let ((dir (read-directory-name "Enter directory to download to: "))
|
(lambda (template-name)
|
||||||
(offline (oreodave/templates/offline)))
|
(let ((dir (read-directory-name "Enter directory to download to: "))
|
||||||
(if offline
|
(offline (oreodave/templates/offline)))
|
||||||
(oreodave/templates/copy-template template-name dir))
|
(if offline
|
||||||
(oreodave/templates/download-template template-name dir))))))
|
(oreodave/templates/copy-template template-name dir)
|
||||||
|
(oreodave/templates/download-template template-name dir)))))))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|||||||
10
zshenv
10
zshenv
@@ -39,11 +39,11 @@ gentemplate() {
|
|||||||
gentemplateoff () {
|
gentemplateoff () {
|
||||||
for var in ${@:2}; do
|
for var in ${@:2}; do
|
||||||
case $1 in
|
case $1 in
|
||||||
'c') cp -r ~/Projects/Templates/CTemplate $var;;
|
'c') cp -r ~/Code/Templates/CTemplate $var;;
|
||||||
'cpp') cp -r ~/Projects/Templates/CPPTemplate $var;;
|
'cpp') cp -r ~/Code/Templates/CPPTemplate $var;;
|
||||||
'python') cp -r ~/Projects/Templates/PythonTemplate $var;;
|
'python') cp -r ~/Code/Templates/PythonTemplate $var;;
|
||||||
'node') cp -r ~/Projects/Templates/NodeTemplate $var;;
|
'node') cp -r ~/Code/Templates/NodeTemplate $var;;
|
||||||
'ard') cp -r ~/Projects/Templates/ArduinoTemplate $var;;
|
'ard') cp -r ~/Code/Templates/ArduinoTemplate $var;;
|
||||||
*) return;;
|
*) return;;
|
||||||
esac
|
esac
|
||||||
rm -rf $var/.git;
|
rm -rf $var/.git;
|
||||||
|
|||||||
Reference in New Issue
Block a user