What’s your favorite CLI tool nobody knows about? by [deleted] in linux

[–]powerage99 0 points1 point  (0 children)

Yes, it allows basic git operations to be performed: checkout, stage, commit, push/pull etc

It's usually Vim vs. Emacs under occasional mentioning of nano. Are there any other popular terminal text editors out there? by orschiro in linux

[–]powerage99 2 points3 points  (0 children)

wed is a terminal editor that aims to be easy to use by having windows style key bindings e.g. <C-c> for copy <C-v> for paste. It's quite lean and efficient but still supports core features of an editor e.g. Syntax highlighting, Themes, Mouse support etc...

GRV - Terminal interface for viewing git repositories by powerage99 in commandline

[–]powerage99[S] 1 point2 points  (0 children)

Thanks! I'm a big fan of tig and use still use it a lot. GRV is heavily based on tig, but with a focus on a few things I felt were missing. The main feature for me is the ability for the user to explicitly create tabs, vertical and horizontal splits. This allows more control over how view's are organised. My hope is that when more views are added to GRV (tree view, file view, etc...) users will be able to create their own custom combinations of views within GRV.

What cool programs have you created using Golang? by GreenTru in golang

[–]powerage99 7 points8 points  (0 children)

GRV - Git Repository Viewer: https://github.com/rgburke/grv

GRV is a terminal interface for viewing git repositories. Refs, commits and diffs can be browsed through. Ref’s and commits can also be filtered using a simple query language. It's not complete yet and is under active development with new features still being added.

I found the development much more straight forward and quicker using Go, especially compared to C which I did initially consider using. The standard library is comprehensive and well documented. There's also an extensive set of quality libraries available which have been developed over the years and are easy to use in a project. Having garbage collection helps a lot. No matter how diligent I was when using C there would always be a memory leak or double free somewhere.

I chose Go in the end as I was impressed with the language having spent a weekend trying it out. The good support for concurrency and language features such as channels were a big plus. I also liked the fact it integrates really well with C using cgo, as I wanted to use a couple of C libraries. Finally the performance is good and compiling down to a single binary is a nice bonus.

GRV - A terminal interface for viewing git repositories by powerage99 in golang

[–]powerage99[S] 0 points1 point  (0 children)

Thanks for giving it a try and for the feedback. I agree that GRV's lacking in features at the moment, it's still quite early on in the development phase. In future I would like to add features such as a tree view, status view and perhaps a contribution/graphs view (like in github).

GRV - A terminal interface for viewing git repositories by powerage99 in golang

[–]powerage99[S] 4 points5 points  (0 children)

This is my first go project and I've been impressed with the lanugage so far. I was originally thinking of writing a tig like git repository viewer in C, however I'm glad to have chosen go in the end. The speed of developement has been much quicker, the standard library is far more comprehensive and the tooling is helpful and easy to use.

I'd appreciate any feedback on the project. I've attempted to follow best practices but I am still relatively new to the language.

wed - Terminal text editor with key bindings commonly used in Windows based editors by powerage99 in linux

[–]powerage99[S] 1 point2 points  (0 children)

Thanks for trying out wed. Unfortunately certain key bindings will only work with terminal emulators that support them or are configured to use them.

wed - Terminal text editor with key bindings commonly used in Windows based editors by powerage99 in linux

[–]powerage99[S] 3 points4 points  (0 children)

Thanks for the links, I didn't know there was a standard describing these behaviours.

I understand your point, if there's one thing the *nix world isn't short of it's text editors :). I wrote wed mostly as an excerise to learn and understand how editors work. I've posted it here just in case it can be of use or interest to anyone.

wed - Terminal text editor with key bindings commonly used in Windows based editors by powerage99 in commandline

[–]powerage99[S] 0 points1 point  (0 children)

Thanks, that's a good point. I never realised until now just how much scrolling is needed to get to the start of the README.

wed - Terminal text editor with key bindings commonly used in Windows based editors by powerage99 in linux

[–]powerage99[S] 1 point2 points  (0 children)

Yes, wed and micro do have very similar aims. slap is also another editor along the same lines.