---
name: "gt-cds"
section: "1"
platform: "linux"
package: "genometools"
version: "1.6.5+ds-2.2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/gt-cds"
---

# gt-cds(1)

Add CDS (coding sequence) features to exon features given in GFF3 file.

## NAME

gt-cds - Add CDS (coding sequence) features to exon features given in GFF3 file.

## SYNOPSIS

**gt cds** \[option ...\] \[GFF3\_file\]

## DESCRIPTION

- **-minorflen** \[*value*\]

  set the minimum length an open reading frame (ORF) must have to be added as a CDS feature (measured in amino acids) (default: 64)

- **-startcodon** \[*yes\|no*\]

  require than an ORF must begin with a start codon (default: no)

- **-finalstopcodon** \[*yes\|no*\]

  require that the final ORF must end with a stop codon (default: no)

- **-seqfile** \[*filename*\]

  set the sequence file from which to take the sequences (default: undefined)

- **-encseq** \[*filename*\]

  set the encoded sequence indexname from which to take the sequences (default: undefined)

- **-seqfiles**

  set the sequence files from which to extract the features use *--* to terminate the list of sequence files

- **-matchdesc** \[*yes\|no*\]

  search the sequence descriptions from the input files for the desired sequence IDs (in GFF3), reporting the first match (default: no)

- **-matchdescstart** \[*yes\|no*\]

  exactly match the sequence descriptions from the input files for the desired sequence IDs (in GFF3) from the beginning to the first whitespace (default: no)

- **-usedesc** \[*yes\|no*\]

  use sequence descriptions to map the sequence IDs (in GFF3) to actual sequence entries. If a description contains a sequence range (e.g., III:1000001..2000000), the first part is used as sequence ID (*III*) and the first range position as offset (*1000001*) (default: no)

- **-regionmapping** \[*string*\]

  set file containing sequence-region to sequence file mapping (default: undefined)

- **-v** \[*yes\|no*\]

  be verbose (default: no)

- **-o** \[*filename*\]

  redirect output to specified file (default: undefined)

- **-gzip** \[*yes\|no*\]

  write gzip compressed output file (default: no)

- **-bzip2** \[*yes\|no*\]

  write bzip2 compressed output file (default: no)

- **-force** \[*yes\|no*\]

  force writing to output file (default: no)

- **-help**

  display help and exit

- **-version**

  display version information and exit

File format for option *-regionmapping*:

The file supplied to option -regionmapping defines a “mapping”. A mapping maps the sequence-region entries given in the *GFF3\_file* to a sequence file containing the corresponding sequence. Mappings can be defined in one of the following two forms:

```
mapping = {
  chr1  = "hs_ref_chr1.fa.gz",
  chr2  = "hs_ref_chr2.fa.gz"
}
```

or

```
function mapping(sequence_region)
  return "hs_ref_"..sequence_region..".fa.gz"
end
```

The first form defines a Lua (http://www.lua.org) table named “mapping” which maps each sequence region to the corresponding sequence file. The second one defines a Lua function “mapping”, which has to return the sequence file name when it is called with the sequence\_region as argument.

## REPORTING BUGS

Report bugs to https://github.com/genometools/genometools/issues.
