about summary refs log tree commit diff
path: root/emacs/symlink_custom_functions.sh
diff options
context:
space:
mode:
Diffstat (limited to 'emacs/symlink_custom_functions.sh')
-rwxr-xr-xemacs/symlink_custom_functions.sh17
1 files changed, 16 insertions, 1 deletions
diff --git a/emacs/symlink_custom_functions.sh b/emacs/symlink_custom_functions.sh
index 9effd9b1058b..292d4e3f7492 100755
--- a/emacs/symlink_custom_functions.sh
+++ b/emacs/symlink_custom_functions.sh
@@ -1,3 +1,18 @@
 #!/usr/bin/env zsh
 
-ln -s ~/pc_settings/emacs/*.el ~/.emacs.d/
+SCRIPT_DIR="$HOME/pc_settings/emacs"
+EMACS_FUNC_DIR="$HOME/.emacs.d"
+
+for source in $(find $SCRIPT_DIR -type f -name '*.el'); do
+  filename=$(basename $source)
+  target="${EMACS_FUNC_DIR}/${filename}"
+
+  if [ ! -L $target ]; then
+    echo -n "Creating symlink for ${filename} ... " && \
+    ln -s $source $EMACS_FUNC_DIR && \
+    echo "Done."
+  else
+    echo "${filename} is already properly symlinked."
+  fi
+
+done