Visit The New, Modern Unix Linux Community


Support for Unicode in GTK2 and GTK3 file selection box?


 
Thread Tools Search this Thread
Top Forums UNIX for Advanced & Expert Users Support for Unicode in GTK2 and GTK3 file selection box?
# 1  
Support for Unicode in GTK2 and GTK3 file selection box?

I'm on Tiny Core Linux Pure64 10.1. My locale is en_US.UTF-8 and I generally have no trouble with Unicode characters with one exception: When I try to use Unicode characters in GTK applications' file selection box, I get "Invalid file name":

Image

The error affects both GTK2 and GTK3 applications.

Here is some info from terminal to show my locale and the fact that, at a low level, C library can handle Unicode characters in filenames:

Code:
bruno@box:~$ locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

bruno@box:~$ cat test.c
#include <stdio.h>

int main(void)
{
	FILE *fp;

	fp = fopen("/home/bruno/eĥoŝanĝoĉiuĵaŭde.txt", "w+");
	fprintf(fp, "hello world");
	fclose(fp);
	return 1;
}
bruno@box:~$ gcc test.c
bruno@box:~$ ./a.out 
bruno@box:~$ cat eĥoŝanĝoĉiuĵaŭde.txt 
hello world

I've already asked for help at the Tiny Core Linux forum, but no luck so far.

GTK2 and GTK3 applications can display Unicode characters just fine. I can also type the characters into the applications. As far as I can tell, the issue seems limited to the file selection box.

Does anyone know the backend for GTK2 and GTK3's file selection box? If I can pinpoint the backend, perhaps I could try to recompile it with attention to configuration options related to Unicode support.
# 2  
Sorry, for my question, but do not understand "why".

Why do you need to save filenames with these Unicode characters.

What value does having these Unicode characters in the filenames add to your project?
# 3  
Many reasons. The main one is that I often print webpages to PDF from my browser (chromium). When I try to print a webpage to PDF, if there are any non-ASCII characters in the webpage's name then I get hit with three error dialogs that need to be closed in just the right order before I'm allowed to change the name. It's a royal pain.

More websites have non-ASCII characters in their title than you'd think. Even something as innocent-looking as duckduckgo.com, for example, has a non-ASCII character in the title (a dash in this case) that triggers this problem.

Last edited by DevuanFan; 12-12-2019 at 12:49 AM..
# 4  
I see. Thanks.

FYI (mostly off topic), I think the hyphen-minus is considered both an ASCII char as well as Unicode.

######### START MOSTLY OFF TOPIC REFERENCE #########

Reference:

