less
我的问题是less用不了一些正则表达式的扩展功能, 比如word boundary. 对此我感到很困惑, 因为man less说, 它用的是system regex library, 但查看man 7 re_format
, 发现ENHANCED FEATURES
中是支持\b
也支持\<
, 但是我用less两个都用不了. 我怀疑是less源码中没有用enhanced选项. 正在我一筹莫展(实际上是怀疑自己没事找事的合理性)的时候, 我决定用源码安装试试看. 发现果然可以设置regular expression library.
mv ~/Downloads/less-563 ~/bin && cd ~/bin
- ??
sh configure --with-regex=pcre2
, 发现没有pcre2 brew install pcre2
sh configure --with-regex=pcre2
make
make install
安装完成, 查看which less
, 发现已是/usr/local/bin/less
. less某个文件, 发现\b
也可以使用了.
设置man的pager为新安装的less
但是man默认的pager还是less, 怎么办? echo "export MANPAGER=/usr/local/bin/less" >> ~/.bash_profile
. 发现man less
就可以用\b
了.