M4444 / TMatrix

Terminal based replica of the digital rain from The Matrix.
GNU General Public License v2.0
380 stars 14 forks source link

Missing characters (urxvt issue) #6

Open Riiskyy opened 5 years ago

Riiskyy commented 5 years ago

Hi, so I installed this and the ncurses5 library from the AUR. However my terminal does not display any of the special characters 2019-05-27-103059_915x1000_scrot

I'm running a patched nerd font with the ncurses5 compat libs from AUR

M4444 commented 5 years ago

I'd like to rule out the option that either the font or the terminal you're using doesn't fully support unicode. If you copy this マトリックス into your terminal or cat this document does it print it correctly?

Riiskyy commented 5 years ago

I can copy and paste those symbols to the terminal fine. Cat-ing that document everything dislpays correctly except the ethiopian and Runes secions. I'm using Urxvt as my terminal emulator if that helps

M4444 commented 5 years ago

Can you send me the output of compiling and running this: https://www.dropbox.com/s/v2k19a19z2kn7vz/size_test.cpp?dl=0?

Riiskyy commented 5 years ago
tom@home ~ $ g++ Documents/test.cpp -o Documents/test1
tom@home ~ $ cd Documents/
tom@home ~/Documents $ ./test1 
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 2 2 2 2 2 2 2 2 2 2 2 2 4 2 2 2 2 2 2 3 2 4 2 2 

I think I ran this all correctly?

M4444 commented 5 years ago

Yup that checks out, thanks. Maybe it's some conflict with ncurses. Can you apply this patch and build it again from starting from CMake? You'll have to quit this one using Ctrl+C.

Riiskyy commented 5 years ago

You'll have to forgive me, I wasn't sure how to apply the patch but went with a google method and it seemed to work? However I still have the same issue, my outputs are below (i'm using powerline so ignore the formatting).

tom  home  ~  Downloads  $  cd ~/Documents/
tom  home  ~  Documents  $  mkdir tmatrix
tom  home  ~  Documents  $  git clone https://github.com/M4444/TMatrix.git
Cloning into 'TMatrix'...
remote: Enumerating objects: 165, done.
remote: Counting objects: 100% (165/165), done.
remote: Compressing objects: 100% (94/94), done.
remote: Total 652 (delta 107), reused 125 (delta 70), pack-reused 487
Receiving objects: 100% (652/652), 2.64 MiB | 3.85 MiB/s, done.
Resolving deltas: 100% (457/457), done.
tom  home  ~  Documents  $  cd TMatrix/
tom  home  ~  Documents  TMatrix   master  ?  $  git apply remove_ncurses.diff
tom  home  ~  Documents  TMatrix   master  4✎  ?  $  mkdir -p build && cd build
tom  home  ~  Documents  TMatrix  build   master  4✎  ?  $  cmake -DCMAKE_INSTALL_PREFIX:PATH=bin/ ..
-- The CXX compiler identification is GNU 8.3.0
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Configuring done
-- Generating done
-- Build files have been written to: /home/tom/Documents/TMatrix/build
tom  home  ~  Documents  TMatrix  build   master  4✎  ?  $  make -j8
Scanning dependencies of target tmatrix
[ 11%] Building CXX object CMakeFiles/tmatrix.dir/src/MatrixChar.cpp.o
[ 22%] Building CXX object CMakeFiles/tmatrix.dir/src/Rain.cpp.o
[ 33%] Building CXX object CMakeFiles/tmatrix.dir/src/Parser.cpp.o
[ 44%] Building CXX object CMakeFiles/tmatrix.dir/src/RainStreak.cpp.o
[ 55%] Building CXX object CMakeFiles/tmatrix.dir/src/RainColumn.cpp.o
[ 66%] Building CXX object CMakeFiles/tmatrix.dir/src/Random.cpp.o
[ 77%] Building CXX object CMakeFiles/tmatrix.dir/src/tmatrix.cpp.o
[ 88%] Building CXX object CMakeFiles/tmatrix.dir/src/Terminal.cpp.o
[100%] Linking CXX executable tmatrix
[100%] Built target tmatrix
tom  home  ~  Documents  TMatrix  build   master  4✎  ?  $  sudo make install
[100%] Built target tmatrix
Install the project...
-- Install configuration: "Release"
-- Installing: /home/tom/Documents/TMatrix/build/bin/bin/tmatrix
tom  home  ~  Documents  TMatrix  build   master  4✎  ?  $ 

2019-05-27-122430_915x1000_scrot

M4444 commented 5 years ago

Oh sorry, I forgot to tell you the commands but you managed everything perfectly.

Let's try this one: https://www.dropbox.com/s/y4vfxqvhl3ls9uq/expand_size.diff?dl=0

Run:

git apply expand_size.diff
make -j8
./tmatrix

and let me know if the rectangles are still there.

Riiskyy commented 5 years ago

hmmm yeah its still the same. I even tried removing the local repo, re-cloning and applying both diffs then rebuilding

Riiskyy commented 5 years ago

Ok so I have tracked it down to a Urxvt problem. If I run it in termite it functions as expected

M4444 commented 5 years ago

Ok, can you post the Urxvt issue here so other people can see it if they run into a similar issue? Thanks for trying these fixes.

Josefan commented 5 years ago

I have the same problem with urxvt

Riiskyy commented 5 years ago

I'm not sure exactly what the issue is as I have not found a way to fix it yet. It seems like its some kind of UTF rendering problem in urxvt. I've also tried kitty and that also works jsut fine.

thor0dinson commented 5 years ago

It's missing the katakana font. Install ttf-mplus from AUR. It worked for me.

Riiskyy commented 5 years ago

@thor0dinson strange because I could copy/paste katakana characters in to the terminal and have them display properly, I even tried downloading a katakana font (not the one you listed) and added it as a fallback in my .Xresources but I still had the same issue.

Personally I have now switched over to kitty and have everything working.

Stock84-dev commented 5 years ago

@Riiskyy I managed to get it partially working. Steps: yaourt -S ttf-mplus in ~/.Xresources URxvt.font: yourMainFont,xft:M+ 1c reload config by xrdb ~/.Xresources
and open new terminal 2019-06-24-225152_1680x1050_scrot There are still a few missing characters.

M4444 commented 5 years ago

There are still a few missing characters.

@Stock84-dev It looks like the missing character is 𐌇. You should be able to get it in the ttf-symbola or ttf-code2000 package.

ndhansen commented 5 years ago

Thanks for all your help with this, despite it not being a TMatrix problem. I've installed ttf-symbola and ttf-code2000, but I'm afraid the 𐌇 symbol still isn't rendering in urxvt. Did I make a mistake in my .Xresources file? I've reloaded and everything.

URxvt.font: xft:DejaVu Sans Mono for Powerline:size=10, \
    xft:Kochi Gothic:antialias=false, \
    xft:Baekmuk Gulim, \
    xft:M+ 1m:size=10, \
    xft:Symbola:size=10, \
    xft:Code2000:antialias=false

I've modified the size_temp.cpp file to print the characters, and as you can see everything else works, but it's still missing that one character.

image