local/term

Search:
Group by:

Types

CanvasImage = ref object
  bmp*: NetworkBitmap
  dims*: CanvasImageDimensions
  damaged*: bool
CanvasImageDimensions = object
  y*: int
  width*: int
  height*: int
  offx*: int
  dispw*: int
  erry*: int
  erry2*: int
InputEvent = object
  case t*: InputEventType
  of ietKey:
    c*: char
  of ietKeyEnd:
    nil
  of ietPaste:
    nil
  of ietWindowChange:
    nil
  of ietRedraw:
    nil
  of ietMouse:
    m*: MouseInput
InputEventType = enum
  ietKey = "key", ietKeyEnd = "keyEnd", ietPaste = "paste", ietMouse = "mouse",
  ietWindowChange = "windowChange", ietRedraw = "redraw"
MouseButton = enum
  mibLeft = (1, "left"), mibMiddle = (2, "middle"), mibRight = (3, "right"),
  mibWheelUp = (4, "wheelUp"), mibWheelDown = (5, "wheelDown"),
  mibWheelLeft = (6, "wheelLeft"), mibWheelRight = (7, "wheelRight"),
  mibThumbInner = (8, "thumbInner"), mibThumbTip = (9, "thumbTip"),
  mibButton10 = (10, "button10"), mibButton11 = (11, "button11")
MouseInput = object
  t*: MouseInputType
  button*: MouseButton
  mods*: set[MouseInputMod]
  pos*: MouseInputPosition
MouseInputMod = enum
  mimShift = "shift", mimCtrl = "ctrl", mimMeta = "meta"
MouseInputPosition = tuple[x, y: int32]
MouseInputType = enum
  mitPress = "press", mitRelease = "release", mitMove = "move"
Terminal = ref object
  cs*: Charset
  istream*: PosixStream
  ostream*: PosixStream
  attrs*: WindowAttributes
  imageMode*: ImageMode
  osc52Primary*: bool
  registeredFlag*: bool
  sixelRegisterNum*: uint16

Vars

acceptSigint {.global.} = false
sigintCaught {.global.} = false

Consts

BracketedPasteEnd = "\e[201~"
BracketedPasteStart = "\e[200~"

Procs

proc addImage(term: Terminal; image: CanvasImage) {....raises: [], tags: [],
    forbids: [].}
proc ahandleRead(term: Terminal): Opt[bool] {....raises: [], tags: [], forbids: [].}
proc anyKey(term: Terminal; msg = "[Hit any key]"; bottom = false): Opt[void] {.
    ...raises: [], tags: [RootEffect], forbids: [].}
proc areadEvent(term: Terminal): Opt[InputEvent] {....raises: [],
    tags: [RootEffect], forbids: [].}
proc catchSigint(term: Terminal) {....raises: [], tags: [], forbids: [].}
proc clearCanvas(term: Terminal) {....raises: [], tags: [], forbids: [].}
proc clearImages(term: Terminal; maxh: int) {....raises: [], tags: [], forbids: [].}
proc cursorNextLine(term: Terminal): Opt[void] {....raises: [], tags: [],
    forbids: [].}
proc draw(term: Terminal; redraw, mouse: bool;
          cursorx, cursory, scrollBottom: int; bgcolor: CellColor): Opt[void] {.
    ...raises: [], tags: [], forbids: [].}
proc flush(term: Terminal): Opt[bool] {....raises: [], tags: [], forbids: [].}
proc getCurrentBgcolor(term: Terminal): CellColor {....raises: [], tags: [],
    forbids: [].}
proc hasBracketedPaste(term: Terminal): bool {....raises: [], tags: [], forbids: [].}
proc initFrame(term: Terminal) {....raises: [], tags: [], forbids: [].}
proc newCanvasImage(data: Blob; pid, preludeLen: int; bmp: NetworkBitmap;
                    dims: CanvasImageDimensions; transparent: bool): CanvasImage {.
    ...raises: [], tags: [], forbids: [].}
proc newTerminal(ostream: PosixStream; config: Config; loader: FileLoader): Terminal {.
    ...raises: [], tags: [], forbids: [].}
proc onScreen(dims: CanvasImageDimensions): bool {....raises: [], tags: [],
    forbids: [].}
proc positionImage(term: Terminal; rx, ry, x, y, offx2, offy2, width, height,
                                   maxwpx, maxhpx: int): CanvasImageDimensions {.
    ...raises: [], tags: [], forbids: [].}
proc processFormat(term: Terminal; cellf: Format): Opt[void] {....raises: [],
    tags: [], forbids: [].}
proc processOutputString(term: Terminal; s: openArray[char]; trackCursor = true): Opt[
    void] {....raises: [], tags: [], forbids: [].}
proc queryWindowSize(term: Terminal): Opt[void] {....raises: [],
    tags: [ReadEnvEffect], forbids: [].}
proc queueTitle(term: Terminal; title: string) {....raises: [], tags: [],
    forbids: [].}
proc quit(term: Terminal): Opt[void] {....raises: [], tags: [RootEffect],
                                       forbids: [].}
proc reduceFormat(term: Terminal; format: Format): Format {....raises: [],
    tags: [], forbids: [].}
proc respectSigint(term: Terminal) {....raises: [], tags: [], forbids: [].}
proc restart(term: Terminal): Opt[void] {....raises: [], tags: [], forbids: [].}
proc scrollDown(term: Terminal; n, scrollBottom: int) {....raises: [], tags: [],
    forbids: [].}
proc scrollUp(term: Terminal; n, scrollBottom: int) {....raises: [], tags: [],
    forbids: [].}
proc sendOSC52(term: Terminal; s: string; clipboard = true): Opt[bool] {.
    ...raises: [], tags: [], forbids: [].}
proc start(term: Terminal; istream: PosixStream): Opt[void] {....raises: [],
    tags: [ReadEnvEffect], forbids: [].}
proc takeImage(term: Terminal; pid, imageId, bufHeight: int;
               dims: CanvasImageDimensions): CanvasImage {....raises: [],
    tags: [RootEffect], forbids: [].}
proc unsetScroll(term: Terminal) {....raises: [], tags: [], forbids: [].}
proc updateImage(image: CanvasImage; data: Blob; preludeLen: int) {....raises: [],
    tags: [], forbids: [].}
proc updateScroll(term: Terminal; pid, x, y: int): int {....raises: [], tags: [],
    forbids: [].}
proc writeGrid(term: Terminal; grid: FixedGrid; x = 0; y = 0) {....raises: [],
    tags: [], forbids: [].}

Iterators

iterator updateImages(term: Terminal; bufWidth, bufHeight: int): CanvasImage {.
    ...raises: [], tags: [], forbids: [].}