README

term

import "github.com/pkg/term"

Package term manages POSIX terminals. As POSIX terminals are connected to, or emulate, a UART, this package also provides control over the various UART and serial line parameters.

func CBreakMode

func CBreakMode(t *Term) error

CBreakMode places the terminal into cbreak mode.

func RawMode

func RawMode(t *Term) error

RawMode places the terminal into raw mode.

func Speed

func Speed(baud int) func(*Term) error

Speed sets the baud rate option for the terminal.

type Term

type Term struct {
    // contains filtered or unexported fields
}

Term represents an asynchronous communications port.

func Open
func Open(name string, options ...func(*Term) error) (*Term, error)

Open opens an asynchronous communications port.

func (*Term) Available
func (t *Term) Available() (int, error)

Available returns how many bytes are unused in the buffer.

func (*Term) Buffered
func (t *Term) Buffered() (int, error)

Buffered returns the number of bytes that have been written into the current buffer.

func (*Term) Close
func (t *Term) Close() error

Close closes the device and releases any associated resources.

func (*Term) DTR
func (t *Term) DTR() (bool, error)

DTR returns the state of the DTR (data terminal ready) signal.

func (*Term) Flush
func (t *Term) Flush() error

Flush flushes both data received but not read, and data written but not transmitted.

func (*Term) RTS
func (t *Term) RTS() (bool, error)

RTS returns the state of the RTS (data terminal ready) signal.

func (*Term) Read
func (t *Term) Read(b []byte) (int, error)

Read reads up to len(b) bytes from the terminal. It returns the number of bytes read and an error, if any. EOF is signaled by a zero count with err set to io.EOF.

func (*Term) Restore
func (t *Term) Restore() error

Restore restores the state of the terminal captured at the point that the terminal was originally opened.

func (*Term) SendBreak
func (t *Term) SendBreak() error

SendBreak sends a break signal.

func (*Term) SetCbreak
func (t *Term) SetCbreak() error

SetCbreak sets cbreak mode.

func (*Term) SetDTR
func (t *Term) SetDTR(v bool) error

SetDTR sets the DTR (data terminal ready) signal.

func (*Term) SetOption
func (t *Term) SetOption(options ...func(*Term) error) error

SetOption takes one or more option function and applies them in order to Term.

func (*Term) SetRTS
func (t *Term) SetRTS(v bool) error

SetRTS sets the RTS (data terminal ready) signal.

func (*Term) SetRaw
func (t *Term) SetRaw() error

SetRaw sets raw mode.

func (*Term) SetSpeed
func (t *Term) SetSpeed(baud int) error

SetSpeed sets the receive and transmit baud rates.

func (*Term) Write
func (t *Term) Write(b []byte) (int, error)

Write writes len(b) bytes to the terminal. It returns the number of bytes written and an error, if any. Write returns a non-nil error when n != len(b).


Generated by godoc2md

Expand ▾ Collapse ▴

Documentation

