mirror of
				https://github.com/sharkdp/bat.git
				synced 2025-11-04 09:01:56 +00:00 
			
		
		
		
	Merge pull request #3370 from qianbinbin/fix/manpager
Make MANPAGER more portable
This commit is contained in:
		@@ -201,7 +201,7 @@ bat main.cpp | xclip
 | 
				
			|||||||
`MANPAGER` environment variable:
 | 
					`MANPAGER` environment variable:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```bash
 | 
					```bash
 | 
				
			||||||
export MANPAGER="sh -c 'sed -u -e \"s/\\x1B\[[0-9;]*m//g; s/.\\x08//g\" | bat -p -lman'"
 | 
					export MANPAGER="sh -c 'awk '\''{ gsub(/\x1B\[[0-9;]*m/, \"\", \$0); gsub(/.\x08/, \"\", \$0); print }'\'' | bat -p -lman'"
 | 
				
			||||||
man 2 select
 | 
					man 2 select
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
(replace `bat` with `batcat` if you are on Debian or Ubuntu)
 | 
					(replace `bat` with `batcat` if you are on Debian or Ubuntu)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -170,20 +170,23 @@ bat main.cpp | xclip
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
#### `man`
 | 
					#### `man`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
`bat`也能给`man`的输出上色。这需要设置`MANPAGER`环境变量:
 | 
					`bat` 可以通过设置 `MANPAGER` 环境变量,用作 `man` 的彩色分页器:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```bash
 | 
					```bash
 | 
				
			||||||
export MANPAGER="sh -c 'col -bx | bat -l man -p'"
 | 
					export MANPAGER="sh -c 'awk '\''{ gsub(/\x1B\[[0-9;]*m/, \"\", \$0); gsub(/.\x08/, \"\", \$0); print }'\'' | bat -p -lman'"
 | 
				
			||||||
man 2 select
 | 
					man 2 select
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(如果你使用的是 Debian 或者 Ubuntu,使用`batcat`替换`bat`)
 | 
					(如果你使用 Debian 或 Ubuntu,请将 `batcat` 替换为 `bat`)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
如果你遇到格式化问题,设置`MANROFFOPT="-c"`也许会有帮助。
 | 
					如果你希望将其打包为一个新的命令,也可以使用 [`batman`](https://github.com/eth-p/bat-extras/blob/master/doc/batman.md)。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
`batman`能提供类似功能——作为一个独立的命令。
 | 
					> [!WARNING]
 | 
				
			||||||
 | 
					> 在使用 Mandoc 的 `man` 实现时,这[无法](https://github.com/sharkdp/bat/issues/1145)直接工作。
 | 
				
			||||||
 | 
					>
 | 
				
			||||||
 | 
					> 请使用 `batman`,或将此 Shell 脚本包装为 [Shebang 可执行文件](https://en.wikipedia.org/wiki/Shebang_(Unix)),并将 `MANPAGER` 指向该文件。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
注意:[man page 语法](assets/syntaxes/02_Extra/Manpage.sublime-syntax) 还需要完善。在使用特定的`man`实现时该功能[无法正常工作](https://github.com/sharkdp/bat/issues/1145)。
 | 
					注意,[Manpage 语法](assets/syntaxes/02_Extra/Manpage.sublime-syntax)是在此仓库中开发的,仍需一些改进。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#### `prettier` / `shfmt` / `rustfmt`
 | 
					#### `prettier` / `shfmt` / `rustfmt`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user