Considering a scenario wherein a folder is present under D drive bearing name as seen in the attachment named ActualFolderName. Then the command es.exe parent:"D:" returns the result as seen in the attachment named "Capture". Is there a way in which the actual folder name can be returned using the es command?
Any help regarding the above will be appreciated.
Thank you for the help.
es.exe is returning ? in place of emojis in the folder name
es.exe is returning ? in place of emojis in the folder name
- Attachments
-
- ActualFolderName.PNG (1.54 KiB) Viewed 8758 times
-
- Capture.PNG (983 Bytes) Viewed 8758 times
Re: es.exe is returning ? in place of emojis in the folder name
How characters are shown is dictated by 2 factors:
1. codepage
2. font
1. Codepage
You need to select a codepage that contains the characters you want. No guarantee that this works as it might be possible that some chars are only in codepage 1 and others only in codepage 2.
Check the current codepage in CMD by issuing the command CHCP
Change the codepage to - for example - unicode by issuing the command CHCP 65001
More on CHCP
2. Font
The font you use in CMD must have support for these special characters (if it isn't in the font, it can't be shown).
Try Lucida Console.
You can change the font by right-clicking the CMD title bar and choosing Properties.
CMD has very limited support for unicode characters, so I have my doubts if you can make this work.
The good news: If you export the results to a file, it will be UTF8 encoded and thus have support for special characters.
(try: es.exe parent:"D:" -export-txt output.txt )
1. codepage
2. font
1. Codepage
You need to select a codepage that contains the characters you want. No guarantee that this works as it might be possible that some chars are only in codepage 1 and others only in codepage 2.
Check the current codepage in CMD by issuing the command CHCP
Change the codepage to - for example - unicode by issuing the command CHCP 65001
More on CHCP
2. Font
The font you use in CMD must have support for these special characters (if it isn't in the font, it can't be shown).
Try Lucida Console.
You can change the font by right-clicking the CMD title bar and choosing Properties.
CMD has very limited support for unicode characters, so I have my doubts if you can make this work.
The good news: If you export the results to a file, it will be UTF8 encoded and thus have support for special characters.
(try: es.exe parent:"D:" -export-txt output.txt )
Re: es.exe is returning ? in place of emojis in the folder name
Tried both changing the code-page and using different fonts, but none of them worked.
Any plans of having this feature (Everything itself returning the emoticons in file and folder name instead of question marks) as a part of next release?
Any plans of having this feature (Everything itself returning the emoticons in file and folder name instead of question marks) as a part of next release?
Re: es.exe is returning ? in place of emojis in the folder name
Did you understand anything of what I wrote *at all* ?
ES.exe is not the problem; the console (host) is. It has very limited support for showing special characters.
(all input and output of ES.exe is handled by the console host).
And as you didn't mention which (emoji) characters, I would say:
What you want is not possible. Get over it.
ES.exe is not the problem; the console (host) is. It has very limited support for showing special characters.
(all input and output of ES.exe is handled by the console host).
And as you didn't mention which (emoji) characters, I would say:
What you want is not possible. Get over it.
Re: es.exe is returning ? in place of emojis in the folder name
Currently, there's no console font that supports the Unicode emoji plane.
Even the DIR command is unable to output the correct filename.
Even the DIR command is unable to output the correct filename.
Re: es.exe is returning ? in place of emojis in the folder name
Thanks for the information @void.
When I had tried using the Everything SDK, I was able to retrieve proper emojis in names of files and folders. However, for few other emojis, the SDK returned the unicode characters instead.
I tried the same by using es commands that run through command line but got question marks instead (as discussed previously).
Is there any encoding format being used in SDK that is facilitating the viewing of emojis?
When I had tried using the Everything SDK, I was able to retrieve proper emojis in names of files and folders. However, for few other emojis, the SDK returned the unicode characters instead.
I tried the same by using es commands that run through command line but got question marks instead (as discussed previously).
Is there any encoding format being used in SDK that is facilitating the viewing of emojis?
Re: es.exe is returning ? in place of emojis in the folder name
The SDK uses UTF-16 (Unicode).
Please make sure you use the SDK functions ending with W (Wide Characters) and not the functions ending with A (ANSI)
Two UTF-16 characters might be required to store some Emoji characters (unicode values >= 0x10000).
eg:
is stored as two UTF-16 characters (surrogate pairs):
0xd83d 0xde00
It's up to the caller on how these characters are displayed.
Please make sure you use the SDK functions ending with W (Wide Characters) and not the functions ending with A (ANSI)
Two UTF-16 characters might be required to store some Emoji characters (unicode values >= 0x10000).
eg:
is stored as two UTF-16 characters (surrogate pairs):
0xd83d 0xde00
It's up to the caller on how these characters are displayed.
Re: es.exe is returning ? in place of emojis in the folder name
I have a probably related issue:
I have this command:
When i run this in Powershell, i get the correct result "D:\Library\Bakermat\Baianá"
However, when i run this in Node.js's child_process module with execFile it turns out like this "D:\Library\Bakermat\Baian�".
I'll try to come up with a method where i use one of the parameters to export to a file, but it's a bit complicated because of the way i call es.exe.
Is there anything i can try to get the encoding working? I've already tried the iconv-lite package to no result.
I have this command:
Code: Select all
es.exe Baianá /ad
However, when i run this in Node.js's child_process module with execFile it turns out like this "D:\Library\Bakermat\Baian�".
I'll try to come up with a method where i use one of the parameters to export to a file, but it's a bit complicated because of the way i call es.exe.
Is there anything i can try to get the encoding working? I've already tried the iconv-lite package to no result.
Re: es.exe is returning ? in place of emojis in the folder name
Node.js execFile passes arguments as UTF-8.
Please try calling a bat file to set the active code page to UTF-8 and then calling ES.
es.bat:
Please try calling a bat file to set the active code page to UTF-8 and then calling ES.
es.bat:
Code: Select all
CHCP 65001
es.exe %*
Re: es.exe is returning ? in place of emojis in the folder name
That worked, awesome!
From testing it looks like i only need to call this once in my code to make all subsequent execFile calls work.
I have no idea why or how this transfers or why this is even possible with the supposedly shell-less execFile but it works, so i'll just go with it.
This is great because i don't have to use -export-txt anymore and then read the file which should improve performance by quite a bit!
From testing it looks like i only need to call this once in my code to make all subsequent execFile calls work.
I have no idea why or how this transfers or why this is even possible with the supposedly shell-less execFile but it works, so i'll just go with it.
This is great because i don't have to use -export-txt anymore and then read the file which should improve performance by quite a bit!