;;; funcs.el --- Treemacs Layer functions File for Spacemacs ;; ;; Copyright (c) 2012-2021 Sylvain Benner & Contributors ;; ;; Author: Sylvain Benner ;; URL: https://github.com/syl20bnr/spacemacs ;; ;; This file is not part of GNU Emacs. ;; ;; 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 this program. If not, see . (defun spacemacs/treemacs-project-toggle () "Toggle and add the current project to treemacs if not already added." (interactive) (if (eq (treemacs-current-visibility) 'visible) (delete-window (treemacs-get-local-window)) (let ((path (projectile-ensure-project (projectile-project-root))) (name (projectile-project-name))) (unless (treemacs-current-workspace) (treemacs--find-workspace)) (treemacs-do-add-project-to-workspace path name) (treemacs-select-window)))) (defun spacemacs/treemacs-setup-width-lock () "Setup the width lock of treemacs buffer based on `treemacs-lock-width'." (interactive) (unless (eq (not treemacs--width-is-locked) (not treemacs-lock-width)) (treemacs-without-messages (treemacs-toggle-fixed-width))))