---
name: "gitaction"
section: "1"
platform: "linux"
package: "gnuit"
version: "4.9.5-5"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/gitaction"
---

# gitaction(1)

GNU Interactive Tools - per file type action script

## NAME

gitaction - GNU Interactive Tools - per file type action script

## SYNTAX

*gitaction* *directory file*\
 *.gitaction directory file*

## DESCRIPTION

*gitaction* is a script that executes a different action for each file type specified. It is called by the *gitfm* program when pressing **F2** or **^Xa** (see the **gnuitrc.TERM** configuration files in the *gnuit* manual). The first parameter is the current directory name and the second one is the file name to be matched against the default patterns. The matching is done using the shell 'case' statement. If you press **F2** or **^Xa** on a **\*.html** file, *gitfm* will invoke a browser to view it, if you press **F2** or **^Xa** on a **\*.tar.gz** file, *gitfm* will list the tar archive contents, if you press the same keys on a **\*.gz** file, *gitfm* will display its uncompressed contents on the screen, etc ...

If you press **F2** or **^Xa** on a **\*.gif** file or **\*.jpg** file and you have the *zgv* utility installed, you will be able to see it. If you want to change the gif/jpeg viewer, all you need to do is to change its name in the *gitaction* script.

There are many more file types and viewers that *gitaction* knows about. In addition, if you are running under GNOME, gnome-open is used, and on MacOS, [open(1)](/open/1.md) is used. [see(1)](/see/1.md) and [metamail(1)](/metamail/1.md) are also used as fallbacks.

If all else fails, the file is displayed using $GNUIT\_PAGER. Feel free to change this. If you want to find out what the default action for each file type is (or if you want to modify it), just read/modify the *gitaction* script.

The script can be easily enhanced. Just read it.

The *.gitaction* script is a local version of the *gitaction* script. When started, *gitaction* tries to search a script called **.gitaction** in the current directory and, if it finds it, it starts it. If *.gitaction*'s exit code is 0 ( *.gitaction* couldn't find a matching pattern), *gitaction* starts its own case statement trying to match the current file name (the second parameter) against its default patterns.

The *.gitaction* script \*must\* be executable. An example of *.gitaction* can be found in the directory gitfm is installed into. (usually **/usr/local/bin** or **/usr/bin**) Debian users can find it in **/usr/share/doc/gnuit/examples/**. You should copy the example to the current directory or your home directory and then modify it.

## BUGS

Please send bug reports to:\
 *gnuit-dev@gnu.org*

## SEE ALSO

[gitfm(1)](/gitfm/1.md) [gitps(1)](/gitps/1.md) [gitview(1)](/gitview/1.md) [gitmount(1)](/gitmount/1.md) [gitkeys(1)](/gitkeys/1.md) [gitrgrep(1)](/gitrgrep/1.md) [gitunpack(1)](/gitunpack/1.md)

## AUTHORS

*Tudor Hulubei \<tudor@cs.unh.edu\>*\
 *Andrei Pitis \<pink@pub.ro\>*\
 *Ian Beckwith \<ianb@erislabs.net\> (current maintainer).*
