+++ title = "Bat understands varlink now" date = 2019-02-07T07:04:47+00:00 +++ [Bat](https://github.com/sharkdp/bat) is a *cat(1)* clone with syntax highlighting and Git integration. My pull request for varlink syntax coloring was accepted today :\-) So, to display: ```varlink # The Varlink Service Interface is provided by every varlink service. It # describes the service and the interfaces it implements. interface org.varlink.service # Get a list of all the interfaces a service provides and information # about the implementation. method GetInfo() -> ( vendor: string, product: string, version: string, url: string, interfaces: []string ) # Get the description of an interface that is implemented by this service. method GetInterfaceDescription(interface: string) -> (description: string) # The requested interface was not found. error InterfaceNotFound (interface: string) # The requested method was not found error MethodNotFound (method: string) # The interface defines the requested method, but the service does not # implement it. error MethodNotImplemented (method: string) # One of the passed parameters is invalid. error InvalidParameter (parameter: string) ``` it will look like this:
$ bat org.varlink.service.varlink ───────┬─────────────────────────────────────────────────────────────────────────────── │ File: org.varlink.service.varlink ───────┼─────────────────────────────────────────────────────────────────────────────── 1 │ # The Varlink Service Interface is provided by every varlink service. It 2 │ # describes the service and the interfaces it implements. 3 │ interface org.varlink.service 4 │ 5 │ # Get a list of all the interfaces a service provides and information 6 │ # about the implementation. 7 │ method GetInfo() -> ( 8 │ vendor: string, 9 │ product: string, 10 │ version: string, 11 │ url: string, 12 │ interfaces: []string 13 │ ) 14 │ 15 │ # Get the description of an interface that is implemented by this service. 16 │ method GetInterfaceDescription(interface: string) -> (description: string) 17 │ 18 │ # The requested interface was not found. 19 │ error InterfaceNotFound (interface: string) 20 │ 21 │ # The requested method was not found 22 │ error MethodNotFound (method: string) 23 │ 24 │ # The interface defines the requested method, but the service does not 25 │ # implement it. 26 │ error MethodNotImplemented (method: string) 27 │ 28 │ # One of the passed parameters is invalid. 29 │ error InvalidParameter (parameter: string) ───────┴───────────────────────────────────────────────────────────────────────────────