Quote:
The hyphen-minus (-) is a character used in digital documents and computing to represent a hyphen () or a minus sign (').

It is present in Unicode as code point U+002D - HYPHEN-MINUS; it is also in ASCII with the same value.
Where is the hyphen in duckduckgo.com ?

My understanding is that hyphens used in domain names are generally coded in ASCII, FYI.

Reference:

Quote:
The characters allowed in a domain name include letters (abc), numbers (123), and dashes/hyphens (---). No spaces are allowed and the domain name can't begin or end with dash/hyphen.
In the case above (in a permitted domain name char), the hyphen is considered ASCII.

Anyway, this is not germane to your question, which is related to GTK applications.

######### END MOSTLY OFF TOPIC REFERENCE #########

My best guess is that your GTK application has an input filter which checks for non-ASCII chars and pops up an error message when non-ASCII is detected.

The way around this, off the top of my head, is of course to look at the source code, verify the code which is detecting the non-ASCII char (and giving the error pop up) and then comment that code out and recompile and test it.

Here is a link to the source:

Code:
https://gitlab.gnome.org/GNOME/gtk

Hope this helps a little bit.
# 5  
Sorry, neo. It's not a hyphen/minus in duckduckgo.com, it seems to be a dash. Definitely not ASCII. After I dig myself out of the error dialogs, replacing the dash with a minus makes the filename acceptable.

I'll keep digging and will try your suggestions. Will report back.
# 6  
Thanks....

But on the (off) topic of the duckduckgo.com domain name.... where is the unicode char in that domain you are referencing?

Maybe I am as dumb as a rock (it has been rumored to be so, LOL), because I don't see any unicode in the domain name "duckduckgo.com"....

Please enlighten me on where there is unicode in the that domain.

Thanks again.
# 7  
Not in the url. In the page title. The dash here: "DuckDuckGo - Privacy, simplified."

Previous Thread | Next Thread
Thread Tools Search this Thread
Search this Thread:
Advanced Search

Test Your Knowledge in Computers #11
Difficulty: Medium
IBM chose the name System/360 (or S/360) because it was one of the first computers to focus on graphics processing.
True or False?

10 More Discussions You Might Find Interesting

1. How to Post in the The UNIX and Linux Forums

Copying , renaming the file from windox box and ftp to Linux box

Hello my dear friends, Two file are auto generated from mon - fri at different directories on same windows box.Every day i have to copy the file, rename it (specific name)and ftp it to linux box specified directory. is it possible to automate this process,If yes this has to be done from windows... (1 Reply)
Discussion started by: umesh yadav
1 Replies

2. Shell Programming and Scripting

Reading/Viewing an Unicode file

WE have a file coming from a server that has characters for 4-5 languages. If I download the file to my windows PC and open in Notepad ++, I can clearly see the text in different languages. Notepad++ is able to reder text that is in Portugese, French, Thai etc. My objective it to do the following:... (2 Replies)
Discussion started by: vskr72
2 Replies

3. Shell Programming and Scripting

Unicode file validation

I don't want HTML_CONTENT,RICH_CONTENT,TEXT_CONTENT columns data in the file and reset of data we need to extract. Find the attached file. Need to extract date in between DI_UX_ROW_END tag. Can help me using unix command using AWK. Thanks, (2 Replies)
Discussion started by: bmk
2 Replies

4. Programming

perl/Gtk2: issue with initializing Gtk2

hi everybody, currently i'm playing with perl and Gtk2. i've found a fairly old but nice looking example of a client/server application which is written in perl and Gtk2. the server part works perfect but i can't start the client part and keep getting following error message: $ ./client-gui.pl... (1 Reply)
Discussion started by: pseudocoder
1 Replies

5. UNIX for Advanced & Expert Users

mail with Unicode support

Hello, I have a question. There is a command line mail client "mail", it is good, but obviously, does not support Unicode. Are there any (other) mail clients for command line having support for Unicode (UTF-8) and maybe other encodings? Or are there any other versions of mail/mailx programm which... (0 Replies)
Discussion started by: Action
0 Replies

6. Shell Programming and Scripting

ftp file starting with particular name on Windows box to Unix box using shell script

Hello all ! I'm trying to write a shell script (bash) to ftp a file starting with particular name like "Latest_" that is present on a Windows box to UNIX server. Basically I want to set this script in the cron so that daily the new build that is posted on the Windows box can be downloaded to the... (2 Replies)
Discussion started by: vijayb4u83
2 Replies

7. UNIX for Advanced & Expert Users

Unicode Support in BIND?

Here at the agency I work for, a need has arisen for a subdomain that utilizes some unicode characters. It has something to do with our foreign clients getting "page could not be displayed" errors in their internationalized browsers. I am still investigating the issue, but I've been asked to find... (2 Replies)
Discussion started by: deckard
2 Replies

8. Shell Programming and Scripting

Run expect script in systems that don't support it out of box

Noob question .. My Java based application needs to change some user passwords based on some user actions. Since this application can run on Redhat AS2.1 / AS4.0 / Solaris 9 etc, the most safe and portable solution that I could think of was: Use expect. Now, expect is not available on all... (1 Reply)
Discussion started by: namityadav
1 Replies

9. UNIX for Advanced & Expert Users

How to FTP a file generated at UNIX Box to NT Box

Hi all, I am generating a file on the Unix machine , now i want to FTP the same file to the NT machine. how can i do that and the application currently upon which i am working is a JAVA based application. I need your help. regards Ruchir (2 Replies)
Discussion started by: Ruchir
2 Replies

10. Programming

How to display unicode characters / unicode string

I have a stream of characters like "\u8BBE\u5907\u7BA1" and i want to display it. I tried following things already without any luck. 1) printf("%s",L("\u8BBE\u5907\u7BA1")); 2) printf("%lc",0x8BBE); 3) setlocale followed by fwide followed by wprintf 4) also changed the local manually... (3 Replies)
Discussion started by: jackdorso
3 Replies

Featured Tech Videos