在TextMate(或Sublime)中,如何获取相对于我的项目目录的路径?

时间:2017-01-20 21:40:56

标签: textmate textmate2

我通过$TM_FILEPATH获得了命令中的绝对路径。如何编写一个给出相对路径的命令,特别是我想复制此路径以启用共享并简化一些git / bash操作?

1 个答案:

答案 0 :(得分:0)

pbcopy会在剪贴板上放置一个字符串。从那里,你只需要做一些检测和更换。

从标准的bash Command TextMate样板开始:

#!/usr/bin/env bash
[[ -f "${TM_SUPPORT_PATH}/lib/bash_init.sh" ]] && . "${TM_SUPPORT_PATH}/lib/bash_init.sh"

然后检查$ TM_PROJECT_DIRECTORY是否存在:

if [ -z ${TM_PROJECT_DIRECTORY+x} ]; then

如果没有,请复制完整路径:

  echo -n "$TM_FILEPATH" | pbcopy
  echo "$TM_FILEPATH"'\n Absolute path copied to clipboard'

如果是,请替换文件路径中的项目路径,然后复制;

else
  TM_PROJECT_DIRECTORY="$TM_PROJECT_DIRECTORY/"
  echo -n "${TM_FILEPATH#$TM_PROJECT_DIRECTORY}" | pbcopy
  echo "${TM_FILEPATH#$TM_PROJECT_DIRECTORY}"'\n Project relative path copied to clipboard.'
fi;

请参阅此gist更新。

相关问题