Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将regex放入.gitconfig文件,使git diff在标点处拆分单词 当前设置_Regex_Git_Diff_Git Diff_Git Config - Fatal编程技术网

将regex放入.gitconfig文件,使git diff在标点处拆分单词 当前设置

将regex放入.gitconfig文件,使git diff在标点处拆分单词 当前设置,regex,git,diff,git-diff,git-config,Regex,Git,Diff,Git Diff,Git Config,My.gitconfig当前包含此别名: [alias] wdiff = diff --color-words --histogram 让我编写git-wdiff并逐字获取,而不是逐行diff输出。我用它来用乳胶写学术散文 目标 此方法仅在空白处分割单词。我想在标点符号处进行分割,例如,句子的最后一个单词。更改为句子的最后一个单词。\footnote{New footnote.}生成的diff输出如下: 句子的最后一个字。\footnote{新脚注。} 而不是电流输出: 句子的最后一个

My
.gitconfig
当前包含此别名:

[alias]
    wdiff = diff --color-words --histogram
让我编写
git-wdiff
并逐字获取,而不是逐行
diff
输出。我用它来用乳胶写学术散文

目标 此方法仅在空白处分割单词。我想在标点符号处进行分割,例如,
句子的最后一个单词。
更改为
句子的最后一个单词。\footnote{New footnote.}
生成的
diff
输出如下:

句子的最后一个字。\footnote{新脚注。}

而不是电流输出:

句子的最后一个字。句子。\footnote{newfootnote.}

(其中斜体表示删除,粗体表示添加)

尝试解决方案 我发现这是从一个正则表达式开始的,它完全符合我在命令行中的要求,但我还没有弄清楚如何将它放入我的
.gitconfig
文件中,而不在file/Users/alex/.gitconfig中生成错误消息
fatal:bad config第12行。这是我在
.gitconfig
文件中输入的内容:

[alias]
    wdiff = diff --color-words='[^][<>()\{},.;:?/|\\=+*&^%$#@!~`"'\''[:space:]]+|[][<>(){},.;:?/|\\=+*&^%$#@!~`"'\'']' --histogram
[别名]
wdiff=diff--color words='[^][()\{},.;:?/\=+*&^%$\\@!~'''\'[:space:]+\[[(){},.;:?/\\=+*&^%$\\.~''''''''.--直方图
问题似乎是分号

处理
.gitconfig
中类似问题的建议在整个别名周围加上双引号。但在我的例子中,当我这样做时,我会得到相同的错误消息。我认为这是因为正则表达式还包含双引号

问题
如何将正则表达式放入我的
.gitconfig
文件中,以便正确解析它?

在找到之前,我也感到困惑。您感兴趣的部分是:

定义值的行可以通过以
\
结尾继续到下一行;反斜杠和行尾被去除。
name=
后的前导空格,第一个注释字符
#
后的剩余行,以及行的尾随空格将被丢弃,除非它们用双引号括起来。值中的内部空白将逐字保留

在双引号内,必须对双引号
和反斜杠
\
字符进行转义:对
使用
\
,对
\
使用
\

识别以下转义序列(在
\“
\
旁边):
\n
用于换行符(NL),
\t
用于水平制表(HT,制表符)和
\b
用于退格(BS)。其他字符转义序列(包括八进制转义序列)无效

下面是
.git/config
中的正确别名:

wdiff = "diff --color-words='[^][<>()\\{},.;:?/|\\\\=+*&^%$#@!~`\"'\\''[:space:]]+|[][<>(){},.;:?/|\\\\=+*&^%$#@!~`\"'\\'']' --histogram"
wdiff=“diff--color words=”[^][()\\{},;:?/\\\\=+*&^%$\\@!~`'\'\'[:space:]+\\\[[(){},.;:?/\\\\=+*&^%$\\\\\\.~`'\\'''''''.-“直方图”
在这种情况下,您只需要将所有内容括在双引号中,并转义
和反斜杠