Overview

    Package term manages POSIX terminals. As POSIX terminals are connected to, or emulate, a UART, this package also provides control over the various UART and serial line parameters.

    Index

    Examples

    Constants

    View Source
    const (
    	NONE     = iota // flow control off
    	XONXOFF         // software flow control
    	HARDWARE        // hardware flow control
    )
    View Source
    const (
    	// CBaudMask is the logical of CBAUD and CBAUDEX, except
    	// that those values were not exposed via the syscall
    	// package.  Many of these values will be redundant, but
    	// this long definition ensures we are portable if some
    	// architecture defines different values for them (unlikely).
    	CBaudMask = unix.B50 |
    		unix.B75 |
    		unix.B110 |
    		unix.B134 |
    		unix.B150 |
    		unix.B200 |
    		unix.B300 |
    		unix.B600 |
    		unix.B1200 |
    		unix.B1800 |
    		unix.B2400 |
    		unix.B4800 |
    		unix.B9600 |
    		unix.B19200 |
    		unix.B38400 |
    		unix.B57600 |
    		unix.B115200 |
    		unix.B230400 |
    		unix.B460800 |
    		unix.B500000 |
    		unix.B576000 |
    		unix.B921600 |
    		unix.B1000000 |
    		unix.B1152000 |
    		unix.B1500000 |
    		unix.B2000000 |
    		unix.B2500000 |
    		unix.B3000000 |
    		unix.B3500000 |
    		unix.B4000000
    )

    Variables

    This section is empty.

    Functions

    func CBreakMode

    func CBreakMode(t *Term) error

      CBreakMode places the terminal into cbreak mode.

      func FlowControl

      func FlowControl(kind int) func(*Term) error

        FlowControl sets the flow control option for the terminal.

        func RawMode

        func RawMode(t *Term) error

          RawMode places the terminal into raw mode.

          func ReadTimeout

          func ReadTimeout(d time.Duration) func(*Term) error

            ReadTimeout sets the read timeout option for the terminal.

            func Speed

            func Speed(baud int) func(*Term) error

              Speed sets the baud rate option for the terminal.

              Types

              type Term

              type Term struct {
              	// contains filtered or unexported fields
              }

                Term represents an asynchronous communications port.

                func Open

                func Open(name string, options ...func(*Term) error) (*Term, error)

                  Open opens an asynchronous communications port.

                  Example

                    Open a terminal in raw mode at 19200 baud.

                    Output:
                    
                    

                    func (*Term) Available

                    func (t *Term) Available() (int, error)

                      Available returns how many bytes are unused in the buffer.

                      func (*Term) Buffered

                      func (t *Term) Buffered() (int, error)

                        Buffered returns the number of bytes that have been written into the current buffer.

                        func (*Term) Close

                        func (t *Term) Close() error

                          Close closes the device and releases any associated resources.

                          func (*Term) DTR

                          func (t *Term) DTR() (bool, error)

                            DTR returns the state of the DTR (data terminal ready) signal.

                            func (*Term) Flush

                            func (t *Term) Flush() error

                              Flush flushes both data received but not read, and data written but not transmitted.

                              func (*Term) GetSpeed

                              func (t *Term) GetSpeed() (int, error)

                                GetSpeed gets the current output baud rate.

                                func (*Term) RTS

                                func (t *Term) RTS() (bool, error)

                                  RTS returns the state of the RTS (data terminal ready) signal.

                                  func (*Term) Read

                                  func (t *Term) Read(b []byte) (int, error)

                                    Read reads up to len(b) bytes from the terminal. It returns the number of bytes read and an error, if any. EOF is signaled by a zero count with err set to io.EOF.

                                    func (*Term) Restore

                                    func (t *Term) Restore() error

                                      Restore restores the state of the terminal captured at the point that the terminal was originally opened.

                                      Example

                                        Restore the terminal state

                                        Output:
                                        
                                        

                                        func (*Term) SendBreak

                                        func (t *Term) SendBreak() error

                                          SendBreak sends a break signal.

                                          Example

                                            Send Break to the remote DTE.

                                            Output:
                                            
                                            

                                            func (*Term) SetCbreak

                                            func (t *Term) SetCbreak() error

                                              SetCbreak sets cbreak mode.

                                              func (*Term) SetDTR

                                              func (t *Term) SetDTR(v bool) error

                                                SetDTR sets the DTR (data terminal ready) signal.

                                                Example

                                                  Reset an Arduino by toggling the DTR signal.

                                                  Output:
                                                  
                                                  

                                                  func (*Term) SetFlowControl

                                                  func (t *Term) SetFlowControl(kind int) error

                                                    SetFlowControl sets whether hardware flow control is enabled.

                                                    func (*Term) SetOption

                                                    func (t *Term) SetOption(options ...func(*Term) error) error

                                                      SetOption takes one or more option function and applies them in order to Term.

                                                      func (*Term) SetRTS

                                                      func (t *Term) SetRTS(v bool) error

                                                        SetRTS sets the RTS (data terminal ready) signal.

                                                        func (*Term) SetRaw

                                                        func (t *Term) SetRaw() error

                                                          SetRaw sets raw mode.

                                                          func (*Term) SetReadTimeout

                                                          func (t *Term) SetReadTimeout(d time.Duration) error

                                                            SetReadTimeout sets the read timeout. A zero value for d means read operations will not time out.

                                                            func (*Term) SetSpeed

                                                            func (t *Term) SetSpeed(baud int) error

                                                              SetSpeed sets the receive and transmit baud rates.

                                                              func (*Term) Write

                                                              func (t *Term) Write(b []byte) (int, error)

                                                                Write writes len(b) bytes to the terminal. It returns the number of bytes written and an error, if any. Write returns a non-nil error when n != len(b).

                                                                Directories

                                                                Path Synopsis
                                                                Package termios implements the low level termios(3) terminal line discipline facilities.
                                                                Package termios implements the low level termios(3) terminal line discipline facilities.