faressoft / terminalizer

🦄 Record your terminal and generate animated gif images or share a web player
https://terminalizer.com
MIT License
15.37k stars 499 forks source link

Feature request: Global config #4

Closed cbetta closed 6 years ago

cbetta commented 6 years ago

I want to always use zsh and I don't want to add a config file in every folder. It would be great if there was a way to set a global config, maybe in ~/.terminalizerrc or something.

faressoft commented 6 years ago

You don't need to add a config file to every folder. You can just generate a config file, store it in your home directory and then use it for all your recordings via the -c option.

Is that solves your issue ?

cbetta commented 6 years ago

Ah yes that works indeed. I guess what I was looking for is a place to put a config that is picked up automatically so I don't have to pass the config in every time.

cbetta commented 6 years ago

My biggest issue right now actually is that I run zsh, yet terminalizer defaults to bash. It would be great if this tool either had a way for me to specify to always use zsh, or if terminalizer would just default to zsh if the user's terminal is also zsh.

faressoft commented 6 years ago

@cbetta I agree with you. Let's think about this and we should consider Windows OS too, since it is a cross platform tool

LetLetLand commented 6 years ago

i just created this alias in my ~/.zshrc file : alias record='terminalizer record --config config.yml' then just type record demo and terminalizer would just default to zsh.

cbetta commented 6 years ago

Ah yes, that is one way of doing. I like it. I guess I was looking for something to set my own default, allowing me to then use the config.yml file to override these per demo.

faressoft commented 6 years ago

What do you think if we provide the ability to define multiple global config files.

In case you have a Twitter, GitHub, etc accounts you can define a config file for each of them and explicitly set the number of cols and rows and other things.

We can have a directory called .terminalizer at the home directory, where you can define your global config files named like twitter.yml, githubreadme.yml, etc.

The question now is how to allow the user to choose from these files ?

How about:

cbetta commented 6 years ago

Seems overly complicated tbh. It might be something people want, but all I really want is to be able to set zsh as my default.

faressoft commented 6 years ago

As an alternative I can just check what is the default login shell for the current user. But the problem is you may need to change the font also ! This approach is not a good experience for new users.

I am thinking about a way to add a new command to edit the defaults in the default editor like vim. What to do think about this ? Any suggestions for the name of the command.

cbetta commented 6 years ago

I can't speak for you, but my experience says to go for the easiest solution that is as close as possible as to how other CLI tools do things. This is why I suggested a hidden config in the home folder.

CameronBanga commented 6 years ago

I agree with @cbetta above. A standard, universal .terminalizerrc in my home directory would be great. Just got started with this, and can't imagine keeping separate config files in each directory.

faressoft commented 6 years ago

I am going to work on this feature soon. The approach is

[What do you think ?]

faressoft commented 6 years ago

Released v0.3.0

terminalizer init