[-] christos@lemmy.world 11 points 3 weeks ago

As a matter of fact it is one of the scripts that I cannot do without, I use it everyday, it is very convenient. But then again I wrote it myself, so I can't be objective.

74
submitted 3 weeks ago by christos@lemmy.world to c/opensource@lemmy.ml

cross-posted from: https://lemmy.world/post/1051933

Magic-tape is an image supporting fuzzy finder command line interface YouTube client.

https://gitlab.com/christosangel/magic-tape

https://gitlab.com/christosangel/magic-tape/-/raw/main/screenshots/1.png

Image rendering can be done with the use of ueberzugpp, ueberzug, kitty terminal or chafa.

https://gitlab.com/christosangel/magic-tape/-/raw/main/screenshots/fzf2.png

With magic-tape, through the main menu, the user can:

  • Browse videos from subscriptions.

  • Browse through trending video feed.

  • make a video search, using keywords or phrases.

  • Watch a previously watched video (watch history).

  • Browse videos from a subcsribed channel.

  • Watch a liked video.

  • Repeat the previous selection.

  • Repeat a previous search (search history).

  • Watch/download video/audio content, in various formats.

Through the miscellaneous menu the user can

  • Set up Preferences (configuration).

  • Like / Unlike a video.

  • Synchronize the above actions with their YouTube account.

  • Import subscriptions from YouTube.

  • Subscribe to/ Unsubscribe from a channel.

  • Clear their watch/search history, liked videos, thumbnail cache.

164
submitted 2 months ago by christos@lemmy.world to c/linux@lemmy.ml

https://gitlab.com/christosangel/tui-battleship

This is a tui implementation of the popular classic naval battle game, written in Bash.

The objective of the game is to destroy the computer's fleet, before the computer achieves the same against you.

You take turns with the computer, hitting squares in each other's grids.

You have to guess the position of the enemy ships on the computer's 10x10 grid, in order to win.

win

You lose if the computer achieves sinking your ships first.

lose

[-] christos@lemmy.world 8 points 2 months ago

Someone should come up with a new distro with the name potatOS, just for cases like this .

75
submitted 3 months ago by christos@lemmy.world to c/linux@lemmy.ml

https://gitlab.com/christosangel/nine

nine is a tui implementation of the classic 3x3 sliding-puzzle, in Bash.

There is a 3x3 grid that contains 8 tiles, and one position that is empty.

grid1 grid2

The user can move around the 8 tiles on the only one empty space, using the navigation keys.

The player in order to win, has to put the numbered tiles in order.

win

39
submitted 3 months ago* (last edited 3 months ago) by christos@lemmy.world to c/linux@lemmy.ml

https://gitlab.com/christosangel/mneme

mneme is a version of the classical memory game, that the user can play in a terminal window. It is a script written in Bash.

main menu

The user by editing a configuration file, can select a wide range of character themes and levels of difficulty(matrix size).

main menu

main menu

[-] christos@lemmy.world 7 points 3 months ago

IMPORTANT UPDATE: Since many youngsters who unlike me, a senior citizen, live on the edge and hate vim keys or arrow keys, have requested an alternative navigation keys set up, I have just implemented a configuration option that satisfies just that.

