Code Monkey home page Code Monkey logo

marmota's Introduction

marmota

marmota is an opinionated and minimalist terminal emulator based on VTE.

marmota logo by T. Michael Keesey

demo screenshot

Getting Started

There are no precompiled binaries, therefore you'll have to compile marmota yourself.

This isn't terribly difficult, since there are only a handful of dependencies, namely: GTK+ 3.0+ and VTE 0.91+.

Once you installed the development versions (with headers) of these dependencies, it becomes possible to compile marmota by typing make in a terminal.

$ make

This will result in a build/config.h configuration header file and a build/marmota executable.

The build/config.h header file contains the default compile time configuration.

In most cases, you will want to modify buld/config.h and then recompile marmota by typing make again in a terminal.

$ vim build/config.h
...
<edit configuration>
...
$ make

Once marmota has been compiled, it can be installed in /usr/local or another prefix of your choice by typing make install in a terminal.

$ make install

or

$ make install PREFIX=/opt

By default, marmota allows you to customize the first 16 colors via the .colors array in build/config.h.

If more colors are desired or needed, then marmota needs to be compiled as such.

$ make MAX_COLORS=24

In the example above, we reserved 24 colors instead of 16.

Any color entries, not specified in build/config.h, will default to reasonable hard-coded values.

Command Line Arguments

When no command line arguments are given, marmota will attempt to detect the current user's preferred SHELL or fallback to /bin/sh.

Whether or not this is a login shell is determined by the .login_shell (defaults to true) option in build/config.h.

To execute another command, instead of the SHELL, the -e command line argument can be used.

$ marmota -e tmux

or

$ marmota -e /bin/sh -l -c tmux

Any arguments after -e are considered to be part of the command to execute.

In addition to -e, there's an additional argument, called -hold that can be leveraged to prevent marmota from closing after the SHELL or the given command has exited.

This can be useful, when using marmota as a terminal from within some IDE, and it's desirable to see the output after the SHELL or the the given command has exited.

$ marmota -hold -e ls -lah

If the .allow_hold_escape_shortcut configuration option has been set to true (default to true), then it is possible to close marmota by pressing escape after the given command has exited in -hold mode.

Contribute

  • Fork the project.
  • Make your feature addition or bug fix.
  • Do not bump the version number.
  • Create a pull request. Bonus points for topic branches.

License

marmota is provided as-is under the MIT license. For more information see LICENSE.

Marmota monax (Linnaeus, 1758) logo by T. Michael Keesey is licensed under CC0 1.0.

marmota's People

Contributors

icebreaker avatar segfaultaire avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

segfaultaire

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.