By editing the config file (either within the application or just editing ~/.config/tui-mines/tui-mines.config, and changing the NAVIGATION_KEYS value from vim+arrows (default) to aswd+arrows, the user can use the aswd keys to navigate in the game grid, just as requested.

No other commands or hacks are needed.

Arrow keys remain hardcoded, because they remind me of my youth, as an archer, during the Peloponnesian War

[-] christos@lemmy.world 11 points 3 months ago

Here is the solution just for you:

  • get to the tui-mines/ directory
  • open a terminal there
  • run this command sed -i 's/k|A/w|A/;s/h|D/a|D/;s/j|B/s|B/;s/l|C/d|C/' tui-mines.sh

Run the script ./tui-mines.sh

You can now play using lower case awsd.

290
submitted 3 months ago by christos@lemmy.world to c/linux@lemmy.ml

https://gitlab.com/christosangel/tui-mines

tui mines is evidently a text-based user interface implimentation of the classic mine sweeping puzzle game.

The user has to clear a board, square by square, flagging the squares suspected to hide mines on the way.

If the user opens a mine square, things go KABOOM! and the game is lost.

The user uses hints from the numbered squares. This numbers how many bombs are touching that square in every direction ( 8 in total).

Through logic, and a bit of luck, the player ends up clearing all the squares, while flagging all the mines.

16
submitted 3 months ago by christos@lemmy.world to c/linux@lemmy.ml
179
submitted 4 months ago* (last edited 4 months ago) by christos@lemmy.world to c/linux@lemmy.ml

https://gitlab.com/christosangel/basht

This tui file manager bash script, provides image preview, theme selection, smooth directory navigation, opening files with default and other programs and easy configuring of keybindings. It uses fzf to navigate to and select files and directories. Image rendering can be done with the use of ueberzugpp, ueberzug, kitty terminal or chafa.

basht_img_3.png

The script also provides content preview for directories, and text files:

basht_text.png

As one can see in the screenshots, thanks to Nerd Fonts, each type of selection (directory, text file, office document, image file etc) is represented with the respective symbol.

Configuring of preferences can be done through editing a psv file.

Any feedback / suggestion will be appreciated.

90
submitted 7 months ago by christos@lemmy.world to c/linux@lemmy.ml

https://gitlab.com/christosangel/pyradion

Through the menus, the user can :

  • Select directly a station from the Favorites list (which is configurable).

  • Select a random station out of this list of Favorite stations.

  • Select a tag to pick a station from.

  • Select to pick a station from All Stations.

  • Select a random station out of this list of #tag stations.

  • ❌ Quit pyradion.


Recording

Recording a radio stream in pyradion can be done easily, just by hitting r or R.

record.png

The user will be notified through the status line of the recording taking place, and of the output file name.

Editing the pyradion.config file, the user will be able to define output audio file directory.

If the title is available by the stream, the file will take its name by it.

If title is Not Available, the file will take a date/time for name.

Output File Format

In order for recording to work for mpv, output file format must be the same with stream format.

Therefore stream format is recognised, and passed to the output file (e.g. mp3, ogg, aac).


This project shares more or less the same logic with a previous project in Bash:

https://gitlab.com/christosangel/radion

although with this Python script some more features are available.


[-] christos@lemmy.world 58 points 8 months ago

Somehow things seem similar (perhaps better) in Greece:

77
submitted 8 months ago by christos@lemmy.world to c/linux@lemmy.ml

cross-posted from: https://lemmy.world/post/7753968

https://gitlab.com/christosangel/turnip-tv

turnip-tv is a customizable tui iptv client, written in Bash.

The user can (among other customizations) choose input program between

  • read

1read.png

  • fzf

1fzf.png

  • rofi

1rofi.png

  • dmenu

1dmenu.png


This script was inspired by and is almost identical with another project called radion, which is a tui internet radio client.

The channel list was found here, and was modified to fit the script's functionality.

[-] christos@lemmy.world 9 points 8 months ago
  • Excellent catch! This one slipped through! I just fixed the bug, thank you very much!

I am happy you like it!

[-] christos@lemmy.world 13 points 8 months ago

Maybe. Respectfuly, feel free to move along. I fail to see the aim of your message.

[-] christos@lemmy.world 14 points 8 months ago

Don't give me new ideas...

[-] christos@lemmy.world 26 points 8 months ago

Of course, next time I feel like writing a script, I will make sure that I let you know first, and get your approval.

[-] christos@lemmy.world 6 points 8 months ago

Through the script you could go to https://www.radio-browser.info/search?page=1&order=clickcount&reverse=true&hidebroken=true&tagList=metal, pick the stations you fancy and headbang yourself unconscious... 🎸 🤘

510
submitted 8 months ago* (last edited 8 months ago) by christos@lemmy.world to c/linux@lemmy.ml

radion is an internet radio CLI client, written in Bash.

https://gitlab.com/christosangel/radion

Radion can be customized as far as the station selecting program is concerned. The user can choose between:

  • read

read

  • fzf

fzf

  • rofi

rofi

  • dmenu

dmenu


Update: Introduced new feature: customizing prompt text for fzf dmenu and rofi.


Update: MacOS support added now thanks to Andrea Schäfer

Also, I was forced by my daughter to add some anime radio stations...


Update: Recording functionality added, with the use of another (you guessed it) bash script

icy

Also options in read as Preferred selector are also case insensitive.

Any feedback is appreciated!

161
submitted 8 months ago by christos@lemmy.world to c/linux@lemmy.ml

https://gitlab.com/christosangel/ladder

Ladder is a word puzzle, played in a terminal window.

Your starting point is an initial four-letter word.

Your goal is to transform this word, one letter at a time, through other valid words, and end up with the target word.

The tricky part is that on each entry, you can change ONLY ONE LETTER.

[-] christos@lemmy.world 9 points 9 months ago

I like xed for coding. Simple, costumisable enough, great experience.

12
tui-sudoku (lemmy.world)
submitted 9 months ago* (last edited 9 months ago) by christos@lemmy.world to c/linux@lemmy.ml

tui-sudoku is a configurable terminal interface sudoku game, with quite a few features.

https://gitlab.com/christosangel/tui-sudoku

Starting the game, and through the main menu, the player can :

  • Start a new game
  • Load previously saved game
  • Configure some parameters (colors, preferred editor, puzzle symmetry,preffered png)
  • exit the program

PLAYING THE GAME

After choosing the n New Game option, the player can select the level of difficulty.

The user will be presented with the known 9x9 sudoku matrix.

Using the shortcuts in the shown cheatsheet table, the player can

Shortcuts Action
hjkl 🠄 🠅🠇🠆 Move Cursor
[1-9] Insert Number
0,␣,␈ Clear Cell
E Earmark cells
H Toggle Highlight Numbers
I Toggle show Info (key cheatsheet)
P Pause Game
S Save Game
z,Z Undo / Redo
M Return to Main Menu
Q Show Solution & Quit
  • Typing H while the cursor is on a number, e.g. 2, will highlight all the 2s in the matrix.

    Typing H again will undo the highlighting:

-Typing E and entering up to 3 digits, will earmark the cell:

  • Entering an illegal number (a number that already exists in the row, the line or the 3x3 block) will mark the number with a different color, and give a warning message:

While the Moption returns to the Main Menu, and the S option saves the game, the Q option prints the solution and exits:

  • The user can also Undo or Redo their entries with the z or Z option respectively.

Back in the Main Menu, the player can also

  • Load a previously saved game with the l option

  • Configure preferred colors, preferred text editor and puzzle symmetry with the c option

  • or Browse the Top Ten Scores (s option)

The configuration is kept in the $HOME/.config/tui-sudoku/tui-sudoku.config file.

If there is no file kept there, default values will be loaded.

  • You can select the colors you like and the respective codes as they demonstrated here:

    https://talyian.github.io/ansicolors/

    Default colors

    Color Code Script Variable
    Grid Color \x1b[38;5;60m C1
    Given Numbers Color \e[1;33m C2
    Found Numbers Color \e[1;36m C3
    Wrong Numbers Color \e[1;31m C4
    Highlight Color \e[1;32m C5
    TextColor1 \e[35m C6
    TextColor1 \e[36m C7
  • SYMMETRY variable configures the symmetry of the given cells in the 9x9 matrix. Valid options are: none, rotate90, rotate180, mirror, flip, or random

  • PREFFERED_PNG variable defines the png that shows in the notifications. These images are located in the $HOME/.cache/tui-sudoku/png/ directory.

Any feedback is appreciated!


Added feature in 0.2.0: earmarked cells change color when illegal (the number already exists in row, column or 3x3 square)


Added feature in 0.3.0: Toggle info (key cheatsheet).


Added feature in 0.4.0: Pause Game.

view more: next ›

christos

joined 1 year ago